UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte

历经四天,查阅资料无数,期间报错无数,终于解决。

解决过程:

『TensorFlow × MXNet』SSD项目的复现:
在将图像数据转化为tfrecord格式过程中,直接运行tf_convert_data.py,得到报错UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd5 in position 84: invalid continuation byte。

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第1张图片

根据报错修改File Encoding为非utf-8后依然报相同的错误。
根据网上资料,建立一个tf_convert_data.sh运行文件后,运行不进行。

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第2张图片

将'r'改为'rb',令SAMPLES_PER_FILES=1(给定每个tfrecord文件存储多少原始图像的数据)

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第3张图片

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第4张图片

后检查文件编码格式,确定为utf-8,那一定是软件设置编码解码设定问题。

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第5张图片

 在运行程序tf_convert_data.py,pascalvoc_to_tfrecords.py等运行报错相关文件开头加入代码:

# -*- coding: utf-8 -*-

打开路径:File>Settings>Editor>File Encodings,将所有改为utf-8

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第6张图片

 重启软件。

切记一定要新建一个 tfrecords_ 文件夹!!!很重要,输出的tfrecords文件将保存在此文件夹。

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第7张图片

如果打开后仍然报错,重复以上操作,确定每个环节都操作正确,重启,等待,直到成功运行。

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第8张图片

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd5 in position 84: invalid continuation byte_第9张图片

你可能感兴趣的:(html,python,pycharm,ssd)