如何在opencv中得到方差σs的高斯矩阵?

时间:2014-05-02 08:38:50

标签: c++ opencv matrix

我正在尝试在opencv中设计线检测器,为此,我需要获得具有方差σs的高斯矩阵。

最终的公式应该是 H=Gσs∗(Gσd')TH是我要创建的探测器,但我不知道我应该如何使用方差创建矩阵并最终计算H。 的更新

这是完整的公式。其中“T”是转置操作。Gσd'是1-D高斯函数Gσd的一阶导数,在这个方向上有方差σd

enter image description here

**** ****更新

这是我想要的两个公式,我需要H进一步使用,所以请告诉我如何生成矩阵。 THX!

1 个答案:

答案 0 :(得分:1)

由于高斯滤波器很常见,OpenCV有一个内置的操作:GaussianBlur

使用该功能时,可以将ksize参数设置为0/0,以自动计算给定sigma内核的像素大小。


高斯2D滤波器内核是可分离的。这意味着您可以先沿x轴应用一维滤波器,然后沿y轴应用一维滤波器。这就是在上面的等式中有两个1D滤波器的原因。执行两个1D滤镜操作而不是一个2D操作要快得多。