This repo hosts a C++ implementation of the YOLOv9 state of the art object detection model, leveraging the TensorRT API for efficient real-time inference.
# infer an image
yolov9-tensorrt.exe yolov9-c.engine test.jpg
# infer a folder(images)
yolov9-tensorrt.exe yolov9-c.engine data
# infer a video
yolov9-tensorrt.exe yolov9-c.engine test.mp4 # the video path
Refer to our docs/INSTALL.md for detailed installation instructions.
- TensorRT
- CUDA, CudaNN
- C++ compiler with C++17 or higher support
- CMake 3.14 or higher
- OpenCV
Parameters for inference:
Confidence threshold : 0.2
NMS threshold : 0.3
Model : yolov9-e (with FP32)
Inference result:
Original image: https://www.flickr.com/photos/nicolelee/19041780This project is based on the following awesome projects:
- YOLOv9 - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information.
- TensorRT - TensorRT samples and api documentation.
- TensorRTx - Implementation of popular deep learning networks with TensorRT network definition API.
- Yolov9-Bytetrack - Integration of YOLOv9 with ByteTracker using the TensorRT API.