本项目提供了一种用于创建二维Gabor滤波器的MATLAB工具。该滤波器广泛应用于图像处理与计算机视觉领域,特别适合于纹理分析和特征提取。
`gabor_filter = gabor2D(w, theta, sigma, size, type)`
- `w`: 中心频率。
- `theta`: 角度或方向(以度为单位)。
- `sigma`: 高斯包络的 σ 值,通常选择为 1/w。
- `size`: 输出滤波器的像素大小(尺寸 * 尺寸)。
- `type`: “偶数” 或“奇数”,默认值:“奇数”。
- even: Gabor 滤波器的实部
- odd: Gabor 滤波器的虚部
例子:
假设要过滤图像大小为 320*240,中心频率分别为 [2, 4, 8, 16, 32, 64] 的情况。滤波器尺寸为 31x31。
可以这样设置参数:
```python
w = [2, 4, 8, 16, 32, 64]
w = w / (320/31) # 标度中心频率
theta = [0, 45, 90, 135]
sigma = 1./w;
size = 31;
type = even;
g = gabor2D(w, theta, sigma, size, type)
```