图像处理代码_第1页
图像处理代码_第2页
图像处理代码_第3页
图像处理代码_第4页
图像处理代码_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章 基于MATLABD的模拟噪声生成MATLAB图像处理工具箱提供的噪声添加函数imnoise,它可以对图添加一些典型的噪声。其语法是:J=imnoise(I,type)J=imnoise(I,type,parameters)其功能是:返回对原图像I添加典型噪声的图像J,参数type和parameters用于确定噪声的类型和相应的参数。三种典型的噪声:type=gaussian时,为 高 斯 噪 声;type=salt&pepper时,为椒盐噪声;type=speckle时,为乘法噪声;如下程序就实现了对名为king图像的3种噪声污染了的图像:i=imread('king.

2、jpg'); %读取图像I=rgb2gray(i); I1=imnoise(I,'gaussian'); %加高斯噪声I2=imnoise(I,'salt & pepper',0.02); %加椒盐噪声I3=imnoise(I,'speckle'); %加乘性噪声subplot(221),imshow(I); %显示图像I title('原图像');subplot(222),imshow(I1);title('受高斯噪声污染的图像');subplot(223),imshow(I2);title(&#

3、39;受椒盐噪声污染的图像');subplot(224),imshow(I3); title('受乘性噪声污染的图像'); 处理结果如图3.1所示: 图3.1 图像添加噪声处理结果第四章 均值滤波处理方法4.2均值滤波法对图像的处理在MATLAB图像处理工具箱中,提供了imfilter函数用于实现均值滤波,imfilter的语法格式为: B=imfilter(A,H)其功能是,用H模板对图像A进行均值滤波,模板为:取H1,程序如下: i=imread('king.jpg'); %读取图像 I=rgb2gray(i);I1=imnoise(I,'g

4、aussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speckle');H1=ones(3,3)/9; %3×3领域模板J=imfilter(I,H1); %领域平均J1=imfilter(I1,H1);J2=imfilter(I2,H1);J3=imfilter(I3,H1);subplot(221),imshow(J); title('原图像滤波后');subplot(222),imshow(J1); title('高斯污染图像滤波后'

5、);subplot(223),imshow(J2); title('椒盐污染图像滤波后');subplot(224),imshow(J3);title('乘法污染图像滤波后'); 运行结果如图4.3 图4.3 3×3领域模板处理结果 取H2,程序如下:i=imread('king.jpg'); %读取图像 I=rgb2gray(i);I1=imnoise(I,'gaussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speck

6、le');H2= ones(5,5)/25; %5×5领域模板J=imfilter(I,H2); %领域平均J1=imfilter(I1,H2);J2=imfilter(I2,H2);J3=imfilter(I3,H2);subplot(221),imshow(J); title('原图像滤波后');subplot(222),imshow(J1); title('高斯污染图像滤波后');subplot(223),imshow(J2); title('椒盐污染图像滤波后');subplot(224),imshow(J3); tit

7、le('乘法污染图像滤波后'); 运行结果如图4.4: 图4.4 5×5领域模板处理结果第五章 中值滤波处理方法5.2中值滤波法对图像的处理MATLAB图像处理工具箱提供了medfilt2函数用于中值滤波。其语法格式为:B=medfilt2(A) 其功能为:用3×3的滤波窗口对图像A进行中值滤波;B=medfilt2(A,m,n) 其功能是:用大小为m×n的窗口对图像A进行中值滤波;B=medfilt2(A,'indexed',.) 其功能为:对索引图像A进行中值滤波;用3×3中值滤波模板和5×5中值滤波模板对图

8、像进行处理,程序如下:i=imread('king.jpg'); I=rgb2gray(i);I1=imnoise(I,'gaussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speckle');J1=medfilt2(I1,3,3); %3×3中值滤波模板J2=medfilt2(I2,3,3);J3=medfilt2(I3,3,3);J4=medfilt2(I1,5,5); %5×5中值滤波模板J5=medfilt2(I2,5,5);J

9、6=medfilt2(I3,5,5);figure,subplot(121),imshow(J1);title('高斯3*3中值滤波后');subplot(122),imshow(J2);title('椒盐3*3中值滤波后');figure,subplot(121),imshow(J3);title('乘法3*3中值滤波后');subplot(122),imshow(J4);title('高斯5*5中值滤波后');figure,subplot(121),imshow(J5);title('椒盐5*5中值滤波后');

10、subplot(122),imshow(J6);title('乘法5*5中值滤波后');处理结果如图5.1 图5.1 3×3中值滤波模板和5×5中值滤波模板对图像进行处理第六章 频域低通滤波法用理想低通滤波器对图像处理,程序如下(以受高斯噪声污染图像为例):i=imread('king.jpg');I=rgb2gray(i);I1=imnoise(I,'gaussian');s=fftshift(fft2(I1);a,b=size(s);a0=round(a/2);b0=round(b/2);d0=10;%这里d取10和50作

11、比较for i=1:a for j=1:b d=sqrt(i-a0)2+(j-b0)2); if d <=d0 ,h=1; else h=0; end; s(i,j)=h*s(i,j); end;end;s=uint8(real(ifft2(ifftshift(s);subplot(121),imshow(I1);title('受高斯噪声污染后的图像');subplot(122),imshow(s);title('高斯污染图像滤波后');处理结果如图6.3所示: 图6.3 理想低通滤波器处理结果6.2 巴特沃思低通滤波器(BLPF)对图像的处理用巴特沃斯滤

12、波器对图像处理,程序如下(以受高斯噪声污染图像为例):i=imread('king.jpg'); I=rgb2gray(i);I1=imnoise(I,'gaussian');s=fftshift(fft2(I1); a,b=size(g);n=1;%这里阶次n取1和3做比较d0=50; %此处d0为截止频率n1=fix(a/2);n2=fix(b/2);for i=1:a for j=1:b d=sqrt(i-n1)2+(j-n2)2); h=1/(1+0.414*(d/d0)(2*n); s(i,j)=h*s(i,j); endends=uint8(real

13、(ifft2(ifftshift(s);subplot(121),imshow(I1);title('受高斯噪声污染的图像');subplot(122),imshow(s);title('高斯污染图像处理后');处理后结果如图6.5所示: 图6.5 巴特沃斯低通滤波器处理结果6.3 指数滤波器(ELPF)对图像的处理用指数低通滤波器对图像处理,程序如下(以受高斯噪声污染图像为例):i=imread('king.jpg'); I=rgb2gray(i);I1=imnoise(I,'salt & pepper',0.02);s

14、=fftshift(fft2(I1); a,b=size(g);n=1;%这里阶次n取1和3做比较d0=50; %此处d0为截止频率n1=fix(a/2);n2=fix(b/2);for i=1:a for j=1:b d=sqrt(i-n1)2+(j-n2)2); h= exp(-0.347*(d/d0)n); s(i,j)=h*s(i,j); end;end;s=uint8(real(ifft2(ifftshift(s);subplot(121),imshow(I1);title('受高斯噪声污染的图像');subplot(122),imshow(s);title('

15、;高斯污染图像处理后');处理结果如图6.7所示. 图6.7 指数低通滤波器处理结果 6.4 梯形滤波器(TLPF)对图像的处理用梯形低通滤波器对图像处理,程序如下(以受高斯噪声污染图像为例):i=imread('king.jpg'); I=rgb2gray(i);I1=imnoise(I,'salt & pepper',0.02);s=fftshift(fft2(I1);a,b=size(s);a0=round(a/2);b0=round(b/2);d0=10,d1=50;%这里d取10和50作比较for i=1:a for j=1:b dis

16、tance=sqrt(i-a0)2+(j-b0)2); if distance <=d0 ,h=1; else if distance >=d1,h=0; else h=1-(d-d0)/(d1-d0); end; end; s(i,j)=h*s(i,j); end;end;s=uint8(real(ifft2(ifftshift(s);subplot(121),imshow(I1);title('受高斯噪声污染的图像');subplot(122),imshow(s);title('高斯污染图像处理后');处理结果如图6.9所示 图6.9 梯形低通滤

17、波器对图像的处理结果6.5 构建二维滤波器对图像的处理首先构建二维滤波器d,传递函数如图6.10所示;f1,f2=freqspace(25,'meshgrid');Hd=zeros(25,25);d=sqrt(f1.2+f2.2)<0.5; %0.5为截止半径大小Hd(d)=1; h=fsamp2(Hd);figure,freqz2(h,64,64);然后用所构建的二维滤波器对以上图像进行滤波i=imread('king.jpg'); I=rgb2gray(i);I1=imnoise(I,'gaussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speckle');J=imfilter(I,h,'replicate');J1=imfilter(I1,h,'replicate');J2=imfilter(I2,h,'replicate');J3=imfilter(I3,h,'replicate');subplot(221),imshow(J);title('原图像滤波后');subplot(222),i

温馨提示

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

评论

0/150

提交评论