简体中文 | English
ByteTrack(ByteTrack: Multi-Object Tracking by Associating Every Detection Box) 通过关联每个检测框来跟踪,而不仅是关联高分的检测框。此处提供了几个常用检测器的配置作为参考。由于训练数据集、输入尺度、训练epoch数、NMS阈值设置等的不同均会导致模型精度和性能的差异,请自行根据需求进行适配。
骨架网络 | 网络类型 | 输入尺度 | 学习率策略 | 推理时间(fps) | Box AP | 下载 | 配置文件 |
---|---|---|---|---|---|---|---|
DarkNet-53 | YOLOv3 | 608X608 | 40e | ---- | 42.7 | 下载链接 | 配置文件 |
CSPResNet | PPYOLOe | 640x640 | 36e | ---- | 52.9 | 下载链接 | 配置文件 |
CSPDarkNet | YOLOX-x(mix_mot_ch) | 800x1440 | 24e | ---- | 61.9 | 下载链接 | 配置文件 |
CSPDarkNet | YOLOX-x(mix_det) | 800x1440 | 24e | ---- | 65.4 | 下载链接 | 配置文件 |
注意:
- 以上模型除YOLOX外采用MOT17-half train数据集训练,数据集可以从此链接下载。
- MOT17-half train是MOT17的train序列(共7个)每个视频的前一半帧的图片和标注组成的数据集,而为了验证精度可以都用MOT17-half val数据集去评估,它是每个视频的后一半帧组成的,数据集可以从此链接下载,并解压放在
dataset/mot/MOT17/images/
文件夹下。 - YOLOX-x(mix_mot_ch)采用mix_mot_ch数据集,是MOT17、CrowdHuman组成的联合数据集;YOLOX-x(mix_det)采用mix_det数据集,是MOT17、CrowdHuman、Cityscapes、ETHZ组成的联合数据集,数据集整理的格式和目录可以参考此链接,最终放置于
dataset/mot/
目录下。为了验证精度可以都用MOT17-half val数据集去评估。 - 行人跟踪请使用行人检测器结合行人ReID模型。车辆跟踪请使用车辆检测器结合车辆ReID模型。
- 用于ByteTrack跟踪时,这些模型的NMS阈值等后处理设置会与纯检测任务的设置不同。
通过如下命令一键式启动评估、评估和导出
job_name=ppyoloe_crn_l_36e_640x640_mot17half
config=configs/mot/bytetrack/detector/${job_name}.yml
log_dir=log_dir/${job_name}
# 1. training
python -m paddle.distributed.launch --log_dir=${log_dir} --gpus 0,1,2,3,4,5,6,7 tools/train.py -c ${config} --eval --amp
# 2. evaluation
CUDA_VISIBLE_DEVICES=0 python tools/eval.py -c ${config} -o weights=output/${job_name}/model_final.pdparams
# 3. export
CUDA_VISIBLE_DEVICES=0 python tools/export_model.py -c ${config} -o weights=output/${job_name}/model_final.pdparams