创建numpy数组的扩展视图

时间:2015-12-03 18:47:00

标签: python arrays numpy

我正在学习图像卷积,为了处理边缘,我想重复原始数组的第一行和最后一行/列(在中心),如下所示:

1  1 2 3  3
1 [1 2 3] 3
4 [4 5 6] 6
7 [7 8 9] 9
7  7 8 9  9

(角落中的值对应于对角线元素。)

我将迭代原始数组的每个像素,并使用上面的数组来提取其3x3邻居。所以这是我的问题:是否可以生成与此数组相对应的视图,以便我不需要在内存中存储新的(n + 2)x(m + 2)数组?

1 个答案:

答案 0 :(得分:1)

作为一种观点,没有办法做到这一点,因为没有办法让步幅有效。对于非查看解决方案,numpy.pad完成了这项工作。您正在使用的信号处理例程也可以让您指定填充类型。