RapidAI/paddleocr_convert:PaddleOCR中模型快速转换为ONNX格式

news/2024/12/26 11:09:54/

目录

    • RapidAI/paddleocr_convert
      • 使用步骤
      • 更新日志

RapidAI/paddleocr_convert

PyPI paddleocr_convert documentation

  • 本仓库主要是针对性地将PaddleOCR中推理模型转换为ONNX格式。
  • 注意
    • 输入:推理模型的url或者本地tar路径
    • 输出:转换后的ONNX模型
    • 如果是识别模型,需要提供对应字典的原始txt路径(打开github中txt文件,点击右上角raw之后的路径),用来将字典写入到onnx模型中
    • !!!需要搭配RapidOCR中相关推理代码使用

使用步骤

  1. 安装paddleocr_convert

    pip install paddleocr_convert
    
  2. 命令行使用

    • 用法:
      $ paddleocr_convert -h
      usage: paddleocr_convert [-h] [-p MODEL_PATH] [-o SAVE_DIR][-txt_path TXT_PATH]optional arguments:
      -h, --help            show this help message and exit
      -p MODEL_PATH, --model_path MODEL_PATHThe inference model url or local path of paddleocr.e.g. https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar ormodels/ch_PP-OCRv3_det_infer.tar
      -o SAVE_DIR, --save_dir SAVE_DIRThe directory of saving the model.
      -txt_path TXT_PATH, --txt_path TXT_PATHThe raw txt url or local txt path, if the model isrecognition model.
      
    • 示例:
      # online
      $ paddleocr_convert -p https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar \-o models$ paddleocr_convert -p https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar \-o models \-txt_path https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/release/2.6/ppocr/utils/ppocr_keys_v1.txt# offline
      $ paddleocr_convert -p models/ch_PP-OCRv3_det_infer.tar \-o models$ paddleocr_convert -p models/ch_PP-OCRv3_rec_infer.tar \-o models \-txt_path models/ppocr_keys_v1.txt
      
  3. 脚本使用

    from paddleocr_convert import PaddleOCRModelConvertconverter = PaddleOCRModelConvert()save_dir = 'models'# online
    url = 'https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar'
    txt_url = 'https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/release/2.6/ppocr/utils/ppocr_keys_v1.txt'converter(url, save_dir, txt_path=txt_url)# offline
    model_path = 'models/ch_PP-OCRv3_rec_infer.tar'
    txt_path = 'models/ppocr_keys_v1.txt'
    converter(model_path, save_dir, txt_path=txt_path)
    
  4. 使用模型方法:

    • 假设要用日文识别模型,且已经转好,路径为local/models/japan.onnx
    1. 安装rapidocr_onnxruntime
      pip install rapidocr_onnxruntime
      
    2. 脚本使用
      from rapidocr_onnxruntime import RapidOCRmodel_path = 'local/models/japan.onnx'
      engine = RapidOCR(rec_model_path=model_path)img = '1.jpg'
      result, elapse = engine(img)
      
    3. 命令行使用
      $ rapidocr_onnxruntime -img 1.jpg --rec_model_path local/models/japan.onnx
      

更新日志

  • 2023-03-05 v0.0.4~7 update:

    • 支持对本地的模型和字典转写
    • 优化内部逻辑和错误反馈
  • 2023-02-28 v0.0.3 update:

    • 添加对不是动态输入的模型自动更改为动态输入的设置
  • 2023-02-27 v0.0.2 update:

    • 将转换模型代码封装成包,便于自助转模型
  • 2022-08-15 v0.0.1 update:

    • 将识别模型的字典写入到onnx模型中的meta中,便于后续分发。

http://www.ppmy.cn/news/33735.html

相关文章

图形视图框架 事件处理(item)

在图形界面框架中的事件都是先由视图进行接收,然后传递给场景,再由场景传递给图形项。通过键盘处理的话,需要设置焦点,在QGraphicsScene中使用setFoucesItem()函数可以设置焦点,或者图形项使用s…

技术分享 | PBM备份恢复

作者:张洪 爱可生南区 DBA 团队成员,主要负责mysql故障处理及相关技术支持。爱好旅游,摄影。 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 概述 Per…

下载并导入MySQL示例数据库employees

MySQL示例数据库employees一、下载employees数据库二、MySQL官方参考手册三、具体步骤3.1 下载test_db3.2 在test_db-master中打开cmd(进入test_db-master目录)3.3 run-install3.4 验证employee数据3.5 show databases\tables & select * from departments**3.6 select * f…

前端git必备技能,如何合并分支以及出现合并冲突后如何解决

文章目录一、合并分支二、可能出现的冲突和解决三、过程分享一、合并分支 注意,我们常说的master或main主干也可以理解为分支,可以是分支合并到主干,或分支合并到分支。 需求:cloudweb的2.6.0和2.6.1是并行开发的,现…

linux中写定时任务

场景:我们生产环境中有大量的日志记录,但是我们的磁盘没有太大,需要定时清理磁盘 文章目录crond 定时任务详解安装定时任务crontab服务启动与关闭crontab操作crontab 命令test.sh查看日志丢弃linux中的执行日志Linux进入nano模式方式一方式二…

【8】核心易中期刊推荐——人工智能与机器人

🚀🚀🚀NEW!!!核心易中期刊推荐栏目来啦 ~ 📚🍀 核心期刊在国内的应用范围非常广,核心期刊发表论文是国内很多作者晋升的硬性要求,并且在国内属于顶尖论文发表,具有很高的学术价值。在中文核心目录体系中,权威代表有CSSCI、CSCD和北大核心。其中,中文期刊的数…

【代码随想录-刷题学习JavaScript】day2-part02数组

继续数组的部分 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II 今天会有个小结 一、LeetCode977.有序数组的平方 文章讲解 视频讲解 二、LeetCode 209.长度最小的子数组 题目建议: 本题关键在于理解滑动窗口,这个滑动…

太强了,英伟达面对ChatGPT还有这一招...

大家好,我是 Jack。 今年可谓是 AI 元年,ChatGPT、AIGC、VITS 都火了一波。 我也先后发布了这几期视频: 这是一个大模型的时代,AI 能在文本、图像、音频等领域大放异彩,得益于大模型。而想要预训练大模型&#xff0c…