【Python】numpy形状变换

形状操作

ndarray.reshape(shape[,order])

返回一个具有相同数据域,但shape不一样的视图

ndarray.resize(new_shape[,orefcheck])

原地修改数组的形状(需要保持元素个数前后相同)

ndarray.transpose(*axes)

返回数组针对某一轴进行转置的视图

input_image = cv2.imread(r"1.png") #这时input_image的形状为400,400,3
input_image = input_image.transpose((2, 0, 1))#这时形状为3,400,400

ndarray.swapaxes(axis1, asix2)

返回数组axis1轴与axis2轴互换的视图

ndarray.flatten([order])

返回将原数组压缩成一维数组的拷贝(全新的数组)

ndarray.ravel([order])

返回将原数组压缩成一维数组的视图

ndarray.squeeze([axis])

返回将原数组中的shape中axis==1的轴移除之后的视图

上述方法中,除resize、flatten外其他的方法返回的都是原数组修改shape或者axes之后的视图,也就是说,对返回数组中的元素进行修改,原数组中对应的元素也会被修改(因为它们是公用同一个数据域的)。同时,resize方法会修改原数组的shape属性,其他方法不会修改原数组任何内部数据。

 

同维度内发生交换

input_image = cv2.imread("1.png") #opencv读出来的时bgr
input_image = input_image[:, :, (2, 1, 0)] #转变过后就是rgb

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值