A Libtorch implementation of the YOLO v3 object detection algorithm, written with pure C++. It's fast, easy to be integrated to your production, and CPU and GPU are both supported. Enjoy ~
This project is inspired by the pytorch version, I rewritten it with C++.
- LibTorch v1.0.0
- Cuda
- OpenCV (just used in the example)
- cmake3
- gcc 5.4 +
mkdir build && cd build
cmake3 -DCMAKE_PREFIX_PATH="your libtorch path" ..
# if there are multi versions of gcc, then tell cmake which one your want to use, e.g.:
cmake3 -DCMAKE_PREFIX_PATH="your libtorch path" -DCMAKE_C_COMPILER=/usr/local/bin/gcc -DCMAKE_CXX_COMPILER=/usr/local/bin/g++ ..
The first thing you need to do is to get the weights file for v3:
cd models
wget https://pjreddie.com/media/files/yolov3.weights
On Single image:
./yolo-app ../imgs/person.jpg
As I tested, it will take 25 ms on GPU ( 1080 ti ). please run inference job more than once, and calculate the average cost.