Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 计算高斯滤波器';使用内核&x27;s码_Opencv_Filtering_Gaussian - Fatal编程技术网

Opencv 计算高斯滤波器';使用内核&x27;s码

Opencv 计算高斯滤波器';使用内核&x27;s码,opencv,filtering,gaussian,Opencv,Filtering,Gaussian,我发现,从内核大小可以计算出sigma,如下所示: 西格玛=0.3(n/2-1)+0.8 我想知道这个方程式的理论背景 谢谢。使用这样的西格玛值,在y=0和x=n/2-1中,内核中心和内核边缘的值之间的比率为: g_edge / g_center = exp(-(x²+y²)/(2σ²)) = exp(-(n/2-1)²/(2*(0.3(n/2-1)+0.8)²)) 当n增加时,该值的极限为: exp(-1/(2*0.3²)) = 0.00386592 请

我发现,从内核大小可以计算出sigma,如下所示: 西格玛=0.3(n/2-1)+0.8

我想知道这个方程式的理论背景


谢谢。

使用这样的西格玛值,在
y=0
x=n/2-1
中,内核中心和内核边缘的值之间的比率为:

g_edge / g_center = exp(-(x²+y²)/(2σ²))
                  = exp(-(n/2-1)²/(2*(0.3(n/2-1)+0.8)²))
n
增加时,该值的极限为:

exp(-1/(2*0.3²)) = 0.00386592
请注意,
1/256
0.00390625
。图像通常在256值范围内编码。选择
0.3
可确保内核考虑可能显著影响结果值的所有像素


恐怕我对
0.8
部分没有解释,但我想在
n
很小的情况下,它可以确保合理的值。

非常感谢您的回答。请原谅我的无知,我看不到exp(-1/(2*0.3²))=0.00386592(相当于1/256)的效果。如果你能给我一个简单的解释,我将不胜感激。此外,我们不应该在(x=n/2-1,y=n/2-1)而不是(x=n/2-1,y=0)处取最远的像素吗?谢谢,你为什么要放弃高斯贝尔方程的第一部分?1/(2pi sigma^2)@filip,因为它在分区的两边都出现在
g_edge/g_center
中被取消。另外,你能解释一下@AimingHigh的评论吗?:)