1
形状の配列(N,2)
が与えられたら、すべてのポイントに対してサイズd x d
のパッチを取りたいと思います。ポイントのパッチをサンプリングする
d = 3
points = [[3, 2], [1, 2]]
patchs = array([[[[2, 1],[3, 1],[4, 1]],
[[2, 2],[3, 2],[4, 2]],
[[2, 3],[3, 3],[4, 3]]], [[[0, 1],[1, 1],[2, 1]],
[[0, 2],[1, 2],[2, 2]],
[[0, 3],[1, 3],[2, 3]]]])
場合 は、例えば、私は一点のみでそれを行うことができたが、私はN
上でループを回避するためにスマートな方法を見つけることができません。これは私がやったことです:
p = [3,2]
xs = p[0] + [-1,0,1]
ys = p[1] + [-1,0,1]
res = np.transpose([np.tile(xs, len(ys)), np.repeat(ys, len(xs))])