A = imread(filename, fmt)

根据文件名filename读取灰度或彩色图像。若filename文件不在当前目录下,也不在Matlab搜索路径下,则必须指定全路径。根据标准文件扩展名指定文件的格式fmt。如为图形交换格式文件指定'gif'格式。用imformats函数查看支持的格式的扩展名清单,若imread函数找不到filename文件,将查打filename.fmt文件。

返回的数组A包含图像数据。若文件包含灰色图像,A是M*N的数组;若文件包含真彩色图像,A是M*N*3的数组。对于彩色的tiff文件将用CMYK颜色空间,A是M*N*4的数组。

返回的A的类型与图像采样的位有关。如24位颜色imread函数返回uint8数据因为每个颜色分量都是8位的。

[X, map] = imread(...)

从filename文件中,读取索引图像X以及与之对应的颜色表到map中。颜色表中的值将归一化到[0,1]之间。

[...] = imread(filename)

尝试推断文件内容的格式

[...] = imread(URL,...)

从互联网地址中读取图像。其中URL必须包含协议,如http://

[...] = imread(...,Param1,Val1,Param2,Val2...)

指定参数属性对来指定格式,可查看下面的指定格式信息部分(按字母顺序进行排序)

BMP  位图

CUR 静态光标文件

GIF 图像互换格式

HDF4 分层数据格式

ICO 图标文件

JPEG 联合图像专家组

JPEG2000 联合图像专家组2000

PBM 流式位图(单色)

PCX  Windows的画笔

PGM 流式灰度图

PNG 流式网络图形

PPM 流式像素图

RAS SUM光栅图片格式

TIFF 标签图像文件格式

XWD  X windows转储格式

下面简要介绍各种数据格式

1、BMP  位图

支持的位深

不压缩

RLE压缩

输出的类型

说明

1位

y

-

逻辑型

4位

y

y

uint8

8位

y

y

uint8

16位

y

-

uint8

每像素1采样

24位

y

-

uint8

每像素3采样

32位

y

-

uint8

每像素3采样(填充1字节)

2、CUR 静态光标文件

支持的位深

不压缩

压缩

输出类型

1位

y

-

逻辑型

4位

y

-

uint8

8位

y

-

uint8

指定格式的语法:

[...] = imread(..., idx)

从多图标或光标文件中读取一个图像。idx是一个整数用于指定图像在文件中出现的序号。如idx=3即读取文件中第3个图像。若忽略idx,则读取文件中第一个图像。

[A, map, alpha] = imread(...)

返回资源的与操作的掩码,它可以用来确定透明度信息。对于静态光标文件,这个掩码是最有用的东西。

注意:Windows的光标是32*32像素的,而Matlab为16*16像素的。若装有图像处理工具箱,可以用imresize函数进行放缩。

3、GIF 图像互换格式

支持的位深

不压缩

压缩

输出类型

1位

y

-

逻辑型

2位到8位

y

-

uint8

指定格式的语法:

[...] = imread(..., idx)

从多帧的gif文件(动画)中读取一帧或多帧信息。idx必须是整数或整数组成的向量。如idex=3代表读取第3帧的图像;idx=1:5则只读取头5帧的图像。

[...] = imread(..., 'frames', idx)

与上述语法相同,但这里的idx可以为'all',代表读取读取整个文件所有的帧。

注意:由于gif文件的结构方式,当读取部分帧时实际上要读取所有的帧。因此,指定要读取的帧的向量或所有帧要比用循环来读取gif文件要来得快。

4、HDF4 分层数据格式

支持的位深

带颜色图的光栅图像

不带颜色图的光栅图像

输出类型

说明

8位

y

y

uint8

24位

-

y

uint8

每像素3采样

指定格式的语法:

[...] = imread(..., ref)

从一个多图像的HDF4文件中读取一个图像。ref是一个整数,用于指定图像的识别参考号码。如ref=12,即读取参考数为12的图像。注意:在HDF4文件中,参考数与文件中图像的序号并不是一致的,可借助imfinfo函数得到二者之前的关系。另外若忽略ref,则读取文件中第一个图像。

5、ICO 图标文件

参看2、CUR 静态光标文件

6、JPEG 联合图像专家组

支持的位深

有损压缩

无损压缩

输出类型

说明

8位

y

y

uint8

灰度或RGB

12位

y

y

uint16

灰度或RGB

16位

-

y

uint16

灰度

7、JPEG2000 联合图像专家组2000

支持的位深

有损压缩

无损压缩

输出类型

说明

1位

y

y

逻辑型

仅灰度

2到8位

y

y

uint8

灰度或RGB

9到16位

y

y

uint16

灰度或RGB

指定格式的语法:

[...] = imread(..., 'Param1', value1, 'Param2', value2, ...)

用下表中的参数属性对来控制读操作

'ReductionLevel':一个非负整数,用于指定图像减少的分辨率。若ReductionLevel=L,则图像分辨率以2^L尺度减小。缺省的ReductionLevel为0,即不减少分辨率。该值以总压缩水平为限,由imfinfo函数返回的WaveletDecompositionLevels字段给出。

