AstarLight / Lets_OCR

A repository for OCR, which inlcudes some classical OCR algorithms Pytorch implementation such as CTPN, EAST and CRNN.
MIT License
656 stars 327 forks source link

把训练数据转换lmdb之前,标签是文字还是对应的数字??? #89

Open jiaoxiaosong opened 4 years ago

rsqai commented 4 years ago

应该是数字,而且存图的时候需要open('rb')直接将二进制存到 lmdb

lmw0320 commented 4 years ago

应该是数字,而且存图的时候需要open('rb')直接将二进制存到 lmdb

不理解。。。博主提供的百度链接中的数据集有3份文件,一份是data_train.txt(205MB), 一份data_test.txt(2MB), 还一份是Synthetic_Chinese_String_Dataset.rar, 是8.6GB.。data_train.txt中图片的路径后面跟着的是一堆数字,也不是二进制格式。。这个是怎么回事呢? 另外,我使用博主的create_lmdb_dataset.py文件将数据集转换成lmdb文件时,一直提示什么UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: illegal multibyte sequence。。对应的出错代码是: with open(imagePath, 'r') as f:
imageBIN = f.read() 这意思是我需要将open中的‘r'替换成’rb‘??, 求指点。。

hwangyl commented 4 years ago

应该是数字,而且存图的时候需要open('rb')直接将二进制存到 lmdb

不理解。。。博主提供的百度链接中的数据集有3份文件,一份是data_train.txt(205MB), 一份data_test.txt(2MB), 还一份是Synthetic_Chinese_String_Dataset.rar, 是8.6GB.。data_train.txt中图片的路径后面跟着的是一堆数字,也不是二进制格式。。这个是怎么回事呢? 另外,我使用博主的create_lmdb_dataset.py文件将数据集转换成lmdb文件时,一直提示什么UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: illegal multibyte sequence。。对应的出错代码是: with open(imagePath, 'r') as f: imageBIN = f.read() 这意思是我需要将open中的‘r'替换成’rb‘??, 求指点。。

txn.put(k, v) 转为 txn.put(str(k).encode(), str(v).encode()) 就可以了

hwangyl commented 4 years ago

应该是数字,而且存图的时候需要open('rb')直接将二进制存到 lmdb

不理解。。。博主提供的百度链接中的数据集有3份文件,一份是data_train.txt(205MB), 一份data_test.txt(2MB), 还一份是Synthetic_Chinese_String_Dataset.rar, 是8.6GB.。data_train.txt中图片的路径后面跟着的是一堆数字,也不是二进制格式。。这个是怎么回事呢? 另外,我使用博主的create_lmdb_dataset.py文件将数据集转换成lmdb文件时,一直提示什么UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: illegal multibyte sequence。。对应的出错代码是: with open(imagePath, 'r') as f: imageBIN = f.read() 这意思是我需要将open中的‘r'替换成’rb‘??, 求指点。。

‘r’ 转 'rb'也是需要的

Yaoxingtian commented 4 years ago

训练CRNN 的数据标签不应该是图片上的文字内容吗? 为什么下载的文件里还有坐标而且是数字标签呢? 疑惑