-
Based on
TensorRT-v8
, deploy detect, pose, segment ofYOLOv8
; -
Support
Jetson
series, alsoLinux x86_64
; -
This project does not need to compile and install
CUDA-supported OpenCV
, all tensor operations related to pre and post processing are implemented by cuda programming; -
Mode convert:
.pth
->.onnx
->.plan(.engine)
; -
I use
Python
andC++
2 apis to do the implementation; -
All of them adopt object-oriented, which is easy to combine with other projects;
-
The
C++
version will also be compiled as a dynamic link library, which is easy to call as an interface in other projects;
input image | detect |
---|---|
pose | segment |
- ByteTrack
detect | pose | segment | |
---|---|---|---|
C++ | 4 ms | 5 ms | 8 ms |
python | 15 ms | 15 ms | 58 ms |
- The inference time here includes pre-processing, model inference, and post-processing
- The inference time here base on
x86_64 Linux
,Ubuntu
,GPU isGeForce RTX 2080 Ti
- Base requirements:
TensorRT 8.0+
OpenCV 3.4.0+
If the basic requirements are met, you can directly go to each directory and run each task
Environment construction can refer to the following:
- If
Linux x86_64
,docker
is recommended
docker pull nvcr.io/nvidia/tensorrt:22.04-py3
- This docker image contains:
CUDA | cuDNN | TensorRT | python |
---|---|---|---|
11.6.2 | 8.4.0.27 | 8.2.4.2 | 3.8.10 |
- Then install opencv yourself
- If
Jetson
, such asJetson Nano
- The burned system image is
Jetpack 4.6.1
,original environment is as follows:
CUDA | cuDNN | TensorRT | OpenCV |
---|---|---|---|
10.2 | 8.2 | 8.2.1 | 4.1.1 |
-
There are three directories,
detect
,pose
andsegment
, in bothpython
andC++
directories -
Run as
README
under thedetect
,pose
andsegment
directories respectively