0

我有一个大小为 M*N 的图像,其像素坐标已根据空间填充曲线展平为一维数组(即不是我可以使用重塑的经典光栅化)。

因此,我处理了我的一维数组(展平图像),然后我想将其重塑为 M*N 数组(初始大小)。

到目前为止,我已经使用 for 循环完成了此操作:

for i in range(img_flat.size):
    img_res[x[i], y[i]] = img_flat[i]

x 和 y 是根据我的路径扫描的 x 和 y 像素坐标。

但是,我想知道如何在独特的代码行中做到这一点。

4

2 回答 2

1

如果xandy是维度为 1 和 lengths 的 numpy 数组n,并且img_flat还有 lengthn img_res是维度为 2 的 numpy 数组,(h, w)使得 `h*w = n,则:

img_res[x, y] = img_flat

应该够了

于 2016-07-20T13:01:27.097 回答
0

事实上,这很容易:

vec = np.arange(0, seg.size, dtype=np.uint)
img_res[x[vec], y[vec]] = seg[vec]
于 2016-07-20T12:59:23.030 回答