Download Latest Version Trackers 2.2.0 source code.tar.gz (333.9 kB)
Email in envelope

Get an email when there's a new version of trackers

Home / 2.1.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-01-28 3.0 kB
Trackers 2.1.0. source code.tar.gz 2026-01-28 138.2 kB
Trackers 2.1.0. source code.zip 2026-01-28 160.0 kB
Totals: 3 Items   301.3 kB 0

Changelog

[!WARNING] Starting with version 2.1.0, Trackers package drops support for Python 3.9. If your environment still relies on Python 3.9, stay on Trackers 2.0.x or upgrade your Python runtime to 3.10 or newer.

[!WARNING] Starting with version 2.1.0, the Trackers package drops support for DeepSORTTracker and ReIDModel. We plan to bring back improved ReID support in future releases.

🚀 Added

Added support for ByteTrack, a fast tracking by detection algorithm focused on stable identities under occlusion. We evaluated both SORT and ByteTrack implementations on three standard multiple object tracking benchmarks, MOT17, SportsMOT, and SoccerNet Tracking.

Algorithm Trackers API MOT17 HOTA MOT17 IDF1 MOT17 MOTA SportsMOT HOTA SoccerNet HOTA
SORT SORTTracker 58.4 69.9 67.2 70.9 81.6
ByteTrack ByteTrackTracker 60.1 73.2 74.1 73.0 84.0
:::python
import cv2
import supervision as sv
from rfdetr import RFDETRMedium
from trackers import ByteTrack

tracker = ByteTrack()
model = RFDETRMedium()

box_annotator = sv.BoxAnnotator()
label_annotator = sv.LabelAnnotator()

video_capture = cv2.VideoCapture("<SOURCE_VIDEO_PATH>")
if not video_capture.isOpened():
    raise RuntimeError("Failed to open video source")

while True:
    success, frame_bgr = video_capture.read()
    if not success:
        break

    frame_rgb = cv2.cvtColor(frame_bgr, cv2.COLOR_BGR2RGB)
    detections = model.predict(frame_rgb)
    detections = tracker.update(detections)

    annotated_frame = box_annotator.annotate(frame_bgr, detections)
    annotated_frame = label_annotator.annotate(annotated_frame, detections, labels=detections.tracker_id)

    cv2.imshow("RF-DETR + ByteTrack", annotated_frame)
    if cv2.waitKey(1) & 0xFF == ord("q"):
        break

video_capture.release()
cv2.destroyAllWindows()

https://github.com/user-attachments/assets/99d815ec-3673-4b45-a22b-da98e233352b

🏆 Contributors

@tstanczyk95 (Tomasz Stańczyk), @AlexBodner (Alexander Bodner), @Borda (Jirka Borovec), @SkalskiP (Piotr Skalski)

Source: README.md, updated 2026-01-28