数字图像处理-- 图像平滑
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三图像平滑
一.实验目的
1.掌握图像平滑的目的和常用方法:低通滤波和中值滤波
2.了解噪声产生的主要来源,及常用的噪声。
二.实验内容及步骤
1. 模拟噪声生成
I=imread('cameraman.tif');
I1= imnoise(I,'gaussian');
I2= imnoise(I,'salt & pepper',0.02);
imshow(I);
figure,imshow(I1);
figure,imshow(I2);
(1)原图像(2)受高斯噪声污染的图像(3)受椒盐噪声污染的图像
2.平均值滤波对噪声消除的效果以及对原图像的平滑
代码如下:
I=imread('cameraman.tif');
I1=imnoise(I,'salt & pepper',0.02);
I2=imnoise(I,'gaussian');
H1=[1/9 1/9 1/9;1/9 1/9 1/9;1/9 1/9 1/9];
J=imfilter(I,H1);
J1=imfilter(I1,H1);
J2=imfilter(I2,H1);
imshow(J);
figure,imshow(J1);
figure,imshow(J2);
(a)原图像滤波后(b)受高斯噪声污染图像滤波后(c)受椒盐噪声污染图像滤波
3.中值滤波
I=imread('cameraman.tif');
I1=imnoise(I,'salt & pepper',0.02);
I2=imnoise(I,'gaussian');
J1=medfilt2(I1,[3,3]); %3×3 中值滤波模板
J2=medfilt2(I2,[3,3]); %3×3 中值滤波模板
J3=medfilt2(I1,[5,5]); %5×5 中值滤波模板
J4=medfilt2(I2,[5,5]); %5×5 中值滤波模板
figure,imshow(J1);
figure,imshow(J2);
figure,imshow(J3);
figure,imshow(J4);
(e)(f)(g)(i)
*4. 频率域低通滤波
(1)构建二维滤波器 h:
[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]);
图-(4)
(2)用所构建的二维滤波器对以上图像进行滤波。
代码如下:
I=imread('cameraman.tif');
I1=imnoise(I,'salt & pepper',0.02);
I2=imnoise(I,'gaussian');
J=imfilter(I,h, 'replicate');
J1=imfilter(I1,h, 'replicate');
J2=imfilter(I2,h, 'replicate');
figure,imshow(J);
figure,imshow(J1);
figure,imshow(J2);
图—(5) 图—(6) 图—(7)
五. 思考题
1、空间平滑中,对比平均值滤波与中值滤波有什么不同,各适用于什么噪声?
2、对比空间平滑与频率域平滑有什么不同?
3、若换成对图像锐化,在 MATLAB 中如何实现?