NumPy Broadcast:在(M,A,B,N)形数组中的元素(a,b)之间添加ndarray

时间:2016-04-24 16:04:37

标签: python arrays numpy numpy-broadcasting

我有一个包含rgb像素的图像数组,因此数组的尺寸为(image_count,height,width,3)

我正在调整各个像素,我在侧面计算的随机数量为(image_count,3)

现在,我有一个解释循环来将调整添加到各个像素。

如何广播此添加内容,以便对每个像素执行以下操作:

image_set[i,h,w,:] += pixel_adj[i,:]

1 个答案:

答案 0 :(得分:2)

pixel_adj的适当维度引入None/np.newaxis的新轴,使其成为4D,就像image_set一样,然后执行求和调整以引入broadcasting },像这样 -

image_set += pixel_adj[:,None,None,:]