djdodsjsjx / BAM-SORT

BAM-SORT: A state-of-the-art multi-object tracking algorithm using bottom edge cost matrix and activated trajectory matching for robust tracking in crowded and occlusion-heavy environments. Excelling in benchmarks like MOT17, MOT20, and DanceTrack.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BAM-SORT

License: MIT test

Abstract

Multi-object tracking aims at estimating object bounding boxes and identity IDs in the video. Most tracking methods combine a detector and a Kalman filter using the IoU distance as a similarity metric for association matching for previous trajectories to match with the current detection box. These methods usually suffer from ID Switches and fragmented trajectories in response to congested and frequently occluded scenarios. In order to solve this problem, this paper proposes a simple and effective association method. Firstly, a bottom edge cost matrix is introduced to use depth information to improve data association and increase robustness in the case of occlusion. Secondly, An asymmetric trajectory classification mechanism is proposed to distinguish false positive trajectories, and an activated trajectory matching strategy is introduced to reduce the interference of noise and transient objects on tracking. Finally, the trajectory deletion strategy is improved by introducing the number of trajectory state switches to delete trajectories caused by spurious high-scoring detection boxes in real time, which in turn reduces the number of fragmented trajectories. These innovations achieve excellent performance in various benchmarks, including MOT17, MOT20, and especially on DanceTrack where interactions and occlusions are frequent and severe.

Highlights

  • BAM-SORT is a SOTA heuristic trackers on DanceTrack and performs excellently on MOT17/MOT20 datasets.
  • Maintains Simple, Online and Real-Time (SORT) characteristics.
  • Training-free and plug-and-play manner.
  • Strong generalization for diverse trackers and scenarios

Pipeline

Tracking performance

Results on DanceTrack test set

Tracker HOTA MOTA IDF1
OC-SORT 54.6 89.6 54.6
BAM-SORT 64.3 91.3 68.7

Results on MOT17 challenge test set

Tracker HOTA MOTA IDF1
OC-SORT 63.2 78.0 77.5
BAM-SORT 64.5 80.5 79.9

Results on MOT20 challenge test set

Tracker HOTA MOTA IDF1
OC-SORT 62.1 75.5 75.9
BAM-SORT 62.0 74.0 76.2

Get Started

Demo

python tools/bamsort_demo.py --path dancetrack0052 --det_type yolox_x --dataset dancetrack --dataset_type train

Acknowledgement

A large part of the code is borrowed from YOLOX, OC-SORT, ByteTrack, HybridSORT, BoT-SORT, Deep-OC-SORT and FastReID. Many thanks for their wonderful works.

About

BAM-SORT: A state-of-the-art multi-object tracking algorithm using bottom edge cost matrix and activated trajectory matching for robust tracking in crowded and occlusion-heavy environments. Excelling in benchmarks like MOT17, MOT20, and DanceTrack.

License:MIT License


Languages

Language:Python 94.3%Language:C++ 5.3%Language:CMake 0.2%Language:C 0.1%Language:Dockerfile 0.1%