[深度学习][OCR][原创]CRNN_Chinese_Characters_Rec训练360w数据集提示keyerror错误解决方法
Posted FL1623863129
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[深度学习][OCR][原创]CRNN_Chinese_Characters_Rec训练360w数据集提示keyerror错误解决方法相关的知识,希望对你有一定的参考价值。
CRNN_Chinese_Characters_Rec训练360w数据集提示keyerror错误根本原因就是编码问题。根据代码字符集文件编码必须是gbk如果你在ubuntu或者由于某种原因导致文件变成utf-8编码的话就会提示keyerror。如果在Ubuntu不方便把文件弄成utf-8的情况下,可以到
CRNN_Chinese_Characters_Rec/lib/dataset/_360cc.py这个文件第22行将gbk改为utf-8即可
char_file = config.DATASET.CHAR_FILE
with open(char_file, 'rb') as file:
char_dict = num: char.strip().decode('gbk', 'ignore') for num, char in enumerate(file.readlines())
改为
char_file = config.DATASET.CHAR_FILE
with open(char_file, 'rb') as file:
char_dict = num: char.strip().decode('utf-8', 'ignore') for num, char in enumerate(file.readlines())
此外,经过研究发现360w数据集里面其实总共包含了5829个字符,并不是5990全部包含。而且大家注意一个问题就是5990字符第一个是blank这是4个字符长度,不能放进alphabets.py里面,不然就变成5994字符长度了因为b l a n k 一共是5个字符
以上是关于[深度学习][OCR][原创]CRNN_Chinese_Characters_Rec训练360w数据集提示keyerror错误解决方法的主要内容,如果未能解决你的问题,请参考以下文章
[深度学习][OCR][原创]CRNN_Chinese_Characters_Rec训练360w数据集提示keyerror错误解决方法