matlab图象处理工具箱.ppt
《matlab图象处理工具箱.ppt》由会员分享,可在线阅读,更多相关《matlab图象处理工具箱.ppt(47页珍藏版)》请在三一办公上搜索。
1、Matlab图象处理工具箱,3.1Matlab图象处理初步,读入、显示图象,Imread函数用于读入各种图像文件,其语法格式为:I=imread(filename.fmt)X,map=imread(filename.fmt)其中参数fmt指定了图像的格式。可选的值为curbmphdficojpgpcxpngtif和xwd。默认的文件目录为当前MATLAB的工作目录。,读入、显示图象,在MATLAB中读取图像还经常使用load这个命令。load的功能是从*.mat文件中读取变量。Load格式为:load filename%把名为filename的*.mat文件中存储变量读入MATLAB的工作空间
2、,各变量名为存储时的变量名。load filename X Y%把名为filename的*.mat文件中存储的X和Y变量读入MATLAB的工作空间。,读入、显示图象,Load filename.extLoad filename-ASCTTLoad filename-MATLoad(filename)Load filename.ext可以读取名为filename的ASCII文件,文件可以存储各列用空格分开的ASCII格式的变量值.Load filename-ASCTT和Load filename-MAT决定是以ASCII格式还是以二进制格式读取变量,读入、显示图象,当用字符串格式文件名称时,Lo
3、ad(filename)可以直接读取名为filename的*.mat文件.例如I,map=imread(pout.tif);save newfile I mapload newfile Iwhos,读入、显示图象,MATLAB及图像处理工具箱的显示功能非常强大,不仅可以用来显示各种类型的图像,还可以用多种方式显示图像及图像序列。下面对这些函数进行介绍。1、imageImage是MATLAB本身提供的最原始的图像显示函数,其使用格式如下:image(X);,读入、显示图象,colormap(map);为了用image函数显示由矩阵表示的图像,MATLAB将矩阵的每个元素对应到当前调色板的一行,并
4、取这一行的颜色值作为该点的颜色。因此显示图像时必须先指定调色板,才能真实地表示图像。例如:MATLAB预存的一组图像数据,包含图像矩阵X和调色板矩阵map,下面的,读入、显示图象,语句用来显示图。load clownimage(X)colormap(map),读入、显示图象,说明:clown也是MATLAB预存的一个mat文件,里面包含一个数据矩阵X和一个调色板,map。另一个与image函数相似的函数是imagesc,两者的区别在于imagesc能够自动调整值域范围:figure,imagesc(X),读入、显示图象,ImshowImshow函数是最常用的显示各种图像函数,其语法如下:ims
5、how(I,n)imshow(I,low high)imshow(BW)imshow(X,map),读入、显示图象,Imshow(RGB)imshow(I,n)和imshow(I,low high)用于显示灰度图像,n为灰度级数目,默认值为256。low high为图像数据的值域。在很多情况下,经过处理的图像数据的值域都会发生变化。比如对一幅double型的灰度图像滤波后,图像数据的值域已不在0,1中了,如果还用前面的显示方法,则得不到正确的结果.如果清楚地知道数据的值域low high可以使用调用imshow(I,low high).否则可用空间,读入、显示图象,向量为参数,即imshow(
6、I,).imshow(BW)用于显示二值图像,图像的数据类型可以是double和uint8,值域为或者;imshow(X,map)用于显示索引图像,X为数据图像矩阵,map为调色板;Imshow(RGB)用于真彩色图像。colorbarColorbar函数用于显示颜色条,并将图像中使用到的色彩排列在图像旁边,这样可以根据图像的色彩确定各像素的值。这对于用图像表示灰度范围不在通常范围的情况非常有用。,读入、显示图象,Colorbar函数语法格式如下:colorbar(vert)colorbar(horiz)colorbar(h)Colorbar其中colorbar(vert)、colorbar(
7、horiz)分别指定了颜色的显示方式为垂直或水平,默认值为垂直。colorbar(h)将颜色条放在指定的坐标轴h上。,读入、显示图象,I=imread(trees.tif);imshow(I)colormap(jet(64)colorbar,读入、显示图象,Montage多帧图像指的是包含不止一幅图像的图像,MATLAB中支持多帧图像的文件格式有HDF和TIFF两种。多帧图像的显示方式也有两种,一种是显示多帧图像中的一帧,另一种是同时显示多帧图像的所有帧。例如读取图像mri的第3帧,我们可以用下列语句实现:,读入、显示图象,mri=uint8(zeros(128,128,1,27);for f
8、rm=1:27mri(:,:,:,frm),map=imread(mri.tif,frm);endimshow(mri(:,:,:,3),map)另外还可以同时显示多帧图像中的所有帧,这是由montage函数完成,其语法为:,读入、显示图象,Montage(I)%拼接灰度图像Montage(X,map)%拼接索引图像Montage(RGB)%拼接真彩色图像下面的例子将序列图像拼接显示.load mrimontage(D,map),读入、显示图象,Immovie在MATLAB中,我们不但可以单独显示多帧,同时显示所有帧,还可以用动画的方式显示帧,Immovie函数即可以将多帧图像转换成MATLA
9、B动画,其语法格式为:Mov=immovie(X,map)Immovie只能使用索引图像,因此如果要将其它类型的图像转换成动画,首先要转换成索引图像。要在MATLAB中播放这个动画,首先要指定调色板。,读入、显示图象,一般可以用下例语句放映动画:Colormap(map),movie(mov)例如load mrimov=immovie(D,map);colormap(map);movie(mov),读入、显示图象,SubimageMATLAB提供的subplot函数虽然能将一个图像窗口分成几个部分,但同一个图像窗口内只能有一个调色板。而MATLAB图像处理工具箱的Subimage函数可在一个图
10、像窗口内使用多个调色板,使得各种图像能在同一个图像窗口中显示。Subimage函数的语法格式为:,读入、显示图象,subimage(X,map)%在一个窗口里显示多个索引图像。subimage(I)%在一个窗口里显示多个灰度图像。subimage(RGB)%在一个窗口里显示多个真彩图像。subimage(x,y,)%将图像按指定的坐标(x,y)显示.下面的例子将显示两幅具有不同调色板的图像.,读入、显示图象,load trees X2,map2=imread(forest.tif);subplot(121),subimage(X,map)subplot(122),subimage(X2,map
11、2),读入、显示图象,I=imread(pout.tif);imshow(I);whos;size(I);,Name Size Bytes Class I 291x240 69840 uint8 arrayGrand total is 69840 elements using 69840 bytes,读入、显示图象,图像读取函数为:imread,并把读取出来的图像pout.tif存储在一个名为I的数组中,然后使用imshow来显示数组I,使用whos命令来查看图像数据I是如何存储在内存中,用size命令查看图像的大小。,读入、显示图象,I=imread(pout.tif);imshow(I);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 图象处理 工具箱

链接地址:https://www.31ppt.com/p-5439006.html