scipy.ndimage.filters
中的几个函数,包括 scipy.ndimage.filters.convolve
,都有一个“mode”参数,用于定义它在边界处的行为。 mode='constant'
对超出边界的点使用常量值,而 mode='wrap'
环绕。这适用于所有轴。
我想对二维数组(例如)进行卷积,以便:
执行此操作的最有效方法是什么?
最佳答案
我可以使用 mode='wrap'
并在我想保持不变的轴的末端添加一些死空间:
import numpy
from scipy import misc, ndimage
lena = misc.lena()
image = numpy.vstack((lena, numpy.zeros(lena.shape[1])))
weights = numpy.array([[1, 1, 1],
[1, 8, 1],
[1, 1, 1]])/16.
convimage = ndimage.convolve(image, weights, mode='wrap')[0:lena.shape[1],]
关于python - scipy.ndimage.filters.convolve - 沿不同轴的不同模式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18935037/