Skip to content

Releases: roboflow/trackers

Trackers 2.2.0

18 Feb 18:17
5f05879

Choose a tag to compare

Changelog

🚀 Added

  • Added camera motion compensation for stable trajectory visualization. (#263)
trackers-2.2.0-promo.mp4
  • Added trackers track CLI command. Full tracking pipeline from the command line. Point it at a video, webcam, RTSP stream, or image directory. (#242, #230, #252, #243)

    trackers track --source video.mp4 --output output.mp4 \
        --model rfdetr-medium \
        --model.confidence 0.3 \
        --classes person \
        --show-labels --show-trajectories
  • Added trackers eval CLI command. Evaluate tracker predictions against ground truth using standard MOT metrics. (#210, #211, #212, #214, #215, #223, #224, #226, #250)

    trackers eval \
        --gt-dir data/gt \
        --tracker-dir data/trackers \
        --metrics CLEAR HOTA Identity \
        --columns MOTA HOTA IDF1 IDSW
    Sequence                        MOTA    HOTA    IDF1  IDSW
    ----------------------------------------------------------
    MOT17-02-FRCNN                75.600  62.300  72.100    42
    MOT17-04-FRCNN                78.200  65.100  74.800    31
    ----------------------------------------------------------
    COMBINED                      75.033  62.400  72.033    73
  • Added Trackers Playground on Hugging Face Spaces. Interactive Gradio demo with model and tracker selection, COCO class filtering, visualization flags, and cached examples. (#249)

  • Added interactive CLI command builder to the docs. Generate trackers track commands with interactive controls. (#242)

🏆 Contributors

@omkar-334 (Omkar Kabde), @Aaryan2304 (Aaryan Kurade), @juan-cobos (Juan Cobos Álvarez), @Borda (Jirka Borovec), @SkalskiP (Piotr Skalski)

Trackers 2.1.0.

28 Jan 10:36
e4cc623

Choose a tag to compare

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
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()
rf-detr-1.4.0-and-trackers-2.1.0-promo.mp4

🏆 Contributors

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