请注意,在我的情况下,占位符名称是 x ,但我想您应该找到输入占位符的正确名称 . x_input 是包含输入数据的标量值或数组 .
在我的情况下,也提供 sess 是强制性的 .
我的例子也涵盖了matplotlib图像可视化部分,但这是OT .
0
一个简单的例子可能是,
import tensorflow as tf
import numpy as np
a=tf.random_normal([2,3],0.0,1.0,dtype=tf.float32) #sampling from a std normal
print(type(a))
#<class 'tensorflow.python.framework.ops.Tensor'>
tf.InteractiveSession() # run an interactive session in Tf.
6 回答
你需要:
将图像张量以某种格式(jpeg,png)编码为二进制张量
评估(运行)会话中的二进制张量
将二进制文件转换为流
提供给PIL图像
(可选)使用matplotlib显示图像
码:
这对我有用 . 你可以在ipython笔记本中试试 . 只是不要忘记添加以下行:
也许你可以尝试,这种方法:
Session.run
或eval
返回的任何张量都是NumPy数组 .要么:
或者,等效地:
EDIT:
Session.run
或eval()
返回的任何张量都不是NumPy数组 . 例如,稀疏张量作为SparseTensorValue返回:要从张量转换回numpy数组,您只需在转换张量上运行
.eval()
即可 .我已经面对并解决了张量 - > ndarray转换的特定情况下的张量代表(对抗)图像,用cleverhans库/教程获得 .
我认为我的问题/答案(here)也可能是其他案例的一个有用的例子 .
我是TensorFlow的新手,我的经验结论是:
为了成功,似乎tensor.eval()方法可能还需要输入占位符的值 . Tensor可以像需要其输入值(提供到
feed_dict
)中的函数一样工作,以便返回输出值,例如,请注意,在我的情况下,占位符名称是 x ,但我想您应该找到输入占位符的正确名称 .
x_input
是包含输入数据的标量值或数组 .在我的情况下,也提供
sess
是强制性的 .我的例子也涵盖了matplotlib图像可视化部分,但这是OT .
一个简单的例子可能是,
n现在,如果我们想要将张量a转换为numpy数组
就如此容易!