方差效应 (sigma) 在高斯平滑

Effect of variance (sigma) at Gaussian smoothing

提问人:skm 提问时间:4/11/2014 最后编辑:Cris Luengoskm 更新时间:7/27/2023 访问量:39370

问:

我知道高斯、方差和图像模糊,我认为我理解了高斯模糊的方差概念,但我仍然不是 100% 确定。

我只想知道西格玛方差在高斯平滑中的作用。我的意思是,在相同的窗口大小下增加 sigma 的值会发生什么,为什么会发生这种情况?

如果有人提供一些关于它的好文献,那将非常有帮助。(我已经尝试了几个,但找不到我想要的东西)

主要困惑:

更高的频率>细节(例如噪声),

较低频率 ->图像的概述。

通过增加西格玛,我们允许一些更高的频率,因此我们应该随着频率的增加而变得更加详细。但情况恰恰相反!当我们增加西格玛时,图像变得更加模糊。

openCV 图像处理 计算机视觉

评论

4赞 sub_o 4/11/2014
Sigma 是方差(即标准差的平方)。如果增加正态分布中的标准差,则分布将更加分散,并且峰值将不那么尖锐。同样,在高斯平滑(一种低通滤波器)中,它通过不强调图像中的急剧渐变变化,使一切都变得模糊,因此,如果增加方差/stddev,它会更加模糊。但这受到高斯核大小的限制。
1赞 sub_o 4/11/2014
下面是高斯模糊的示例视频,其内核(窗口)大小为 105,sigma 从 1.0 到 15.0 不等: youtube.com/watch?v=A_MloE8B5Oo
0赞 skm 4/11/2014
@sub_o:谢谢,视频展示了西格玛的效果,我自己也看到了。但我对这个概念感到困惑。请看一下我更新的问题,我已经更新了我的困惑。
2赞 sub_o 4/11/2014
啊,我们在这里谈论的西格玛不是频域中的西格玛。它与频率成反比。看这里: en.wikipedia.org/wiki/Gaussian_filter#Digital_implementation 这可能就是混乱的来源

答:

26赞 Hadi 4/11/2014 #1

我认为应该分以下步骤来完成,首先从信号处理的角度来看:

  1. 高斯滤波器是一种低通滤波器。低通滤波器顾名思义意味着通过低频 - 保持低频。因此,当我们在频域中查看图像时,最高频率发生在边缘(强度变化很大的地方,每个强度值对应于特定的可见光频率)。
  2. sigma在高斯滤波器中的作用是控制变化 围绕其平均值。因此,当 Sigma 变大时,均值周围允许的方差就越大,而当 Sigma 变小时,均值周围允许的方差就越小。
  3. 空间域中的滤波是通过卷积完成的。它只是 意味着我们在图像中的每个像素上应用一个内核。内核存在定律。它们的总和必须为零。

现在把所有东西放在一起!当我们将高斯滤波器应用于图像时,我们正在执行低通滤波。但如您所知,这发生在离散域(图像像素)中。因此,我们必须量化我们的高斯滤波器才能制作高斯核。在量化步骤中,由于高斯滤波器(GF)具有较小的sigma,因此具有最陡峭的拾取。因此,集中在中心的重量越多,而周围的重量就越少。

在自然图像统计的意义上!该研究领域的科学家表明,我们的视觉系统在对图像的响应中是一种高斯滤波器。例如,看一个广阔的场景!不要关注一个特定的点!所以你看到的是一个广阔的场景,里面有很多东西。但细节尚不清楚!现在看到所看到的特定点。您会看到以前没有的更多详细信息。这是西格玛出现在这里。当你增加西格玛时,你是在看广阔的场景,而不注意细节退出。当您减小该值时,您将获得更多详细信息。

我认为维基百科比我更能提供帮助,低通滤波器Guassian Blur

评论

