python Tensor和Array对比分析

yipeiwu_com6年前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设计】。

相关文章

浅谈python 里面的单下划线与双下划线的区别

在学习Python的时候,很多人都不理解为什么在方法(method)前面会加好几个下划线,有时甚至两边都会加,比如像 __this__ 这种。在我看到上面的文章之前,我一直以为Pytho...

matlab中实现矩阵删除一行或一列的方法

实例如下所示: >> A=[1,2,3;4,5,6;7,8,9] A = 1 2 3 4 5 6 7 8 9 删除行: >> A...

pytorch 常用线性函数详解

Pytorch的线性函数主要封装了Blas和Lapack,其用法和接口都与之类似。 常用的线性函数如下: 函数 功能...

Python基于pillow判断图片完整性的方法

本文实例讲述了Python基于pillow判断图片完整性的方法。分享给大家供大家参考,具体如下: 1、安装第三方库。 pip install pillow 2、函数示例。...

Python开发的HTTP库requests详解

Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,从而使得Pythoner进行网...