1、MATLAB图像处理函数大全Matlab数字数字图像处理函数汇总:1、数字数字图像的变换 fft2:fft2函数用于数字数字图像的二维傅立叶变换,如:i=imread(104_8.tif);j=fft2(i);ifft2::ifft2函数用于数字数字图像的二维傅立叶反变换,如:i=imread(104_8.tif);j=fft2(i);k=ifft2(j);2、模拟噪声生成函数和预定义滤波器 imnoise:用于对数字数字图像生成模拟噪声,如:i=imread(104_8.tif);j=imnoise(i,gaussian,0,0.02);%模拟高斯噪声 fspecial:用于产生预定义滤波器
2、,如:h=fspecial(sobel);%sobel水平边缘增强滤波器h=fspecial(gaussian);%高斯低通滤波器h=fspecial(laplacian);%拉普拉斯滤波器h=fspecial(log);%高斯拉普拉斯(LoG)滤波器h=fspecial(average);%均值滤波器2、数字数字图像的增强直方图:imhist函数用于数字数字图像的直方图显示,如:i=imread(104_8.tif);imhist(i);直方图均化:histeq函数用于数字数字图像的直方图均化,如:i=imread(104_8.tif);j=histeq(i);对比度调整:imadjust函
3、数用于数字数字图像的对比度调整,如:i=imread(104_8.tif);j=imadjust(i,0.3,0.7,);对数变换:log函数用于数字数字图像的对数变换,如:i=imread(104_8.tif);j=double(i);k=log(j);基于卷积的数字数字图像滤波函数:filter2函数用于数字数字图像滤波,如:i=imread(104_8.tif);h=1,2,1;0,0,0;-1,-2,-1;j=filter2(h,i);线性滤波:利用二维卷积conv2滤波, 如:i=imread(104_8.tif);h=1,1,1;1,1,1;1,1,1;h=h/9;j=conv2(
4、i,h);中值滤波:medfilt2函数用于数字数字图像的中值滤波,如:i=imread(104_8.tif);j=medfilt2(i);锐化(1)利用Sobel算子锐化数字数字图像, 如:i=imread(104_8.tif);h=1,2,1;0,0,0;-1,-2,-1;%Sobel算子j=filter2(h,i);(2)利用拉氏算子锐化数字数字图像, 如:i=imread(104_8.tif);j=double(i);h=0,1,0;1,-4,0;0,1,0;%拉氏算子k=conv2(j,h,same);m=j-k;3、数字数字图像边缘检测sobel算子 如:i=imread(104_
5、8.tif);j =edge(i,sobel,thresh)prewitt算子 如:i=imread(104_8.tif);j =edge(i,prewitt,thresh)roberts算子 如:i=imread(104_8.tif);j =edge(i,roberts,thresh)log算子 如:i=imread(104_8.tif);j =edge(i,log,thresh)canny算子 如:i=imread(104_8.tif);j =edge(i,canny,thresh)Zero-Cross算子 如:i=imread(104_8.tif);j =edge(i,zerocross
6、,thresh)4、形态学数字数字图像处理膨胀:是在二值化数字数字图像中“加长”或“变粗”的操作,函数imdilate执行膨胀运算,如:a=imread(104_7.tif);%输入二值数字数字图像b=0 1 0;1 1 1;01 0;c=imdilate(a,b);腐蚀:函数imerode执行腐蚀,如:a=imread(104_7.tif);%输入二值数字数字图像b=strel(disk,1);c=imerode(a,b);开运算:先腐蚀后膨胀称为开运算,用imopen来实现,如:a=imread(104_8.tif);b=strel(square,2);c=imopen(a,b);闭运算:
7、先膨胀后腐蚀称为闭运算,用imclose来实现,如:a=imread(104_8.tif);b=strel(square,2);c=imclose(a,b);数字数字图像增强1. 直方图均衡化的 Matlab 实现1.1 imhist 函数功能:计算和显示数字数字图像的色彩直方图格式:imhist(I,n) imhist(X,map)说明:imhist(I,n) 其中,n 为指定的灰度级数目,缺省值为256;imhist(X,map) 就算和显示索引色数字数字图像 X 的直方图,map为调色板。用stem(x,counts) 同样可以显示直方图。1.2 imcontour 函数功能:显示数字数
8、字图像的等灰度值图格式:imcontour(I,n),imcontour(I,v)说明:n 为灰度级的个数,v 是有用户指定所选的等灰度级向量。1.3 imadjust 函数功能:通过直方图变换调整对比度格式:J=imadjust(I,low high,bottomtop,gamma) newmap=imadjust(map,low high,bottomtop,gamma)说明:J=imadjust(I,low high,bottomtop,gamma) 其中,gamma 为校正量r,lowhigh 为原数字数字图像中要变换的灰度范围,bottom top指定了变换后的灰度范围;newmap
9、=imadjust(map,lowhigh,bottom top,gamma) 调整索引色数字数字图像的调色板 map 。此时若 low high 和bottom top 都为23的矩阵,则分别调整 R、G、B 3个分量。1.4 histeq 函数功能:直方图均衡化格式:J=histeq(I,hgram) J=histeq(I,n) J,T=histeq(I,.) newmap=histeq(X,map,hgram) newmap=histeq(X,map) new,T=histeq(X,.)说明:J=histeq(I,hgram) 实现了所谓“直方图规定化”,即将原是图象 I 的直方图变换成
10、用户指定的向量 hgram 。hgram 中的每一个元素都在 0,1 中;J=histeq(I,n) 指定均衡化后的灰度级数 n ,缺省值为 64;J,T=histeq(I,.)返回从能将数字数字图像 I 的灰度直方图变换成数字数字图像 J 的直方图的变换 T ;newmap=histeq(X,map) 和 new,T=histeq(X,.) 是针对索引色数字数字图像调色板的直方图均衡。2. 噪声及其噪声的 Matlab 实现 imnoise 函数格式:J=imnoise(I,type) J=imnoise(I,type,parameter)说明:J=imnoise(I,type) 返回对数字
11、数字图像 I 添加典型噪声后的有噪数字数字图像 J ,参数type 和 parameter 用于确定噪声的类型和相应的参数。3. 数字数字图像滤波的 Matlab 实现3.1 conv2 函数功能:计算二维卷积格式:C=conv2(A,B) C=conv2(Hcol,Hrow,A) C=conv2(.,shape)说明:对于 C=conv2(A,B) ,conv2 的算矩阵A 和 B 的卷积,若Ma,Nasize(A), Mb,Nb=size(B), 则 size(C)=Ma+Mb-1,Na+Nb-1;C=conv2(Hcol,Hrow,A) 中,矩阵 A 分别与Hcol 向量在列方向和 Hr
12、ow 向量在行方向上进行卷积;C=conv2(.,shape) 用来指定 conv2返回二维卷积结果部分,参数 shape 可取值如下: full为缺省值,返回二维卷积的全部结果; same返回二维卷积结果中与 A 大小相同的中间部分; valid 返回在卷积过程中,未使用边缘补 0 部分进行计算的卷积结果部分,当 size(A)size(B) 时,size(C)=Ma-Mb+1,Na-Nb+1。3.2 conv 函数功能:计算多维卷积格式:与 conv2 函数相同3.3 filter2函数功能:计算二维线型数字滤波,它与函数 fspecial 连用格式:Y=filter2(B,X) Y=fi
13、lter2(B,X,shape)说明:对于 Y=filter2(B,X) ,filter2 使用矩阵B 中的二维 FIR 滤波器对数据 X 进行滤波,结果 Y 是通过二维互相关计算出来的,其大小与 X 一样;对于Y=filter2(B,X,shape) ,filter2返回的 Y 是通过二维互相关计算出来的,其大小由参数 shape 确定,其取值如下: full返回二维相关的全部结果,size(Y)size(X); same返回二维互相关结果的中间部分,Y 与X 大小相同; valid返回在二维互相关过程中,未使用边缘补 0 部分进行计算的结果部分,有 size(Y)size(X) 。3.4 fspecial 函数功能:产生预定义滤波器格式:H=fspecial(type) H=fspecial(gaussian,n,sigma) 高斯低通滤波器 H=fspecial(sobel) Sobel 水平边缘增强滤波器 H=fspecial(prewitt) Prewitt 水平边缘增强滤波器 H=fspecial(laplacian,alpha) 近似二维拉普拉斯运算滤波器 H=fspecial(log,n,sigma) 高斯拉普拉斯(LoG)运算滤波器 H=fspecial(average,n) 均值滤波器 H=fspecial(unsharp,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1