Meet YOLO26: next-gen vision AI.

Link to this sectionObjekt-Tracking-Heatmaps mit Ultralytics YOLO26#

Open Heatmaps In Colab

Die Heatmap-Lösung in Ultralytics YOLO26 verfolgt Objekte über Videobilder hinweg und überlagert jedes Bild mit ihrer akkumulierten Bewegungsintensität, sodass stark frequentierte Bereiche in warmen Farben leuchten, während ruhige Bereiche kühl bleiben. Basierend auf der YOLO26-Objektverfolgung verwandelt sie jedes Video in eine räumliche Aktivitätskarte, die Verkehrsfluss, Menschenmengen und Aufenthaltszonen mit einem einzigen Python-Aufruf oder CLI-Befehl aufdeckt.



Watch: Heatmaps using Ultralytics YOLO26

Link to this sectionWarum Heatmaps für Videoanalysen verwenden?#

  • Aktivitätsmuster auf einen Blick erkennen: Intensität akkumuliert sich dort, wo sich verfolgte Objekte aufhalten, sodass stark befahrene Spuren, beliebte Regale oder Engpässe ohne manuelle Überprüfung Bild für Bild sofort erkennbar werden.
  • Integrierte Verfolgung: Die Lösung führt die YOLO26-Erkennung und -Verfolgung intern aus, sodass kein separater Tracking-Prozess eingerichtet werden muss.
  • Zählen im selben Durchgang: Übergib eine region, um Objekte zu zählen, die eine Zone betreten oder verlassen, während die Heatmap erstellt wird – so kombinierst du zwei Analyseaufgaben in einem Durchlauf.

Link to this sectionPraxisanwendungen#

TransportwesenEinzelhandel
Ultralytics YOLO Heatmap-Overlay zur Darstellung der FahrzeugverkehrsdichteUltralytics YOLO Heatmap-Overlay zur Darstellung der Kundenbewegung im Einzelhandel
Ultralytics YOLO Transport-HeatmapUltralytics YOLO Einzelhandels-Heatmap

Link to this sectionSo erstellst du Heatmaps mit Ultralytics YOLO#

Führe die Heatmap-Lösung über die CLI oder Python auf einer Videoquelle aus. Das Python-Beispiel schreibt die verarbeiteten Bilder in eine Ausgabevideodatei:

Heatmaps mit Ultralytics YOLO
# Run a heatmap example
yolo solutions heatmap show=True

# Pass a source video
yolo solutions heatmap source="path/to/video.mp4"

# Pass a custom colormap
yolo solutions heatmap colormap=cv2.COLORMAP_INFERNO

# Heatmaps + object counting
yolo solutions heatmap region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"

Link to this sectionHeatmap() Argumente#

Hier ist eine Tabelle mit den Heatmap-Argumenten:

ArgumentTypStandardBeschreibung
modelstrNonePfad zu einer Ultralytics YOLO-Modelldatei.
colormapintcv2.COLORMAP_DEEPGREENZu verwendende Farbkarte für die Heatmap.
show_inboolTrueFlag zur Steuerung, ob die 'in'-Zähler im Videostream angezeigt werden sollen.
show_outboolTrueFlag zur Steuerung, ob die 'out'-Zähler im Videostream angezeigt werden sollen.
regionlist oder dictNonePunkte, die den Interessenbereich definieren, entweder als Liste von (x, y)-Tupeln oder als Dictionary, das Regionsnamen auf Punktlisten für mehrere Regionen abbildet (nur RegionCounter). Wenn None, greifen Lösungen, die eine Region erfordern, auf einen vordefinierten Standardwert zurück.

Du kannst auch verschiedene track-Argumente in der Heatmap-Lösung anwenden.

