English | 简体中文
BOT_SORT(BoT-SORT: Robust Associations Multi-Pedestrian Tracking). The configuration of common detectors is provided here for reference. Because different training data sets, input scales, number of training epochs, NMS threshold settings, etc. will lead to differences in model accuracy and performance, please adapt according to your needs
Dataset | detector | input size | detector mAP | MOTA | IDF1 | config |
---|---|---|---|---|---|---|
MOT-17 half train | PP-YOLOE-l | 640x640 | 52.7 | 55.5 | 64.2 | config |
Attention:
det_ Weights
, run the verification command to automatically download.MOT17-half train is a data set composed of pictures and labels of the first half frames of each video in the MOT17 train sequence (7 in total). To verify the accuracy, we can use the MOT17-half val to eval,It is composed of the second half frame of each video,download link,decompression dataset/mot/
BOT_ SORT training is a separate detector training MOT dataset, reasoning is to assemble a tracker to evaluate MOT indicators, and a separate detection model can also evaluate detection indicators.
BOT_SORT export deployment is to export the detection model separately and then assemble the tracker for operation. Refer to PP-Tracking。
BOT_SORT is the main scheme for PP Human, PP Vehicle and other pipelines to analyze the project tracking direction. For specific use, please refer to Pipeline and MOT.
Start training and evaluation with the following command
#Single gpu
CUDA_VISIBLE_DEVICES=0 python tools/train.py -c configs/mot/bytetrack/detector/ppyoloe_crn_l_36e_640x640_mot17half.yml --eval --amp
#Multi gpu
python -m paddle.distributed.launch --log_dir=ppyoloe --gpus 0,1,2,3,4,5,6,7 tools/train.py -c configs/mot/bytetrack/detector/ppyoloe_crn_l_36e_640x640_mot17half.yml --eval --amp
CUDA_VISIBLE_DEVICES=0 python tools/eval.py -c configs/mot/bytetrack/detector/ppyoloe_crn_l_36e_640x640_mot17half.yml
Attention:
tools/eval.py
,eval mot use tools/eval_mot.py
.CUDA_VISIBLE_DEVICES=0 python tools/eval_mot.py -c configs/mot/botsort/botsort_ppyoloe.yml --scaled=True
Attention:
--scaled
indicates whether the coordinates of the output results of the model have been scaled back to the original drawing. If the detection model used is JDE YOLOv3, it is false. If the universal detection model is used, it is true. The default value is false.{output_dir}/mot_results/
,each video sequence in it corresponds to a txt, and each line of information in each txt file is frame,id,x1,y1,w,h,score,-1,-1,-1
, and {output_dir}
could use --output_dir
to set.python tools/export_model.py -c configs/mot/bytetrack/detector/ppyoloe_crn_l_36e_640x640_mot17half.yml --output_dir=output_inference -o weights=https://bj.bcebos.com/v1/paddledet/models/mot/ppyoloe_crn_l_36e_640x640_mot17half.pdparams
# download demo video
wget https://bj.bcebos.com/v1/paddledet/data/mot/demo/mot17_demo.mp4
CUDA_VISIBLE_DEVICES=0 python deploy/pptracking/python/mot_sde_infer.py --model_dir=output_inference/ppyoloe_crn_l_36e_640x640_mot17half --tracker_config=deploy/pptracking/python/tracker_config.yml --video_file=mot17_demo.mp4 --device=GPU --threshold=0.5
Attention:
tracker_config.yml
tracker type: BOTSORTTracker
,if you want to use BOT_SORT.--save_mot_txts
(save a txt for each video) or --save_mot_txt_per_img
(Save a txt for each image) or --save_images
save the visualization picture of tracking results.frame,id,x1,y1,w,h,score,-1,-1,-1
。@article{aharon2022bot,
title={BoT-SORT: Robust Associations Multi-Pedestrian Tracking},
author={Aharon, Nir and Orfaig, Roy and Bobrovsky, Ben-Zion},
journal={arXiv preprint arXiv:2206.14651},
year={2022}
}