我有大矩阵,4000×4000
我需要为此矩阵的每个x,y计算11×11窗口的局部平均值
通常它必须是这样的
for x in range(4000)
for y in range(4000)
b[x,y]=mean(a[x-5:x+5,y-5:y+5]
但这将耗费大量时间
这是一种更有效的方法吗?
谢谢.
解决方法:
你基本上想要一个二维卷积. Scipy可以为你做到这一点:http://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.convolve2d.html
事实上在SO上有一个类似的答案:
2d convolution using python and numpy