栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

vs2019编译PaddlePaddle C++

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

vs2019编译PaddlePaddle C++

vs2019编译PaddlePaddle C++
  • 参考paddlepaddle官网
  • 环境的准备
    • 下载 PaddlePaddle C++ 预测库和 Opencv
      • 下载 PaddlePaddle C++ 预测库
      • 安装配置OpenCV
      • 下载PaddleOCR代码
      • 下载TensorRT
    • 开始运行
      • 构建Visual Studio项目
  • 下载超轻量中文检测模型:

参考paddlepaddle官网

链接: https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/deploy/cpp_infer/docs/windows_vs2019_build.md

环境的准备

版本一定要对不然很麻烦。
1.Visual Studio 2019
2.CUDA 10.2 , CUDNN 7+ (仅在使用GPU版本的预测库时需要)
3.CMake 3.22+
请确保系统已经安装好上述基本软件,我们使用的是VS2019的社区版。

下载 PaddlePaddle C++ 预测库和 Opencv 下载 PaddlePaddle C++ 预测库

PaddlePaddle C++ 预测库针对不同的CPU和CUDA版本提供了不同的预编译版本,请根据实际情况下载: C++预测库下载列表
解压后D:projectspaddle_inference目录包含内容为:
paddle_inference
├── paddle # paddle核心库和头文件
|
├── third_party # 第三方依赖库和头文件
|
└── version.txt # 版本和编译信息

安装配置OpenCV

1.在OpenCV官网下载适用于Windows平台的Opencv,下载地址。
因为后面会用到编译好的opencv,这里建议下载对应版本的.exe安装包,安装包安装好以后就会有后面要用的东西,可以省去CMake编译的过程,因为编译的过程非常的漫长。

2.运行下载的可执行文件,将OpenCV解压至指定目录,如D:projectscppopencv

下载PaddleOCR代码

链接: https://github.com/PaddlePaddle/PaddleOCR

下载TensorRT

后面会用到TensorRT的库所以现在先准备好,在下载C++预测库的时候就会有提示需要下载哪个版本的TensoRT,按照对应的版本。TensorRT 官方下载: [https://developer.nvidia.com/zh-cn/tensorrt],(https://developer.nvidia.com/zh-cn/tensorrt)
根据网上的配置环境教程配置好就欧克。

开始运行 构建Visual Studio项目

1.打开cmake-gui,在第一个输入框处填写源代码路径,第二个输入框处填写编译输出路径

2.执行cmake配置
点击界面下方的Configure按钮,第一次点击会弹出提示框进行Visual Studio配置,如下图,选择你的Visual Studio版本即可,目标平台选择x64。然后点击finish按钮即开始自动执行配置。
第一次执行会报错,这是正常现象,接下来进行Opencv和预测库的配置。

cpu版本,仅需考虑OPENCV_DIR、OpenCV_DIR、PADDLE_LIB三个参数

-OPENCV_DIR:填写opencv lib文件夹所在位置
-OpenCV_DIR:同填写opencv lib文件夹所在位置
-PADDLE_LIB:paddle_inference文件夹所在位置,就是上面的预测库文件所在位置

GPU版本,在cpu版本的基础上,还需填写以下变量
CUDA_LIB、CUDNN_LIB、TENSORRT_DIR、WITH_GPU、WITH_TENSORRT

-CUDA_LIB: CUDA地址,如 C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.2libx64
-CUDNN_LIB: 和CUDA_LIB一致
-TENSORRT_DIR:TRT下载后解压缩的位置,如 D:TensorRT-8.0.1.6,这个就是上面下载TensoRT的目录位置
-WITH_GPU: 打钩
-WITH_TENSORRT:打勾

配置好的截图如下:

如果显示有CMake的错误可以忽略掉,如果过程中出现如图错误,则说明有配置选项没有找到。

配置完成后,再次点击Configure按钮。

3.生成Visual Studio 项目
点击Generate按钮即可生成Visual Studio 项目的sln文件。
点击Open Project按钮即可在Visual Studio 中打开项目。打开后截图如下
官网中给出在生成解决方案之前要执行下面的步骤
1.将Debug改为Release
2…下载dirent.h,并拷贝到 Visual Studio 的 include 文件夹下,如C:Program Files (x86)Microsoft Visual Studio2019CommunityVCAuxiliaryVSinclude。

点击生成->生成解决方案,即可在build/Release/文件夹下看见ppocr.exe文件,就是在你编译输出的路径里的Release/文件夹下看见ppocr.exe文件。

运行之前,将下面文件拷贝到build/Release/文件夹下

1.paddle_inference/paddle/lib/paddle_inference.dll
2.paddle_inference/third_party/install/onnxruntime/lib/onnxruntime.dll
3.paddle_inference/third_party/install/paddle2onnx/lib/paddle2onnx.dll
4.opencv/build/x64/vc15/bin/opencv_world455.dll
5.如果使用openblas版本的预测库还需要拷贝 paddle_inference/third_party/install/openblas/lib/openblas.dll
上面的步骤完成就可以进行最后一步进行验证是否可以正常运行。

4.预测
进入到生成ppocr.exe文件目录下,在文件栏里输入cmd回车键就进入到了此目录下
可执行文件ppocr.exe即为样例的预测程序。在预测之前需要下载官方给出的模型。

下载超轻量中文检测模型:

#下载超轻量中文检测模型:
wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar

#下载超轻量中文识别模型:
wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar

上面两个文件一个文件是det文件,一个是rec文件,两个都需要下载。

具体看官网: https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/doc/doc_ch/inference_ppocr.md

上面模型准备好以后就可以进行预测了,在上面打开的终端里输入

//切换终端编码为utf8
CHCP 65001
//执行预测
ppocr.exe system --det_model_dir=D:projectscppch_PP-OCRv2_det_slim_quant_infer --rec_model_dir=D:projectscppch_PP-OCRv2_rec_slim_quant_infer --image_dir=D:projectscppPaddleOCRdocimgs11.jpg

–det_model_dir:就是上面下载好的dst解压文件的目录位置。
–rec_model_dir:下载好的rec解压文件的目录位置
image_dir:图片的位置

如果报错如图,就在PaddleOCR-release-2.5中找到ppocr文件夹复制一份,粘贴到与PaddleOCR-release-2.5同级的目录下,然后运行即可。

运行时,弹窗报错提示应用程序无法正常启动(0xc0000142),并且cmd窗口内提示You are using Paddle compiled with TensorRT, but TensorRT dynamic library is not found.,把tensort目录下的lib里面的所有dll文件复制到release目录下,再次运行即可。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1026000.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号