微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – Tensorflow:Py_func返回未知的形状

我有一个简单的问题是tf.py_func函数.

我有一个图像张量my_img的形状(1,224,224,3).为了测试py_func,我将张量提供给python函数return_tf,该函数应该返回相同的张量(根据文档转换为numpy数组之后).

这是代码

def return_tf(x):
   return np.array(x)

test = tf.py_func(return_tf,[my_img],[tf.float32])

但当我检查返回张量的形状称为测试时,我得到:

tf.Tensor 'PyFunc:0' shape=unkNown dtype=float32

我也无法在张量上运行eval(),因为我收到错误

AttributeError: 'list' object has no attribute 'eval'.

任何人都知道如何修复tf.py_func返回的张量的张量形状?

解决方法:

刚发现一个解决方法..因为py_func返回张量流列表,我可以做ff:

test = tf.reshape(tf.concat(1, test), [ <<a shape>> ])

获得具有所需形状的张量

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