tf.gfile.FastGFile造成的'utf-8' codec can't decode..错误

来源:互联网 发布:京东淘宝网手机 编辑:程序博客网 时间:2024/06/07 04:48

python3.5

tensorflow 1.4.0

##import matplotlib.pyplot as pltimport tensorflow as tfimage_raw_data = tf.gfile.FastGFile("test.bmp", 'r').read()with tf.Session() as sess:    img_data = tf.image.decode_bmp(image_raw_data)    print(img_data.eval())    plt.imshow(img_data.eval())    plt.show()

出现错误:

Traceback (most recent call last):  File "e:\skh\python\readImage.py", line 5, in <module>    image_raw_data = tf.gfile.FastGFile("test.bmp", 'r').read()  File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\lib\io\file_io.py", line 126, in read    pywrap_tensorflow.ReadFromStream(self._read_buf, length, status))  File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\lib\io\file_io.py", line 94, in _prepare_value    return compat.as_str_any(val)  File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\util\compat.py", line 106, in as_str_any    return as_str(value)  File "D:\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\util\compat.py", line 84, in as_text    return bytes_or_text.decode(encoding)UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 22: invalid continuation byte

将FastGFile对应的mode从“r”改为“rb”

参考:

TensorFlow学习笔记(UTF-8 问题解决 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte)

https://github.com/balancap/SSD-Tensorflow/issues/108

阅读全文
1 0