【问题标题】:How to determine the window size of a Gaussian filter如何确定高斯滤波器的窗口大小
【发布时间】:2013-04-16 10:48:24
【问题描述】:

高斯平滑是一种常见的图像处理功能,高斯滤波的介绍请参考here。正如我们所看到的,一个参数:标准导数将决定高斯函数的形状。但是,当我们使用高斯滤波进行卷积时,另一个参数:高斯滤波器的窗口大小也应该同时确定。例如,当我们使用MATLAB提供的fspecial函数时,不仅要提供标准推导,还要提供窗口大小。直观地说,高斯标准导数越大,高斯核窗口应该越大。但是,关于如何设置正确的窗口大小并没有一般规则。有任何想法吗?谢谢!

【问题讨论】:

标签: image-processing signal-processing matlab


【解决方案1】:

掩码的size 驱动过滤量。更大的size,对应更大的卷积掩码,一般会导致更大程度的过滤。作为更大程度的降噪的一种权衡,更大的过滤器也会影响图像的细节质量。

这是一个里程碑。现在来到Gaussian filterstandard deviation 是主要参数。如果您使用 2D 过滤器,在蒙版边缘,您可能希望权重接近 0

在这方面,正如我已经说过的,您可以选择大小通常为standard deviation三倍的掩码。这样,几乎整个高斯钟都被考虑在内,并且在掩码的边缘,您的权重将渐近趋于零。

我希望这会有所帮助。

【讨论】:

  • 如果您将过滤器大小设置为标准差的 3 倍,那么您将覆盖范围 [-1.5 \sigma, 1.5 \sigma]。我认为您的意思是标准差的 6 倍。
  • 我的意思是每个尾部的标准偏差的 3 倍。这使得 6 sigma 作为幅度,是的。
【解决方案2】:

Here 是一个很好的参考。

  1. 离散化后,距离大于 3 sigma 的像素的权重可以忽略不计。见this

  2. 如前所述,6sigma 意味着双向 3sigma

  3. 由于上面的第 1 点和第 2 点,用于过滤的卷积矩阵的大小会无意中变为 6sigma x 6sigma。

Here如何获得离散高斯。

最后,标准偏差的大小(以及因此使用的内核)取决于您怀疑图像中有多少噪声。显然,与较小的内核相比,较大的卷积核意味着更远的像素对中心像素的新值做出贡献。

【讨论】:

    【解决方案3】:

    给定 sigma 和过滤器中的最小权重 epsilon,您可以求解过滤器 x 的必要半径:

    例如,如果 sigma = 1,则当 x

    • sigma = 0.5,x
    • sigma = 1,x
    • sigma = 1.5,x
    • sigma = 2,x
    • sigma = 2.5,x

    如果您减少/增加 epsilon,那么您将需要更大/更小的半径。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-22
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 2018-10-03
      • 1970-01-01
      • 2012-12-13
      相关资源
      最近更新 更多