Object Detection using OpenVINO.
Supports YOLO and SSD type detection model.
By Park JaeHun
- Ubuntu 20.04
- OpenVINO 2021.3.394
- OpenCV 4.5.2-openvino
- Numpy 1.17.3
- OpenVINO
- OpenCV
- Numpy
- Downloads MOT20 dataset
- Create a symbolic link to the dataset
$ ln -s /path/to/MOT20_challenge/data/2DMOT2020 mot_benchmark
- Downloads yolov4-tiny IR file
$ cd /path/to/openvino_detector/IR/Yolo
$ source ./model_downloads.sh
$ tar -xvf yolov4-tiny_coco.tar.xz
- Run
$ python3 mot_detector.py --model_type=yolo --model_path=IR/Yolo/yolov4-tiny_coco --device=CPU --display
- Detection results are automatically saved in the det folder created in origin image data path.
Below is the gist of how to use openvino_detector. See the 'main' section of mot_detector.py for a complete example.
from openvino_detector.DetModel import OpenvinoDet
from openvino_detector.Model.Yolo import Yolo
from openvino_detector.Model.Ssd import Ssd
# create model parser instance
model = Yolo()
# create detector instance
detector = OpenvinoDet(model, "/path/to/IR", "CPU", ["person", 0, ...], 0.5)
# get frame
...
# run detection
res = detector.inference(frame)
# get MOT challenge format data
for object_dict in res:
d = detector.to_dets(object_dict)
# get detect results image
out_frame = detector.get_results_img(res)