tensor和numpy的互相转换的实现示例

yipeiwu_com7年前Python基础

要对tensor进行操作,需要先启动一个Session,否则,我们无法对一个tensor比如一个tensor常量重新赋值或是做一些判断操作,所以如果将它转化为numpy数组就好处理了。下面一个小程序讲述了将tensor转化为numpy数组,以及又重新还原为tensor:

import tensorflow as tf
img1 = tf.constant(value=[[[[1],[2],[3],[4]],[[1],[2],[3],[4]],[[1],[2],[3],[4]],[[1],[2],[3],[4]]]],dtype=tf.float32)
img2 = tf.constant(value=[[[[1],[1],[1],[1]],[[1],[1],[1],[1]],[[1],[1],[1],[1]],[[1],[1],[1],[1]]]],dtype=tf.float32)
img = tf.concat(values=[img1,img2],axis=3)
sess=tf.Session()
#sess.run(tf.initialize_all_variables())
sess.run(tf.global_variables_initializer())
print("out1=",type(img))
#转化为numpy数组
img_numpy=img.eval(session=sess)
print("out2=",type(img_numpy))
#转化为tensor
img_tensor= tf.convert_to_tensor(img_numpy)
print("out2=",type(img_tensor))

输出:

out1= <class 'tensorflow.python.framework.ops.Tensor'>
out2= <class 'numpy.ndarray'>
out2= <class 'tensorflow.python.framework.ops.Tensor'>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 面试中 8 个必考问题

1、下面这段代码的输出结果是什么?请解释。 def extendList(val, list=[]): list.append(val) return list list...

Python不规范的日期字符串处理类

我分析了形如19920203、199203、1992.02.03、1992.02、1992-02-03、1992-02、920203时间格式特征,列出了正则表达式如下:复制代码 代码如下...

深入理解Python中的元类(metaclass)

译注:这是一篇在Stack overflow上很热的帖子。提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解。他知道这肯定和自省有...

在windows下Python打印彩色字体的方法

本文讲述了Python在windows下打印彩色字体的方法。分享给大家供大家参考,具体如下: ############################################...

pytorch 使用单个GPU与多个GPU进行训练与测试的方法

如下所示: device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")#第一行代码 model.t...