使用numpy填充数组

Cub*_*ius 4 python numpy

在我的程序中,我有一个numpy数组,并对其进行一些卷积过滤.我正在寻找一些方法来使用numpy轻松进行数组填充(然后输出unpad)以避免边界检查.我知道scipy可以做卷积,但我有理由自己做.gnuplot.py用于输出.

def touch(field, coords, value):
    field[coords[0], coords[1]] = value
    if coords[0] - 1 > 0:
        field[coords[0] - 1, coords[1]] = value / 2
    if coords[1] - 1 > 0:
        field[coords[0], coords[1] - 1] = value / 2
    if coords[0] < field.shape[0] - 1:
        field[coords[0] + 1, coords[1]] = value / 2
    if coords[1] < field.shape[1] - 1:
        field[coords[0], coords[1] + 1] = value / 2
Run Code Online (Sandbox Code Playgroud)

Pet*_*rin 6

pad计划包含在Numpy 1.7.0中的模块 - 请参阅此票证.现在,只需下载并使用其with_constant功能即可.

Unpadding就像一样简单field[1:-1, 1:-1].