-
基于
TensorRT-v8,部署YOLOv8目标检测、关键点检测、实例分割、目标跟踪; -
支持嵌入式设备
Jetson系列上部署,也可以在Linux x86_64的服务器上部署; -
本项目无需编译安装支持
cuda的OpenCV,前后处理相关的张量操作都是作者通过cuda编程实现; -
模型转换方式:
.pth->.onnx->.plan(.engine); -
作者使用
Python和C++2 种api分别做了实现; -
均采用了面向对象的方式,便于结合到其他项目当中;
-
C++版本的还会编译为动态链接库,便于在其他项目种作为接口调用;
| 原图 | 目标检测 |
|---|---|
![]() |
![]() |
| 关键点检测 | 实例分割 |
![]() |
![]() |
- ByteTrack目标跟踪
| detect | pose | segment | |
|---|---|---|---|
| C++ | 4 ms | 5 ms | 8 ms |
| python | 15 ms | 15 ms | 58 ms |
- 这里的推理时间包含前处理、模型推理、后处理
- 这里基于
x86_64 Linux服务器,Ubuntu系统,显卡为GeForce RTX 2080 Ti
- 基本要求:
TensorRT 8.0+OpenCV 3.4.0+
如果基本要求已满足,可直接进入各目录下运行各任务
环境构建可以参考下面内容:
- 如果是
Linux x86_64服务器上,建议使用docker
- 具体环境构建,可参考这个链接 构建TensorRT环境 的环境构建部分,也是作者的项目
- 如果是边缘设备,如:
Jetson Nano
- 烧录
Jetpack 4.6.1系统镜像,网上烧录镜像资料有很多,这里就不赘述了 Jetpack 4.6.1系统镜像原装环境如下:
| CUDA | cuDNN | TensorRT | OpenCV |
|---|---|---|---|
| 10.2 | 8.2 | 8.2.1 | 4.1.1 |
-
本项目
Python和C++目录下均包含detect、pose、segment、track; -
按照各自目录下的
README分别实现目标检测、关键点检测、实例分割、目标跟踪。




