了解Gabor过滤器

时间:2018-07-03 14:02:31

标签: c# image-processing gabor-filter

Accord.ne t框架中,使用两个类来构造Gabor过滤器:

其他地方有多种Gabor过滤器实现:

但是, Accord.net 中的源代码对我来说很奇怪。他们讨论了三种类型的内核:

  • Real
  • Imaginary
  • Magnitude
  • SquaredMagnitude

有人可以解释后三种(Real是不言自明的)类型还是可以推荐我一些可以研究它们的材料?

1 个答案:

答案 0 :(得分:1)

Gabor kernel g(t)是复数值。它是quadrature filter,表示在频域(G(f))中没有负频率。因此,该频率响应的偶数和奇数部分与even(G(f)) = odd(G(f)) * sign(f)相关。也就是说,偶数部分和奇数部分的正频率值相同,而负频率的值相反。因此,将偶数部分和奇数部分相加会导致抵消负频率,而使正频率相互增强。

(实值)频率响应的偶数部分对应于偶数和实值内核。奇数部分对应于一个奇数和虚值内核。偶数内核是有窗余弦,奇数内核是有窗正弦。

通过将图像与这两个分量进行卷积,然后取结果的大小来应用Gabor过滤器。

滤波器本身的大小只是一个高斯平滑核(它是正弦和余弦的窗口)。注意cos^2+sin^2=1,因此幅度未显示内核的波分量。您链接的用于计算Gabor内核大小的代码执行了很多无意义的计算...:)