我有一个3-dim数组[行] [cols] [3],其值介于0和X之间。 我需要操作特定的维度在数组中。所以,我已经采取了我想要操纵iPython numpy - 如何使用地图更改数组切片的值
arr_slice =阵列的部分切片[:,:,0]
现在我可以做一些操作像arr_slice * = 3,这将改变原来的数组,正如我打算的那样。
但是,我需要根据映射更改值,该映射是一个大小为X的数组,将slice(0-X)的值映射到新值。地图称为映射
,所以我知道映射[arr_slice]会做我想做的,但使用它是这样的: arr_slice =映射[arr_slice] 当然会改变的只有arr_slice而不是原来的数组我有。
那么,如何执行此任务来更改原始数组?
的数组实际上是一个形象,我试图操纵它的Y值在YIQ格式:
im_eq = np.copy(im_orig)
if (rgb):
im_eq = rgb2yiq(im_eq)
im = im_eq[:,:,0]
else:
im = im_eq
mapping = get_cumutative_histogram(im)
im = mapping[im.astype(int)] # the problematic line
添加一个案例? – Divakar