2

最近和同事讨论图像渐变操作。

通常,图像梯度定义为:

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 滤波器是由高斯平滑的...

扩展问题:图像梯度的空间滤波器内核是否有所谓的“窗口大小”?

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

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

4

2 回答 2

2

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

于 2011-04-25T16:50:12.297 回答
1

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

于 2011-04-25T17:15:42.333 回答