Detect using YOLOv2 and track using DeepSORT
tensorflow >= 1.0
cv2, numpy
YOLO_DeepSORT/
├── backup
├── yolo_model_weights_file.weights
...
├──cfg
├──yolo_model_config_file.cfg
├──yolo_model_class_type_file.data
├──resources
├──networks
├──tensorflow_model_weights_file.ckpt
├──0130 (it is a directory for frames saving)
├──01 (the serial id)
├──det (for saving det.txt which contains all the detection informations)
├──img1
├──your_video_frames.jpg
...
├──temp
├──your_yolo_lib_file.so
python deep_sort_app.py --display true --run_type instant
python deep_sort_app.py --display true --run_type pre_computed
or
python3 deep_sort_app.py --display true --run_type instant
python3 deep_sort_app.py --display true --run_type pre_computed
see argparser() for further infomations about other arguments.
Codes in this repo have been tested under python 2.7/3.5/3.6 with tensorflow 1.2.0 (with CUDA 8)
The tensorflow ckpt file can be download from here. See DeepSORT.
You can also compile your own yolo lib file, but be sure that all the functions have the same usage as those in yolov2.py.
If you find DeepSORT useful in your research, please consider citing the following papers:
@inproceedings{Wojke2017simple,
title={Simple Online and Realtime Tracking with a Deep Association Metric},
author={Wojke, Nicolai and Bewley, Alex and Paulus, Dietrich},
booktitle={2017 IEEE International Conference on Image Processing (ICIP)},
year={2017},
pages={3645--3649}
}
@inproceedings{Bewley2016_sort,
author={Bewley, Alex and Ge, Zongyuan and Ott, Lionel and Ramos, Fabio and Upcroft, Ben},
booktitle={2016 IEEE International Conference on Image Processing (ICIP)},
title={Simple online and realtime tracking},
year={2016},
pages={3464-3468},
doi={10.1109/ICIP.2016.7533003}
}