Ocr之使用 pyinstall 打包 paddleocr

本文介绍了如何在Windows10环境中使用PyInstaller打包PaddleOCR,包括安装、编辑spec文件、配置入口python文件以及处理打包过程中可能出现的错误,如模型文件路径问题和依赖关系。
摘要由CSDN通过智能技术生成

目录

零、运行环境介绍

一、安装pyinstaller

二、编辑spec文件

三、编辑入口python文件

七、打包后将模型文件、图片移动至文件夹内

六、打包后的文件内容截图

四、借鉴的文章(对其内容进行修正)

五、总结


零、运行环境介绍

  • win10、64位系统、
  • python 3.8.0
    在这里插入图片描述

一、首先使用pip安装pyinstaller pip install pyinstaller

  • 注意: 安装后使用 pyinstaller 对paddleocr进行打包。打包后的文件能够运行的前提:本机可以通过 python 命令执行入口文件(入口文件后文有粘贴) 打包后的文件经测试可以在未安装python环境的系统进行使用. 很棒.^------------^!

二、使用的spec文件内容如下

  • 注意:其中需要修改的部分是pathex中文件所在路径文件内容摘抄自另一篇博文(❄点击可查看❄)

    # -*- mode: python ; coding: utf-8 -*-
    block_cipher = None
    a = Analysis(['gui.py'],
         pathex=['E:/prgrames/Python/Python38/Lib/site-packages/paddleocr'
    	 , 'E:/prgrames/Python/Python38/Lib/site-packages/paddle/libs'],
         binaries=[('E:/prgrames/Python/Python38/Lib/site-packages/paddle/libs', '.')],
         datas=[],
         hiddenimports=[],
         hookspath=['.'],
         runtime_hooks=[],
         excludes=['matplotlib'],
         win_no_prefer_redirects=False,
         win_private_assemblies=False,
         cipher=block_cipher,
         noarchive=False)
    pyz = PYZ(a.pure, a.zipped_data,
         cipher=block_cipher)
    exe = EXE(pyz,
         a.scripts,
         [],
         exclude_binaries=True,
         name='main',
         debug=False,
         bootloader_ignore_signals=False,
         strip=False,
         upx=True,
         console=True)
    coll = COLLECT(exe,
         a.binaries,
         a.zipfiles,
         a.datas,
         strip=False,
         upx=True,
         upx_exclude=[],
         name='main')
    

三. 入口python文件paddleocr.py

  • 注意:img_path与 det_model_dir, rec_model_dir, cls_model_dir是生成的dist文件中模型和图片的相对路径, 用于exe文件查找模型和图片使用。(建议使用相对路径, 方便文件的迁移)

  • 注意:在使用博文提供的此脚本后注释部分内容, 避免运行报错 注释内容:1. orc_result开头内容和 2. text='\n'开头内容

    from paddleocr import PaddleOCR
    模型路径下必须含有model和params文件
    ocr = PaddleOCR(det_model_dir = './inference/ch_PP-OCRv3_det_infer/', # 检测模型所在文件夹
                    rec_model_dir = './inference/ch_PP-OCRv3_rec_infer/', # 识别模型所在文件夹。
                    cls_model_dir = './inference/ch_ppocr_mobile_v2.0_cls_infer/', # 分类模型所在文件夹。
                    #rec_char_dict_path = './dict/japan_dict.txt', # 识别模型字典路径。
                    #lang = 'en',
                    use_angle_cls = True, # 是否加载分类模型
                    use_gpu = False) # 是否使用gpu
    img_path = './20240118154748.png'
    result = ocr.ocr(img_path, cls = True)
    #ocr_result=[line[1][0] for line in result] # 组合成列表形式
    #text='\n'.join(ocr_result) #  回车符连接列表中的每个元素
    print(result)
    
    

七、打包后将模型文件、图片移动至文件夹内

  • paddleocr gitee地址 下载推理模型并解压存储在对应目录下
    在这里插入图片描述
  • 如:识别模型目录下文件
    在这里插入图片描述

六、打包后的文件内容截图

在这里插入图片描述

八、cmd执行main

  • 注意:这里标红处为我希望得到的内容. 但仍需根据业务进行精简修改入口脚本等内容
    在这里插入图片描述

四、借鉴的文章(对其内容进行修正)

五、总结

  • 打包前对入口python脚本进行调试。确保本地测试通过。
  • 打包前paddleocr可运行使用 paddleocr gitee readme中有安装文档, 非常详细. https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.7/doc/doc_ch/quickstart.md
  • 打包报错莫急,跟着报错提示渐行处理。并在必要时借鉴网络资料(我还查询过抖音的豆包AI,感觉还不错)
  • spec文件看似内容较多, 实则用的较少。有幸可以搜索到此篇文章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡斌附体

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值