ArgumentTypStandardBeschreibung
trackerstr'botsort.yaml'Legt den zu verwendenden Tracking-Algorithmus fest. Integrierte Optionen: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.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 IoU-Schwellenwert für das Filtern überlappender Detektionen fest.
classeslistNoneFiltert Ergebnisse nach Klassenindex. Zum Beispiel verfolgt classes=[0, 2, 3] nur die angegebenen Klassen.
verboseboolTrueSteuert die Anzeige der Tracking-Ergebnisse und bietet eine visuelle Ausgabe der verfolgten Objekte.
devicestrNoneGibt das Gerät für die Inferenz an (z. B. cpu, cuda:0 oder 0). Ermöglicht die Wahl zwischen CPU, einer spezifischen GPU oder anderen Rechengeräten für die Modellausführung.

Zusätzlich sind die unterstützten Visualisierungsargumente unten aufgeführt:

ArgumentTypStandardBeschreibung
showboolFalseWenn True, werden die annotierten Bilder oder Videos in einem Fenster angezeigt. Nützlich für sofortiges visuelles Feedback während der Entwicklung oder Tests.
line_widthint or NoneNoneLegt die Linienbreite der BBoxen fest. Wenn None, wird die Linienbreite automatisch basierend auf der Bildgröße angepasst. Bietet visuelle Anpassungsmöglichkeiten für mehr Klarheit.
show_confboolTrueZeigt den Konfidenzwert für jede Erkennung neben dem Label an. Bietet Einblick in die Gewissheit des Modells für jede Erkennung.
show_labelsboolTrueZeigt Labels für jede Erkennung in der visuellen Ausgabe an. Ermöglicht ein sofortiges Verständnis der erkannten Objekte.

Link to this sectionHeatmap-Farbskalen#

Das Argument colormap akzeptiert jede OpenCV-Farbskala. Übergib die Konstante aus dem cv2-Modul, zum Beispiel colormap=cv2.COLORMAP_INFERNO:

Name der FarbtabelleBeschreibung
cv2.COLORMAP_AUTUMNHerbst-Farbtabelle
cv2.COLORMAP_BONEKnochen-Farbtabelle
cv2.COLORMAP_JETJet-Farbtabelle
cv2.COLORMAP_WINTERWinter-Farbtabelle
cv2.COLORMAP_RAINBOWRegenbogen-Farbtabelle
cv2.COLORMAP_OCEANOzean-Farbtabelle
cv2.COLORMAP_SUMMERSommer-Farbtabelle
cv2.COLORMAP_SPRINGFrühlings-Farbtabelle
cv2.COLORMAP_COOLKühl-Farbtabelle
cv2.COLORMAP_HSVHSV (Farbton, Sättigung, Wert) Farbtabelle
cv2.COLORMAP_PINKPink-Farbtabelle
cv2.COLORMAP_HOTHeiß-Farbtabelle
cv2.COLORMAP_PARULAParula-Farbtabelle
cv2.COLORMAP_MAGMAMagma-Farbtabelle
cv2.COLORMAP_INFERNOInferno-Farbtabelle
cv2.COLORMAP_PLASMAPlasma-Farbtabelle
cv2.COLORMAP_VIRIDISViridis-Farbtabelle
cv2.COLORMAP_CIVIDISCividis-Farbtabelle
cv2.COLORMAP_TWILIGHTDämmerungs-Farbtabelle
cv2.COLORMAP_TWILIGHT_SHIFTEDVerschobene Dämmerungs-Farbtabelle
cv2.COLORMAP_TURBOTurbo-Farbtabelle
cv2.COLORMAP_DEEPGREENDunkelgrün-Farbtabelle

Link to this sectionWie Heatmaps funktionieren#

Die Heatmap-Lösung erweitert die Klasse ObjectCounter. Im ersten verarbeiteten Frame erstellt sie eine leere Intensitätsebene, die der Bildgröße entspricht. Jeder Frame wird dann in zwei Schritten verarbeitet:

  1. YOLO26-Tracking erkennt und verfolgt jedes Objekt im Bild
  2. Für jedes verfolgte Objekt nimmt die Heatmap-Intensität innerhalb eines kreisförmigen Bereichs, der in seiner Bounding Box zentriert ist, zu

