【PaddleOcr在windows 10 系统中编译生成exe和dll文件_使用GPU__(一)】

本文详细描述了在Windows10系统中,如何通过CMake和VisualStudio2019配置和编译PaddleOCRC++版本,以解决Python识别速度慢问题,生成DLL文件以供Python调用。
摘要由CSDN通过智能技术生成

提示:win10系统下基于cmake和VS 17 2019的实现


前言

用于记录分享一下自己学习的过程,也希望能对看到的人有所帮助。
由于python在文字识别上识别速度慢问题(为什么慢还用py,懂得都懂),使用paddleocr官方的C++版本生成dll文件供python调用来提升识别速度。


一、环境准备

1.1 电脑配置

win10,显卡2060,CUDA版本:11.8

1.2 Cmake安装

直接从官网下载安装就可以了,最好使用最新版本的。官网下载地址:https://cmake.org/download/
根据自己的电脑下载,我下载的是:cmake-3.29.0-rc3-windows-x86_64.msiCmake地址
下载后按找步骤安装即可,记着将cmake添加到系统环境变量(安装的时候就可以选择)。

1.3 VS2019安装

确保自己电脑安装了VS,没安装的可以在window官网下载。
官网地址:https://visualstudio.microsoft.com/zh-hans/
进去后下载免费的社区版就可以了(历史版本在官网找)。
下载后点击运行安装
VS安装
运行后选择桌面C++开发,右边选择需要的插件,一般需要安装的包含有msvc 17 2019编译器,win10 SDK,一般默认就好。
等待安装完成就可以了。

二 代码准备

2.1 paddleocr源码准备

需要从paddleocr官网下载源码,官网链接如下:
https://gitcode.com/PaddlePaddle/PaddleOCR/tree/release%2F2.7,下载源码即可,最好使用git下载,方便后续修改。
git下载代码

2.2 paddle推理库下载

准备paddle的C++推理库,这里我下载的是:
C++预测库
注意cuda和cudnn的版本,下载后解压即可。
推理模型

2.3 OPENCV安装

下载地址:https://opencv.org/releases/
下载自己对应版本的opencv,一般和平时自己使用的对应就没问题。
下载完后安装,记住自己安装的位置,后续还要使用。

至此,基本的准备工作就完成了!!!

三、编译成dll/exe文件

3.1 cmake编译

编译之前修改一下cmakelists文件,打开一下使用GPU的选项。如下图所示,将off改为ON。
源码的路径如下:…\paddleocr\PaddleOCR\deploy\cpp_infer\。
在这里插入图片描述首先我们打开cmake-gu.exe,打开后的界面如下所示:cmake界面
在编译前首先建立一个新的文件夹build(随意,但一般是路径不带中文,容易出错);
建好后在cmake界面选择要编译的项目以及要导出生成的地址,如图:
编译地址设置

选择完毕后我们点击cmake的,configure按钮,首次打开需要选择编译器和系统的配置。这里我的选择如下(编译器选17 2019,懒得改截图了):
在这里插入图片描述
配置完成后我们点击Finish就可以了。

ok!!!一般第一次这里就要报错了。
这是由于我们没有正确的配置各种依赖库的路径导致的,这时候我们就可以在cmake里添加路径了(大神可以忽略,可以直接在cmakelists里添加)。
路径添加如图所示:
cmake路径设置
当然也可以在cmakelists修改,修改SET(OPENCV_DIR “” CACHE PATH “Location of libraries”),改为自己的路径即可,其他路径同理。

再次点击configure,不出意外的话就成功了,此时点击生成按钮,你会得到:
完成
至此,我们的编译部分就完成了。

3.2 vs release生成exe和dll

生成后,直接在cmake点击打开工程即可,或者去之前建立的build文件,点击打开.sln文件打开。
打开后的项目如图:
build
此时,我们在ALL BUILD上点击右键,选择生成,vs会根据cmakelists文件进行编译,经过编译成功的话就会生成我们需要的.exe文件了。

生成dll文件:
我们在ppocr处,右键》》属性,按下图修改exe为dll文件
dll
同时要修改导出的文件的后缀为.dll文件。
dl属性
重新编译,得到的exe或dll文件存储在build的文件夹的下级目录release文件夹中。

至此!!!我们需要的文件就生成了。

转载请声明来源!

总结

介绍了cmake和vs编译paddleocr的操作过程,编译过程中肯定还有许多的问题,由于时间问题(开摆时间到了),后续将继续整理遇到的问题及如何在python中使用dll文件。也欢迎各位大佬交流!!!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值