mikel-brostrom /yolo_tracking

BoxMOT: Pluggable Python and C++ SOTA multi-object tracking modules with support for axis-aligned and oriented bounding boxes

★ 8,324⑂ 1,914
PythonCreated 2020-06-26mikel-brostrom.github.io/boxmot/
8,324
stars
+1+2+13
1,914
forks
–
watchers
–
prs
–
issues
–
releases
–
discussions

README

Pluggable Python and C++ multi-object tracking modules for axis-aligned and oriented bounding box detections from any model.

  
  
  
  
  
  
  
  
  
  

  

  ---

  Docs • Installation • Modes • API Reference • Trackers • Contributing

  



BoxMOT provides independent detector, segmentor, appearance-encoder, and tracker
components built around validated Torch structures. Pipelines compose those
components; the CLI owns sources, outputs, materialized datasets, evaluation,
tuning, research, and ReID workflows.

 Why BoxMOT

- One interface for track, materialize, materialize --time-variant, eval,
  tune, research, train-reid, eval-reid, compare-reid, export,
  export-edgetam, install, and native build workflows.
- Swappable components with explicit capabilities and requirements.
- Immutable, keyed Parquet builds with reusable detections, masks, and
  embeddings.
- Support for both AABB and OBB tracking paths.
- Optional production-ready native C++ tracker implementations with the same metrics as the Python path, opted into via --tracker-backend cpp and embeddable in standalone C++ projects via CMake (see Native C++ Integration and platform dependency installation).
- A structured Python API for embedding components and pipelines in applications.

 Installation

BoxMOT supports Python 3.10 through 3.13.

bash
pip install boxmot
boxmot --help


The default package uses the standard PyPI PyTorch build. Source checkouts and
CI can explicitly select the lockfile-backed cpu or cu130 profile. For
those profiles and mode-specific extras such as yolo, service, evolve,
research, onnx, openvino, and tflite, see the
installation guide.

 Benchmark Results





  
    
      Tracker key
      Status
      MOT17 ablation
      SportsMOT val
      MMOT OBB test
      OBB
    
    
      HOTA
      MOTA
      IDF1
      HOTA
      MOTA
      IDF1
      HOTA
      MOTA
      IDF1
    
  
  
    
      occluboost
      ✅
      71.10(71.10)
      78.50(78.50)
      85.28(85.28)
      83.17
      97.48
      89.36
      49.84(49.84)
      39.41(39.41)
      58.60(58.60)
      ✅
    
    
      botsort
      ✅
      69.68(69.74)
      78.23(78.27)
      82.33(82.55)
      76.93
      98.11
      78.30
      52.31(52.40)
      45.43(45.53)
      61.42(61.42)
      ✅
    
    
      boosttrack
      ✅
      69.25(—)
      75.91(—)
      83.20(—)
      76.32
      97.08
      77.82
      48.39(—)
      41.36(—)
      56.36(—)
      ✅
    
    
      strongsort
      ✅
      68.05(—)
      76.19(—)
      80.76(—)
      79.80
      97.31
      80.27
      49.76(—)
      43.70(—)
      57.32(—)
      ✅
    
    
      deepocsort
      ✅
      67.95(—)
      75.83(—)
      80.54(—)
      79.51
      97.94
      79.59
      50.84(—)
      44.21(—)
      59.33(—)
      ✅
    
    
      bytetrack
      ✅
      67.68(67.68)
      78.04(78.04)
      79.16(79.16)
      67.93
      97.25
      76.90
      33.97(33.97)
      33.72(33.72)
      39.74(39.74)
      ✅
    
    
  

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON