Skip to main content

A unified library for object tracking featuring clean room re-implementations of leading multi-object tracking algorithms

Project description

trackers logo

trackers

Plug-and-play multi-object tracking for any detection model.

version downloads license python-version colab discord

https://github.com/user-attachments/assets/eef9b00a-cfe4-40f7-a495-954550e3ef1f

Install

pip install trackers
Install from source
pip install git+https://github.com/roboflow/trackers.git

For more options, see the install guide.

Watch: Building Real-Time Multi-Object Tracking with RF-DETR and Trackers

Track from CLI

Point at a video, webcam, RTSP stream, or image directory. Get tracked output.

trackers track \
    --source video.mp4 \
    --output output.mp4 \
    --model rfdetr-medium \
    --tracker bytetrack \
    --show-labels \
    --show-trajectories

For all CLI options, see the tracking guide.

Track from Python

Plug trackers into your existing detection pipeline. Works with any detector.

import cv2
import supervision as sv
from inference import get_model
from trackers import ByteTrackTracker

model = get_model(model_id="rfdetr-medium")
tracker = ByteTrackTracker()

cap = cv2.VideoCapture("video.mp4")
while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break

    result = model.infer(frame)[0]
    detections = sv.Detections.from_inference(result)
    tracked = tracker.update(detections)

For more examples, see the tracking guide.

https://github.com/user-attachments/assets/d2347a25-469d-44cd-8049-d15274bd91ae

Algorithms

Clean, modular implementations of leading trackers. All HOTA scores use default parameters.

Algorithm Description MOT17 HOTA SportsMOT HOTA SoccerNet HOTA DanceTrack HOTA
SORT Kalman filter + Hungarian matching baseline. 58.4 70.9 81.6 45.0
ByteTrack Two-stage association using high and low confidence detections. 60.1 73.0 84.0 50.2
OC-SORT Observation-centric recovery for lost tracks. 61.9 71.7 78.4 51.8

For detailed benchmarks and tuned configurations, see the tracker comparison.

Evaluate

Benchmark your tracker against ground truth with standard MOT metrics.

trackers eval \
    --gt-dir ./data/mot17/val \
    --tracker-dir results \
    --metrics CLEAR HOTA Identity \
    --columns MOTA HOTA IDF1
Sequence                        MOTA    HOTA    IDF1
----------------------------------------------------
MOT17-02-FRCNN                30.192  35.475  38.515
MOT17-04-FRCNN                48.912  55.096  61.854
MOT17-05-FRCNN                52.755  45.515  55.705
MOT17-09-FRCNN                51.441  50.108  57.038
MOT17-10-FRCNN                51.832  49.648  55.797
MOT17-11-FRCNN                55.501  49.401  55.061
MOT17-13-FRCNN                60.488  58.651  69.884
----------------------------------------------------
COMBINED                      47.406  50.355  56.600

For the full evaluation workflow, see the evaluation guide.

Download Datasets

Pull benchmark datasets for evaluation with a single command.

trackers download mot17 \
    --split val \
    --asset annotations,detections
Dataset Description Splits Assets License
mot17 Pedestrian tracking with crowded scenes and frequent occlusions. train, val, test frames, annotations, detections CC BY-NC-SA 3.0
sportsmot Sports broadcast tracking with fast motion and similar-looking targets. train, val, test frames, annotations CC BY 4.0

For more download options, see the download guide.

Try It

Try trackers in your browser with our Hugging Face Playground.

Documentation

Full guides, API reference, and tutorials: trackers.roboflow.com

Contributing

We welcome contributions. Read our contributor guidelines to get started.

License

The code is released under the Apache 2.0 license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trackers-2.4.0rc0.tar.gz (420.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trackers-2.4.0rc0-py3-none-any.whl (124.6 kB view details)

Uploaded Python 3

File details

Details for the file trackers-2.4.0rc0.tar.gz.

File metadata

  • Download URL: trackers-2.4.0rc0.tar.gz
  • Upload date:
  • Size: 420.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for trackers-2.4.0rc0.tar.gz
Algorithm Hash digest
SHA256 3d38ef42a783180bbd57371fa0d30ebc70a3ab68246e0bc2376538988b44fa37
MD5 aa4e3e7c582212cc96608b5bb2225535
BLAKE2b-256 0d3c9a6a11863f6eaf04cffc7beef2536da99b228b1311f06d6b6397b8df3d3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for trackers-2.4.0rc0.tar.gz:

Publisher: publish-pre-release.yml on roboflow/trackers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file trackers-2.4.0rc0-py3-none-any.whl.

File metadata

  • Download URL: trackers-2.4.0rc0-py3-none-any.whl
  • Upload date:
  • Size: 124.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for trackers-2.4.0rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 04ddfb81f7ff26679c5d7749a1c48b12080c36e942dded17c14146d5eb70dfc7
MD5 a99f775ccb93a19a83c028dcbf3aa047
BLAKE2b-256 5237b9f0f463820f488eaf1f914793922302967d08ffee33d7fc8376648bd65e

See more details on using hashes here.

Provenance

The following attestation bundles were made for trackers-2.4.0rc0-py3-none-any.whl:

Publisher: publish-pre-release.yml on roboflow/trackers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page