TrackZone mit Ultralytics YOLO26
Was ist TrackZone?
TrackZone ist darauf spezialisiert, Objekte innerhalb festgelegter Bereiche eines Frames zu überwachen, anstatt das gesamte Bild zu betrachten. Es basiert auf Ultralytics YOLO26 und integriert Objekt-Erkennung und -Tracking spezifisch für Zonen in Videos und Live-Kamera-Feeds. YOLO26s fortschrittliche Algorithmen und Deep Learning-Technologien machen es zur idealen Wahl für Echtzeitanwendungen und bieten präzises und effizientes Objekt-Tracking für Einsatzgebiete wie Personenstrom-Überwachung und Sicherheitsüberwachung.
Watch: How to Track Objects in Region using Ultralytics YOLO26 | TrackZone 🚀
Vorteile des Objekt-Trackings in Zonen (TrackZone)
- Gezielte Analyse: Das Tracking von Objekten innerhalb spezifischer Zonen ermöglicht fokussiertere Erkenntnisse und erlaubt eine präzise Überwachung und Analyse interessanter Bereiche, wie etwa Eingänge oder Sperrzonen.
- Verbesserte Effizienz: Durch die Einschränkung des Tracking-Bereichs auf definierte Zonen reduziert TrackZone den Rechenaufwand, was eine schnellere Verarbeitung und optimale Leistung gewährleistet.
- Erhöhte Sicherheit: Zonenbasiertes Tracking verbessert die Überwachung, indem kritische Bereiche kontrolliert werden, was die frühzeitige Erkennung von ungewöhnlichen Aktivitäten oder Sicherheitsverletzungen unterstützt.
- Skalierbare Lösungen: Die Möglichkeit, sich auf bestimmte Zonen zu konzentrieren, macht TrackZone anpassungsfähig an verschiedene Szenarien, von Einzelhandelsflächen bis hin zu industriellen Umgebungen, und sorgt für nahtlose Integration und Skalierbarkeit.
Anwendungen in der Praxis
| Landwirtschaft | Transportwesen |
|---|---|
| Pflanzen-Tracking auf dem Feld mit Ultralytics YOLO26 | Fahrzeug-Tracking auf der Straße mit Ultralytics YOLO26 |
# Run a trackzone example
yolo solutions trackzone show=True
# Pass a source video
yolo solutions trackzone source="path/to/video.mp4" show=True
# Pass region coordinates
yolo solutions trackzone show=True region="[(150, 150), (1130, 150), (1130, 570), (150, 570)]"TrackZone verlässt sich auf die region-Liste, um zu wissen, welcher Teil des Frames überwacht werden soll. Definiere das Polygon passend zur physischen Zone, die dich interessiert (Türen, Tore usw.), und behalte show=True während der Konfiguration aktiviert, damit du überprüfen kannst, ob das Overlay mit dem Video-Feed übereinstimmt.
TrackZone-Argumente
Hier ist eine Tabelle mit den TrackZone-Argumenten:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
model | str | None | Pfad zu einer Ultralytics YOLO-Modelldatei. |
region | list | '[(20, 400), (1260, 400)]' | Liste von Punkten, die den Zählbereich definieren. |
Die TrackZone-Lösung beinhaltet Unterstützung für track-Parameter:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Legt den zu verwendenden Tracking-Algorithmus fest, z. B. bytetrack.yaml oder botsort.yaml. |
conf | float | 0.1 | Legt den Konfidenz-Schwellenwert für Detektionen fest; niedrigere Werte ermöglichen die Verfolgung von mehr Objekten, können aber zu falsch-positiven Ergebnissen führen. |
iou | float | 0.7 | Legt den Intersection over Union (IoU) Schwellenwert zum Filtern überlappender Detektionen fest. |
classes | list | None | Filtert Ergebnisse nach Klassen-Index. Beispiel: classes=[0, 2, 3] verfolgt nur die angegebenen Klassen. |
verbose | bool | True | Steuert die Anzeige der Tracking-Ergebnisse und liefert eine visuelle Ausgabe der verfolgten Objekte. |
device | str | None | Spezifiziert das Gerät für die Inferenz (z. B. cpu, cuda:0 oder 0). Ermöglicht die Wahl zwischen CPU, einer spezifischen GPU oder anderen Recheneinheiten zur Modellausführung. |
Darüber hinaus sind die folgenden Visualisierungsoptionen verfügbar:
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
show | bool | False | Wenn True, werden die annotierten Bilder oder Videos in einem Fenster angezeigt. Nützlich für direktes visuelles Feedback während der Entwicklung oder beim Testen. |
line_width | int or None | None | Gibt die Linienbreite der Bounding-Boxen an. Wenn None, wird die Linienbreite automatisch basierend auf der Bildgröße angepasst. Bietet visuelle Anpassung für mehr Klarheit. |
show_conf | bool | True | Zeigt den Konfidenzwert für jede Erkennung neben dem Label an. Gibt Aufschluss über die Sicherheit des Modells bei jeder Erkennung. |
show_labels | bool | True | Zeigt Labels für jede Erkennung in der visuellen Ausgabe an. Bietet unmittelbares Verständnis der erkannten Objekte. |
FAQ
Wie tracke ich Objekte in einem spezifischen Bereich oder einer Zone eines Video-Frames mit Ultralytics YOLO26?
Das Tracking von Objekten in einem definierten Bereich oder einer Zone eines Video-Frames ist mit Ultralytics YOLO26 unkompliziert. Verwende einfach den unten angegebenen Befehl, um das Tracking zu starten. Dieser Ansatz sorgt für eine effiziente Analyse und genaue Ergebnisse, was ihn ideal für Anwendungen wie Sicherheitsüberwachung, Crowd-Management oder jedes Szenario macht, das zonenbasiertes Tracking erfordert.
yolo solutions trackzone source="path/to/video.mp4" show=TrueWie kann ich TrackZone in Python mit Ultralytics YOLO26 verwenden?
Mit nur wenigen Zeilen Code kannst du Objekt-Tracking in spezifischen Zonen einrichten, was die Integration in deine Projekte einfach macht.
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
# Define region points
region_points = [(150, 150), (1130, 150), (1130, 570), (150, 570)]
# Video writer
video_writer = cv2.VideoWriter("object_counting_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Init trackzone (object tracking in zones, not complete frame)
trackzone = solutions.TrackZone(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.pt",
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or video processing has been successfully completed.")
break
results = trackzone(im0)
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows()Wie konfiguriere ich die Zonenpunkte für die Videoverarbeitung mit Ultralytics TrackZone?
Das Konfigurieren von Zonenpunkten für die Videoverarbeitung mit Ultralytics TrackZone ist einfach und anpassbar. Du kannst die Zonen direkt über ein Python-Skript definieren und anpassen, was eine präzise Kontrolle über die zu überwachenden Bereiche ermöglicht.
# Define region points
region_points = [(150, 150), (1130, 150), (1130, 570), (150, 570)]
# Initialize trackzone
trackzone = solutions.TrackZone(
show=True, # display the output
region=region_points, # pass region points
)