- Notifications
You must be signed in to change notification settings - Fork314
TensorRT8.Support Yolov5n,s,m,l,x .darknet -> tensorrt. Yolov4 Yolov3 use raw darknet *.weights and *.cfg fils. If the wrapper is useful to you,please Star it.
License
enazoe/yolo-tensorrt
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
news: 2021.10.31:yolov5-v6.0 support
The project is the encapsulation of nvidia official yolo-tensorrtimplementation. And you must have the trained yolo model(.weights) and.cfg file from the darknet (yolov3 & yolov4). For theyolov5 ,you should prepare the model file (yolov5s.yaml) and the trained weight file (yolov5s.pt) from pytorch.
- yolov5n ,yolov5s , yolov5m , yolov5l , yolov5x ,yolov5-p6tutorial
- yolov4
- yolov3
- inequal net width and height
- batch inference
- support FP32,FP16,INT8
- dynamic input size
- windows 10
- ubuntu 18.04
- L4T (Jetson platform)
BENCHMARK
model | size | gpu | fp32 | fp16 | INT8 |
---|---|---|---|---|---|
yolov5s | 640x640 | 1080ti | 8ms | / | 7ms |
yolov5m | 640x640 | 1080ti | 13ms | / | 11ms |
yolov5l | 640x640 | 1080ti | 20ms | / | 15ms |
yolov5x | 640x640 | 1080ti | 30ms | / | 23ms |
model | size | gpu | fp32 | fp16 | INT8 |
---|---|---|---|---|---|
yolov3 | 416x416 | nx | 105ms/120ms | 30ms/48ms | 20ms/35ms |
yolov3-tiny | 416x416 | nx | 14ms/23ms | 8ms/15ms | 12ms/19ms |
yolov4-tiny | 416x416 | nx | 13ms/23ms | 7ms/16ms | 7ms/15ms |
yolov4 | 416x416 | nx | 111ms/125ms | 55ms/65ms | 47ms/57ms |
yolov5s | 416x416 | nx | 47ms/88ms | 33ms/74ms | 28ms/64ms |
yolov5m | 416x416 | nx | 110ms/145ms | 63ms/101ms | 49ms/91ms |
yolov5l | 416x416 | nx | 205ms/242ms | 95ms/123ms | 76ms/118ms |
yolov5x | 416x416 | nx | 351ms/405ms | 151ms/183ms | 114ms/149ms |
model | size | gpu | fp32 | fp16 | INT8 |
---|---|---|---|---|---|
yolov4 | 416x416 | titanv | 11ms/17ms | 8ms/15ms | 7ms/14ms |
yolov5s | 416x416 | titanv | 7ms/22ms | 5ms/20ms | 5ms/18ms |
yolov5m | 416x416 | titanv | 9ms/23ms | 8ms/22ms | 7ms/21ms |
yolov5l | 416x416 | titanv | 17ms/28ms | 11ms/23ms | 11ms/24ms |
yolov5x | 416x416 | titanv | 25ms/40ms | 15ms/27ms | 15ms/27ms |
Prepare the pretrained.weights and.cfg model.
Detector detector;Config config;std::vector<BatchResult> res;detector.detect(vec_image, res)
dependency : TensorRT 7.1.3.4 , cuda 11.0 , cudnn 8.0 , opencv4 , vs2015
build:
open MSVCsln/sln.sln file
- dll project : the trt yolo detector dll
- demo project : test of the dll
The project generate thelibdetector.so lib, and the sample code.If you want to use the libdetector.so lib in your own project,thiscmake file perhaps could help you .
git clone https://github.com/enazoe/yolo-tensorrt.gitcd yolo-tensorrt/mkdir buildcd build/cmake ..make./yolo-trt
structConfig{std::string file_model_cfg ="configs/yolov4.cfg";std::string file_model_weights ="configs/yolov4.weights";float detect_thresh =0.9;ModelType net_type = YOLOV4;Precision inference_precison = INT8;int gpu_id =0;std::string calibration_image_list_file_txt ="configs/calibration_images.txt";};classAPI Detector{public:explicitDetector();~Detector();voidinit(const Config &config);voiddetect(const std::vector<cv::Mat> &mat_image,std::vector<BatchResult> &vec_batch_result);private:Detector(const Detector &);const Detector &operator =(const Detector &);classImpl;Impl *_impl;};
- https://github.com/wang-xinyu/tensorrtx/tree/master/yolov4
- https://github.com/mj8ac/trt-yolo-app_win64
- https://github.com/NVIDIA-AI-IOT/deepstream_reference_apps
微信关注公众号EigenVison,回复yolo获取交流群号
About
TensorRT8.Support Yolov5n,s,m,l,x .darknet -> tensorrt. Yolov4 Yolov3 use raw darknet *.weights and *.cfg fils. If the wrapper is useful to you,please Star it.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors7
Uh oh!
There was an error while loading.Please reload this page.