PytorchOCR的检测模块只支持JsonDataset
形式的数据格式
-
构造数据集
JsonDataset
使用 json 格式来存储标注信息,具体格式为"data_root": "存放图片文件的目录", "data_list": [ { "img_name": "relative/path/xxx.jpg",# 图片相对于 data_root 的相对路径 "annotations": [ # 当前图片的所有标注 "polygon": [[x1,y1],[x2,y2],...,[xn,yn]], # 文本框的多点标注 "text": "label", # 文本框内容 "illegibility":false, # 是否模糊 "language":"Latin", # 文本语言类型 "chars": [ # 当前文本框的字符集标注,标注含义同上 "polygon": [[x1,y1],[x2,y2],...,[xn,yn]], "char": "c", "illegibility": false, "language":"Latin" ] ] } ]
我们提供了 转换工具 以方便开发者将现有的公开数据集进行转换
除此之外,我们也为你准备了一批准换好的公开数据集,具体请参考 https://github.com/WenmuZhou/OCR_DataSet
PytorchOCR提供了训练脚本和预测脚本,本节将以 DB 检测模型为例,按照如下步骤启动训练:
-
从百度网盘
pytorchocr/det/imagenet
下载预训练模型并放于PytorchOCR/weights
目录下 -
拷贝
config/det_train_db_config.py
为自己的配置文件 -
修改配置文件
- 必须修改的字段说明
config.dataset.train.dataset.file
: 训练集json文件路径config.dataset.eval.dataset.file
: 验证集集json文件路径
- 可选修改字段说明
config.train_options.checkpoint_save_dir
: 模型和日志文件保存地址
其他字段可根据需要修改
-
通过如下命令启动训练
CUDA_VISIBLE_DEVICES=0 python3 tools/det_train.py --config '你的配置文件路径'
PytorchOCR支持训练和评估交替进行, 可以在 config.train_options
中修改 val_interval
设置评估频率,
评估过程中默认将最佳hmean模型,保存为 best.pth。
只需修改 config.train_options.resume_from
为模型地址,即可从该模型断掉的地方继续训练
通过以下命令启动预测
CUDA_VISIBLE_DEVICES=0 python3 tools/det_infer.py --model_path '' --img_path ''