索贝尔面具是如何衍生出来的?

时间:2014-04-07 08:40:54

标签: image-processing computer-vision

 Gx = [-1 0 1
       -2 0 2
       -1 0 1]

Gy = [-1 -2 -1
       0 0 0
       1 2 1]

我知道这些是平滑滤波器和渐变的组合,但它们如何组合才能获得此输出?

2 个答案:

答案 0 :(得分:1)

Sobel Kernel是派生内核[-1 0 1]与平滑内核[1 2 1]'的卷积。前者是直截了当的,后者是相当随意的 - 如果你愿意的话,你可以把它视为某种sigma的一维高斯的某种离散实现。

答案 1 :(得分:1)

我认为边缘检测(即梯度)影响是显而易见的 - 如果存在垂直边缘。 sobel算子Gx肯定会给出没有边缘的地方的大值,因为你只需减去两个不同的值(边缘一边的强度与另一边的强度差别很大)。水平边缘也是如此。

关于平滑,如果您看到,例如simga = 1.0的高斯函数掩码: gaussian mask

实际上做平滑的

你可以理解:我们将像素设置为与其邻居的值相关联的值。这意味着我们分别对我们正在考虑的像素“平均”值。在我们的例子中,Gx和Gy,它与高斯相比,它在中略微平滑,但仍然是相同的想法。