The original pytorch model is from hustvl/YOLOP
Make sure you have install c++
(support c++11)、 cmake
、opencv
(4.x)、cuda
(10.x)、nvinfer
(7.x).
Go to yolop
.
mkdir build
cd build
cmake ..
make
Now you can get yolop
and libmyplugins.so
.
Go to yolop/build
.
Download/Clone YOLOP
Edit gen_wts.py
, change YOLOP_BASE_DIR
to realpath of YOLOP
.
# [WARN] Please download/clone YOLOP, then set YOLOP_BASE_DIR to the root of YOLOP
python3 ../gen_wts.py
./yolop -s yolop.wts yolop.trt
Now you have such files: libmyplugins.so yolop yolop.wts yolop.trt
mkdir ../results
YOLOP_BASE_DIR=/home/user/jetson/tmp/YOLOP
./yolop -d yolop.trt $YOLOP_BASE_DIR/inference/images/
It will output like as follow if successful! ( test on Jetson Xavier NX - Jetpack 4.4
)
1601ms # the fist time is slow
26ms # then it is faster
29ms
27ms
29ms
29ms
Go to yolop
.
Make sure you have install pycuda
tensorrt
; and modify image_dir
to your image dir.
# usage: xxx <engine file> <plugin file> <image dir>
python3 yolop_trt.py build/yolop.trt build/libmyplugins.so /home/user/jetson/tmp/YOLOP/inference/images
It will output like as follow if successful! ( test on Jetson Xavier NX - Jetpack 4.4
)
usage: xxx <engine file> <plugin file> <image dir>
[WARN] preaprea you image_dir, such as: samples, or /home/user/jetson/tmp/YOLOP/inference/images
bingding: data (3, 384, 640)
bingding: det (6001, 1, 1)
bingding: seg (1, 360, 640)
bingding: lane (1, 360, 640)
batch size is 1
warm_up->(384, 640, 3), time->1070.87ms
input->['/home/user/jetson/tmp/YOLOP/inference/images/3c0e7240-96e390d2.jpg'], time->25.94ms, saving into output/
input->['/home/user/jetson/tmp/YOLOP/inference/images/adb4871d-4d063244.jpg'], time->25.34ms, saving into output/
input->['/home/user/jetson/tmp/YOLOP/inference/images/8e1c1ab0-a8b92173.jpg'], time->25.03ms, saving into output/
input->['/home/user/jetson/tmp/YOLOP/inference/images/7dd9ef45-f197db95.jpg'], time->25.45ms, saving into output/
input->['/home/user/jetson/tmp/YOLOP/inference/images/9aa94005-ff1d4c9a.jpg'], time->24.93ms, saving into output/
input->['/home/user/jetson/tmp/YOLOP/inference/images/0ace96c3-48481887.jpg'], time->25.33ms, saving into output/
done!
Notice : The results of c++ and python are not aligned for now!
@misc{2108.11250,
Author = {Dong Wu and Manwen Liao and Weitian Zhang and Xinggang Wang},
Title = {YOLOP: You Only Look Once for Panoptic Driving Perception},
Year = {2021},
Eprint = {arXiv:2108.11250},
}