pytorch 43 基于面向对象思想使用4行代码实现yolov8分类模型、目标检测模型、实例分割的TensorRT c++部署

在win10,TensorRT 8.6,3060Ti 12g GPU,CUDA 12.1、cmake 3.27环境下实现yolov8s-det、yolov8s-seg、yolov8s-cls的部署。以面向对象的方式实现c++ TensorRT 部署,使用yolov8s-det或yolov8s-seg推理图片并绘图展示仅需3行代码即可,整个forward时间仅需4ms。
在640x640的输入下,YoloDetModel infer time:4ms nms:4ms,YoloDetModel infer time:6ms nms:4ms mask:4ms。相比于官网所发布的yolov8s-det run on A100 TensorRT,1.20ms,存在一定差距,毕竟3060Ti比A100 差很多。其中,nms耗时4ms严重拖累了推理时间,将nms与mask计算放入到模型中可以减少推理时间,具体可以参考:https://hpg123.blog.csdn.net/article/details/131585808。
本博文从0开始,分享了c++部署的全流程,并包含onnx模型以及转换好trt模型。

1、构建项目

本博文基于cmake+vs2019+tensorrt+cuda+opencv实现部署代码
其中cmake+vs2019+cuda是需要安装相应的软件
tensorrt+cudnn+opencv是软件运行依赖包,解压到特定目录,配置好环境变量即可

1.1 编写cmakelist

cmakelist主要是设置项目中的include目录(include_directories&

猜你喜欢

转载自blog.csdn.net/a486259/article/details/132892026