目录
1.前置工作
需要配置好以下环境
- cuda 10.2
- cudnn 7.6.5
- vs 2019
- cmake 3.17.0
- 以及编译好的paddle预测库,目前使用官方编译好的动态链接库会提示文件损坏,需要自行编译预测库,预测库win10平台下编译教程请看下面链接
克隆源码
git clone https://github.com/PaddlePaddle/Paddle-Inference-Demo.git
由于源码里面有多个项目,编译测试使用以下项目
Paddle-Inference-Demo\c++\paddle_infer_demo
- 1
该项目对应预训练模型下载, 运行的时候需要用到
https://paddle-inference-dist.bj.bcebos.com/Paddle-Inference-Demo/yolov3_r34_float.tgz
- 1
解压后为model.pdmodel和model.pdiparams两个文件
2.使用Cmake生成.sln文件
Configure选择vs2019,x64。相关配置如下,使用tensorrt需手动添加TENSORRT_ROOT。
配置好点击Configure -> Generate -> Open Project启动VS 2019编译
3.编译源码
进入VS后,将Debug配置改为Release。
3.1 打开VS后添加CUDA的头文件路径(include)和链接库路径(lib/x64)
头文件路径:
链接库路径:
3.2 修改paddle链接库名字
自行从源码编译的链接库名字是paddle_fluid, 但是编译的时候用的是libpaddle_inference。所以需要复制一份改为libpaddle_inference。
3.4 编译
右键ALL_BUILD项目生成
3.5 运行demo
编译成功后,右键yolov3_test项目,点击属性。点击调试,在调试输入以下指令。
# 分别输入模型和权重文件路径, 在第一节的时候提示需要下载的两个文件
--model_file .\model.pdmodel --params_file .\model.pdiparams
- 1
- 2
配置完成后点击顶部菜单->调试->开始执行(不调试),执行效果如下图所示。