0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TensorRT 8.6 C++开发环境配置与YOLOv8实例分割推理演示

OpenCV学堂 来源:OpenCV开发者联盟 2023-04-25 10:49 次阅读

硬件与软件版本信息

GPU3050ti Windows10 64 VS2017 Python3.8.5 CUDA11.3 + cuDNN8.3

TensorRT8.6版本下载

https://developer.nvidia.com/tensorrt

VS2017+TensorRT8.6开发环境配置

下载好TensorRT8.6之后解压缩到D盘D:TensorRT-8.6.0.12,目录结构如下:

bf0c0b40-ddad-11ed-bfe3-dac502259ad0.png

打开VS2017,新建一个C++控制台空项目如下图:

bf1b465a-ddad-11ed-bfe3-dac502259ad0.png

bf2f744a-ddad-11ed-bfe3-dac502259ad0.png

点击【确定】会生成一个C++控制台项目。右键源文件添加cpp文件 main.cpp

bf4db482-ddad-11ed-bfe3-dac502259ad0.png

修改项目为:

bf7260ac-ddad-11ed-bfe3-dac502259ad0.png

然后右键项目名称test_trt86, 从弹出菜单中选择属性,显示如下:

bf841838-ddad-11ed-bfe3-dac502259ad0.png

在包含目录中添加TensorRT的include目录与CUDA的include目录:

bf95e2de-ddad-11ed-bfe3-dac502259ad0.png

在库目录中添加TensorRT的lib目录与CUDA的lib目录:

bfb321d2-ddad-11ed-bfe3-dac502259ad0.png

从链接器-》输入中添加库目录下面所有包含的的*.lib文件依赖。

bfcf24cc-ddad-11ed-bfe3-dac502259ad0.png

最后配置环境变量:

bfdfd6aa-ddad-11ed-bfe3-dac502259ad0.png

3跟4安装好CUDA会自动添加,不用管!添加好2即可。然后重启VS2017即完成开发环境搭建。

YOLOv8实例分割C++推理演示

对YOLOv8实例分割TensorRT 推理代码已经完成C++类封装,三行代码即可实现YOLOv8对象检测与实例分割模型推理,不需要改任何代码即可支持自定义数据训练部署推理,演示代码如下:

