- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验三图像滤波
实验三 图像滤波实验
一、实验目的
1.熟练掌握空域滤波中常用滤波器;图像增强;
3.加深对图像增强的认识,巩固所学图像增强理论知识和相关算法利用MATLAB程进行图像,观察增强效果。
2. 中值滤波
与加权平均方式的平滑滤波不同,中值滤波是抑制噪声的非线性处理方法。对于给定的n个数值{a1,a2,…,an},将它们按大小有序排列。当n为奇数时,位于中间位置的那个数值称为这n各数值的中值。当n为偶数时,位于中间位置的两个数值的平均值称为这n个数值的中值。中值滤波,就是图像中滤波后的某像素输出值等于该像素邻域中各像素灰度的中值。
三、实验内容与步骤:按下面要求编写程序并运行
对peppers.bmp图像添加零均值“高斯”噪声,用3×3或9×9滑动平均模板进行降噪处理,观察平均降噪图像的效果。
1.对peppers.bmp图像添加零均值“高斯”噪声
程序代码如下:
I=imread(d:\peppers.bmp);
J=imnoise(I,gaussian,0,0.02);
subplot(1,2,1);imshow(I);title(原图);
subplot(1,2,2);imshow(J);title(加噪处理后的图);
运行结果如下:
2.用3×3滑动平均模板进行降噪处理,观察平均降噪图像的效果
程序代码如下:
I=imread(d:\peppers.bmp);
J=imnoise(I,gaussian,0,0.02);
[H,W]=size(J);
M=double(J);
M1=M;
for j=2:H-1
for k=2:W-1
M1(j,k)=[M(j-1,k-1)+M(j-1,k)+M(j-1,k+1)+M(j,k-1)+M(j,k)+M(j,k+1)+M(j+1,k-1)+M(j+1,k)+M(j+1,k+1)]/9;
end;
end;
subplot(1,3,1);imshow(I);title(原图);
subplot(1,3,2);imshow(J);title(加噪处理);
subplot(1,3,3);imshow(uint8(M1),[]);title(3*3邻域平均降噪处理);
运行结果如下:
3.对peppers.bmp图像添加“椒盐”噪声,分别采用5×5的矩形、圆形及十字形窗口进行中值滤波处理,观察处理结果。(滤波过程采用迭代操作,对输入图像重复进行同样的中值滤波,直到输出不再有变化为止。)
3.1.对peppers.bmp图像添加“椒盐”噪声
程序代码如下:
I=imread(d:\peppers.bmp);
J = imnoise(I,salt pepper,0.2);
subplot(1,2,1);imshow(I);title(原图);
subplot(1,2,2);imshow(J);title(椒盐加噪处理);
3.2采用5×5的矩形中值滤波处理
程序代码如下:
I= imread(d:\peppers.bmp);
J=imnoise(I,salt pepper,0.2);
P=double(J);
[H,W]=size(J);
flag=1;
while( flag==1) %若输出跟前一个图有变化则进行中值滤波处理
flag=0;
for i=3:(H-2)
for j=3:(W-2)
A=P(i-2:i+2,j-2:j+2); %5*5矩阵窗口模板
mid=median(A(:)); %求矩阵模板中值
if(P(i,j)~=mid)
P(i,j)=mid;
flag=1;
end
end
end
if flag==0 %若输出不再变化停止滤波操作
break;
end;
end;
subplot(1,3,1),imshow(I);title(原图);
subplot(1,3,2),imshow(J);title(椒盐加噪处理 );
subplot(1,3,3),imshow(uint8(P));title(5*5矩形中值滤波);
3.3采用圆形窗口中值滤波处理
程序代码如下:
I= imread(d:\peppers.bmp);
J=imnoise(I,salt pepper,0.2);
P=double(J);
[H,W]=size(J);
flag=1;
while( flag==1)
flag=0;
for i=3:(H-2)
for j=3:(W-2)
文档评论(0)