Einmal pro Frame wird die akkumulierte Intensitätsebene normalisiert, mit der gewählten Farbskala eingefärbt und mit dem Originalbild gemischt. Das Overlay erscheint, sobald mindestens ein Objekt verfolgt wird; Frames ohne verfolgte Objekte werden ohne das Heatmap-Overlay angezeigt.

Das Ergebnis ist eine dynamische Visualisierung, die sich über die Zeit aufbaut und Verkehrsmuster, Bewegungen von Menschenmengen oder andere räumliche Verhaltensweisen in deinen Videodaten aufdeckt. Wenn eine region festgelegt ist, zählt die Lösung auch Objekte, die diese Region betreten oder verlassen, während die Heatmap erstellt wird.

Link to this sectionFazit#

Die Ultralytics YOLO26 Heatmap-Lösung verwandelt Ergebnisse der Objektverfolgung mit wenigen Zeilen Code in ein intuitives Aktivitäts-Overlay. Um weiterzugehen, kombiniere sie mit Objektzählung, erkunde die anderen Ultralytics-Lösungen oder lies mehr über den zugrunde liegenden Tracking-Modus.

Link to this sectionFAQ#

Link to this sectionWie generiert Ultralytics YOLO26 Heatmaps aus einem Video?#

Ultralytics YOLO26 generiert Heatmaps, indem es Objekte über Videobilder hinweg verfolgt, einen Intensitätswert an der Position jedes verfolgten Objekts akkumuliert, das Ergebnis einfärbt und es mit dem Originalbild mischt. Bereiche, in denen Objekte häufig erscheinen oder verweilen, bauen eine höhere Intensität auf und werden in wärmeren Farben dargestellt. Konfigurationsoptionen findest du im Abschnitt Heatmap()-Argumente.

Link to this sectionWie speichere ich die Heatmap-Ausgabe in einer Videodatei?#

Verwende cv2.VideoWriter von OpenCV und schreibe results.plot_im für jeden verarbeiteten Frame, wie im Hauptbeispiel gezeigt. Das Attribut plot_im enthält den Frame mit dem bereits angewendeten Heatmap-Overlay.

Link to this sectionKann ich Heatmaps mit Objektzählung kombinieren?#

Ja. Übergib ein region-Argument an Heatmap() mit Linien-, Rechteck- oder Polygonpunkten, und die Lösung zählt Objekte, die diese Region betreten oder verlassen, während die Heatmap erstellt wird. Die zurückgegebenen Ergebnisse enthalten in_count, out_count und klassenspezifische Zählungen. Siehe den Leitfaden zur Objektzählung für Details zur Regionskonfiguration.

Link to this sectionWie kann ich nur bestimmte Objektklassen in Heatmaps mit Ultralytics YOLO26 visualisieren?#

Übergib das classes-Argument an Heatmap() mit den Klassenindizes, die du beibehalten möchtest. Zum Beispiel erstellt classes=[0, 2] die Heatmap nur für Personen und Autos (COCO-Klassenindizes 0 und 2):

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(show=True, model="yolo26n.pt", classes=[0, 2])

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        break
    results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()

Link to this sectionWas unterscheidet die Heatmaps von Ultralytics YOLO26 von anderen Datenvisualisierungstools wie denen von OpenCV oder Matplotlib?#

Ultralytics YOLO26 Heatmaps integrieren Objekterkennung, Tracking, Intensitätsakkumulation und Overlay-Rendering in einen einzigen Aufruf, während generische Tools wie OpenCV oder Matplotlib erfordern, dass du diese Pipeline selbst erstellst. Die Lösung verarbeitet Videostreams in Echtzeit und unterstützt persistentes Tracking sowie anpassbare Farbskalen von Haus aus. Details zum zugrunde liegenden Modell findest du auf der YOLO26-Modellseite.

Kommentare