0赞 skm 4/11/2014
我还有另一个困惑。高频>细节(例如噪声),低频>图像概览。通过增加,我们允许一些更高的频率。因此,我们应该随着频率的增加而变得更加详细,但情况恰恰相反,当我们增加时,图像变得更加模糊。sigmasigma
2赞 Hadi 4/11/2014
图像中的边缘以更高的频率显示(空间强度的快速变化)和噪声(图像中的噪声意味着强度的不需要变化)。较低的频率意味着强度没有太大变化。我说,随着你的增加,你会得到一个广泛的概述,因为细节消失了;我们得到一个模糊的图像。这种快速变化(高频)变得更加平滑。随着我们减少,我们会得到更多细节。sigmasigma
3赞 Hadi 4/11/2014
我建议您尝试在matlab或opencv中通过高斯滤波器进行一些平滑处理。绘制其 FFT 以查看平滑前后频域会发生什么变化。
2赞 Abc 9/28/2016
非常感谢@hadi解释一下。关于西格玛,我就不多说了,西格玛是标准差,显示传播。如果你散布一个锥体..在这个锥峰上添加更多点,它将失去其原始形状。mean 将模糊或平滑原始峰。Sigma 在峰值处显示变化或扩散。更多传播..平滑该峰(宽泛的概述,没有细节或清晰的峰)..点差更小..较少的平滑..没有传播..没有平滑..(透明峰,这是锥体的细节)
0赞 Cris Luengo 7/27/2023
这个答案毫无意义。离散化和量化与这些无关,在连续域中也是如此。而且我没有看到任何实际的解释来解释为什么当西格玛较大时你会得到更模糊的结果!
7赞 DanGoodrick 7/1/2020 #2

简而言之,增加西格玛项将在相邻像素上撒下更广阔的网,并减少最接近目标像素的像素的影响,例如,它使图像更模糊。

enter image description here

1赞 Wang 7/26/2023 #3

通常我们用空间响应函数来命名滤波器。因此,高斯滤波器意味着空间响应是高斯函数。

然而,GF的频率响应仍然是高斯函数,其关系为sigma_f = 1/(2*pi*sigma_spatial)

因此,通带越小越窄(截止频率越低)。sigma_f

OpenCV 中的 sigma 值是用于生成高斯核的空间 sigma。因此,它与通带的关系呈倒置。

截止频率越高越低。sigma_spatial

我们也可以直接从空间操作的角度来看待这一点。 我们可以将空间滤波器视为加权平均值。 GF 赋予中心像素比边缘更大的权重。 高斯越高越宽,则边缘上的权重越高。 因此,在平均值中,越高,丢失的细节就越多。sigma_spatialsigma_spatial

人们通常尝试为数字GF选择sigma。 但是,为了获得最佳效果, Sigma 和内核大小不能自由选择。 它们实际上相互依赖。

对于质量,我们不希望内核大小太小。我们希望内核边缘的过滤器值非常接近 0,否则,钟形的很多部分都没有使用。

为了提高效率,我们不希望内核大小太大。如果内核大小对于所选的 sigma 来说太大,则内核的大部分具有接近 0 的过滤器参数。

如果我们回顾一下高斯函数,我们知道如果我们选择核大小为 ,并且中心的参数是 1.0;那么边缘的值将在 0.01 左右6*sigma

因此,在实践中,通常我们根本不指定西格玛。我们通常只需指定内核大小并自动获取sigma = size/6

评论

1赞 Cris Luengo 7/27/2023
这是一个很好的答案(尤其是与公认的误解和猜测的不一致、杂乱无章的混乱相比)。但在最后一段中,我不建议选择过滤器大小并从中计算西格玛,而是以另一种方式进行。大小必须四舍五入为奇数整数,因此在选择时精度要低得多。sigma 可以是任何(足够大的)浮点数。例如,在缩放空间中,您可能希望将西格玛乘以每个下一级,但在首先使用大小时不能这样做。sqrt(2)