使用2d numpy mask np.where寻址3d numpy数组(pythonic ??)

时间:2018-08-08 15:17:32

标签: python numpy raster numpy-broadcasting

说我有一个图像数组:

raster.shape => (3,100,100)

我为红色饱和的所有位置生成一个蒙版:

mask = np.where(raster[0,:,:] == 255)

我想修改这些位置的一部分...我可以这样:

raster[:,mask[0],mask[1]] = 0

还有更Python化的方法吗?还是最好的选择?

1 个答案:

答案 0 :(得分:3)

我会直接使用面具,例如

raster[:, raster[0] == 255] = 0

应该等于您写的内容。