Project Icon

StrongSORT

先进多目标跟踪算法全面升级DeepSORT技术

StrongSORT是对DeepSORT多目标跟踪算法的全面升级。该项目在检测、嵌入和关联等核心环节进行了优化,并引入AFLink和GSI两个轻量级插件算法。经过改进的StrongSORT在MOT17和MOT20数据集上刷新了HOTA和IDF1指标记录,性能显著优于现有方法。项目开源了完整代码实现和使用说明,便于研究人员复现和拓展。

StrongSORT

StrongSORT:让DeepSORT再次伟大

arXiv 许可证: GPL 测试

PWC

PWC

MOTA-IDF1-HOTA

新闻

星标历史

星标历史图表

摘要

现有的多目标跟踪(MOT)方法大致可分为基于检测的跟踪和联合检测关联范式。尽管后者受到更多关注并展示出与前者相当的性能,我们认为基于检测的跟踪范式在跟踪精度方面仍是最佳解决方案。在本文中,我们重新审视了经典跟踪器DeepSORT,并从检测、嵌入和关联等多个方面对其进行升级。由此产生的跟踪器,称为StrongSORT,在MOT17和MOT20上创造了新的HOTA和IDF1记录。我们还提出了两种轻量级且即插即用的算法来进一步完善跟踪结果。首先,提出了一种无外观链接模型(AFLink)来将短轨迹关联成完整轨迹。据我们所知,这是第一个不需要外观信息的全局链接模型。其次,我们提出了高斯平滑插值(GSI)来补偿缺失的检测。与忽略运动信息的线性插值不同,GSI基于高斯过程回归算法,可以实现更准确的定位。此外,AFLink和GSI可以插入各种跟踪器中,几乎不会增加额外的计算成本(在MOT17上分别为591.9和140.9 Hz)。通过将StrongSORT与这两种算法相结合,最终的跟踪器StrongSORT++在MOT17和MOT20的HOTA和IDF1指标上排名第一,并超过第二名1.3 - 2.2。代码将很快发布。

与最先进方法的比较

比较

数据和模型准备

  1. 官方网站下载MOT17和MOT20。

    数据集路径/MOTChallenge
    ├── MOT17
    	│   ├── test
    	│   └── train
    └── MOT20
        ├── test
        └── train
    
  2. 下载我们准备的数据(Google云盘)或百度网盘(提取码:sort)

    数据空间路径
    ├── AFLink_epoch20.pth  # AFLink模型的检查点
    ├── MOT17_ECC_test.json  # CMC模型
    ├── MOT17_ECC_val.json  # CMC模型
    ├── MOT17_test_YOLOX+BoT  # 检测结果 + 特征
    ├── MOT17_test_YOLOX+simpleCNN  # 检测结果 + 特征
    ├── MOT17_trainval_GT_for_AFLink  # 用于训练和评估AFLink模型的真实值
    ├── MOT17_val_GT_for_TrackEval  # 用于评估跟踪结果的真实值
    ├── MOT17_val_YOLOX+BoT  # 检测结果 + 特征
    ├── MOT17_val_YOLOX+simpleCNN  # 检测结果 + 特征
    ├── MOT20_ECC_test.json  # CMC模型
    ├── MOT20_test_YOLOX+BoT  # 检测结果 + 特征
    ├── MOT20_test_YOLOX+simpleCNN  # 检测结果 + 特征
    
  3. 在"opts.py"中设置数据集和其他文件的路径,即root_dataset、path_AFLink、dir_save、dir_dets、path_ECC。

注意:如果您想自行生成ECC结果、检测结果和特征,请参考辅助教程

环境要求

  • pytorch
  • opencv
  • scipy
  • sklearn

例如,我们已经测试了以下命令来为StrongSORT创建环境:

conda create -n strongsort python=3.8 -y
conda activate strongsort
pip3 install torch torchvision torchaudio
pip install opencv-python
pip install scipy
pip install scikit-learn==0.19.2

跟踪

  • 在MOT17-val上运行DeepSORT

    python strong_sort.py MOT17 val
    
  • 在MOT17-val上运行StrongSORT

    python strong_sort.py MOT17 val --BoT --ECC --NSA --EMA --MC --woC
    
  • 在MOT17-val上运行StrongSORT++

    python strong_sort.py MOT17 val --BoT --ECC --NSA --EMA --MC --woC --AFLink --GSI
    
  • 在MOT17-test上运行StrongSORT++

    python strong_sort.py MOT17 test --BoT --ECC --NSA --EMA --MC --woC --AFLink --GSI
    
  • 在MOT20-test上运行StrongSORT++

    python strong_sort.py MOT20 test --BoT --ECC --NSA --EMA --MC --woC --AFLink --GSI
    

评估

我们使用官方代码TrackEval来评估MOT17-val集上的结果。 为了方便您开始,我们在Google百度网盘上提供了MOT17-val注释,在"MOT17-train"文件夹中。

请首先准备TrackEval的代码和环境,并将下载的"MOT17-train"文件夹与TrackEval的"data/gt/mot_challenge"文件夹链接,如下:

ln -s xxx/MOT17-train xxx/TrackEval/data/gt/mot_challenge

我们还在网盘上提供了一些跟踪结果,在"MOT17-val_results"文件夹中。 您可以下载它们,进入TrackEval目录,并尝试评估StrongSORT++,如下:

python scripts/run_mot_challenge.py \
--BENCHMARK MOT17 \
--SPLIT_TO_EVAL train \
--TRACKERS_TO_EVAL xxx/MOT17-val_results/StrongSORT++ \
--TRACKER_SUB_FOLDER '' \
--METRICS HOTA CLEAR Identity VACE \
--USE_PARALLEL False \
--NUM_PARALLEL_CORES 1 \
--GT_LOC_FORMAT '{gt_folder}/{seq}/gt/gt_val_half_v2.txt' \
--OUTPUT_SUMMARY False \
--OUTPUT_EMPTY_CLASSES False \
--OUTPUT_DETAILED False \
--PLOT_CURVES False

注意:您可能还需要准备SEQMAPS来指定要评估的序列。

注意事项

  • 您也可以尝试将AFLink和GSI应用到其他跟踪器上。如果您能告诉我们您的新结果,我们将非常高兴。
  • 仔细调整超参数会带来更好的性能。

引用

@article{du2023strongsort,
  title={Strongsort: Make deepsort great again},
  author={Du, Yunhao and Zhao, Zhicheng and Song, Yang and Zhao, Yanyun and Su, Fei and Gong, Tao and Meng, Hongying},
  journal={IEEE Transactions on Multimedia},
  year={2023},
  publisher={IEEE}
}

您也可以考虑阅读并引用我们的相关工作GIAOTracker,该工作在ICCV研讨会的VisDrone2021 MOT挑战赛中获得第二名:

@InProceedings{Du_2021_ICCV,
    author    = {Du, Yunhao and Wan, Junfeng and Zhao, Yanyun and Zhang, Binyu and Tong, Zhihang and Dong, Junhao},
    title     = {GIAOTracker: A Comprehensive Framework for MCMOT With Global Information and Optimizing Strategies in VisDrone 2021},
    booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV) Workshops},
    month     = {October},
    year      = {2021},
    pages     = {2809-2819}
}

致谢

大部分代码、想法和结果都借鉴自DeepSORTJDEYOLOXByteTrack。感谢他们的出色工作!

↳ 点赞者

Stargazers repo roster for @dyhBUPT/StrongSORT

↳ 复刻者

Forkers repo roster for @dyhBUPT/StrongSORT

↳ 访问者

Visit tracker

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号