1x2和1x3图像渐变内核过滤器定义有什么区别

时间:2011-04-25 09:23:03

标签: image-processing filtering gradient edge-detection

最近我和我的同事就图像渐变操作进行了辩论。

通常,图像渐变定义为:

dI_dx(j,k) = I(j,k+1) - I(j,k) # x partial derivative of image

dI_dy(j,k) = I(j+1,k) - I(j,k) # y partial derivative of image

对于图像的x偏导数,此操作可以用1x2滤波器数组表示:

[1 -1]

但还有另一个定义:

dI_dx(j,k) = I(j,k+1) - I(j,k-1) => [1 0 -1](过滤器​​数组)

所以我的同事问:他们之间有什么区别,为什么后一个1x3过滤器 比1x2过滤器更经常使用?

我们已经讨论了一些可能的原因:

  1. 1x3采样比1x2

    更稳健

    我的同事:不,他们都为每个图像渐变像素采样2个像素,采样像素上出现噪声的概率在这些滤镜中是相同的。

  2. 1x3比1x2更平滑

    我的同事:不,1x2和1x3过滤器的定义根本没有平滑。 Sobel滤波器是由高斯滤波器平滑的滤波器......

  3. 扩展问题:图像渐变的空间滤镜内核是否具有所谓的“窗口大小”?

    顺便说一句,我和我的同事不会被以下参考网页说服......

    http://www.cis.rit.edu/people/faculty/rhody/EdgeDetection.htm

2 个答案:

答案 0 :(得分:2)

在数字滤波器设计环境中检查这些滤波器的一种方法,特别是理想的FIR微分器。理想的数字微分器具有反对称单位样本响应h(n)= - h(-n),因此h(0)= 0。因此[1 0 -1]比[1 -1]更接近理想微分器。查看任何DSP参考资料以获得更多理论。在实践中,我总是使用Sobel算子的平滑导数。

答案 1 :(得分:1)

1x2滤波器将产生位于输入之间的样本,而1x3滤波器输出将与输入对齐。但是,1x2过滤器将捕获更精细的细节。