'PixelRegion':以(rows,cols)表示,返回以rows,cols为界的子图像。其中rows和col都是含有两个元素的向量。若ReductionLevel大于0,则rows和cols为减小图像的坐标。

8、PBM 流式位图(单色)

支持的位深

二进制Raw

ASCII编码

输出类型

1位

y

y

逻辑型

9、PCX  Windows的画笔

支持的位深

输出类型

说明

1位

逻辑型

仅灰度图像

8位

uint8

灰度或索引图像

24位

uint8

RGB,每像素3个8位采样

10、PGM 流式灰度图

支持的位深

二进制Raw

ASCII编码

输出类型

说明

8位

y

-

uint8

16位

y

-

uint16

随意

-

y

1到8位返回uint8,9到16位返回uint16

归一化的值

11、PNG 流式网络图形

支持的位深

输出类型

说明

1位

逻辑型

灰度图像

2位

uint8

灰度图像

4位

uint8

灰度图像

8位

uint8

灰度或索引图像

16位

uint16

灰度或索引图像

24位

uint8

RGB,每个像素三个8位采样

48位

uint16

RGB,每个像素三个16位采样

指定格式的语法:

[...] = imread(...,'BackgroundColor',BG)

以背景色BG对输入的图像合成,若BG为'none',则不进行合成。若输入的是索引图像,BG必须是[1,P]之间的整数,这里的P是颜色表的长度。若输入的是灰度图,BG必须是[0,1]之间的整数。若输入的是RGB图像,RGB三分量都必须在[0,1]之间。字符串'BackgroundColor'可以被忽略。

[A, map, alpha] = imread(...)

如果存在返回alpha通道,否则返回空。注意当输入文件含有灰度或真彩图像,map可能为空。

若指定alpha这个输出参数,BG若不指定,则缺省为'none'。否则,若PNG文件含有背景颜色块,这个值将作为BG的缺省值;若alpha没有指定且文件中也没有背景颜色块,对于索引图像文件BG缺省值为1、灰度图BG缺省值为0、真彩色(RGB)图像BG缺省值为[0,0,0]。

12、PPM 流式像素图

支持的位深

二进制Raw

ASCII编码

输出类型

不多于16位

y

-

uint8

任意位

-

y

13、RAS SUM光栅图片格式

支持的位深

输出类型

说明

1位

逻辑型

位图

8位

uint8

索引图像

24位

uint8

RGB,每像素三个8位采样

32位

uint8

含有alpha的RGB,每像素四个8位采样

14、TIFF 标签图像文件格式

imread函数支持下列tiff:

1、每个像素任意个采样

2、CCITT 3及4传真、PackBits、JPEG、LZW、ThunderScan压缩,以及不压缩的图像

3、逻辑型、灰度、索引、真彩以及高光谱图像

4、RGB、BMYK、CIELAB、ICCLAB颜色空间。若彩色图像使用CMYK颜色空间,则A是M*N*4数组。可以用imfinfo函数查看图像文件使用的颜色空间(查看PhotometricInterpretation字段)。若文件包含CIELAB颜色数据,imread先转成ICCLAB然后再导入MATLAB空间,这是因为8或16位的CIELAB编码的值使用的是有符号或无符号的数据类型,而这些类型不能在单一MATLAB数组中保存。

5、数据重组成块或扫描线

下表给出imread支持的位深等信息:

支持的位深

压缩

输出类型

说明

不压缩

Packbits

CCITT

RGB

ICCLAB

CLELAB

CMYK

1位

y

y

y

-

-

-

-

逻辑型

8位

y

y

-

-

-

-

-

uint8

12位

-

-

-

-

-

-

-

uint16

灰色或索引图像

16位

-

-

-

-

-

-

-

uint16

灰色或索引图像

24位

y

y

-

y

y

y

-

uint8

每像素3采样

32位

-

-

-

-

-

-

y

uint8

每像素4采样

36位

-

-

-

y

-

-

-

uint16

每像素3采样

48位

-

-

-

y

y

y

-

uint16

每像素3采样

64位

-

-

-

-

-

-

y

double

每像素4采样

注意:imread函数支持8位整型以及32位浮点型的任意压缩以及上述颜色空间的图像。

指定格式的语法:

A = imread(...)

返回使用RGB、CIELAB、ICCLAB或CMYK颜色空间的数据。若使用CMYK颜色空间,则A是M*N*4的数组。

[...] = imread(..., 'Param1', value1, 'Param2', value2, ...)

指定参数属性对来指定格式:参数有:

'Index':正整数,用于指定要读的图像。如指定'Index'为3,则imread读文件中的第三个图像。若省略,imread则读取文件中第一个图像。

'Info':imfinfo函数返回的结构体。

'PixelRegion':细胞元数组{rows,cols},指定区域的边界。rows和cols必须是两个元素或三个元素的向量。若指定两个元素的向量,各元素的值是从1开始计算的序数[start stop];若指定三个元素的向量,各元素的值是从1开始计算的序数[start increment stop]即[起始 步长 终止]。

版权的信息,可查看libtiffcopyright.txt文件。

15、XWD  X windows转储格式

支持的位深

ZPixmaps

XYBitmaps

