yolov7的 TensorRT c++推理,win10, cuda11.4.3 ,cudnn8.2,tensorrt8.2.1.8。

Posted vokxchh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yolov7的 TensorRT c++推理,win10, cuda11.4.3 ,cudnn8.2,tensorrt8.2.1.8。相关的知识,希望对你有一定的参考价值。

yolov7的 tensorrt8 推理, c++ 版本

环境

win10

vs2019

opencv4.5.5

cuda_11.4.3_472.50_win10.exe

TensorRT-8.2.1.8.Windows10.x86_64.cuda-11.4.cudnn8.2.zip

RTX2060推理yolov7, FP32 耗时 28ms  ,FP16 耗时 8ms,单帧对应总耗时30ms 和 10ms。

tensorrtx/yolov7 at master · wang-xinyu/tensorrtx · GitHubhttps://github.com/wang-xinyu/tensorrtx/tree/master/yolov7

GitHub - QIANXUNZDL123/tensorrtx-yolov7: yolov7-tensorrtxhttps://github.com/QIANXUNZDL123/tensorrtx-yolov7

python gen_wts_trtx.py -w yolov7-tiny.pt -o yolov7-tiny.wts

根据大神的攻略,通过yolov7-pt文件生成对应的 .wts 文件. 

然后根据如下c++代码生成对应的 .engine文件,把自带的engine文件覆盖掉。工程不用cmake了,直接改。 要修改对应自己的文件目录。以下代码修改一下对应目录就可以调通了

 yolov7的win10tensorrt推理c++版本-C++文档类资源-CSDN文库https://download.csdn.net/download/vokxchh/87399894

注意:

FP32的engine生成时间短,FP16的engine生成时间长。要耐心等待。FP16生成等了50分钟。。

需要修改自己对应的目录,显卡对应的算力。

1.工程设置到release x64。

C:\\TensorRT-8.2.1.8\\lib中和C:\\opencv4.5.5\\build\\x64\\vc15\\bin的dll拷入exe所在文件目录。

2.包含目录:

3.库目录:

4.预处理器定义:

5. 显卡算力:

 

6.附加依赖项:

opencv_world455.lib
nvinfer.lib
nvinfer_plugin.lib
nvonnxparser.lib
nvparsers.lib
cublas.lib
cublasLt.lib
cuda.lib
cudadevrt.lib
cudart.lib
cudart_static.lib
cudnn.lib
cufft.lib
cufftw.lib
curand.lib
cusolver.lib
cusolverMg.lib
cusparse.lib
nppc.lib
nppial.lib
nppicc.lib
nppidei.lib
nppif.lib
nppig.lib
nppim.lib
nppist.lib
nppisu.lib
nppitc.lib
npps.lib
nvblas.lib
nvjpeg.lib
nvml.lib
nvrtc.lib
OpenCL.lib

---------------------------------------

7.修改config.h的USE_FP32 ,编译生成FP32的exe。

USE_FP16 ,生成FP16的exe。

=

8.然后运行FP32的exe,通过yolov7.wts生成FP32的engine文件,运行FP16的exe生成FP16的engine文件。

Project5.exe -s yolov7.wts  yolov7-fp32.engine v7

9.运行如下代码预测

Project5.exe -d yolov7-fp32.engine ./samples

 

 

以上是关于yolov7的 TensorRT c++推理,win10, cuda11.4.3 ,cudnn8.2,tensorrt8.2.1.8。的主要内容,如果未能解决你的问题,请参考以下文章

C++ TensorRT 批量推理给出了奇怪的结果

yolov7 tensorrt模型加速部署实战

[C#][原创]使用C#部署yolov7的tensorrt模型

TensorRT模型部署实战,英伟达平台,C++ 和python对比(包含源码)

TensorRT模型部署实战,英伟达平台,C++ 和python对比(包含源码)

YOLOv7(目标检测)入门教程详解---检测,推理,训练