MATLAB 图像处理命令使用
MATLAB数字图像处理中的指令用法
• • • • • •
imshow(BW)显示一张二值图像BW imshow(X,map)用指定的调色板来显示图像 imshow(RGB)显示一张真彩色图像RGB imshow(...,display_option) imshow(x,y,A,...) imshow filename
• • • •
• • • • •
13.meshgrid
• • • • • • • • • • • • • • 函数功能生成绘制3-D图形所需的网格数据。在计算机中进行绘图操作时, 往 往需要一些采样点,然后根据这些采样点来绘制出整个图形。在进行3-D绘图 操作时,涉及到x、y、z三组数据,而x、y这两组数据可以看做是在Oxy平面 内对坐标进行采样得到的坐标对(x, y)。 例如:画一个128*128,截止频率为15的理想滤波器 for u=1:128 for v=1:128 if sqrt((u-64)^2+(v-64)^2)<=15 H(u,v)=1; else H(u,v)=0; end end end imshow(H); [u,v]=freqspace(128,'meshgrid'); figure,mesh(u,v,H)
• matlab中,每个figure都有(而且仅有)一个colormap,翻 译过来就是色图。 • COLORMAP(MAP) 用MAP矩阵映射当前图形的色图。 • COLORMAP('default') 默认的设置是 JET. • MAP = COLORMAP 获得当前色图矩阵. • COLORMAP(AX,...) 应用色图到AX坐标对应的图形,而非当 前图形. • MAP实际上是一个mx3的矩阵,每一行的3个值都为0-1之 间数,分别代表颜色组成的rgb值,[1 0 0] 代表红色,[0 1 0]代表绿色,[0 0 1]代表蓝色。系统自带了一些colormap, 如:winter、autumn等。输入winter,就可以看到它是一 个64x3的矩阵。用户可以自定义自己的colormap,而且不 一定是64维的。
matlab image函数用法
matlab image函数用法MATLAB Image函数用法Image函数是Matlab的一个基本的图像处理函数,可以用来读取、显示和储存各种格式的图像,并且可以进行基本的图像矩阵变换,是Matlab中常用的图像处理方法。
以下将详细介绍如何使用Image函数:第一步:载入图片如果要对某个图片进行处理,首先需要将其载入Matlab环境中,可以使用Image函数来实现。
可以通过下面的代码来完成:A = imread('path_to_image');其中path_to_image指定了图片的位置,读取后会自动填充到变量A 中,这样就可以用A来进行后续的处理。
第二步:显示载入的图片载入完图片以后,我们可以使用下面的命令来显示该图片:imshow(A);这步骤完成后,就可以在Matlab环境中看到载入的图片。
第三步:图像矩阵变换如果要对载入的图片进行像素矩阵的变换,比如反转、镜像等等,可以使用以下代码来实现:B = imrotate(A, 90); //旋转90度C = flipud(A); //上下翻转D = fliplr(A); //左右翻转这些操作会对载入的图片进行像素矩阵变换,变换后的图像就会储存到相应变量中,例如旋转后的图像就会储存在B中,上下翻转后的图像就会储存在C中,左右翻转后的图像就会储存在D中,之后可以使用imshow函数来查看这些变换后的图片。
第四步:存储变换后的图片如果想对变换后的图片进行存储,可以使用Image函数中提供的imwrite函数来实现,可以使用如下代码:imwrite(B,'rotated.jpg'); //保存旋转后的图片imwrite(C,'Vertical_flip.jpg'); //保存上下翻转后的图片imwrite(D,'Horizontal_flip.jpg'); //保存左右翻转后的图片其中,括号内的参数指定图片的存储路径和名称,执行完上述代码,就可以在指定位置看到三张变换后的图片。
(完整版)数字图像处理MATLAB程序【完整版】
第一部分数字图像处理实验一图像的点运算实验1.1 直方图一.实验目的1.熟悉matlab图像处理工具箱及直方图函数的使用;2.理解和掌握直方图原理和方法;二.实验设备1.PC机一台;2.软件matlab。
三.程序设计在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。
I=imread('cameraman.tif');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题四.实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。
书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像;3.浏览源程序并理解含义;4.运行,观察显示结果;5.结束运行,退出;五.实验结果观察图像matlab环境下的直方图分布。
(a)原始图像 (b)原始图像直方图六.实验报告要求1、给出实验原理过程及实现代码;2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。
实验1.2 灰度均衡一.实验目的1.熟悉matlab图像处理工具箱中灰度均衡函数的使用;2.理解和掌握灰度均衡原理和实现方法;二.实验设备1.PC机一台;2.软件matlab;三.程序设计在matlab环境中,程序首先读取图像,然后调用灰度均衡函数,设置相关参数,再输出处理后的图像。
I=imread('cameraman.tif');%读取图像subplot(2,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(2,2,3),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题a=histeq(I,256); %直方图均衡化,灰度级为256subplot(2,2,2),imshow(a) %输出均衡化后图像title('均衡化后图像') %在均衡化后图像中加标题subplot(2,2,4),imhist(a) %输出均衡化后直方图title('均衡化后图像直方图') %在均衡化后直方图上加标题四.实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。
如何在Matlab中进行图像处理与图像识别的实用技巧
如何在Matlab中进行图像处理与图像识别的实用技巧Matlab是一款强大的科学计算软件,广泛应用于图像处理和图像识别领域。
在这篇文章中,我们将探讨一些在Matlab中进行图像处理和图像识别的实用技巧。
一、图像预处理在进行图像处理前,我们通常需要对原始图像进行预处理,以提高后续处理的效果。
图像预处理的目标包括去噪、增强和归一化等。
1.1 去噪图像中常常存在各种噪声,如高斯噪声、椒盐噪声等,这些噪声会影响后续处理的准确性。
Matlab提供了多种去噪方法,其中最常用的是使用统计滤波器,如均值滤波器、中值滤波器和高斯滤波器等。
这些滤波器能够有效地减少图像中的噪声,并保持图像的细节。
1.2 增强图像增强可以使图像更加清晰、对比度更强、细节更明显。
在Matlab中,可以使用直方图均衡化、灰度拉伸等方法进行图像增强。
直方图均衡化通过对图像的灰度级进行重新映射,使得图像的直方图分布更加均匀,从而提高图像的对比度和细节。
而灰度拉伸则通过调整图像的灰度级范围,使得图像的亮度更加均衡。
1.3 归一化当我们需要对不同尺寸、不同亮度、不同对比度的图像进行处理时,通常需要将它们归一化到相同的尺寸、亮度和对比度。
在Matlab中,可以使用像素重采样和直方图匹配等方法进行图像归一化。
像素重采样通过重新排列图像的像素来改变图像的尺寸,而直方图匹配则通过调整图像的直方图分布来改变图像的亮度和对比度。
二、图像特征提取图像特征提取是图像识别的关键步骤,它可以将图像中的信息抽象成一组用于表示图像的特征。
在Matlab中,常用的图像特征包括颜色特征、纹理特征和形状特征等。
2.1 颜色特征颜色是图像中最直观的特征之一,它可以用于区分不同目标或者图像的不同部分。
在Matlab中,可以使用颜色直方图、颜色矩和颜色共生矩阵等方法来提取图像的颜色特征。
颜色直方图统计了图像中每个颜色的像素数目,而颜色矩则描述了图像的颜色分布情况。
颜色共生矩阵则反映了不同颜色之间的相对分布情况,从而提取出图像的纹理特征。
如何进行MATLAB图像处理
如何进行MATLAB图像处理一、引言图像处理是计算机视觉和图像分析领域中的重要任务之一。
而MATLAB是一种强大的数学计算软件,也被广泛应用于图像处理。
本文将介绍如何使用MATLAB进行图像处理,并探讨一些常见的图像处理技术。
二、图像处理基础在开始使用MATLAB进行图像处理之前,我们需要了解一些基础知识。
一个图像通常由像素组成,每个像素都有一个灰度值或者RGB(红绿蓝)三个通道的值。
图像的处理可以分为两个主要方面:空间域处理和频域处理。
1. 空间域处理空间域图像处理是指直接对图像的像素进行操作,常见的处理方法包括亮度调整、对比度增强和图像滤波等。
MATLAB提供了一系列函数和工具箱来进行这些处理。
例如,要调整图像的亮度,可以使用imadjust函数。
该函数可以通过调整输入图像的灰度值范围,实现亮度的增强或者降低。
下面是一个简单的例子:```matlabI = imread('image.jpg'); % 读取图像J = imadjust(I,[0.2 0.8],[0 1]); % 调整亮度范围imshow(J); % 显示图像```2. 频域处理频域图像处理是指将图像从空间域转换到频域进行处理,常见的处理方法包括傅里叶变换和滤波等。
MATLAB提供了fft和ifft等函数来进行频域处理。
例如,要对图像进行傅里叶变换,可以使用fft2函数。
该函数将图像转换为频率域表示,可以进一步进行滤波等处理。
下面是一个简单的例子:```matlabI = imread('image.jpg'); % 读取图像F = fft2(I); % 傅里叶变换F = fftshift(F); % 频率域中心化imshow(log(1 + abs(F)),[]); % 显示频率域图像```三、图像处理技术了解了图像处理的基础知识后,我们可以探索一些常见的图像处理技术。
以下将介绍几个常用的技术,并给出相应的MATLAB代码示例。
在Matlab中进行图像处理的基本步骤和方法
在Matlab中进行图像处理的基本步骤和方法图像处理是一门涉及数字图像的处理技术和方法的学科,它可以帮助我们从图像中获取有用的信息,并改进图像的质量。
Matlab是一种广泛应用于科学和工程领域的高级计算机语言和环境,也是图像处理的重要工具之一。
本文将介绍在Matlab中进行图像处理的基本步骤和方法。
一、图像的读取和显示在开始进行图像处理之前,我们首先需要读取和显示图像。
在Matlab中,可以使用imread函数读取图像文件,该函数会返回一个包含图像像素值的矩阵。
通过imshow函数可以将图像显示在Matlab的图像窗口中。
同时,也可以使用imwrite函数将处理后的图像数据保存为图像文件。
二、图像的预处理在进行一系列的图像处理操作之前,通常需要对图像进行预处理,以提高后续处理步骤的效果。
常见的图像预处理方法包括灰度化、降噪、增强对比度等操作。
1. 灰度化灰度化是将彩色图像转化为灰度图像的过程。
在Matlab中,可以使用rgb2gray 函数将彩色图像转化为灰度图像。
灰度图像只有一个通道,每个像素的值表示了该像素的亮度。
2. 降噪图像中常常存在各种噪声,如高斯噪声、椒盐噪声等。
为了提高图像质量和后续处理的准确性,可以使用图像降噪方法来减少这些噪声的影响。
Matlab中提供了一些常用的降噪函数,如medfilt2、wiener2等,可以根据实际需求选择合适的方法来降噪。
3. 增强对比度对比度是指图像中不同亮度之间的差异程度。
当图像的对比度较低时,图像细节会变得不明显。
为了提高图像的可视化效果,可以使用一些增强对比度的方法。
例如,可以使用imadjust函数对图像的像素值进行调整,以拉伸图像的灰度级范围。
三、图像的滤波滤波在图像处理中起到了非常重要的作用,可以用来平滑图像、提取图像的边缘等。
在Matlab中,提供了多种滤波函数,可以根据需求选择合适的滤波方法。
1. 均值滤波均值滤波是一种常见的平滑滤波方法,可以用来消除图像中的高频噪声。
imshow在matlab中的用法
imshow在matlab中的用法
imshow是Matlab中处理图像的重要函数。
它主要用于显示图像。
当图像处理
结束后,最常见的结果之一就是显示它们。
imshow可以从图像矩阵中生成图像,
并在窗口中显示它们。
在使用imshow之前,必须先读取图像文件。
一旦打开了图
像文件,可以使用imshow显示图像的关键特征。
在Matlab中,imshow的基本用法很简单。
首先调用imread读取图像文件,接
着将图像矩阵作为输入传递给imshow函数。
imshow默认情况下会将图像缩放到合适的大小以适合显示区域。
其中,imshow命令后面可以加上“[]”或“值”,以设置图像的显示或缩放范围。
对于彩色图像,imshow函数默认使用RGB颜色空间。
如果要使用其他颜色空间,则要使用其他函数将颜色空间转换为RGB。
使用imshow函数时,必须考虑到颜色空间的影响。
除此之外,imshow函数还有一些常见的用法,如在同一窗口中显示多个图像、在图像中加入注释等。
在Matlab中,imshow函数是必不可少的图像处理函数。
无
论是初学者还是专业人士,都需要熟练掌握这个函数。
MATLAB彩色图像处理
色彩平衡是调整图像中颜色分量的过程,以改善图像的色彩表现。在Matlab中,可以 使用colorbalance函数进行色彩平衡。
03
图像滤波与变换
图像滤波
均值滤波
通过将像素邻域的平均 值赋给输出图像的相应 像素,减少图像中的噪
声。
中值滤波
将像素值替换为其邻域 的中值,对去除椒盐噪
声特别有效。
高斯滤波
使用高斯函数对图像进 行平滑处理,有助于减
少图像中的细节。
双边滤波
结合了像素的空间邻近 度和灰度值相似度,能
够保留边缘信息。
图像变换
傅里叶变换
小波变换
将图像从空间域转换到频率域,用于分析 图像的频率成分。
将图像分解成不同频率和方向的小波系数 ,用于图像压缩和特征提取。
离散余弦变换(DCT)
支持向量机(SVM)
基于统计学习理论的分类器,用于图像识别。
05
Matlab应用实例
图像平滑处理
01
02
03
均值滤波
通过将像素邻域的平均值 赋给输出图像的相应像素, 减少图像中的噪声。
高斯滤波
利用高斯函数的形状对图 像进行平滑,对图像的边 缘进行平滑处理,减少噪 声的影响。
中值滤波
将像素邻域的中值赋给输 出图像的相应像素,对去 除椒盐噪声特别有效。
图像锐化处理
拉普拉斯算子
利用拉普拉斯算子对图像 进行锐化,增强图像的边 缘和细节。
梯度算子
基于图像梯度的锐化方法, 能够突出显示图像中的边 缘和其他高频部分。
Sobel算子
通过计算像素邻域内像素 的加权差分,实现图像的 锐化。
图像边缘检测
Canny边缘检测
im在matlab中的用法
im在matlab中的用法MATLAB是一款功能强大的数学软件和编程环境,广泛应用于科学计算、数据分析和工程设计等领域。
其中,IM(Image Processing Toolbox)是MATLAB中用于图像处理的工具箱。
下面将介绍MATLAB中IM的一些常见用法。
首先,IM可以在MATLAB环境中用来读取、显示和保存图像。
通过使用imread函数,我们可以读取各种格式的图像文件,如JPEG、PNG和BMP等。
然后,使用imshow函数可以将图像立即显示在MATLAB的窗口中。
最后,通过imwrite函数,我们可以将处理后的图像保存为指定格式的文件。
其次,IM还提供了一系列功能强大的图像处理函数,可以对图像进行各种操作和处理。
比如,imresize函数可以改变图像的大小,imrotate函数可以对图像进行旋转,imadjust函数可以调整图像的对比度和亮度,imfilter函数可以应用各种滤波器对图像进行平滑和增强等。
这些函数都具有丰富的参数选项,可以根据实际需求进行设置,灵活地进行图像处理操作。
此外,IM还提供了一些常用的图像分析和特征提取函数。
比如,imhist函数可以计算图像的直方图,im2bw函数可以将图像转化为二值图像,imfindcircles函数可以检测图像中的圆形目标等。
这些函数可以帮助我们快速分析图像的特征和属性,为进一步的处理和分析提供便利。
最后,IM还支持图像的处理和分析的自定义算法开发。
通过编写MATLAB脚本文件,我们可以实现自己的图像处理算法,利用IM提供的函数接口进行图像数据的读取、处理和保存等。
这为图像处理领域的研究和开发提供了广阔的空间。
在MATLAB中使用IM进行图像处理,不仅提供了丰富的图像处理函数和工具,而且具有简单易学的特点。
通过灵活的参数设置和自定义算法开发,我们可以快速高效地实现各种图像处理任务。
无论是科学研究、工程设计还是数据分析,IM都是一个非常有用的工具箱,可以极大地提升我们的工作效率和研究成果。
Matlab图像处理技术的实践应用
Matlab图像处理技术的实践应用近年来,图像处理技术在各个领域中的应用越来越广泛,如医学影像、工业检测、图像识别等。
而作为一种强大的工具,Matlab在图像处理方面发挥着重要的作用。
本文将探讨Matlab图像处理技术的实践应用,并深入了解其中的数学原理和相关算法。
一、图像基本处理在图像处理的初始阶段,我们往往需要对图像进行一些基本的处理,如读取、显示、保存等。
Matlab提供了丰富的图像处理函数,可以轻松完成这些任务。
首先,我们需要读取图像文件。
在Matlab的Image Processing Toolbox中,使用imread函数即可实现。
例如,使用以下命令可以读取一张名为"image.jpg"的图像文件:image = imread('image.jpg');接下来,我们可以使用imshow函数将图像显示在Matlab的图像窗口中,如下所示:imshow(image);此外,Matlab还提供了imwrite函数,用于将图像保存为指定的文件格式。
例如,以下命令可以将图像保存为PNG格式:imwrite(image, 'image.png');二、图像增强和滤波在实际应用中,我们往往需要对图像进行增强或滤波,以提高图像的质量或减少噪声。
Matlab提供了许多图像增强和滤波的函数,如直方图均衡化、中值滤波等。
直方图均衡化是一种常用的图像增强方法,用于提高图像的对比度。
在Matlab 中,我们可以使用histeq函数来实现直方图均衡化。
例如,以下代码将对图像进行直方图均衡化处理:enhanced_image = histeq(image);除了直方图均衡化,Matlab还提供了许多其他的图像增强方法,如局部对比度增强、锐化等。
这些方法可以根据具体的需求选择和调整。
另一方面,滤波是图像处理中常用的一种技术,用于降低噪声或模糊图像。
Matlab提供了常见的滤波方法,如均值滤波、中值滤波等。
MATLAB图像处理命令集汇
MATLAB图像处理命令集汇1.applylut功能:在二进制图像中利用lookup表进行边沿操作. 语法:A = applylut(BW,lut)举例lut = makelut('sum(x(:)) == 4',2);BW1 = imread('text.tif');BW2 = applylut(BW1,lut);imshow(BW1)figure, imshow(BW2)相关命令:makelut2.bestblk功能:确定进行块操作的块大小.语法:siz = bestblk([m n],k)[mb,nb] = bestblk([m n],k)举例siz = bestblk([640 800],72)siz =64 50相关命令:blkproc3.blkproc功能:MATLAB高级应用——图形及影像处理320 实现图像的显式块操作.语法:B = blkproc(A,[m n],fun)B = blkproc(A,[m n],fun,P1,P2,...)B = blkproc(A,[m n],[mborder nborder],fun,...)B = blkproc(A,'indexed',...)举例I = imread('alumgrns.tif');I2 = blkproc(I,[8 8],'std2(x)*ones(size(x))'); imshow(I)figure, imshow(I2,[]);相关命令:colfilt, nlfilter,inline4.brighten功能:增加或降低颜色映像表的亮度. 语法:brighten(beta)newmap = brighten(beta) newmap = brighten(map,beta) brighten(fig,beta)相关命令:imadjust, rgbplot5.bwarea功能:计算二进制图像对象的面积.语法:total = bwarea(BW)举例BW = imread('circles.tif'); imshow(BW);附录MATLAB图像处理命令321 bwarea(BW)ans =15799相关命令:bweuler, bwperim6.bweuler.功能:计算二进制图像的欧拉数.语法:eul = bweuler(BW,n)举例BW = imread('circles.tif'); imshow(BW);bweuler(BW)ans =-2相关命令:bwmorph, bwperim7.bwfill功能:填充二进制图像的背景色.语法:BW2 = bwfill(BW1,c,r,n)BW2 = bwfill(BW1,n)[BW2,idx] = bwfill(...)BW2 = bwfill(x,y,BW1,xi,yi,n) [x,y,BW2,idx,xi,yi] = bwfill(...)BW2 = bwfill(BW1,'holes',n)[BW2,idx] = bwfill(BW1,'holes',n)举例MATLAB高级应用——图形及影像处理322 BW1 =[1 0 0 0 0 0 0 01 1 1 1 1 0 0 01 0 0 0 1 0 1 01 0 0 0 1 1 1 01 1 1 1 0 1 1 11 0 0 1 1 0 1 01 0 0 0 1 0 1 01 0 0 0 1 1 1 0]BW2 = bwfill(BW1,3,3,8)BW2 =1 0 0 0 0 0 0 01 1 1 1 1 0 0 01 1 1 1 1 0 1 01 1 1 1 1 1 1 01 1 1 1 0 1 1 11 0 0 1 1 0 1 01 0 0 0 1 0 1 01 0 0 0 1 1 1 0I = imread('blood1.tif');BW3 = ~im2bw(I);BW4 = bwfill(BW3,'holes');imshow(BW3)figure, imshow(BW4)相关命令:bwselect, roifill8.bwlabel功能:标注二进制图像中已连接的部分.语法:附录MATLAB图像处理命令323L = bwlabel(BW,n)[L,num] = bwlabel(BW,n)举例BW = [1 1 1 0 0 0 0 01 1 1 0 1 1 0 01 1 1 0 1 1 0 01 1 1 0 0 0 1 01 1 1 0 0 0 1 01 1 1 0 0 0 1 01 1 1 0 0 1 1 01 1 1 0 0 0 0 0]L = bwlabel(BW,4)L =1 1 1 0 0 0 0 01 1 1 02 2 0 01 1 1 02 2 0 01 1 1 0 0 0 3 01 1 1 0 0 0 3 01 1 1 0 0 0 3 01 1 1 0 0 3 3 01 1 1 0 0 0 0 0[r,c] = find(L==2);rc = [r c]rc =2 53 52 63 6相关命令:bweuler, bwselect9.bwmorph功能:提取二进制图像的轮廓.语法:BW2 = bwmorph(BW1,operation)BW2 = bwmorph(BW1,operation,n)举例BW1 = imread('circles.tif');MATLAB高级应用——图形及影像处理324 imshow(BW1);BW2 = bwmorph(BW1,'remove');BW3 = bwmorph(BW1,'skel',Inf);imshow(BW2)figure, imshow(BW3)相关命令:bweuler, bwperim, dilate, erode10.bwperim功能:计算二进制图像中对象的周长.语法:BW2 = bwperim(BW1,n)举例BW1 = imread('circbw.tif');BW2 = bwperim(BW1,8);imshow(BW1)figure, imshow(BW2)附录MATLAB图像处理命令325相关命令:bwarea, bweuler, bwfill11.bwselect功能:在二进制图像中选择对象.语法:BW2 = bwselect(BW1,c,r,n)BW2 = bwselect(BW1,n)[BW2,idx] = bwselect(...)举例BW1 = imread('text.tif');c = [16 90 144];r = [85 197 247];BW2 = bwselect(BW1,c,r,4);imshow(BW1)figure, imshow(BW2)相关命令:bwfill, bwlabel, impixel, roipoly, roifill12.cmpermuteMATLAB高级应用——图形及影像处理326 功能:调整颜色映像表中的颜色.语法:[Y,newmap] = cmpermute(X,map)[Y,newmap] = cmpermute(X,map,index)举例To order a colormap by luminance, use:ntsc = rgb2ntsc(map);[dum,index] = sort(ntsc(:,1));[Y,newmap] = cmpermute(X,map,index);相关命令:randperm13.cmunique功能:查找颜色映像表中特定的颜色及相应的图像. 语法:[Y,newmap] = cmunique(X,map)[Y,newmap] = cmunique(RGB)[Y,newmap] = cmunique(I)相关命令:gray2ind, rgb2ind功能:将矩阵的列重新组织到块中.语法:A = col2im(B,[m n],[mm nn],block_type)A = col2im(B,[m n],[mm nn])相关命令:blkproc, colfilt, im2col, nlfilter15.colfilt功能:利用列相关函数进行边沿操作.语法:B = colfilt(A,[m n],block_type,fun)B = colfilt(A,[m n],block_type,fun,P1,P2,...)B = colfilt(A,[m n],[mblock nblock],block_type,fun,...)B = colfilt(A,'indexed',...)附录MATLAB图像处理命令327相关命令:blkproc, col2im, im2col, nlfilter16.colorbar功能:显示颜色条.语法:colorbar('vert')colorbar('horiz')colorbar(h)colorbarh = colorbar(...)举例I = imread('blood1.tif');h = fspecial('log');I2 = filter2(h,I);imshow(I2,[]), colormap(jet(64)), colorbar17.conv2功能:进行二维卷积操作.语法:C = conv2(A,B)C = conv2(hcol,hrow,A)C = conv2(...,shape)举例A = magic(5)A =17 24 1 8 154 6 13 20 22MATLAB高级应用——图形及影像处理32810 12 19 21 311 18 25 2 9B = [1 2 1;0 2 0;3 1 3]B =1 2 10 2 03 1 3C = conv2(A,B)C =17 58 66 34 32 38 1523 85 88 35 67 76 1655 149 117 163 159 135 6779 78 160 161 187 129 5123 82 153 199 205 108 7530 68 135 168 91 84 933 65 126 85 104 15 27相关命令:filter218.convmtx2功能:计算二维卷积矩阵.语法:T = convmtx2(H,m,n)T = convmtx2(H,[m n])相关命令:conv219.convn功能: 计算n维卷积.语法:C = convn(A,B)C = convn(A,B,shape)相关命令:conv220.corr2功能:计算两个矩阵的二维相关系数.附录MATLAB图像处理命令329语法:r = corr2(A,B)相关命令:std221.dct2功能:进行二维离散余弦变换.语法:B = dct2(A)B = dct2(A,m,n)B = dct2(A,[m n])举例RGB = imread('autumn.tif');I = rgb2gray(RGB);J = dct2(I);imshow(log(abs(J)),[]), colormap(jet(64)), colorbar J(abs(J) < 10) = 0;K = idct2(J)/255;imshow(K)相关命令:fft2, idct2, ifft222.dctmtx功能:MATLAB高级应用——图形及影像处理330计算离散余弦变换矩阵.语法:D = dctmtx(n)相关命令:dct223.dilate功能:放大二进制图像.语法:BW2 = dilate(BW1,SE)BW2 = dilate(BW1,SE,alg)BW2 = dilate(BW1,SE,...,n)举例BW1 = imread('text.tif');SE = ones(6,2);BW2 = dilate(BW1,SE);imshow(BW1)figure, imshow(BW2)相关命令:bwmorph, erode24.dither功能:通过抖动增加外观颜色分辨率,转换图像.语法:X = dither(RGB,map)BW = dither(I)相关命令:rgb2ind25.double附录MATLAB图像处理命令331功能:转换数据为双精度型.语法:B = double(A)举例A = imread('saturn.tif');B = sqrt(double(A));相关命令:im2double, im2uint, uint826.edge功能:识别强度图像中的边界.语法:BW = edge(I,'sobel')BW = edge(I,'sobel',thresh)BW = edge(I,'sobel',thresh,direction) [BW,thresh] = edge(I,'sobel',...)BW = edge(I,'prewitt')BW = edge(I,'prewitt',thresh)BW = edge(I,'prewitt',thresh,direction) [BW,thresh] = edge(I,'prewitt',...)BW = edge(I,'roberts')BW = edge(I,'roberts',thresh)[BW,thresh] = edge(I,'roberts',...)BW = edge(I,'log')BW = edge(I,'log',thresh)BW = edge(I,'log',thresh,sigma)[BW,threshold] = edge(I,'log',...)BW = edge(I,'zerocross',thresh,h)[BW,thresh] = edge(I,'zerocross',...)BW = edge(I,'canny')BW = edge(I,'canny',thresh)BW = edge(I,'canny',thresh,sigma) MATLAB高级应用——图形及影像处理332 [BW,threshold] = edge(I,'canny',...)举例I = imread('rice.tif');BW1 = edge(I,'prewitt');BW2 = edge(I,'canny');imshow(BW1);figure, imshow(BW2)27.erode功能:弱化二进制图像的边界.语法:BW2 = erode(BW1,SE)BW2 = erode(BW1,SE,alg)BW2 = erode(BW1,SE,...,n)举例BW1 = imread('text.tif');SE = ones(3,1);BW2 = erode(BW1,SE);imshow(BW1)figure, imshow(BW2)相关命令:bwmorph, dilate附录MATLAB图像处理命令33328.fft2功能:进行二维快速傅里叶变换.语法:B = fft2(A)B = fft2(A,m,n)举例load imdemos saturn2imshow(saturn2)B = fftshift(fft2(saturn2));imshow(log(abs(B)),[]), colormap(jet(64)), colorbar 相关命令:dct2, fftshift, idct2, ifft229.fftn功能: 进行n维快速傅里叶变换.语法:B = fftn(A)B = fftn(A,siz)相关命令:fft2, ifftn30.fftshiftMATLAB高级应用——图形及影像处理334功能:把快速傅里叶变换的DC组件移到光谱中心.语法:B = fftshift(A)举例B = fftn(A);C = fftshift(B);相关命令:fft2, fftn, ifftshift31.filter2功能:进行二维线性过滤操作.语法:B = filter2(h,A)B = filter2(h,A,shape)举例A = magic(6)A =35 1 6 26 19 243 32 7 21 23 2531 9 2 22 27 208 28 33 17 10 1530 5 34 12 14 164 36 29 13 18 11h = fspecial('sobel')h =1 2 10 0 0-1 -2 -1B = filter2(h,A,'valid')B =-8 4 4 -8-23 -44 -5 40-23 -50 1 40-8 4 4 -8相关命令:conv2, roifilt232.freqspace附录MATLAB图像处理命令335 功能:确定二维频率响应的频率空间. 语法:[f1,f2] = freqspace(n)[f1,f2] = freqspace([m n])[x1,y1] = freqspace(...,'meshgrid') f = freqspace(N)f = freqspace(N,'whole')相关命令:fsamp2, fwind1, fwind233.freqz2功能:计算二维频率响应.语法:[H,f1,f2] = freqz2(h,n1,n2)[H,f1,f2] = freqz2(h,[n2 n1])[H,f1,f2] = freqz2(h,f1,f2)[H,f1,f2] = freqz2(h)[...] = freqz2(h,...,[dx dy])[...] = freqz2(h,...,dx)freqz2(...)举例Hd = zeros(16,16);Hd(5:12,5:12) = 1;Hd(7:10,7:10) = 0;h = fwind1(Hd,bartlett(16));colormap(jet(64))freqz2(h,[32 32]); axis ([-1 1 -1 1 0 1])34.fsamp2MATLAB高级应用——图形及影像处理336功能:用频率采样法设计二维FIR过滤器.语法:h = fsamp2(Hd)h = fsamp2(f1,f2,Hd,[m n])举例[f1,f2] = freqspace(21,'meshgrid');Hd = ones(21);r = sqrt(f1.^2 + f2.^2);Hd((r0.5)) = 0;colormap(jet(64))mesh(f1,f2,Hd)相关命令:conv2, filter2, freqspace, ftrans2, fwind1, fwind2 35.fspecial功能:创建预定义过滤器.语法:h = fspecial(type)h = fspecial(type,parameters)举例I = imread('saturn.tif');h = fspecial('unsharp',0.5);I2 = filter2(h,I)/255;imshow(I)figure, imshow(I2)相关命令:conv2, edge, filter2, fsamp2, fwind1, fwind236.ftrans2功能:通过频率转换设计二维FIR过滤器.语法:附录MATLAB图像处理命令337h = ftrans2(b,t)h = ftrans2(b)举例colormap(jet(64))b = remez(10,[0 0.05 0.15 0.55 0.65 1],[0 0 1 1 0 0]); [H,w] = freqz(b,1,128,'whole');plot(w/pi-1,fftshift(abs(H)))相关命令:conv2, filter2, fsamp2, fwind1, fwind237.fwind1功能:用一维窗口方法设计二维FIR过滤器.语法:h = fwind1(Hd,win)h = fwind1(Hd,win1,win2)h = fwind1(f1,f2,Hd,...)举例[f1,f2] = freqspace(21,'meshgrid');Hd = ones(21);r = sqrt(f1.^2 + f2.^2);Hd((r0.5)) = 0;colormap(jet(64))mesh(f1,f2,Hd)相关命令:conv2, filter2, fsamp2, freqspace, ftrans2, fwind2 38.fwind2功能:用二维窗口方法设计二维FIR过滤器.语法:h = fwind2(Hd,win)h = fwind2(f1,f2,Hd,win)举例[f1,f2] = freqspace(21,'meshgrid');Hd = ones(21);r = sqrt(f1.^2 + f2.^2);Hd((r0.5)) = 0;colormap(jet(64))mesh(f1,f2,Hd)MATLAB高级应用——图形及影像处理338相关命令:conv2, filter2, fsamp2, freqspace, ftrans2, fwind1 39.getimage功能:从坐标轴取得图像数据.语法:A = getimage(h)[x,y,A] = getimage(h)[...,A,flag] = getimage(h)[...] = getimage举例imshow rice.tifI = getimage;40.gray2ind功能:转换灰度图像为索引图像.语法:[X,map] = gray2ind(I,n)相关命令:ind2gray41.grayslice功能:从灰度图像创建索引图像.语法:X = grayslice(I,n)X = grayslice(I,v)举例I = imread('ngc4024m.tif');X = grayslice(I,16);imshow(I)figure, imshow(X,jet(16))附录MATLAB图像处理命令339相关命令:gray2ind42.histeq功能:用柱状图均等化增强对比.语法:J = histeq(I,hgram)J = histeq(I,n)[J,T] = histeq(I,...)举例I = imread('tire.tif');J = histeq(I);imshow(I)figure, imshow(J)imhist(I,64)figure; imhist(J,64)相关命令:brighten, imadjust, imhist43.hsv2rgb功能: 转换HSV值为RGB颜色空间.语法:rgbmap = hsv2rgb(hsvmap)RGB = hsv2rgb(HSV)相关命令:MATLAB高级应用——图形及影像处理340 rgb2hsv, rgbplot44.idct2功能:计算二维离散反余弦变换.语法:B = idct2(A)B = idct2(A,m,n)B = idct2(A,[m n])相关命令:dct2, dctmtx, fft2, ifft245.ifft2功能:计算二维快速傅里叶反变换.语法:B = ifft2(A)B = ifft2(A,m,n)相关命令:fft2, fftshift, idct246.ifftn功能: 计算n维快速傅里叶反变换.语法:B = ifftn(A)B = ifftn(A,siz)相关命令:fft2, fftn, ifft247.sim2bw功能:转换图像为二进制图像.语法:BW = im2bw(I,level)BW = im2bw(X,map,level)BW = im2bw(RGB,level)举例load treesBW = im2bw(X,map,0.4);imshow(X,map)附录MATLAB图像处理命令341 figure, imshow(BW)相关命令:ind2gray, rgb2gray48.im2col功能:重调图像块为列.语法:B = im2col(A,[m n],block_type)B = im2col(A,[m n])B = im2col(A,'indexed',...)相关命令:blkproc, col2im, colfilt, nlfilter49.im2double功能:转换图像矩阵为双精度型.语法:I2 = im2double(I1)RGB2 = im2double(RGB1)BW2 = im2double(BW1)X2 = im2double(X1,'indexed')相关命令:double, im2uint8, uint850.im2uint8功能:转换图像阵列为8位无符号整型.语法:I2 = im2uint8(I1)RGB2 = im2uint8(RGB1)BW2 = im2uint8(BW1)X2 = im2uint8(X1,'indexed')MATLAB高级应用——图形及影像处理342 相关命令:im2uint16, double, im2double, uint8, imapprox, uint16 51.im2uint16功能:转换图像阵列为16位无符号整型.语法:I2 = im2uint16(I1)RGB2 = im2uint16(RGB1)X2 = im2uint16(X1,'indexed')相关命令:im2uint8, double, im2double, uint8, uint16, imapprox 52.imadjust功能:调整图像灰度值或颜色映像表.语法:J = imadjust(I,[low high],[bottom top],gamma)newmap = imadjust(map,[low high],[bottom top],gamma) RGB2 = imadjust(RGB1,...)举例I = imread('pout.tif');J = imadjust(I,[0.3 0.7],[]);imshow(I)figure, imshow(J)相关命令:brighten, histeq53.imapprox功能:对索引图像进行近似处理.语法:[Y,newmap] = imapprox(X,map,n)附录MATLAB图像处理命令343[Y,newmap] = imapprox(X,map,tol)Y = imapprox(X,map,newmap)[...] = imapprox(...,dither_option)相关命令:cmunique, dither, rgb2ind54.imcontour功能:创建图像数据的轮廓图.语法:imcontour(I,n)imcontour(I,v)imcontour(x,y,...)imcontour(...,LineSpec)[C,h] = imcontour(...)举例I = imread('ic.tif');imcontour(I,3)相关命令:clabel, contour, LineSpec55.imcrop功能:剪切图像.语法:I2 = imcrop(I)X2 = imcrop(X,map)RGB2 = imcrop(RGB)I2 = imcrop(I,rect)X2 = imcrop(X,map,rect)RGB2 = imcrop(RGB,rect)MATLAB高级应用——图形及影像处理344 [...] = imcrop(x,y,...)[A,rect] = imcrop(...)[x,y,A,rect] = imcrop(...)举例I = imread('ic.tif');I2 = imcrop(I,[60 40 100 90]);imshow(I)figure, imshow(I2)相关命令:zoom56.imfeature功能:计算图像区域的特征尺寸.语法:stats = imfeature(L,measurements)stats = imfeature(L,measurements,n)举例BW = imread('text.tif');L = bwlabel(BW);stats = imfeature(L,'all');stats(23)ans =Area: 89Centroid: [95.6742 192.9775] BoundingBox: [87.5000 184.5000 16 15] MajorAxisLength: 19.9127 MinorAxisLength: 14.2953Eccentricity: 0.6961Orientation: 9.0845ConvexHull: [28x2 double]附录MATLAB图像处理命令345 ConvexImage: [15x16 uint8 ] ConvexArea: 205Image: [15x16 uint8 ]FilledImage: [15x16 uint8 ]FilledArea: 122EulerNumber: 0Extrema: [ 8x2 double] EquivDiameter: 10.6451Solidity: 0.4341Extent: 0.3708PixelList: [89x2 double]相关命令:bwlabel57.imfinfo功能:返回图形文件信息.语法:info = imfinfo(filename,fmt)info = imfinfo(filename)举例info = imfinfo('canoe.tif')info =Filename:'canoe.tif'FileModDate: '25-Oct-1996 22:10:39' FileSize: 69708Format: 'tif'FormatVersion: []Width: 346Height: 207BitDepth: 8ColorType: 'indexed' FormatSignature: [73 73 42 0] ByteOrder: 'little-endian' NewSubfileType: 0BitsPerSample: 8Compression: 'PackBits' PhotometricInterpretation: 'RGB Palette' MATLAB高级应用——图形及影像处理346 StripOffsets: [ 9x1 double] SamplesPerPixel: 1RowsPerStrip: 23StripByteCounts: [ 9x1 double] XResolution: 72 YResolution: 72 ResolutionUnit: 'Inch' Colormap: [256x3 double] PlanarConfiguration: 'Chunky' TileWidth: []TileLength: []TileOffsets: [] TileByteCounts: [] Orientation: 1FillOrder: 1 GrayResponseUnit: 0.0100 MaxSampleValue: 255 MinSampleValue: 0 Thresholding: 1相关命令:imread, imwrite58.imhist功能:显示图像数据的柱状图.语法:imhist(I,n)imhist(X,map)[counts,x] = imhist(...)举例I = imread('pout.tif');imhist(I)附录MATLAB图像处理命令347 相关命令:histeq59.immovie功能:创建多帧索引图的电影动画.语法:mov = immovie(X,map)举例load mrimov = immovie(D,map);相关命令:montage60.imnoise功能:增加图像的渲染效果.语法:J = imnoise(I,type)J = imnoise(I,type,parameters)举例I = imread('eight.tif');J = imnoise(I,'salt & pepper',0.02);imshow(I)figure, imshow(J)相关命令:rand61.impixel功能:确定像素颜色值.语法:MATLAB高级应用——图形及影像处理348 P = impixel(I)P = impixel(X,map)P = impixel(RGB)P = impixel(I,c,r)P = impixel(X,map,c,r)P = impixel(RGB,c,r)[c,r,P] = impixel(...)P = impixel(x,y,I,xi,yi)P = impixel(x,y,X,map,xi,yi)P = impixel(x,y,RGB,xi,yi)[xi,yi,P] = impixel(x,y,...)举例RGB = imread('flowers.tif');c = [12 146 410];r = [104 156 129];pixels = impixel(RGB,c,r)pixels =61 59 101253 240 0237 37 44相关命令:improfile, pixval62.improfile功能:沿线段计算剖面图的像素值.语法:c = improfilec = improfile(n)c = improfile(I,xi,yi)c = improfile(I,xi,yi,n)[cx,cy,c] = improfile(...)[cx,cy,c,xi,yi] = improfile(...)[...] = improfile(x,y,I,xi,yi)[...] = improfile(x,y,I,xi,yi,n)附录MATLAB图像处理命令349[...] = improfile(...,method)举例I = imread('alumgrns.tif');x = [35 338 346 103];y = [253 250 17 148];improfile(I,x,y), grid on相关命令:impixel, pixval63.imread功能:从图形文件中读取图像.语法:A = imread(filename,fmt)[X,map] = imread(filename,fmt)[...] = imread(filename)[...] = imread(...,idx) (TIFF only)[...] = imread(...,ref) (HDF only)[...] = imread(...,'BackgroundColor',BG) (PNG only) [A,map,alpha] = imread(...) (PNG only)举例[X,map] = imread('flowers.tif',6);info = imfinfo('skull.hdf');[X,map] = imread('skull.hdf',info(4).Reference); bg = [255 0 0];A = imread('image.png','BackgroundColor',bg); MATLAB高级应用——图形及影像处理350 [A,map,alpha] = imread('image.png');相关命令:imfinfo, imwrite,fread,double,uint8,uint1664.imresize功能:改变图像大小.语法:B = imresize(A,m,method)B = imresize(A,[mrows ncols],method)B = imresize(...,method,n)B = imresize(...,method,h)65.imrotate旋转图像.语法:B = imrotate(A,angle,method)B = imrotate(A,angle,method,'crop')举例I = imread('ic.tif');J = imrotate(I,-4,'bilinear','crop');imshow(I)figure, imshow(J)相关命令:imcrop, imresize66.imshow功能:显示图像.语法:附录MATLAB图像处理命令351imshow(I,n)imshow(I,[low high])imshow(BW)imshow(X,map)imshow(RGB)imshow(...,display_option)imshow(x,y,A,...)imshow filenameh = imshow(...)相关命令:getimage, imread, iptgetpref, iptsetpref, subimage, truesize, warp 67.imwrite功能:把图像写入图形文件中.语法:imwrite(A,filename,fmt)imwrite(X,map,filename,fmt)imwrite(...,filename)imwrite(...,Param1,Val1,Param2,Val2...)举例imwrite(X,map,'flowers.hdf','Compression','none',...'WriteMode','append')相关命令:imfinfo, imread68.ind2gray功能:把检索图像转化为灰度图像.I = ind2gray(X,map)举例load treesI = ind2gray(X,map);imshow(X,map)figure,imshow(I)MATLAB高级应用——图形及影像处理352 相关命令:gray2ind, imshow, rgb2ntsc69.ind2rgb功能:转化索引图像为RGB真彩图像.语法:RGB = ind2rgb(X,map)相关命令:ind2gray, rgb2ind70.iptgetpref功能:获取图像处理工具箱参数设置.语法:value = iptgetpref(prefname)举例value = iptgetpref('ImshowAxesVisible') value =off相关命令:imshow, iptsetpref71.iptsetpref功能:设置图像处理工具箱参数.语法:iptsetpref(prefname,value)举例iptsetpref('ImshowBorder','tight')相关命令:imshow, iptgetpref, truesize72.iradon附录MATLAB图像处理命令353功能:进行反Radon变换.语法:I = iradon(P,theta)I = iradon(P,theta,interp,filter,d,n)[I,h] = iradon(...)举例P = phantom(128);R = radon(P,0:179);I = iradon(R,0:179,'nearest','Hann'); imshow(P)figure, imshow(I)相关命令:radon, phantom73.isbw功能:判断是否为二进制图像.语法:flag = isbw(A)相关命令:isind, isgray, isrgb74.isgray功能:判断是否为灰度图像.语法:flag = isgray(A)相关命令:isbw, isind, isrgb75.isindMATLAB高级应用——图形及影像处理354 功能:判断是否为索引图像.语法:flag = isind(A)相关命令:isbw, isgray, isrgb76.isrgb功能:判读是否为RGB真彩图像.语法:flag = isrgb(A)相关命令:isbw, isgray, isind77.makelut功能:创建一个用于applylut函数的lookup表.语法:lut = makelut(fun,n)lut = makelut(fun,n,P1,P2,...)举例f = inline('sum(x(:)) >= 2');lut = makelut(f,2)lut =111111111附录MATLAB图像处理命令355 11相关命令:applylut78.mat2gray功能:转化矩阵为灰度图像.语法:I = mat2gray(A,[amin amax])I = mat2gray(A)举例I = imread('rice.tif');J = filter2(fspecial('sobel'),I);K = mat2gray(J);imshow(I)figure, imshow(K)相关命令:gray2ind79.mean2功能:计算矩阵元素的平均值.语法:b = mean2(A)相关命令:std2, mean, std80.medfilt2功能:进行二维中值过滤.语法:MATLAB高级应用——图形及影像处理356 B = medfilt2(A,[m n])B = medfilt2(A)B = medfilt2(A,'indexed',...)举例I = imread('eight.tif');J = imnoise(I,'salt & pepper',0.02);K = medfilt2(J);imshow(J)figure, imshow(K)相关命令:filter2, ordfilt2, wiener281.montage功能:在矩形框中同时显示多幅图像.语法:montage(I)montage(BW)montage(X,map)montage(RGB)h = montage(...)举例load mrimontage(D,map)附录MATLAB图像处理命令357相关命令:immovie82.nlfilter功能:进行边沿操作.语法:B = nlfilter(A,[m n],fun)B = nlfilter(A,[m n],fun,P1,P2,...)B = nlfilter(A,'indexed',...)举例B = nlfilter(A,[3 3],'median(x(:))');相关命令:blkproc, colfilt83.ntsc2rgb功能: 转换NTSC的值为RGB颜色空间.语法:rgbmap = ntsc2rgb(yiqmap)RGB = ntsc2rgb(YIQ)相关命令:rgb2ntsc, rgb2ind, ind2rgb, ind2gray84.ordfilt2功能:进行二维统计顺序过滤.语法:B = ordfilt2(A,order,domain)B = ordfilt2(A,order,domain,S)MATLAB高级应用——图形及影像处理358 B = ordfilt2(...,padopt)相关命令:medfilt285.phantom功能:产生一个头部幻影图像.语法:P = phantom(def,n)P = phantom(E,n)[P,E] = phantom(...)举例P = phantom('Modified Shepp-Logan',200); imshow(P)相关命令:radon, iradon86.pixval功能:显示图像像素信息.语法:pixval onpixval offpixvalpixval(fig,option)相关命令:impixel, improfile87.qtdecomp功能:进行四叉树分解.附录MATLAB图像处理命令359语法:S = qtdecomp(I)S = qtdecomp(I,threshold)S = qtdecomp(I,threshold,mindim)S = qtdecomp(I,threshold,[mindim maxdim]) S = qtdecomp(I,fun)S = qtdecomp(I,fun,P1,P2,...)举例I = [1 1 1 1 2 3 6 61 12 1 4 5 6 81 1 1 1 10 15 7 71 1 1 1 20 25 7 720 22 20 22 1 2 3 420 22 22 20 5 6 7 820 22 20 20 9 10 11 1222 22 20 20 13 14 15 16];S = qtdecomp(I,5);full(S)ans =4 0 0 0 2 0 2 00 0 0 0 0 0 0 00 0 0 0 1 1 2 00 0 0 0 1 1 0 04 0 0 0 2 0 2 00 0 0 0 0 0 0 00 0 0 0 2 0 2 00 0 0 0 0 0 0 0相关命令:qtgetblk, qtsetblk88.qtgetblk功能:获取四叉树分解中的块值.语法:[vals,r,c] = qtgetblk(I,S,dim)MATLAB高级应用——图形及影像处理360 [vals,idx] = qtgetblk(I,S,dim)举例[vals,r,c] = qtgetblk(I,S,4)vals(:,:,1) =1 1 1 11 12 11 1 1 11 1 1 1vals(:,:,2) =20 22 20 2220 22 22 2020 22 20 2022 22 20 20r =15c =11相关命令:qtdecomp, qtsetblk89.qtsetblk功能:设置四叉树分解中的块值.语法:J = qtsetblk(I,S,dim,vals)举例newvals = cat(3,zeros(4),ones(4));J = qtsetblk(I,S,4,newvals)J =0 0 0 0 2 3 6 60 0 0 0 4 5 6 80 0 0 0 10 15 7 7附录MATLAB图像处理命令3610 0 0 0 20 25 7 71 1 1 1 123 41 1 1 1 5 6 7 81 1 1 1 9 10 11 121 1 1 1 13 14 15 16相关命令:qtdecomp, qtgetblk90.radon功能: 计算Radon变换.语法:R = radon(I,theta)R = radon(I,theta,n)[R,xp] = radon(...)举例iptsetpref('ImshowAxesVisible','on')I = zeros(100,100);I(25:75,25:75) = 1;theta = 0:180;[R,xp] = radon(I,theta);imshow(theta,xp,R,[]), colormap(hot), colorbar 相关命令:iradon, phantom91.rgb2gray功能: 转换RGB图像或颜色映像表为灰度图像. 语法:I = rgb2gray(RGB)newmap = rgb2gray(map)相关命令:MATLAB高级应用——图形及影像处理362 ind2gray, ntsc2rgb, rgb2ind, rgb2ntsc92.rgb2hsv功能: 转化RGB值为HSV颜色空间.语法:hsvmap = rgb2hsv(rgbmap)HSV = rgb2hsv(RGB)相关命令:hsv2rgb, rgbplot93.rgb2ind功能: 转化RGB图像为索引图像.语法:[X,map] = rgb2ind(RGB,tol)[X,map] = rgb2ind(RGB,n)X = rgb2ind(RGB,map)[...] = rgb2ind(...,dither_option)举例RGB = imread('flowers.tif');[X,map] = rgb2ind(RGB,128);imshow(X,map)相关命令:cmunique, dither, imapprox, ind2rgb, rgb2gray 94.rgb2ntsc功能: 转化RGB的值为NTSC颜色空间.语法:yiqmap = rgb2ntsc(rgbmap)YIQ = rgb2ntsc(RGB)附录MATLAB图像处理命令363相关命令:ntsc2rgb, rgb2ind, ind2rgb, ind2gray95.rgb2ycbcr功能: 转化RGB的值为YcbCr颜色空间.语法:ycbcrmap = rgb2ycbcr(rgbmap)YCBCR = rgb2ycbcr(RGB)相关命令:ntsc2rgb, rgb2ntsc, ycbcr2rgb96.rgbplot功能:划分颜色映像表.语法:rgbplot(map)举例rgbplot(jet)相关命令:colormap97.roicolor功能:选择感兴趣的颜色区.语法:BW = roicolor(A,low,high)BW = roicolor(A,v)举例I = imread('rice.tif');BW = roicolor(I,128,255);imshow(I);MATLAB高级应用——图形及影像处理364 figure, imshow(BW)相关命令:roifilt2, roipoly98.roifill功能:在图像的任意区域中进行平滑插补.语法:J = roifill(I,c,r)J = roifill(I)J = roifill(I,BW)[J,BW] = roifill(...)J = roifill(x,y,I,xi,yi)[x,y,J,BW,xi,yi] = roifill(...)举例I = imread('eight.tif');c = [222 272 300 270 221 194];r = [21 21 75 121 121 75];J = roifill(I,c,r);imshow(I)figure, imshow(J)附录MATLAB图像处理命令365相关命令:roifilt2, roipoly99.roifilt2功能:过滤敏感区域.语法:J = roifilt2(h,I,BW)J = roifilt2(I,BW,fun)J = roifilt2(I,BW,fun,P1,P2,...)举例h = fspecial('unsharp');J = roifilt2(h,I,BW);imshow(J)相关命令:filter2, roipoly100.roipoly功能:选择一个敏感的多边形区域.语法:BW = roipoly(I,c,r)BW = roipoly(I)BW = roipoly(x,y,I,xi,yi)[BW,xi,yi] = roipoly(...)[x,y,BW,xi,yi] = roipoly(...)举例I = imread('eight.tif');c = [222 272 300 270 221 194];r = [21 21 75 121 121 75];BW = roipoly(I,c,r);imshow(I)MATLAB高级应用——图形及影像处理366 figure, imshow(BW)相关命令:roifilt2, roicolor, roifill101.std2功能:计算矩阵元素的标准偏移.语法:b = std2(A)相关命令:corr2, mean2102.subimage功能:在一幅图中显示多个图像.语法:subimage(X,map)subimage(I)subimage(BW)subimage(RGB)subimage(x,y,...)h = subimage(...)举例load trees[X2,map2] = imread('forest.tif');subplot(1,2,1), subimage(X,map)subplot(1,2,2), subimage(X2,map2)相关命令:附录MATLAB图像处理命令367103.truesize功能:调整图像显示尺寸.语法:truesize(fig,[mrows mcols])truesize(fig)相关命令:imshow, iptsetpref, iptgetpref104.uint8功能:转换数据为8位无符号整型.语法:B = uint8(A)举例a = [1 3 5];b = uint8(a);whosName Size Bytes Classa 1x3 24 doublearrayb 1x3 3 uint8 array相关命令:double, im2double, im2uint8105.uint16功能:转换数据为16位无符号整型.语法:I = uint16(X)MATLAB高级应用——图形及影像处理368 举例a = [1 3 5];b = uint16(a);whosName Size Bytes Classa 1x3 24 double array。
MATLABImageProcessing图像处理入门教程
MATLABImageProcessing图像处理入门教程MATLAB图像处理入门教程第一章:图像处理基础知识图像处理是指对于数字图像进行各种操作和处理的过程。
在本章中,我们将介绍一些基础的图像处理知识。
1.1 数字图像表示数字图像是由像素组成的二维数组,每个像素表示图像中的一个点。
每个像素的值表示该点的亮度或颜色。
1.2 MATLAB中的图像表示在MATLAB中,图像可以用二维矩阵表示,其中每个元素对应一个像素的亮度或颜色值。
常见的图像格式包括灰度图像和彩色图像。
1.3 图像读取和显示使用MATLAB的imread函数可以读取图像文件,imshow函数可以显示图像。
第二章:图像预处理在进行实际的图像处理之前,通常需要对图像进行预处理,以提取感兴趣的信息或减少噪声。
2.1 图像平滑平滑操作可以减少图像中的噪声。
常见的平滑方法包括均值滤波和高斯滤波。
2.2 边缘检测边缘检测可以找到图像中的边缘区域。
常用的边缘检测算法包括Sobel算子和Canny算子。
2.3 图像分割图像分割可以将图像划分为不同的区域,以便后续的处理。
常见的图像分割算法包括阈值分割和区域生长算法。
第三章:图像增强图像增强可以提高图像的质量和清晰度,使图像更易于理解和分析。
3.1 直方图均衡化直方图均衡化可以增强图像的对比度,使图像的灰度值分布更均匀。
3.2 锐化锐化操作可以增强图像的边缘和细节。
常见的锐化算法包括拉普拉斯算子和Sobel算子。
3.3 噪声去除噪声去除可以降低图像中的噪声,使图像更清晰。
常见的噪声去除方法包括中值滤波和小波去噪。
第四章:图像分析图像分析可以从图像中提取出感兴趣的特征或对象。
4.1 特征提取特征提取可以从图像中提取出具有代表性的特征,可以用于图像分类和识别。
4.2 图像匹配图像匹配可以找到图像中相似的区域或对象。
常见的图像匹配方法包括模板匹配和特征点匹配。
4.3 图像识别图像识别可以根据图像的特征和模式来判断图像中的对象或场景。
MATLAB图像处理工具箱的使用方法
MATLAB图像处理工具箱的使用方法导言:MATLAB作为一种常用的数学软件,被广泛应用于科学研究和工程领域。
其中的图像处理工具箱(Image Processing Toolbox)提供了许多功能强大的工具,用于处理和分析图像数据。
本文将介绍一些常用的图像处理工具箱的使用方法,帮助读者更好地掌握这一工具箱的优势。
一、图像的读取和显示要使用MATLAB进行图像处理,首先需要将图像读入MATLAB环境中,并显示出来。
通过imread函数可以方便地读取图像文件,如下所示:img = imread('image.jpg');这将会将名为'image.jpg'的图像读入img变量中。
接下来,使用imshow函数可以将图像显示在MATLAB的图像窗口中:imshow(img);通过这种方式,我们可以直观地了解图像的内容和特征。
二、图像的灰度化和二值化在很多图像处理应用中,我们常常需要将图像转换为灰度图像或二值图像。
在MATLAB中,可以使用rgb2gray函数将彩色图像转换为灰度图像:gray_img = rgb2gray(img);这将把彩色图像img转换为灰度图像gray_img。
接下来,使用im2bw函数可以将灰度图像转换为二值图像:binary_img = im2bw(gray_img);这将把灰度图像gray_img转换为二值图像binary_img。
通过灰度化和二值化的处理,我们可以更方便地进行后续的图像分析和处理。
三、图像的平滑处理图像中常常存在噪声,这会对后续的分析和处理造成一定的干扰。
为减少这种噪声的影响,可以对图像进行平滑处理。
在MATLAB中,有多种方法可以实现图像的平滑处理,其中较常用的是均值滤波和高斯滤波。
通过使用函数imgaussfilt和imfilter,可以分别实现高斯滤波和均值滤波:smooth_img = imgaussfilt(img);或者smooth_img = imfilter(img, fspecial('average', [3 3]));这些函数可以在图像中应用指定的滤波器来平滑图像,从而减少噪声的干扰。
如何使用MATLAB进行图像拼接和合成
如何使用MATLAB进行图像拼接和合成概述:图像拼接和合成是一种将多张图片融合成一张完整图片的技术。
MATLAB作为一种功能强大的科学计算软件,提供了许多方便易用的工具包,使得图像拼接和合成变得更加简单。
本文将介绍如何使用MATLAB进行图像拼接和合成的方法和技巧。
一、图像预处理:在进行图像拼接和合成之前,首先需要对原始输入进行一系列的预处理。
这包括图像的尺寸统一、色彩平衡和去噪等操作。
MATLAB提供了许多内置函数和工具箱,可以轻松完成这些预处理工作。
1. 图像尺寸统一:由于不同图片可能具有不同的尺寸和比例,为了实现拼接和合成的目标,我们需要将所有输入图片的尺寸统一。
MATLAB中的imresize函数可以很方便地实现图像的缩放操作,使得所有图像具有相同的尺寸。
2. 色彩平衡:当合成图像中不同部分的色彩不匹配时,我们需要进行色彩平衡操作,使得整体图像具有统一的色调。
MATLAB提供了imadjust函数,可以对图像的亮度和对比度进行调整,以达到色彩平衡的效果。
3. 去噪:在拼接和合成图像时,由于图片在拍摄和处理过程中可能会出现噪点和不完整的部分,我们需要使用去噪算法来提高图像质量。
MATLAB中的imfilter函数可以实现常见的去噪算法,如中值滤波和高斯滤波等。
二、图像拼接:图像拼接是将多个图片按照一定规则拼接成一张完整图片的过程。
MATLAB 提供了多种实现图像拼接的函数和技术,下面列举其中几种常见的方法。
1. 水平拼接:水平拼接是将多张图片按照水平方向排列,形成一张更宽的图片。
MATLAB 中的imresize和imwrite函数可以实现此功能。
首先,将所有输入图片调整为相同的高度和宽度,然后调用imwrite函数将它们水平排列在一起。
2. 垂直拼接:垂直拼接是将多张图片按照垂直方向排列,形成一张更高的图片。
与水平拼接类似,需要先调整所有输入图片为相同的高度和宽度,然后使用imwrite函数将它们垂直排列在一起。
如何在Matlab中进行图像去除与补全
如何在Matlab中进行图像去除与补全一、引言图像是由无数个像素点组成的,每个像素点的颜色值代表了图像的一部分信息。
然而,在现实生活中,图像往往会受到各种噪声的干扰,导致图像质量降低。
为了提高图像的质量,我们需要对图像进行去除与补全。
在本篇文章中,将介绍如何使用Matlab进行图像的去除与补全操作。
二、图像去除图像去除是指通过一定的方法去除图像中的噪声,使图像恢复到原始的清晰状态。
在Matlab中,可以使用各种滤波器进行图像去除操作。
1. 中值滤波器中值滤波器是一种常用的图像去噪方法。
它的原理是将每个像素点的颜色值替换为该像素点周围邻域内颜色值的中值。
通过计算邻域内颜色值的中值,并将该中值作为该像素点的颜色值,可以有效地去除图像中的噪声。
在Matlab中,可以使用medfilt2函数来实现中值滤波。
例如,要对一幅图像img进行中值滤波,可以使用以下代码:filtered_img = medfilt2(img);2. 均值滤波器均值滤波器是另一种常用的图像去噪方法。
它的原理是将每个像素点的颜色值替换为该像素点周围邻域内颜色值的平均值。
通过计算邻域内颜色值的平均值,并将该平均值作为该像素点的颜色值,也可以有效地去除图像中的噪声。
在Matlab中,可以使用imfilter函数来实现均值滤波。
例如,要对一幅图像img进行均值滤波,可以使用以下代码:filtered_img = imfilter(img, fspecial('average', [3 3]));三、图像补全图像补全是指通过一定的方法填补图像中的缺失部分,使图像完整。
在Matlab 中,可以使用插值方法进行图像的补全操作。
1. 最近邻插值最近邻插值是一种简单的插值方法,它的原理是将缺失部分的像素点的颜色值替换为与其最近邻的像素点颜色值相同。
这种方法适用于图像中没有连续变化的情况。
在Matlab中,可以使用imresize函数来进行最近邻插值。
使用Matlab进行图像拍摄与图像处理的实践方法
使用Matlab进行图像拍摄与图像处理的实践方法1. 引言人类对于图像的处理和分析,一直是科学和技术领域中的重要课题。
随着数字图像处理技术的不断发展,Matlab成为了研究者们图像处理的利器。
本文将探讨如何使用Matlab进行图像拍摄与图像处理,以帮助读者更好地理解并应用这一工具。
2. 图像拍摄图像拍摄是获取数字图像的第一步。
在拍摄过程中,摄影师需要注意一些关键因素,例如光线条件、曝光时间和焦距等。
Matlab提供了图像采集工具箱,可以与数码相机或摄像机相连,并实时获取图像数据。
通过该工具箱,用户可以调整曝光时间、白平衡和对焦等设置,以满足实际需求。
3. 图像处理预处理图像拍摄后,图像预处理是必不可少的一步。
预处理可以帮助提高图像质量,并减少后续处理的复杂度。
Matlab提供了一系列的图像处理函数,可以实现预处理任务,例如灰度化、平滑滤波和直方图均衡化等。
通过这些函数,用户可以根据需要调整图像的亮度、对比度和细节等参数,以获取更好的效果。
4. 图像处理主要技术图像处理主要包括图像增强、图像复原和图像分割等技术。
Matlab提供了丰富的工具箱和函数,可以实现这些技术的应用。
例如,Matlab中的imadjust函数可以对图像进行亮度和对比度调整,imfilter函数可以实现各种滤波操作,imsharpen函数可以增强图像的边缘和细节等。
通过灵活使用这些函数,用户可以根据实际情况选择合适的方法,并通过实验不断优化处理结果。
5. 图像处理案例为了更好地理解和应用Matlab进行图像处理,下面将介绍一个实际的案例:人脸识别。
人脸识别是一种常见的图像处理应用,可以应用于安防系统、人机交互和身份认证等领域。
Matlab提供了人脸检测工具箱和人脸识别工具箱,可以帮助用户进行人脸检测和特征提取等操作。
用户可以通过这些工具箱,选择适当的算法和参数,实现人脸识别任务。
在具体实现过程中,用户需要先采集包含多张人脸的图像样本,并建立人脸数据库。
如何使用MATLAB进行图像处理和计算机视觉
如何使用MATLAB进行图像处理和计算机视觉第一章:MATLAB 图像处理基础图像处理是计算机视觉领域中的重要组成部分,而MATLAB是一种强大的数值计算和数据分析工具,也是图像处理和计算机视觉研究的常用工具之一。
本章将介绍MATLAB中的图像处理基础知识,并介绍如何使用MATLAB进行图像的加载、显示和保存。
1.1 MATLAB中的图像处理函数MATLAB提供了丰富的图像处理函数,包括图像的加载和保存、图像的显示和绘制、图像的滤波和增强等。
常用的图像处理函数包括imread、imshow、imwrite、imfilter等。
1.2 图像的加载和显示使用imread函数可以加载图像,imread函数可以读取各种格式的图像文件,如PNG、JPEG、BMP等。
使用imshow函数可以显示图像,并提供了多种显示选项,如调整图像的亮度、对比度等。
1.3 图像的保存使用imwrite函数可以保存图像到指定的文件中,可以保存为各种格式的图像文件,如PNG、JPEG、BMP等。
同时,imwrite函数也支持指定图像的压缩质量和压缩格式。
第二章:图像滤波和增强图像滤波和增强是图像处理中重要的操作,可以用于去除图像中的噪声、增强图像的细节等。
MATLAB提供了丰富的图像滤波和增强函数,本章将介绍常用的图像滤波和增强方法,并结合MATLAB中的函数进行实例演示。
2.1 图像平滑使用平滑滤波可以去除图像中的噪声,常用的平滑滤波方法有均值滤波、中值滤波和高斯滤波等。
MATLAB中的imfilter函数可以实现这些滤波方法,根据需要选择不同的参数进行滤波操作。
2.2 图像锐化图像锐化可以增强图像的细节和边缘,常用的图像锐化方法有拉普拉斯锐化和梯度锐化等。
MATLAB中的imfilter函数和imgradient函数可以实现这些锐化方法,同样需要根据需求选择不同的参数。
2.3 对比度增强对比度增强可以增强图像的视觉效果,而不改变图像的色彩信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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函数用于输出图像,其语法格式为:imwrite(X,map,filename,fmt)imwrite(X,map,filename,fmt)按照fmt指定的格式将图像数据矩阵X和调色板map写入文件filename。
C、imfinfoimfinfo函数用于读取图像文件的有关信息,其语法格式为imfinfo(filename,fmt)imfinfo函数返回一个结构info,它反映了该图像的各方面信息,其主要数据包括:文件名(路径)、文件格式、文件格式版本号、文件的修改时间、文件的大小、文件的长度、文件的宽度、每个像素的位数、图像的类型等。
2.MATLAB中图像文件的显示imshowimshow函数是最常用的显示各种图像的函数,其语法如下:imshow(X,map)其中X是图像数据矩阵,map是其对应的颜色矩阵,若进行图像处理后不知道图像数据的值域可以用[]代替map。
(1)二进制(二值)图像显示方法,在MATLAB中一幅二值图像是uint8或双精度的,该矩阵仅包含0和1。
如果希望工具箱中的函数能将图像理解为二进制的,那么所有数据都要是逻辑数据,必须对其进行设置(将所有数据标志均设置on).可以对数据利用“~”取反操作实现图像逆转即黑白反色。
(2)灰度图像的显示方法,正常情况下无需指定灰度图像的调色板格式。
可以是使用imshow函数指定要显示灰度级数目,格式 imshow(I,n),n为指定的灰度级数目。
用户也可以指定数据的范围,格式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(‘rice.tif’);Imshow(I);J=imread(‘flowers.tif’);figure,imshow(J);也可以将多幅图像显示在同一个单独的图像窗口中,有两种方法:一种是联合imshow和subplot函数;另一种是联合使用subimage函数和subplot函数,subplot(m,n,p)这种格式将图形窗口划分为m*n个矩形显示区域并激活第p个显示区域。
A[x1,map1]=imread('trees.tif');[x2,map2]=imread('forest.tif');subplot(1,2,1),imshow(x1,map1)subplot(1,2,2),imshow(x2,map2)B[x1,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的直方图,map为调色板。
例: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经过直方图调整后的图像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.图像类型转换:上表中函数有类似的调用格式:函数的输入参数是图像数据矩阵(如果是索引图像,那么输入参数还包括调色板),返回值是转换后的函数(包括索引函数的调色板),只有函数im2bw的调用格式不同,其输入参数中还包括一个截取阈值,超过此阈值的像素被截取为1否则为0。
示例:A、load treesBW = im2bw(X,map,0.4);imview(X,map),imview(BW)B、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(rgb1);也可以使用MATLAB函数对图像存储类型进行转换。
例如,double函数可以将uint8或 uint16的数据转化为双精度数据。
存储类型之间的转变将改变matlab及其工具箱理解图像数据的方式,如果用户希望转换后得到的数组能够被正确的理解为图像数据,那么转换时需要重新标度或偏移数据。
当使用较少的类型来描述数字图像时,通常可能丢失用户图像的一些信息。
7.图像格式之间的转换可以间接利用图像读写函数来完成;首先使用imread函数按照原有的图像格式进行图像读取,然后调用imwrite函数对图像进行保存,并指定图像的保存格式。
如将BMP格式转换为PNG格式,bitmap=imread(‘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 将YCBCR颜色空间转换到RGB颜色空间图像类型判断及其转换dither 用抖动法(dithering)转换图像gray2ind 灰度图像向索引图像转换grayslice 设定阀值将灰度图转换为索引图isbw 图像为二值图像则返回真isgray 图像为灰度图像则返回真isind 图像为索引图像则返回真isrgb 图像为RGB图像则返回真im2bw 设定阀值将图像转换为值维图像im2double 将图像数据阵列转换为double型im2uint8 将图像数据阵列转换为uint8型im2uint16 将图像数据阵列转换为uint16型ind2gray 索引图像向灰度图像转换ind2rgb 索引图像向RGB图像转换mat2rgb 将矩阵转换为灰度图rgb2gray RGB图像向灰度图转换rgb2ind RGB图像向索引图像转换图像处理演示函数dctdemo 二维DCT图像压缩演示edgedemo 边缘检测演示firdemo 二维FIR滤波及滤波器演示imadjdemo 灰度及调整和直方图均衡演示landsatdemo 陆地卫星颜色合成演示nrfiltdemo 噪声消除滤波演示qtdemo 四叉树分解演示roidemo 特定区域处理演示图像分析edge 得到加强图像的边缘qtdecomp 四叉树分解qtgetblk 得到四叉树分解的块值qtsetblk 调整四叉树分解的块值图像增强histeq 自动调整直方图imadjust 灰度级调整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维FFT变换fftshiftn FFT变换结果的逆象限iradon Radon逆变换idct 离散余弦离散余弦变换的逆变换idct2 计算二维离散余弦离散余弦变换的逆变换radon Radon变换邻域及块处理blkproc 执行分块操作bestblk 选择用于块处理的块尺寸col2im 对矩阵的列进行块重排colfilt 利用列式函数进行邻域操作im2col 将图像块按列重排nlfilter 执行常规滑动邻域操作图像的区域处理rolpoly 选定多边形形状的特定区域roifilt2 对图像特定区域进行滤波roifill 指定区域的快速插值roicolor 根据颜色进行图像显示colorbar 对图像增加颜色条figure 在不同的图像窗口显示不同的图像getimage 从轴上得到图像数据montage 多贞图像一次显示image 显示图像imagesc 显示亮度图像imcontour 显示一幅图画的轮廊图immovie 多帧图像转换为电影imshow 显示各类图像subimage 在一幅图形窗口中显示多个图像subplot 在同一个图形窗口中显示多图truesize 调整图像显示的大小warp 纹理乘图功能zoom 图像的区域缩放图像文件数据输入/输出imfinfo 查询图像文件信息imread 从图像文件中读数据imwrite 将数据写入到图像文件中图像的几何操作imcrop 裁剪余弦中的一部分interp2 二维数据插补imresize 同于改变图像尺寸imrotate 用于进行图像的旋转像值与统计corr2 计算尺寸相同的两个图像矩阵的相关系数applylut 利用查找表执行邻域操作bwarea 返回一幅二值图像的面积bweuler 对图像的拓扑结构的测量bwfill 进行区域的填充bwlabel 对图像中不同目标进行标注bwmorph 一系列的膨胀与腐蚀操作bwperim 决定二值图像中目标对象的轴长bwselect 对目标进行操作dilate 二值图像的膨胀erode 二值图像的腐蚀makelut 创建查找表。