python Tensor和Array对比分析

yipeiwu_com7年前Python基础

如下所示:

区别 Array Tensor
类型 uint8,float32系列 {}
各类型相互转换 uint8转float64:image = image * (2. / 255.) - 1 float64转uint8:image.astype(np.uint8) {}
扩充维度 image[np.newaxis, :] tf.expand_dims(image,axis=0)
数组拼接 np.concatenate([image, image], axis=0) tf.concat([frame,frame],axis=0)
相互转换 image.eval() tf.convert_to_tensor(image)
拼接 np.concat, np.concatenate, np.stack, image.append等 tf.stack, tf.concat

##array的一些操作

1、获取shape:score.shape #(1, 257, 257)

2、转换成list:score.get_shape().as_list() #[1, 257, 257]

3、list前再扩充一维: [1] + score.get_shape().as_list() #[1, 1, 257, 257]

4、x_crops是(1, 3, 255, 255, 3),将前两维合并:

x_crops = tf.reshape(x_crops, [x_crops_shape[0] * x_crops_shape[1]] + x_crops_shape[2: ])

5、numpy数组堆叠

z.shape本来是(1,127,127,3),想要堆叠成(3,127,127,3)

np.stack([z_crops_hog,z_crops_hog,z_crops_hog])后,变成了(3, 1, 127, 127, 3),

vstack 按行堆叠

hstack 按列堆叠

以上这篇python Tensor和Array对比分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

PyTorch中常用的激活函数的方法示例

PyTorch中常用的激活函数的方法示例

神经网络只是由两个或多个线性网络层叠加,并不能学到新的东西,简单地堆叠网络层,不经过非线性激活函数激活,学到的仍然是线性关系。 但是加入激活函数可以学到非线性的关系,就具有更强的能力去进...

利用Python开发微信支付的注意事项

利用Python开发微信支付的注意事项

前言 微信支付是由微信及财付通联合推出的移动支付创新产品。如今,随着微信支付的全面开放,相关需求也越来越多,很多开发人员进行微信支付开发及商家申请微信支付时,面临着诸多疑惑。 要想开发顺...

Python中的日期时间处理详解

Python中的日期时间处理详解

Python中关于时间、日期的处理库有三个:time、datetime和Calendar,其中datetime又有datetime.date、datetime.time、datetime...

python如何基于redis实现ip代理池

这篇文章主要介绍了python如何基于redis实现ip代理池,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用apschedule...

用uWSGI和Nginx部署Flask项目的方法示例

用uWSGI和Nginx部署Flask项目的方法示例

概况 在开发过程中,我们一般直接用Python命令直接运行Flask程序。这样的运行只适合我们开发,方便我们调试。一旦程序部署到线上,这样运行的Flask程序性能会比较低。可以采用uW...