• AI项目十三:PaddleOCR训练自定义数据集


    若该文为原创文章,转载请注明原文出处。

    续上一篇,PaddleOCR环境搭建好了,并测试通过,接下来训练自己的检测模型和识别模型。

    paddleocr检测模型训练
    1、准备数据集

    在PaddleOCR目录下新建文件夹:train_data, 这个文件夹用于存放数据集的。

    使用的是恩培提供的车牌识别数据集,下载car_plate_images.zip后,解压到train_data目录下。

    2、配置文件

    在PaddleOCR主目录下:configs/det/ch_ppocr_v2.0/下,

    复制ch_det_mv3_db_v2.0.yml为ch_det_mv3_db_v2.0.yml_car_plate.yml

    打开ch_det_mv3_db_v2.0.yml_car_plate.yml配置文件,修改以下4个内容:

    1.训练后模型存储目录;

    2.是否训练可视化;

    3.训练数据集图片和标注位置;

    4.测试数据集图片和标注位置;

    其他参数如pretrained_model等可以在训练时在命令行中指定.其它的看官方文档

    ch_det_mv3_db_v2.0.yml_car_plate.yml文件内修改

    我的电脑没有gpu,所以use_gpu需要修改成false

    配置文件完后,创建保存模型目录output/ch_ppocr_mobile_v2.0_det:

    3、使用官方的权重文件进行预测

    打开PaddleOCR/doc/doc_ch/models_list.md at release/2.6 · PaddlePaddle/PaddleOCR · GitHub

    下载权重文件

    下载后,解压,把权重文件放到PaddleOCR\pretrain_models\目录下,pretrain_models目录自己创建。

    接下来先预测一下:

    预测命令:

    python tools/eval.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml" -o Global.checkpoints="./pretrain_models/ch_ppocr_server_v2.0_det_train/best_accuracy"

    4、训练

    训练命令:

    python tools/train.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml" -o Global.pretrained_model="./pretrain_models/ch_ppocr_server_v2.0_det_train/best_accuracy"

    参数解释:

    -c 是配置文件的路径

    -o 是权重文件的路径

    预测 -o Global.checkpoints=

    训练 -o Global.pretrained_model=

    注意这两个不一样。

    断点续训: -o Global.checkpoints:保存的文件路径

    python tools/train.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml" -o Global.pretrained_model="./mode/det/ch_ppocr_server_v2.0_det_train/best_accuracy" -o Global.checkpoints="./output/ch_db_mv3/latest"
    5、測試

    使用训练模型–测试1张图 -o Global.infer_img:文件位置

    python tools/infer_det.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml"  -o Global.infer_img="./train_data/car_plate_images/images_det/test/test_5.jpg" Global.pretrained_model="./output/ch_ppocr_mobile_v2.0_det/latest"

    使用训练模型–测试文件夹内所有图片 新建文件夹imgs 放测试的图片 -o Global.infer_img:文件夹位置

    python tools/infer_det.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml"  -o Global.infer_img="./imgs/" Global.pretrained_model="./output/ch_db_mv3/latest"

    训练模型保存为用于部署的推理模型 保存路径:output文件夹内

    python tools/export_model.py -c "./configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml_car_plate.yml" -o Global.pretrained_model="./output/ch_db_mv3/latest" Global.save_inference_dir="./output/"

    使用推理模型–预测命令: #det_algorithm 检测使用的算法 #det_model_dir 检测模型位置 #image_dir 测试图片路径 #use_gpu 是否使用GPU

    python tools/infer/predict_det.py --det_algorithm="DB" --det_model_dir="./output/" --image_dir="./car_plate_images/images_det/test/" --use_gpu=True

    如有侵权,或需要完整代码,请及时联系博主。

  • 相关阅读:
    【Git】Git cherry-pick
    【技术分享】Python 和 JavaScript 的区别是什么?
    代码随想录算法训练营Day52|动态规划11
    QT基础教程(文本绘制)
    YYGH-13-客服中心
    AJAX学习笔记3练习
    线性方程组(二)
    [Kettle] 生成随机数
    中集集团全球港航人工智能高科技独角兽中集飞瞳贯彻国家关于世界一流水平的超大型智能港口,全球顶尖AI核心技术超一流智能港口解决方案
    【数据结构】链表经典OJ题,常见几类题型(一)
  • 原文地址:https://blog.csdn.net/weixin_38807927/article/details/133442916