paddle ocr 部署后封装成dll 供exe调用 C++

关于部署,详见上篇文章

1.重载ocr()函数,每次传入一张图和一组矩形框

e1c64f65be494b9dafdbdf4be9e150a2.png

2.注释main.cpp所有代码,创建dll api接口

d3c432048e0744a281e8933a7079f005.png

3.按需修改args.cpp里的参数

4.更改项目类型为dll

5cf8a3bfd1034973b564113e815f9cde.png

882826adcd0f42b2a88c16c65c06d4ce.png

5.重新生成解决方案,生成paddle.dll

6.qt中调用dll

ef718bdd68484be19e2c93a9c941a0bd.png

7.效果

e19fa99f017c465591cd520e3ea96a3d.png

 

### PaddleOCR DLL 文件的下载与打包 #### 关于PaddleOCR DLL文件的获取方式 目前,官方并未提直接下载已编译好的PaddleOCR DLL文件的方式[^1]。因此,如果需要使用PaddleOCR的功能并将其集C++项目中,通常需要自行完源码的下载、配置以及编译工作。 #### 源码下载与环境准备 要获得PaddleOCR的相关DLL文件,需先从官网下载其源码,并选择适合的动态图(dygraph)版本进行操作。具体流程如下: - 访问PaddleOCR项目的GitHub页面或官方网站,找到对应版本的源码压缩包。 - 解压后进入`/projects/cpp/PaddleOCR`目录,该目录包含了构建所需的脚本和依赖项。 #### 编译生DLL文件 为了将PaddleOCR功能封装DLL形式其他程序调用,可以按照以下方法处理: 1. **调整参数设置** 在编译过程中,通过修改`args`文件来指定模型路径及其对应的字符映射表TXT文件的位置。这一步骤对于确保最终生DLL能够正常运行至关重要[^2]。 2. **执行编译命令** 使用CMake工具针对目标平台生相应的Visual Studio解决方案或其他支持的工程文件。随后,在Release模式下启动构建过程以生优化后的二进制输出[^3]。 3. **补充缺失资源** 功完后会发现某些必要的共享库尚未包含其中——比如来自OpenCV的图像处理核心组件(`opencv_world4100.dll`)以及其他由预测引擎所依赖的基础模块。这些都需要手动从各自的安装目录复制至最终产物所在位置以便加载时能找到它们。 #### 封装与分发注意事项 当所有必需部分都准备好之后就可以考虑怎样把它们组合起来形易于部署的形式了。一般建议采用ZIP格式来进行整体打包,内部结构应保持清晰合理便于使用者快速上手。同时附带一份README文档说明各组部分的作用及相关依赖关系有助于减少后续沟通本提高效率。 ```python import os def package_dll(output_path): files_to_include = [ 'path/to/paddle_inference.dll', 'path/to/opencv_world4100.dll' ] with zipfile.ZipFile(os.path.join(output_path, 'paddle_ocr.zip'), 'w') as zipf: for file in files_to_include: zipf.write(file, arcname=os.path.basename(file)) ``` 上述代码片段展示了一个简单的Python函数用于自动化创建包含所需DLLs在内的压缩包实例。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值