This is a method that can track peoples among mult-cameras.
The framework of this work is combining deep_sort_yolov3 with deep-person-reid.
The tracking result of deep_sort_yolov3 is not stable enough. The track_id of the same person would change when he goes outside the camera and back or occlusion happended.
Deep-person-reid is a reid Pytorch framework. I trained a model using Market-1501 dataset on it. The top-5 result reached 95%+ and the top-3 result reached 90%+.
Therefore, my work is making a little improvement of deep_sort_yolov3, and fusing different track_ids that belong to the same person using parts of deep-person-reid.
- Download YOLOv3 or tiny_yolov3 weights from YOLO website.Then convert the Darknet YOLO model to a Keras model. Or use what deep_sort_yolov3 had converted https://drive.google.com/file/d/1uvXFacPnrSMw6ldWTyLLjGLETlEsUvcE/view?usp=sharing (yolo.h5 model file with tf-1.4.0) , put it into model_data folder.
2.Install the Dependencies followed:
NumPy
sklean
OpenCV
Pillow
TensorFlow(>=1.4.0)
-
Follow the Installation part of deep-person-reid to install torchreid.
-
Download the torchreid model from Google Drive or Baidu Driver (password: h09w) and put it into model_data folder.