MATLAB 像处理命令使用

上传人:野鹰 文档编号:13988358 上传时间:2017-10-27 格式:DOC 页数:10 大小:52KB
返回 下载 相关 举报
MATLAB 像处理命令使用_第1页
第1页 / 共10页
MATLAB 像处理命令使用_第2页
第2页 / 共10页
MATLAB 像处理命令使用_第3页
第3页 / 共10页
MATLAB 像处理命令使用_第4页
第4页 / 共10页
MATLAB 像处理命令使用_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《MATLAB 像处理命令使用》由会员分享,可在线阅读,更多相关《MATLAB 像处理命令使用(10页珍藏版)》请在金锄头文库上搜索。

1、MATLAB 像处理命令使用1. MATLAB 中像处理的一些简单函数A、 imreadimread 函数用于读入各种像文件,其一般的用法为X,MAP=imread(filename,fmt)其中,X,MAP 分别为读出的像数据和颜表数据,fmt 为像的格式,filename 为读取的像文件(可以加上文件的路径) 。例:X,MAP=imread(flowers.tif,tif);比较读取二值像,灰度像,索引像,彩像的 X 和 MAP 的特点,可以利用size 函数用来显示数组的维数,了解数据的特点。B=size(a) 返回数组 a 的维数。B、 imwriteimwrite 函数用于输出像,其

2、语法格式为:imwrite(X,map,filename,fmt)imwrite(X,map,filename,fmt)按照 fmt 指定的格式将像数据矩阵 X 和调板 map 写入文件 filename。C、 imfinfoimfinfo 函数用于读取像文件的有关信息,其语法格式为imfinfo(filename,fmt)imfinfo 函数返回一个结构 info,它反映了该像的各方面信息,其主要数据包括:文件名(路径) 、文件格式、文件格式版本号、文件的修改时间、文件的大小、文件的长度、文件的宽度、每个像素的位数、像的类型等。2.MATLAB 中像文件的显示imshowimshow 函数是

3、最常用的显示各种像的函数,其语法如下:imshow(X,map)其中 X 是像数据矩阵,map 是其对应的颜矩阵,若进行像处理后不知道像数据的值域可以用代替 map。(1)二进制(二值)像显示方法,在 MATLAB 中一幅二值像是 uint8 或双精度的,该矩阵仅包含 0 和 1。如果希望工具箱中的函数能将像理解为二进制的,那么所有数据都要是逻辑数据,必须对其进行设置(将所有数据标志均设置 on).可以对数据利用“”取反操作实现像逆转即黑白反。(2)灰度像的显示方法,正常情况下无需指定灰度像的调板格式。可以是使用 imshow 函数指定要显示灰度级数目,格式 imshow(I,n),n 为指定

4、的灰度级数目。用户也可以指定数据的范围,格式 imshow(I,low high)其中low 和 high 参数分别为数据数组的最小值和最大值。如果为空矩阵(),那么 imshow 函数将自动进行数据标度。(3)索引像,imshow(x,map)对于 x 的每个个像素,imshow 显示存储 map中相应行的颜。(4) RGB 像的显示,它直接对颜进行描述而不使用调板,格式imshow(RGB)。 RGB(:,:,1)RGB(:,:,2) RGB(:,:,3)(5)特殊显示,如多幅像的显示,需要显示多幅像时。可以使用figure 语句,它的功能就是重新打开一个像显示窗口。例:I=imread(

5、rice.tif);Imshow(I);J=imread(flowers.tif);figure,imshow(J);也可以将多幅像显示在同一个单独的像窗口中,有两种方法:一种是联合imshow 和 subplot 函数;另一种是联合使用 subimage 函数和 subplot 函数,subplot(m,n,p)这种格式将形窗口划分为 m*n 个矩形显示区域并激活第 p 个显示区域。Ax1,map1=imread(trees.tif);x2,map2=imread(forest.tif);subplot(1,2,1),imshow(x1,map1)subplot(1,2,2),imshow(

6、x2,map2)Bx1,map1=imread(trees.tif);x2,map2=imread(forest.tif);subplot(1,2,1),subimage(x1,map1)subplot(1,2,2),subimage(x2,map2)3.MATLAB 中灰度直方的显示MATLAB 像处理工具箱提供了 imhist 函数来计算和显示像的直方,imhist 函数的语法格式为:imhist(I,n)imhist(X,map)其中 imhist(I,n)计算和显示灰度像 I 的直方,n 为指定的灰度级数目,默认值为 256。imhist(X,map)计算和显示索引像 X 的直方,ma

7、p 为调板。例:I = imread(rice.tif);imshow(I)figure, imhist(I)4.对比度增强如果原像 f(x,y)的灰度范围是m,M,我们希望调整后的像 g(x,y)的灰度范围是n,N,那么下述变换, ,就可以实现这一要求。MATLAB 像处理工具箱中提供的 imadjust 函数,可以实现上述的线性变换对比度增强。Imadjust 函数的语法格式为:J = imadjust(I,low_in high_in,low_out high_out)J = imadjust(I,low_in high_in,low_out high_out)返回像 I 经过直方调整后

8、的像 J,low_in high_in为原像中要变换的灰度范围,low_out high_out指定了变换后的灰度范围。其详细的用法可参见计算机像处理与识别技术。例:I = imread(pout.tif);J = imadjust(I,0.3 0.7,);imshow(I), figure, imshow(J)5.像类型转换:像类型之间的转换有时非常有用。MATLAB 提供的像类型转换函数函数 功能dither 使用抖动方法,根据灰度像船舰二进制像和根据 RGB 像创建索引像gray2ind 根据一幅灰度像创建索引像grayslice 使用阈值截取方法,根据一幅灰度像创建索引像im2bw 使

