我想看看 tf 如何解码图像,所以我尝试
import tensorflow as tf
image1 = tf.image.decode_png('/usr/src/pycharm-2017.1/bin/pycharm.png')
print(image1.shape)
with tf.Session() as sess:
img = sess.run(image1)
print(img.shape, img)
但它引发了错误
InvalidArgumentError (see above for traceback): Invalid PNG header, data size 39
[[Node: DecodePng = DecodePng[channels=0, dtype=DT_UINT8, _device="/job:localhost/replica:0/task:0/cpu:0"](DecodePng/contents)]]
我也尝试过 tf.image.decode_image,但它也不起作用。 怎么了 ?我该如何修复它? 谢谢你
最佳答案
tf.image.decode_png
接受字符串类型的 Tensor,因此需要先使用 Tensorflow 读取 png,然后再将其传递给函数:
import tensorflow as tf
image1 = tf.image.decode_png(tf.read_file('/usr/src/pycharm-2017.1/bin/pycharm.png'))
print(image1.shape)
with tf.Session() as sess:
img = sess.run(image1)
print(img.shape, img)
关于python - 如何在 tf.decode_image 之后显示图像的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43396525/