我计算了8个Theta旋转m * PI / 8的Gabor滤波器。

Gabor内核的参数作为OpenCv cv2.getGaborKernel的输入给出:
ksize = 11,theta = m * PI / 8 lambd = 16/3 sigma =(5.09030 * 8.0)/(3.0 * PI) Gamma = 0.5890 psi = 0

kernel = cv2.getGaborKernel(ksize = (ksize,ksize), sigma = sigma,
               theta = theta, lambd = lambd,
                               gamma = gamma, psi = psi)

根据“使用Gabor滤波器族的特征提取”,Zhen,Zhao,Wang设计参数。
所采用的公式是第三类Gabor滤波器之一。

获得的8个过滤器是:

原始图像是:

通过过滤图像获得的图像是:



它们使用cv2.filter2D计算
fimg = cv2.filter2D(img, cv2.CV_64F, kernel)

为什么theta = 0和theta = PI / 2.0的gabor滤波器与其他滤波器相比具有真正不同的连续分量?
这对我来说真的没有意义。

最佳答案

原因是我将PSI参数设置为0。该问题立即得到解决,因为psi保持在默认值PI / 2。

关于opencv - 旋转Gabor内核过滤后的图像差异很大,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25938649/

10-09 00:40