【问题标题】:Geometric mean filter for denoising image in MATLABMATLAB中用于去噪图像的几何均值滤波器
【发布时间】:2018-10-25 13:27:54
【问题描述】:

我是 MATLAB 新手。我不知道如何使用几何平均滤波器来过滤噪声图像。对于算术平均滤波器,我使用这个:

H = fspecial('average',5);
a = imfilter(a, H);

几何平均滤波有没有类似的方法?

【问题讨论】:

    标签: matlab image-processing filtering geometric-mean


    【解决方案1】:

    是的,有。我建议阅读关于几何平均值的 Wikipedia page 以及在 The Mathworks 工作的 Steve Eddins 的 this blog

    借用史蒂夫的解释(实际上是整个代码/示例):

    局部几何平均滤波器将所有像素相乘 邻域中的值,然后取第 N 个根,其中 N 是 邻域内的像素数。

    因此,就 Matlab 代码而言,h 是内核,其中填充了具有用于计算平均值的邻域大小的内核,I 是您的图像:

    geo_mean = imfilter(log(I), h, 'replicate');
    geo_mean = exp(geo_mean);
    geo_mean = geo_mean .^ (1/numel(h));
    

    希望有帮助!

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 2016-09-27
      • 2018-03-05
      • 2016-09-20
      • 2012-11-01
      • 1970-01-01
      • 2014-04-04
      相关资源
      最近更新 更多