Übersicht zu Datensätzen für Multi-Objekt-Tracking
Multi-Objekt-Tracking ist eine entscheidende Komponente der Videoanalyse, die Objekte identifiziert und für jedes erkannte Objekt über Videobilder hinweg eindeutige IDs beibehält. Ultralytics YOLO bietet leistungsstarke Tracking-Funktionen, die in verschiedenen Bereichen wie Überwachung, Sportanalytik und Verkehrsüberwachung angewendet werden können.
Datensatzformat (kommt bald)
Das Ultralytics-Tracking verwendet derzeit Detection-, Segmentation- oder Pose-Modelle wieder, ohne dass ein Tracker-spezifisches Training erforderlich ist. Native Unterstützung für das Training von Trackern ist in aktiver Entwicklung.
Verfügbare Tracker
Ultralytics YOLO unterstützt die folgenden Tracking-Algorithmen:
- BoT-SORT – Verwende
botsort.yaml, um diesen Tracker zu aktivieren (Standard) - ByteTrack – Verwende
bytetrack.yaml, um diesen Tracker zu aktivieren
Verwendung
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)Beibehalten von Tracks zwischen Frames
Für kontinuierliches Tracking über Videobilder hinweg kannst du den Parameter persist=True verwenden:
import cv2
from ultralytics import YOLO
# Load the YOLO model
model = YOLO("yolo26n.pt")
# Open the video file
cap = cv2.VideoCapture("path/to/video.mp4")
while cap.isOpened():
success, frame = cap.read()
if success:
# Run tracking with persistence between frames
results = model.track(frame, persist=True)
# Visualize the results
annotated_frame = results[0].plot()
cv2.imshow("Tracking", annotated_frame)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
else:
break
cap.release()
cv2.destroyAllWindows()FAQ
Wie verwende ich Multi-Objekt-Tracking mit Ultralytics YOLO?
Um Multi-Objekt-Tracking mit Ultralytics YOLO zu nutzen, kannst du mit den bereitgestellten Python- oder CLI-Beispielen beginnen. Hier erfährst du, wie du loslegen kannst:
from ultralytics import YOLO
model = YOLO("yolo26n.pt") # Load the YOLO26 model
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)Diese Befehle laden das YOLO26-Modell und verwenden es zum Tracken von Objekten in der angegebenen Videoquelle mit spezifischen Konfidenz- (conf) und Intersection over Union (iou) Schwellenwerten. Weitere Details findest du in der Dokumentation zum Track-Modus.
Was sind die kommenden Funktionen für das Training von Trackern in Ultralytics?
Ultralytics verbessert seine KI-Modelle kontinuierlich. Eine kommende Funktion wird das Training eigenständiger Tracker ermöglichen. Bis dahin nutzt der Multi-Objekt-Detektor vortrainierte Detection-, Segmentation- oder Pose-Modelle für das Tracking, ohne dass ein separates Training erforderlich ist. Bleibe auf dem Laufenden, indem du unserem Blog folgst oder die kommenden Funktionen prüfst.
Warum sollte ich Ultralytics YOLO für Multi-Objekt-Tracking verwenden?
Ultralytics YOLO ist ein hochmodernes Object Detection-Modell, das für seine Echtzeitleistung und hohe Genauigkeit bekannt ist. Die Verwendung von YOLO für Multi-Objekt-Tracking bietet mehrere Vorteile:
- Echtzeit-Tracking: Erreiche effizientes High-Speed-Tracking, ideal für dynamische Umgebungen.
- Flexibilität mit vortrainierten Modellen: Kein Training von Grund auf erforderlich; verwende einfach vortrainierte Detection-, Segmentation- oder Pose-Modelle.
- Benutzerfreundlichkeit: Die einfache API-Integration mit Python und CLI macht das Einrichten von Tracking-Pipelines unkompliziert.
- Umfassende Dokumentation und Community-Support: Ultralytics bietet eine umfassende Dokumentation und ein aktives Community-Forum, um Probleme zu beheben und deine Tracking-Modelle zu verbessern.
Weitere Details zum Einrichten und Verwenden von YOLO für das Tracking findest du in unserem Leitfaden zur Track-Nutzung.
Kann ich benutzerdefinierte Datensätze für Multi-Objekt-Tracking mit Ultralytics YOLO verwenden?
Ja, du kannst benutzerdefinierte Datensätze für das Multi-Objekt-Tracking mit Ultralytics YOLO verwenden. Während die Unterstützung für das Training eigenständiger Tracker eine kommende Funktion ist, kannst du bereits vortrainierte Modelle auf deinen benutzerdefinierten Datensätzen einsetzen. Bereite deine Datensätze im entsprechenden YOLO-kompatiblen Format vor und folge der Dokumentation, um sie zu integrieren.
Wie interpretiere ich die Ergebnisse des Ultralytics YOLO-Tracking-Modells?
Nachdem ein Tracking-Job mit Ultralytics YOLO ausgeführt wurde, enthalten die Ergebnisse verschiedene Datenpunkte wie getrackte Objekt-IDs, deren Bounding Boxes und die Konfidenz-Scores. Hier ist ein kurzer Überblick, wie diese Ergebnisse zu interpretieren sind:
- Getrackte IDs: Jedem Objekt wird eine eindeutige ID zugewiesen, was beim Verfolgen über Frames hinweg hilft.
- Bounding Boxes: Diese geben den Ort der getrackten Objekte innerhalb des Frames an.
- Konfidenz-Scores: Diese spiegeln die Konfidenz des Modells bei der Erkennung des getrackten Objekts wider.
Für eine detaillierte Anleitung zur Interpretation und Visualisierung dieser Ergebnisse siehe den Leitfaden zur Ergebnishandhabung.
Wie kann ich die Tracker-Konfiguration anpassen?
Du kannst den Tracker anpassen, indem du eine modifizierte Version der Tracker-Konfigurationsdatei erstellst. Kopiere eine vorhandene Tracker-Konfigurationsdatei von ultralytics/cfg/trackers, ändere die Parameter nach Bedarf und gib diese Datei beim Ausführen des Trackers an:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model.track(source="video.mp4", tracker="custom_tracker.yaml")