9、用阈值截取方法,根据一幅灰度像,索引像或 RGB 像创建二进制像ind2gray 根据一幅索引像创建一幅灰度像ind2rgb 根据一幅索引像创建一幅 RGB 像mat2gray 通过数据缩放,在根据矩阵数据创建一幅灰度像rgb2gray 根据一幅 RGB 像创建一幅灰度像rgb2ind 根据一幅 RGB 像创建一幅索引像上表中函数有类似的调用格式:函数的输入参数是像数据矩阵(如果是索引像,那么输入参数还包括调板),返回值是转换后的函数(包括索引函数的调板),只有函数 im2bw 的调用格式不同,其输入参数中还包括一个截取阈值,超过此阈值的像素被截取为 1 否则为 0。示例:A、load tre

10、esBW = im2bw(X,map,0.4);imview(X,map),imview(BW)、I = imread(snowflakes.png);X = grayslice(I,16);imview(I)imview(X,jet(16)6.MATLAB 还提供了像存储类型之间的转换函数这些函数包含 im2doble、im2uint8 和 im2uint16,这些函数可以自动的进行原始数据的重新标度和偏移.调用格式简单,输入为像矩阵,输出为转换后的像:如:以下命令将一个描述双精度 RGB1 像的矩阵(数据范围为0,1转换为uint8 的像矩阵(0,255范围内)RGB2=im2uint8(

11、rgb1);也可以使用 MATLAB函数对像存储类型进行转换。例如,double 函数可以将 uint8 或 uint16 的数据转化为双精度数据。存储类型之间的转变将改变 matlab 及其工具箱理解像数据的方式,如果用户希望转换后得到的数组能够被正确的理解为像数据,那么转换时需要重新标度或偏移数据。当使用较少的类型来描述数字像时,通常可能丢失用户像的一些信息。7.像格式之间的转换可以间接利用像读写函数来完成;首先使用 imread 函数按照原有的像格式进行像读取,然后调用 imwrite 函数对像进行保存,并指定像的保存格式。如将 BMP 格式转换为 PNG 格式,bitmap=imrea

12、d(mybitmap,bmp,bmp)imwrite(mybitmap,png,png)matlab 像处理命令二值像操作操作brighten 亮/暗cmpermute 中颜的重排colormap 设置imapprox 以较少的颜来近似索引像rgbplot 绘制 RGB 彩空间变换hsv2rgb 饱和彩 HSV 向红绿蓝 RGB 转换ntsc2rgb 将 NTSC 制式值转换到 RGB 颜空间rgb2hsv RGB M 向 HSV cmap 转换rgb2ntsc 将 RGB 颜空间转换到 NTSC 制式rgb2ycbcr 将 RGB 颜空间转换到 YCBCR 颜空间 ycbcr2rgb 将 Y

13、CBCR 颜空间转换到 RGB 颜空间像类型判断及其转换 dither 用抖动法(dithering)转换像gray2ind 灰度像向索引像转换grayslice 设定阀值将灰度转换为索引isbw 像为二值像则返回真isgray 像为灰度像则返回真isind 像为索引像则返回真isrgb 像为 RGB 像则返回真im2bw 设定阀值将像转换为值维像im2double 将像数据阵列转换为 double 型im2uint8 将像数据阵列转换为 uint8 型im2uint16 将像数据阵列转换为 uint16 型ind2gray 索引像向灰度像转换ind2rgb 索引像向 RGB 像转换mat2r

14、gb 将矩阵转换为灰度rgb2gray RGB 像向灰度转换rgb2ind RGB 像向索引像转换像处理演示函数dctdemo 二维 DCT 像压缩演示 edgedemo 边缘检测演示firdemo 二维 FIR 滤波及滤波器演示imadjdemo 灰度及调整和直方均衡演示landsatdemo 陆地卫星颜合成演示nrfiltdemo 噪声消除滤波演示qtdemo 四叉树分解演示roidemo 特定区域处理演示像分析edge 得到加强像的边缘qtdecomp 四叉树分解qtgetblk 得到四叉树分解的块值qtsetblk 调整四叉树分解的块值像增强histeq 自动调整直方imadjust

15、灰度级调整imnoise 引入各种类型的噪声medfilt2 中值滤波ordfilt2 执行二维阶统计滤波wiener2 维纳滤波器的二维滤波线性滤波conv2 像卷积 convmtx2 计算二维卷积矩阵convn 像的 n 维卷积filter2 二维线性滤波fspecial 产生预定义的滤波器medfilt2 中值滤波wiener2 维纳滤波器的二维滤波二维线性滤波器的设计 filter2 二维线性滤波fspecial 产生预定义的滤波器fsample 生成滤波器freqz2 计算二维滤波器的频率响应fsamp2 二维 FIR 滤波器的频率采样设计fwind1 由用户自定义的两个一维窗口生成一个二维窗口滤波器fwind2 由一个已知的二维窗口直接生成一个二维滤波器hamming 创建一个一维窗口freqspace 生成合适的频率点阵矩阵ftrans2 频率变换像变换dct 离散余弦变换dct2 计算二维离散余弦变换dctmtx 计算离散余弦变换矩阵dctmtx2 计算二维离散余弦变换矩阵dctdemo 二维离散余弦变像压缩矩阵fft2 得到二维 FFT 的结果fftn N

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号