风智方舟»论坛 方语智行 paddle OCR 查看内容

0 评论

1 收藏

分享

【PPOCR】PaddleOCR微调en_PP-OCRv3_det_infer检测模型

本帖最后由 云天徽上 于 2024-8-20 17:11 编辑

本帖最后由 云天徽上 于 2024-8-20 14:20 编辑

本帖最后由 云天徽上 于 2024-8-19 17:20 编辑

1、获取微调检测模型的数据

检测模型的数据集的制作和获取具体参考PPOCRLabel进行数据标注,并划分检测数据集的步骤;得到的检测结果如下图所示:

image.png

其中trian/val/test文件夹下图片,train.txt等文件是对应的文本框的标注文件;

2、初始权重的获取

en_PP-OCRv3_det 【最新】原始超轻量模型,支持英文、数字检测   [ch_PP-OCRv3_det_cml.yml](file:/././PaddleOCR-release-2.5/configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml)  3.8M    

下载地址:

 [https://paddleocr.bj.bcebos.com/PP-OCRv3/english/en_PP-OCRv3_det_distill_train.tar](https://paddleocr.bj.bcebos.com/PP-OCRv3/english/en_PP-OCRv3_det_distill_train.tar)

3、检测模型的推理:

python tools/infer_det.py -c ./configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.infer_img="./train_data/drivingData/" Global.pretrained_model="./inference_model/en_PP-OCRv3_det_infer/best_accuracy"

4、检测模型的验证:

python tools/eval.py -c ./configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.checkpoints="{path/to/weights}/best_accuracy"

5、检测模型的训练:

有3种模型配置文件加载的方式,对应不同的yml的权重文件: 具体参考:https://aistudio.baidu.com/projectdetail/8236106
训练的细节参考:https://github.com/PaddlePaddle/PaddleOCR/blob/main/doc/doc_ch/finetune.md

4.1单机单卡训练:

python tools/train.py -c ./configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.pretrained_model="./inference_model/en_PP-OCRv3_det_infer/best_accuracy"

4.2混合精度训练:

python3 tools/train.py -c configs/det/det_mv3_db.yml -o Global.pretrained_model=./pretrain_models/MobileNetV3_large_x0_5_pretrained Global.use_amp=True Global.scale_loss=1024.0 Global.use_dynamic_loss_scaling=True

5、微调结果测试:

python tools/eval.py -c ./configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.checkpoints="./inference_model/en_PP-OCRv3_det_infer/best_accuracy"

5.1 检测模型微调前的精度

image.png

5.2 检测模型微调后的精度

image.png

训练后的模型各方面的性能都有了提升。。。

5.训练后的模型转静态模型

python tools/export_model.py -c configs/rec/PP-OCRv4/en_PP-OCRv4_rec.yml
-o Global.pretrained_model=./output/best_accuracy
Global.save_inference_dir=./inference/

6.静态模型转onnx支持C++的TensorRT部署

paddle2onnx --model_dir /mnt/d/Downloads/202406/paddelocr/pp/ch_PP-OCRv4_det_infer/ --model_filename inference.pdmodel --params_filename inference.pdiparams --opset_version 11 --save_file /mnt/d/Downloads/202406/paddelocr/onnx/ch_PP-OCRv4_rec_infer.onnx

注意点:

1、如果检测的图像尺寸偏小的话,可以使用resize将图片放大一些;
2、如果训练出来的检测框偏小,可以修改参数unclip_ratio,将其调大即可。配置文件中的参数;

回复

举报

全部回复
暂无回帖,快来参与回复吧
云天徽上
超级版主
主题 69
回复 1
粉丝 0