均值滤波、高斯滤波处理高斯、椒盐噪声图像

均值滤波和高斯滤波都可以处理高斯噪声,但是效果不一样;另外,根据椒盐噪声的特性,均值滤波和高斯滤波不能处理椒盐噪声图像,用实验证明。

%对同一幅(高斯和椒盐)噪声图像,分析比较均值滤波和高斯滤波的结果,
%均值滤波器模板大小(3*3,5*5,7*7,9*9)
Image=imread('D:\课程\数字图像处理\实验\实验二\lena.jpg');
Image=mat2gray(Image);
noiseI_sp=imnoise(Image,'salt & pepper',0.1);
noiseI_gaussian=imnoise(Image,'gaussian');

%对高斯噪声图像进行均值滤波和高斯滤波
avg_result1=imfilter(noiseI_gaussian,fspecial('average',3),'conv');
avg_result2=imfilter(noiseI_gaussian,fspecial('average',5),'conv');
avg_result3=imfilter(noiseI_gaussian,fspecial('average',7),'conv');
avg_result4=imfilter(noiseI_gaussian,fspecial('average',9),'conv');

gaussian_result1=imfilter(noiseI_gaussian,fspecial('gaussian',[3,3],0.6),'conv');
gaussian_result2=imfilter(noiseI_gaussian,fspecial('gaussian',[5,5],0.6),'conv');
gaussian_result3=imfilter(noiseI_gaussian,fspecial('gaussian',[7,7],0.6),'conv');
gaussian_result4=imfilter(noiseI_gaussian,fspecial('gaussian',[9,9],0.6),'conv');

figure;
subplot(2,5,1);imshow(Image);title('原图');
subplot(2,5,6);imshow(noiseI_gaussian);title('高斯噪声图像');

subplot(2,5,2);imshow(avg_result1);title('3x3均值滤波');
subplot(2,5,3);imshow(avg_result2);title('5x5均值滤波');
subplot(2,5,4);imshow(avg_result3);title('7x7均值滤波');
subplot(2,5,5);imshow(avg_result4);title('9x9均值滤波');

subplot(2,5,7);imshow(gaussian_result1);title('3x3高斯滤波');
subplot(2,5,8);imshow(gaussian_result2);title('5x5高斯滤波');
subplot(2,5,9);imshow(gaussian_result3);title('7x7高斯滤波');
subplot(2,5,10);imshow(gaussian_result4);title('9x9高斯滤波');

%对椒盐噪声图像进行均值滤波和高斯滤波
avg_result1=imfilter(noiseI_sp,fspecial('average',3),'conv');
avg_result2=imfilter(noiseI_sp,fspecial('average',5),'conv');
avg_result3=imfilter(noiseI_sp,fspecial('average',7),'conv');
avg_result4=imfilter(noiseI_sp,fspecial('average',9),'conv');

gaussian_result1=imfilter(noiseI_sp,fspecial('gaussian',[3,3],0.6),'conv');
gaussian_result2=imfilter(noiseI_sp,fspecial('gaussian',[5,5],0.6),'conv');
gaussian_result3=imfilter(noiseI_sp,fspecial('gaussian',[7,7],0.6),'conv');
gaussian_result4=imfilter(noiseI_sp,fspecial('gaussian',[9,9],0.6),'conv');

figure;
subplot(2,5,1);imshow(Image);title('原图');
subplot(2,5,6);imshow(noiseI_sp);title('椒盐噪声图像');

subplot(2,5,2);imshow(avg_result1);title('3x3均值滤波');
subplot(2,5,3);imshow(avg_result2);title('5x5均值滤波');
subplot(2,5,4);imshow(avg_result3);title('7x7均值滤波');
subplot(2,5,5);imshow(avg_result4);title('9x9均值滤波');

subplot(2,5,7);imshow(gaussian_result1);title('3x3高斯滤波');
subplot(2,5,8);imshow(gaussian_result2);title('5x5高斯滤波');
subplot(2,5,9);imshow(gaussian_result3);title('7x7高斯滤波');
subplot(2,5,10);imshow(gaussian_result4);title('9x9高斯滤波');

处理高斯噪声运行结果及分析

对原图添加高斯噪声得到高斯噪声图像,并对高斯噪声图像进行不同均值模板的均值滤波和不同高斯模板的高斯滤波,其运行结果如下:

从结果图片可以看到,均值滤波可以一定程度上解决高斯噪声的问题,但是随着模板的不断增大,结果图片也变得越来越模糊。对于高斯滤波来说,其解决高斯噪声问题的效果和均值滤波比起来还是有差距的(如下图所示),但是差距并不明显,所以重点放在模糊方面。随着高斯滤波模板的增大,高斯滤波的结果图片的模糊化并不明显,因为模板中的中心数值会比周围的数值大。一定程度上缓解了模糊的问题。

 

处理椒盐噪声运行结果及分析

对原图添加椒盐噪声得到椒盐噪声图像,并对椒盐噪声图像进行不同均值模板的均值滤波和不同高斯模板的高斯滤波,其运行结果如下:

   我们都知道,均值滤波和高斯滤波是不适合用来处理椒盐噪声图像,结果也是如此,结果如下图所示,显然两种滤波器的在解决椒盐噪声方面显得有些乏力。在模糊方面的话,可以看出均值滤波的滤波图像比较模糊,高斯滤波的滤波图像和原图相比则没有多大变化。

 

   且我们可以看到即便模板的大小增大,滤波图片也差不多,如下图所示:

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值