将 multidim numpy 数组的部分归零

Zero out portion of multidim numpy array

我有一个维度为 (200, 200, 3) 的 numpy 数组。它是一个 RGB 图像。

我还有此图像区域的 (xmin,ymin,xmax,ymax) 坐标,我想将其设置为零。该区域在所有三个通道中都应为零。

我当然可以用一个循环来解决这个问题,但是那会很浪费。

有没有一种简单的方法可以使用 numpy 屏蔽数组?

使用数组切片。如果 xminxmaxyminymax 是要设置为零的数组区域的索引,则:

a[xmin:xmax,ymin:ymax,:] = 0.