基于python部署PP-OCRv5的pytorch模型脱离paddle框架源码+模型

发布于:2025-06-13 ⋅ 阅读:(32) ⋅ 点赞:(0)

本项目思路:

PaddleOCR 作为开源 OCR 工具领域的佼佼者,以其出色的效果备受关注。不过,该工具原生仅支持在 paddlepaddle 框架下运行。

在众多实际项目中,Pytorch 框架的应用更为广泛。若在项目中单独安装 paddlepaddle 框架,不仅会导致项目体积变得庞大冗余,还可能引发不同框架之间的兼容性冲突问题。

因此目前有4种常用方法尽量摆脱paddle环境:

第一方法:转成onnx模型,脱离paddle环境直接使用onnxruntime进行推理

第二方法:调用paddle_inference库,直接封装进行推理,常用于C++或者C#开发

第三方法:转成pytorch模型,脱离paddle环境直接使用pytorch进行推理

第四方法:转成openvino模型,脱离paddle环境直接使用openvino进行推理

这个项目就是使用第三种方法:

paddleocrv5推理模型=>pytorch模型

所用模型

检测模型:ptocr_v5_mobile_det.pth

识别模型:ptocr_v5_mobile_rec.pth

字典文件:ppocrv5_dict.txt

如果需要server模型,可从 PaddleOCR2Pytorch 仓库中获取。

项目结构

code/
├── main.py              # 主程序入口
├── utils/                # 工具函数目录
│   └── visualize.py      # 可视化相关函数
└── test_img/             # 测试图片目录

使用方法

安装环境

conda creat -n py310 python=3.10

conda activate py310

pip install torch==2.2.1+cu118 torchvision==0.17.1+cu118 -f https://download.pytorch.org/whl/torch_stable.html

pip install -r requirements.txt

命令行参数

  • --data_path必需参数,指定输入图片路径或目录路径
  • --save_path可选参数,指定保存结果的路径或目录
  • --show_confidence可选参数,是否在结果图像中显示置信度(默认不显示)

单图片处理

python main.py --data_path test_img/general_ocr_rec_001.png --save_path output/result.png

目录批量处理

python main.py --data_path test_img --save_path output

推理视频

python main_video.py --video_path test_video/ocr_test.mp4

效果:

原图:

识别效果: