TrackZone mit Ultralytics YOLO26

Open TrackZone In Colab

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

LandwirtschaftTransportwesen
Pflanzen-Tracking auf dem Feld mit Ultralytics YOLO26Fahrzeug-Tracking auf der Straße mit Ultralytics YOLO26
Pflanzen-Tracking auf dem Feld mit Ultralytics YOLO26Fahrzeug-Tracking auf der Straße mit Ultralytics YOLO26
TrackZone mit Ultralytics YOLO
# 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:

ArgumentTypStandardBeschreibung
modelstrNonePfad zu einer Ultralytics YOLO-Modelldatei.
regionlist'[(20, 400), (1260, 400)]'Liste von Punkten, die den Zählbereich definieren.

Die TrackZone-Lösung beinhaltet Unterstützung für track-Parameter:

ArgumentTypStandardBeschreibung
trackerstr'botsort.yaml'Legt den zu verwendenden Tracking-Algorithmus fest, z. B. bytetrack.yaml oder botsort.yaml.
conffloat0.1Legt 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.
ioufloat0.7Legt den Intersection over Union (IoU) Schwellenwert zum Filtern überlappender Detektionen fest.
classeslistNoneFiltert Ergebnisse nach Klassen-Index. Beispiel: classes=[0, 2, 3] verfolgt nur die angegebenen Klassen.
verboseboolTrueSteuert die Anzeige der Tracking-Ergebnisse und liefert eine visuelle Ausgabe der verfolgten Objekte.
devicestrNoneSpezifiziert 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:

ArgumentTypStandardBeschreibung
showboolFalseWenn 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_widthint or NoneNoneGibt 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_confboolTrueZeigt den Konfidenzwert für jede Erkennung neben dem Label an. Gibt Aufschluss über die Sicherheit des Modells bei jeder Erkennung.
show_labelsboolTrueZeigt 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=True

Wie 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
)

Kommentare