• paddleocr识别模型训练记录


    准备数据集
    自己新建目录
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    下载识别预训练模型
    在这里插入图片描述
    下载之后是一个压缩包,解压后(注意:rec是自己新建的目录)
    在这里插入图片描述
    修改配置文件
    在这里插入图片描述
    修改内容:
    1.训练后模型存储目录;
    2.是否训练可视化;
    3.训练数据集图片和标注位置;
    4.测试数据集图片和标注位置;
    5.其他参数如等可以在训练时在命令行中指定,更多配置文档内容参见官网资料。

    # 训练后模型存储目录
    Global:
      debug: false
      use_gpu: true
      epoch_num: 800
      log_smooth_window: 20
      print_batch_step: 10
      save_model_dir: ./output/ch_PP-OCRv2_rec/  # 这里改一下,官方命名很混乱
      use_visualdl: true # 这里改成true,训练可视化
      
      
    # 修改训练数据集图片和标注位置
    Train:
      dataset:
        name: SimpleDataSet
        data_dir: ./car_plate_images/images_rec/train # 这里改成训练数据集图片位置
        label_file_list:
          - ./car_plate_images/images_rec/rec_label_train.txt # 这里改成训练数据集标注
    
    
    # 测试数据集图片和标注位置
    Eval:
      dataset:
        name: SimpleDataSet
        data_dir: ./car_plate_images/images_rec/test  # 这里改成测试数据集图片位置
        label_file_list:
          - ./car_plate_images/images_rec/rec_label_test.txt # 这里改成测试数据集标注
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    预训练模型 测试命令

    python tools/eval.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.checkpoints="./mode/rec/ch_ppocr_server_v2.0_rec_train/best_accuracy"
    
    • 1

    训练命令

    python tools/train.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.pretrained_model="./mode/rec/ch_ppocr_server_v2.0_rec_train/best_accuracy"
    
    • 1

    断点续训

    python tools/train.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.pretrained_model="./mode/rec/ch_ppocr_server_v2.0_rec_train/best_accuracy"  -o Global.checkpoints="./output/ch_PP-OCRv2_rec/latest"
    
    • 1

    训练后的测试命令

    python tools/eval.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.checkpoints="./output/ch_PP-OCRv2_rec/best_accuracy"
    
    • 1

    在这里插入图片描述

    测试一张图
    -o Global.pretrained_model 训练保存的文件路径

    python tools/infer_rec.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.pretrained_model="./output/ch_PP-OCRv2_rec/best_accuracy" Global.infer_img="1.jpg "
    
    • 1

    训练可视化
    进入项目主目录中,在终端输入命令

    visualdl --logdir "output/ch_PP-OCRv2_rec/vdl"
    
    • 1

    在这里插入图片描述
    在这里插入图片描述

    导出为推理模型:
    #-c 后面设置训练算法的yml配置文件
    #-o 配置可选参数
    #Global.pretrained_model 参数设置待转换的训练模型地址,不用添加文件后缀 .pdmodel,.pdopt或.pdparams。
    #Global.save_inference_dir参数设置转换的模型将保存的地址。

    python tools/export_model.py -c "configs/rec/ch_PP-OCRv2/rec.yml" -o Global.pretrained_model="./output/ch_PP-OCRv2_rec/best_accuracy"  Global.save_inference_dir="./output/"
    
    • 1

    推理模型预测
    #选择Student模型
    #image_dir 图片地址
    #rec_model_dir 模型地址
    #use_gpu 是否使用GPU

    python tools/infer/predict_rec.py --image_dir="./car_plate_images/images_rec/test/"  --rec_model_dir="./output/" --use_gpu=True
    
    • 1

    训练时出现了一个报错,
    在这里插入图片描述
    我将paddlepaddle降级为2.2.2
    在这里插入图片描述
    卸载paddlepaddle命令

    python -m pip uninstall paddlepaddle-gpu
    
    • 1

    安装2.2.2GPU cuda11.1版本

    python -m pip install paddlepaddle-gpu==2.2.2.post111 -f https://www.paddlepaddle.org.cn/whl/windows/mkl/avx/stable.html
    
    • 1

    训练可视化出现错误
    重新安装了numpy

    问题补充:
    出现以下报错,需要设置字符长度。
    在这里插入图片描述
    在这里插入图片描述
    需要在配置文件中:修改max_text_length参数,我的修改为50就可以了.
    要改3处!!!改1处还是会报错的。
    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    大数据技术学习笔记(三)—— Hadoop 的运行模式
    2.1基本算法之枚举1812:完美立方
    计算机毕业设计(附源码)python租车信息管理系统
    Autosar诊断实战系列21-UDS连续帧(CF)数据接收代码级分析
    【Java第25期】:File 类的用法和 InputStream, OutputStream 的用法
    Maven之POM介绍
    【网络通信三】研华网关Modbus服务设置
    无线传感器网络数据压缩与融合及安全机制的matlab仿真
    设计程序化交易系统会出现什么误区?
    6.swagger完善:界面显示注释+多版本控制
  • 原文地址:https://blog.csdn.net/qq_42102546/article/details/128041868