我计算了 8 个 Gabor 滤波器,Theta 旋转 m*PI/8。
作为 OpenCv cv2.getGaborKernel 输入的 Gabor 内核参数: 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)
参数是根据 Zhen, Zhao, Wang 的“使用 Gabor 滤波器系列进行特征提取”设计的。 采用的公式是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/