XYPixmaps

输出类型

1位

y

-

y

逻辑型

8位

y

-

-

uint8

支持的类:对于大多数的格式,每个颜色imread用8位或者更少的位来保存一个像素。下表给出各种文件数据类型返回的数组类型。

文件中的数据类型

imread返回的数组类

每像素1位

逻辑型

每像素2到8位

uin8

每像素9到16位

uint16(bmp、JPEG、PNG和TIFF)。对于5-6-5的16位bmp格式,Matlab返回uint8

matlab x map imread,matlab的imread相关推荐

  1. matlab图像相加例子,MATLAB图像处理例子

    MATLAB图像处理例子 clc;clear all;close all; a = imread( railway_05.jpg ); b = rgb2gray(a); c = im2bw(b,240 ...

  2. matlab图像隐写,matlab软件图像处理相关内容.ppt

    内容主要分为以下四个篇章: 一.介绍应用matlab处理图像问题 (以一个图像隐写的简单例子为说明线索) 二.应用matlab解决三维血管重建中的图像处理问题 三.图像处理练习(应用matlab解决双 ...

  3. matlab中读入sav,matlab数据读取与存入详解

    matlab数据读取与存入详解 在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件.MATLAB使用多种格式打开和保存数据.本章将要介绍 MATLAB中文件的读写和数据的导入导出 ...

  4. matlab水壶图形,[转载]Matlab 图像处理相关函数命令大全

    Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar colorbar('vert') colorbar('horiz') colorbar(h ...

  5. matlab关闭图像命令,matlab图像处理命令

    <matlab图像处理命令>由会员分享,可在线阅读,更多相关<matlab图像处理命令(108页珍藏版)>请在人人文库网上搜索. 1.MATLAB常用的图像操作,数字图像研究的 ...

  6. matlab导入地图文件,matlab 外部数据导入方法详解

    在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件.MATLAB使用多种格式打开和保存数据.本章将要介绍 MATLAB中文件的读写和数据的导入导出. 13.1 数据基本操作 本节 ...

  7. matlab中的图像,MATLAB中图像的基本操作

    MATLAB中图像的基本操作 1.读取.显示图片 MATLAB中提供了immread()与imshow()函数读取和显示图片.其中读取函数imread()原型: imread: A= imread(f ...

  8. MATLAB调试caffe,在MATLAB下调试Caffe

    Caffe本身是C++.CUDA语言编写的.在调试模型.参数时,根据运行log.snapshot很难实时反馈当前训练的权值情况,也难以捕捉算法存在的bug. MATLAB则是非常适合算法设计.快速迭代 ...

  9. asp.net matlab,ASP.NET与MATLAB混合编译以及数据传递【更新中】

    本帖最后由 yinbo20081314 于 2015-5-20 00:35 编辑 在VS环境的项目中,首先需要引用以下dll才能开启MATLAB混编.[引用1]MatlabApplication(Ve ...

  10. matlab的矩阵编译器,MATLAB引擎方式实现VC与MATLAB混合编程

    VS2008是当前主流的应用程序开发环境之一,开发环境强大,开发的程序执行速度快.但在科学计算方面函数库显得不够丰富.读取.显示数据图形不方便.Matlab是一款将数值分析.矩阵计算.信号处理和图形显 ...

最新文章

  1. 【学习笔记】吴恩达机器学习 WEEK1
  2. TypeScript 里 never 类型的用法举例
  3. MyBatis-Plus_快速入门0222
  4. Appium遇到异常处理
  5. 网上Silverlight项目收集
  6. 题解【51nod 1290 Counting Diff Pairs】
  7. java中猜字母_Java有大神会写 猜字母游戏
  8. FreeRTOS 入门
  9. CuteFtp通用注册码
  10. 基于JAVA的教务排课系统毕业设计
  11. 罗技G603鼠标欧姆龙D2FC-F-7N微动开关拆解修复双击问题要点解析
  12. 学校计算机机房解说词,学校会议室解说词.doc
  13. 云计算工程师必备技能
  14. [组图]10个免费在线图片特效处理的网站
  15. 浅谈动态代理和静态代理的底层原理及实现
  16. org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing
  17. 认证管理(锐捷业软篇)
  18. 子域名查询(python)
  19. 手把手带你实现西瓜视频的责任链埋点框架
  20. MATLAB--数字图像处理 简单人脸识别

热门文章

  1. 【无标题】春漫乌海湖!
  2. BBSXP论坛基本功能代码
  3. CentOS 7 压缩包安装MySQL(教程+一键完成脚本)
  4. Java choose函数_SQL SERVER 2012新增函数之逻辑函数CHOOSE详解
  5. linux拨号失败分配局域网ip,linux pppd-GPRS和以太网同时在线,解决拨号默认网关...
  6. java计算机毕业设计智慧机场管理系统源程序+mysql+系统+lw文档+远程调试
  7. excel随机生成数字或者字母
  8. 遇到‘nvcc‘ 不是内部或外部命令,也不是可运行的程序或批处理文件怎么办?亲测有效
  9. 怎样每天保持饱满的精神状态?
  10. BigPipe的正确使用姿势