从skimage的gabor滤波器示例中获取,计算图像的gabor滤波器很容易:
import numpy as np
from scipy import ndimage as nd
from skimage import data
from skimage.util import img_as_float
from skimage.filter import gabor_kernel
brick = img_as_float(data.load('brick.png'))
kernel = np.real(gabor_kernel(0.15, theta = 0.5 * np.pi,sigma_x=5, sigma_y=5))
filtered = nd.convolve(brick, kernel, mode='reflect')
mean = filtered.mean()
variance = filtered.var()
brick就是一个numpy数组。假设我有一个5000*5000的numpy数组。我想要实现的是生成两个新的5000*5000的numpy数组,其中像素是15*15窗口中心的gabor滤波器的平均值和方差。
有人能帮我实现这个吗?
编辑
为什么我会被downvote?无论如何,为了澄清,我展示了如何在单个图像上计算gabor滤波器的示例。我只想在一个非常大的图像的小正方形子集上计算gabor滤波器(因此使用滑动窗口)。