1intmain(intargc,char**argv){ 2std::vectorlabels=readClassNames(); 3std::stringenginefile="D:/TensorRT-8.6.0.12/bin/yolov8n-seg.engine"; 4cv::VideoCapturecap("D:/bird_test/hongyegu.mp4"); 5cv::Matframe; 6autodetector=std::make_shared(); 7detector->initConfig(enginefile,0.25,0.25); 8std::vectorresults; 9while(true){ 10boolret=cap.read(frame); 11if(frame.empty()){ 12break; 13} 14detector->detect(frame,results); 15for(DetectResultdr:results){ 16cv::Rectbox=dr.box; 17cv::putText(frame,labels[dr.classId],cv::Point(box.tl().x,box.tl().y-10),cv::FONT_HERSHEY_SIMPLEX,.5,cv::Scalar(0,0,0)); 18} 19cv::imshow("YOLOv8+TensorRT8.6实例分割演示",frame); 20charc=cv::waitKey(1); 21if(c==27){//ESC退出 22break; 23} 24//resetfornextframe 25results.clear(); 26} 27return0; 28} 运行结果如下:

c005a6c8-ddad-11ed-bfe3-dac502259ad0.png

YOLOv5与YOLOv8自定义对象检测 INT8量化推理运行结果:

c02760ec-ddad-11ed-bfe3-dac502259ad0.png

c06e5150-ddad-11ed-bfe3-dac502259ad0.png

c08bfdae-ddad-11ed-bfe3-dac502259ad0.png

视频课程最后一课时获取源码:

https://ke.qq.com/course/6011334

掌握TensorRT8.6 C++如何部署图像分类,对象检测,实例分割,语义分割主流模型,自定义脚本一键INT8量化模型,使用OpenCV CUDA加速图像预处理等各种工程化部署推理技巧,实现推理部署的工程化封装支持,客户端三行代码即可调用!全部解锁上述技能与源码获取,扫码下面视频课程加入即可获取:

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C++
    C++
    +关注

    关注

    22

    文章

    2108

    浏览量

    73618
  • 变量
    +关注

    关注

    0

    文章

    613

    浏览量

    28360
  • OpenCV
    +关注

    关注

    31

    文章

    634

    浏览量

    41337

原文标题:TensorRT 8.6 C++开发环境配置与YOLOv8实例分割推理演示

文章出处:【微信号:CVSCHOOL,微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用YOLOv8做目标检测和实例分割演示

    YOLOv8是来自Ultralytics的最新的基于YOLO的对象检测模型系列,提供最先进的性能。
    的头像 发表于 02-06 10:11 7459次阅读

    YOLOv8自定义数据集训练到模型部署推理简析

    如果你只是想使用而不是开发,强烈推荐通过pip安装方式获取YOLOv8包!YOLOv8安装命令行
    的头像 发表于 03-24 09:27 4657次阅读

    在AI爱克斯开发板上用OpenVINO™加速YOLOv8分类模型

    本系列文章将在 AI 爱克斯开发板上使用 OpenVINO 开发套件依次部署并测评 YOLOv8 的分类模型、目标检测模型、实例分割模型和人
    的头像 发表于 05-05 11:47 1051次阅读
    在AI爱克斯<b class='flag-5'>开发</b>板上用OpenVINO™加速<b class='flag-5'>YOLOv8</b>分类模型

    如何实现YOLOv8 + ONNRUNTIME推理界面化与多线程支持

    2023年一月份跟二月份创建了一个PyQT5人工智能软件开发系列的文章系列,过去的两个月都没怎么更新,心里一直想有时间继续更新下去,今天又更新了一篇,基于PyQT5实现多线程、界面化、YOLOv8对象检测、实例
    的头像 发表于 05-22 09:26 2401次阅读
    如何实现<b class='flag-5'>YOLOv8</b> + ONNRUNTIME<b class='flag-5'>推理</b>界面化与多线程支持

    AI爱克斯开发板上使用OpenVINO加速YOLOv8目标检测模型

    《在AI爱克斯开发板上用OpenVINO加速YOLOv8分类模型》介绍了在AI爱克斯开发板上使用OpenVINO 开发套件部署并测评YOLOv8
    的头像 发表于 05-26 11:03 1240次阅读
    AI爱克斯<b class='flag-5'>开发</b>板上使用OpenVINO加速<b class='flag-5'>YOLOv8</b>目标检测模型

    在AI爱克斯开发板上用OpenVINO™加速YOLOv8-seg实例分割模型

    《在 AI 爱克斯开发板上用 OpenVINO 加速 YOLOv8 目标检测模型》介绍了在 AI 爱克斯开发板上使用 OpenVINO 开发套件部署并测评
    的头像 发表于 06-05 11:52 1000次阅读
    在AI爱克斯<b class='flag-5'>开发</b>板上用OpenVINO™加速<b class='flag-5'>YOLOv8</b>-seg<b class='flag-5'>实例</b><b class='flag-5'>分割</b>模型

    教你如何用两行代码搞定YOLOv8各种模型推理

    大家好,YOLOv8 框架本身提供的API函数是可以两行代码实现 YOLOv8 模型推理,这次我把这段代码封装成了一个类,只有40行代码左右,可以同时支持YOLOv8对象检测、
    的头像 发表于 06-18 11:50 3055次阅读
    教你如何用两行代码搞定<b class='flag-5'>YOLOv8</b>各种模型<b class='flag-5'>推理</b>

    用OpenVINO™ C++ API编写YOLOv8-Seg实例分割模型推理程序

    本文章将介绍使用 OpenVINO 2023.0 C++ API 开发YOLOv8-Seg 实例分割(Instance Segmentati
    的头像 发表于 06-25 16:09 1581次阅读
    用OpenVINO™ <b class='flag-5'>C++</b> API编写<b class='flag-5'>YOLOv8</b>-Seg<b class='flag-5'>实例</b><b class='flag-5'>分割</b>模型<b class='flag-5'>推理</b>程序

    在AI爱克斯开发板上用OpenVINO™加速YOLOv8-seg实例分割模型

    《在 AI 爱克斯开发板上用 OpenVINO 加速 YOLOv8 目标检测模型》介绍了在 AI 爱克斯开发板上使用 OpenVINO 开发套件部署并测评
    的头像 发表于 06-30 10:43 904次阅读
    在AI爱克斯<b class='flag-5'>开发</b>板上用OpenVINO™加速<b class='flag-5'>YOLOv8</b>-seg<b class='flag-5'>实例</b><b class='flag-5'>分割</b>模型

    三种主流模型部署框架YOLOv8推理演示

    部署。这里以YOLOv8为例,演示YOLOv8对象检测模型在OpenVINO、ONNXRUNTIME、TensorRT三个主流框架上C++
    的头像 发表于 08-06 11:39 2728次阅读

    OpenCV4.8+YOLOv8对象检测C++推理演示

    自从YOLOv5更新成7.0版本,YOLOv8推出以后,OpenCV4.6以前的版本都无法再加载导出ONNX格式模型了,只有OpenCV4.7以上版本才可以支持最新版本YOLOv5与YOLOv
    的头像 发表于 09-27 11:07 1538次阅读
    OpenCV4.8+<b class='flag-5'>YOLOv8</b>对象检测<b class='flag-5'>C++</b><b class='flag-5'>推理</b><b class='flag-5'>演示</b>

    基于YOLOv8的自定义医学图像分割

    YOLOv8是一种令人惊叹的分割模型;它易于训练、测试和部署。在本教程中,我们将学习如何在自定义数据集上使用YOLOv8。但在此之前,我想告诉你为什么在存在其他优秀的分割模型时应该使用
    的头像 发表于 12-20 10:51 771次阅读
    基于<b class='flag-5'>YOLOv8</b>的自定义医学图像<b class='flag-5'>分割</b>

    YOLOv8实现旋转对象检测

    YOLOv8框架在在支持分类、对象检测、实例分割、姿态评估的基础上更近一步,现已经支持旋转对象检测(OBB),基于DOTA数据集,支持航拍图像的15个类别对象检测,包括车辆、船只、典型各种场地等。包含2800多张图像、18W个
    的头像 发表于 01-11 10:43 1801次阅读
    <b class='flag-5'>YOLOv8</b>实现旋转对象检测

    OpenCV4.8 C++实现YOLOv8 OBB旋转对象检测

    YOLOv8框架在在支持分类、对象检测、实例分割、姿态评估的基础上更近一步,现已经支持旋转对象检测(OBB),基于DOTA数据集,支持航拍图像的15个类别对象检测,包括车辆、船只、典型各种场地等。包含2800多张图像、18W个
    的头像 发表于 02-22 10:15 1617次阅读
    OpenCV4.8 <b class='flag-5'>C++</b>实现<b class='flag-5'>YOLOv8</b> OBB旋转对象检测

    基于OpenCV DNN实现YOLOv8的模型部署与推理演示

    基于OpenCV DNN实现YOLOv8推理的好处就是一套代码就可以部署在Windows10系统、乌班图系统、Jetson的Jetpack系统
    的头像 发表于 03-01 15:52 1584次阅读
    基于OpenCV DNN实现<b class='flag-5'>YOLOv8</b>的模型部署与<b class='flag-5'>推理</b><b class='flag-5'>演示</b>