基于matlab的图像处理——算术均值、中值、几何滤波器

问题:
如下图所示,白条的宽度和高度分别是7像素和210像素,白条之间的间隔是17像素,采用以下滤波器对测试图像进行滤波,并输出结果
在这里插入图片描述

  1. 3x3算术均值滤波器
  2. 5x5算术均值滤波器
  3. 7x7算术均值滤波器
  4. 同理使用中值滤波器
  5. 同理使用几何滤波器
  • 3x3算术均值滤波器
I=imread("511.png");
subplot(2,1,1);
imshow(I)
title("原图")


I1= imfilter(I,fspecial('average',3));
subplot(2,1,2);
imshow(I1)
title("算术均值3*3")

在这里插入图片描述

  • 5x5算术均值滤波器
I2 = imfilter(I,fspecial('average',5));
subplot(2,1,2);
imshow(I2)
title("算术均值5*5")

在这里插入图片描述

  • 7x7算术均值滤波器
I3 = imfilter(I,fspecial('average',7));
subplot(2,1,2);
imshow(I3)
title("算术均值7*7")

在这里插入图片描述
结论:使用几何均值滤波器对图像进行滤波,会使图像变得模糊,7x7模板的滤波图像模糊最明显

  • 3x3中值滤波器
I4 = medfilt2(I,[3,3]);
subplot(2,1,2);
imshow(I4)
title("中值3*3")

在这里插入图片描述

  • 5x5中值滤波器
I5 = medfilt2(I,[5,5]);
subplot(2,1,2);
imshow(I5)
title("中值5*5")

在这里插入图片描述

  • 7x7中值滤波器
I6 = medfilt2(I,[7,7]);
subplot(2,1,2);
imshow(I6)
title("中值7*7")

在这里插入图片描述
结论:中值滤波的特性是在一个模板内取中间值,所以在图像的黑白值边缘处会出现变化,图像的边缘会变得圆滑

以3x3模板为例:
在这里插入图片描述
滤波后像素值的变化:
在这里插入图片描述
这就是图像黑白值边缘处变得圆滑的原因

  • 3x3几何滤波器
I7 = geometry_fspecial(I,3,3);
subplot(2,1,2);
imshow(I7);
title("几何均值3*3")

在这里插入图片描述

  • 5x5几何滤波器
I8 = geometry_fspecial(I,5,5);
subplot(2,1,2);
imshow(I8);
title("几何均值5*5")

在这里插入图片描述

  • 7x7几何滤波器
I9 = geometry_fspecial(I,7,7);
subplot(2,1,2);
imshow(I9);
title("几何均值7*7")

在这里插入图片描述
总结:几何均值滤波后的图像,整体色泽会变得黯淡,白色线条会比原图变得更细,但是我的结果好像没有那么明显,能感觉到白色线条变细,但是亮度似乎没有太明显的变化

  • 6
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值