使用paddleocr识别和训练数据

2021-12-06 14:17:22 浏览数 (1)

安装

安装paddle,pip install paddlepaddle、paddlepaddle-gpu(gpu版本) 安装ocr,pip install paddleocr,gitee上的源码https://gitee.com/paddlepaddle/PaddleOCR.git

原理

使用mobilev3、resnet骨干网络训练实现以下功能:

  • 目标检测,检测文字(文字使用的预训练好的分类器数据,类似yolo使用darknet分类)
  • 方向分类器,最小外接矩形
  • 识别,识别文字

使用

代码语言:javascript复制
ocr = PaddleOCR()
result = ocr.ocr("test1.bmp", cls=True)
for line in result:
    print(line)

自己训练训练模型,构造如下

代码语言:javascript复制
det_model_dir='model/det', rec_model_dir='model/rec',
                rec_char_dict_path='model/ppocr_keys_v1.txt', cls_model_dir='model/cls', use_angle_cls=True

训练

cd PaddleOCR/ wget -P ./train_data/ https://paddleocr.bj.bcebos.com/dataset/train_icdar2015_label.txt wget -P ./train_data/ https://paddleocr.bj.bcebos.com/dataset/test_icdar2015_label.txt

标签格式如下:

训练数据文件结构

启动训练

python3 tools/train.py -c configs/det/det_mv3_db.yml -o Global.pretrain_weights=./pretrain_models/MobileNetV3_large_x0_5_pretrained/

参考:https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.1/doc/doc_ch/detection.md

0 人点赞