A multi-object-tracking system which use tracking-by-detection method:yolo3/ssd(detection model)+sort/deep sort(tracking model)
The modification of this repository is based on the following repositories:
centernet_tensorflow_wilderface_voc
-
Download this repository.
-
download YOLOv3 weights from YOLO website and put them in
Repository_ROOT/yolo3_tf/
. -
Convert the Darknet YOLO model to a Keras model.
python convert.py yolov3.cfg yolov3.weights ./model_data/yolo.h5
- download deep_sort pretrained weights from here and put them in
Repository_ROOT/deep_sort/model_data/
. - Then generate file:mars-small128.pb.
cd Repository_ROOT/deep_sort/deep_sort/tools/
python freeze_model.py
-
download SSD weights from here,uzip it and put them in
Repository_ROOT/SSD_tf/model_data/
. -
download file:yolo3_centernet_voc from here ,password:qqwx.Then put them in
Repository_ROOT/yolo3_centernet_tf/model_data/
. -
download MOT16 datasets from here ,uzip MOT16.zip,and put file: MOT16 in
Repository_ROOT/
-
Convert MOT16 image to video.
python Repository_ROOT/MOT16/convert_image_to_video.py
run SSD/YOLO3+sort:
python detect_and_sort_video.py
# just modify the parameter detection_mode="SSD"or"YOLO3" to choose different detection model
run SSD/YOLO3+deep_sort:
python detect_and_deep_sort_video.py
# just modify the parameter detection_mode="SSD"or"YOLO3" to choose different detection model