Matlab图像处理函数汇总.doc_第1页
Matlab图像处理函数汇总.doc_第2页
Matlab图像处理函数汇总.doc_第3页
Matlab图像处理函数汇总.doc_第4页
Matlab图像处理函数汇总.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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:用于产生预定义滤波器,如: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函数用于数字图像的对比度调整,如: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(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_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,thresh)4、形态学图像处理膨胀:是在二值化图像中“加长”或“变粗”的操作,函数imdilate执行膨胀运算,如:a=imread(104_7.tif); %输入二值图像b=0 1 0;1 1 1;0 1 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);闭运算:先膨胀后腐蚀称为闭运算,用imclose来实现,如: a=imread(104_8.tif);b=strel(square,2);c=imclose(a,b);*1、dilate函数 该函数能够实现二值图像的膨胀操作,有以下形式: BW2=dilate(BW1,SE) BW2=dilate(BW1,SE,n) 其中:BW2=dilate(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行膨胀操作。输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。BW2=dilate(BW1,SE,n)表示执行膨胀操作n次。 2、erode 函数 该函数能够实现二值图像的腐蚀操作,有以下形式: BW2= erode(BW1,SE) BW2= erode(BW1,SE,n) 其中:BW2= erode(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行腐蚀操作。输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。BW2= erode(BW1,SE,n)表示执行腐蚀操作n次。 3、bwmorph函数 该函数的功能是能实现二值图像形态学运算。它的格式如下: BW2=bwmorph(BW1,operation) BW2=bwmorph(BW1,operation,n) 其中:对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算;对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算n次。operation为下列字符串之一: clean:除去孤立的像素(被0包围的1) close:计算二值闭合 dilate:用结构元素计算图像膨胀 erode:用结构元素计算图像侵蚀 4、imclose函数 该函数功能是对灰度图像执行形态学闭运算,即使用同样的结构元素先对图像进行膨胀操作后进行腐蚀操作。调用格式为: IM2=imclose(IM,SE) IM2=imclose(IM,NHOOD) 5、imopen函数 该函数功能是对灰度图像执行形态学开运算,即使用同样的结构元素先对图像进行腐蚀操作后进行膨胀操作。调用格式为: IM2=imopen(IM,SE) IM2=imopen(IM,NHOOD) 用MATLAB编程实现图像去噪 二值形态学消除图像噪声 用二值形态学方法对图像中的噪声进行滤除的基本思想4是:使用具有一定形态的结构元素去度量和提取图像中的对应形状,以达到消除图像噪声的目的。下面是二值形态学消除图像噪声的一个实例。 首先将tire.tif图像加入椒盐噪声,这种噪声前面已经介绍过,它在亮的图像区域内是暗点,而在暗的图像区域内是亮点,再对有噪声图像进行二值化操作,再对有噪声图像进行开启操作,由于这里的结构元素矩阵比噪声的尺寸要大,因而开启的结果是将背景上的噪声点去除了,最后对前一步得到的图像进行闭合操作,将轮胎上的噪声点去掉了。 下面是算法实现的程序代码: I1=imread(tire.tif); %读灰度图tire.tif I2=imnoise(I1,salt & pepper); %在图像上加入椒盐噪声 figure,imshow(I2) %显示加椒盐噪声后的灰度图像 I3=im2bw(I1); %把加椒盐噪声后的灰度图像二值化 figure,imshow(I3) %显示二值化后的图像 I4=bwmorph(I3,open); %对二值噪声图像进行二值形态学开运算 figure,imshow(I4) %显示开运算后的图像 I5=bwmorph(I4,close); %对上述图像进行形态学闭运算 figure,imshow(I5) %显示最终处理后的图像&1、imdilate函数该函数能够实现二值图像的膨胀操作,有以下形式:BW2=imdilate(BW1,SE)BW2=imdilate(BW1,SE,n)其中:BW2=imdilate(BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行膨胀操作。输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。BW2=imdilate(BW1,SE,n)表示执行膨胀操作n次。2、imerode 函数该函数能够实现二值图像的腐蚀操作,有以下形式:BW2= imerode (BW1,SE)BW2= imerode (BW1,SE,n)其中:BW2= imerode (BW1,SE)表示使用二值结构要素矩阵SE队图像数据矩阵BW1执行腐蚀操作。输入图像BW1的类型为double或unit8,输出图像BW2的类型为unit8。BW2= imerode (BW1,SE,n)表示执行腐蚀操作n次。3、bwmorph函数该函数的功能是能实现二值图像形态学运算。它的格式如下: BW2=bwmorph(BW1,operation) BW2=bwmorph(BW1,operation,n)其中:对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算;对于格式,bwmorph函数可对二值图像BW1采用指定的形态学运算n次。operation为下列字符串之一:clean:除去孤立的像素(被0包围的1)close:计算二值闭合dilate:用结构元素计算图像膨胀erode:用结构元素计算图像侵蚀4、imclose函数该函数功能是对灰度图像执行形态学闭运算,即使用同样的结构元素先对图像进行膨胀操作后进行腐蚀操作。调用格式为:IM2=imclose(IM,SE)IM2=imclose(IM,NHOOD)5、imopen函数该函数功能是对灰度图像执行形态学开运算,即使用同样的结构元素先对图像进行腐蚀操作后进行膨胀操作。调用格式为:IM2=imopen(IM,SE)IM2=imopen(IM,NHOOD)3用MATLAB编程实现图像去噪3.1 二值形态学消除图像噪声用二值形态学方法对图像中的噪声进行滤除的基本思想4是:使用具有一定形态的结构元素去度量和提取图像中的对应形状,以达到消除图像噪声的目的。下面是二值形态学消除图像噪声的一个实例。首先将tire.tif图像加入椒盐噪声,这种噪声前面已经介绍过,它在亮的图像区域内是暗点,而在暗的图像区域内是亮点,再对有噪声图像进行二值化操作,再对有噪声图像进行开启操作,由于这里的结构元素矩阵比噪声的尺寸要大,因而开启的结果是将背景上的噪声点去除了,最后对前一步得到的图像进行闭合操作,将轮胎上的噪声点去掉了。下面是算法实现的程序代码:I1=imread(tire.tif); %读灰度图tire.tifI2=imnoise(I1,salt & pepper); %在图像上加入椒盐噪声figure,imshow(I2) %显示加椒盐噪声后的灰度图像I3=im2bw(I1); %把加椒盐噪声后的灰度图像二值化figure,imshow(I3) %显示二值化后的图像I4=bwmorph(I3,open); %对二值噪声图像进行二值形态学开运算figure,imshow(I4) %显示开运算后的图像I5=bwmorph(I4,close); %对上述图像进行形态学闭运算figure,imshow(I5) %显示最终处理后的图像原文转自:/wenda/thread?tid=33b1366fa1bef314膨胀跟腐蚀函数我用的MATLAB2008B中已经做了修改,所以本文中函数名也做了修改。其中SE的使用是有strel函数返回的一个数据结构。图像处理函数详解strel功能:用于膨胀腐蚀及开闭运算等操作的结构元素对象(本论坛随即对膨胀腐蚀等操作进行讲解)。用法:SE = strel(shape,paramet

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论