Visualizzazione avanzata dei dati: Heatmap con Ultralytics YOLO26 🚀

Introduzione alle heatmap

Apri le heatmap in Colab

Una heatmap generata con Ultralytics YOLO26 trasforma dati complessi in una matrice vibrante codificata a colori. Questo strumento visivo impiega uno spettro di colori per rappresentare valori di dati variabili, dove le tonalità più calde indicano intensità maggiori e i toni più freddi indicano valori inferiori. Le heatmap eccellono nella visualizzazione di pattern, correlazioni e anomalie complessi, offrendo un approccio accessibile e coinvolgente all'interpretazione dei dati in diversi domini.



Watch: Heatmaps using Ultralytics YOLO26

Perché scegliere le heatmap per l'analisi dei dati?

  • Visualizzazione intuitiva della distribuzione dei dati: Le heatmap semplificano la comprensione della concentrazione e della distribuzione dei dati, convertendo set di dati complessi in formati visivi di facile comprensione.
  • Rilevamento efficiente dei pattern: Visualizzando i dati in formato heatmap, diventa più facile individuare trend, cluster e outlier, facilitando analisi e insight più rapidi.
  • Analisi spaziale e processo decisionale avanzati: Le heatmap sono fondamentali per illustrare le relazioni spaziali, aiutando nei processi decisionali in settori come la business intelligence, gli studi ambientali e la pianificazione urbana.

Applicazioni nel mondo reale

TrasportiVendita al dettaglio
Heatmap trasporti Ultralytics YOLO26Heatmap vendita al dettaglio Ultralytics YOLO26
Heatmap trasporti Ultralytics YOLO26Heatmap vendita al dettaglio Ultralytics YOLO26
Heatmap con 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)]"

Argomenti di Heatmap()

Ecco una tabella con gli argomenti di Heatmap:

ArgomentoTipoPredefinitoDescrizione
modelstrNonePercorso verso un file modello Ultralytics YOLO.
colormapintcv2.COLORMAP_DEEPGREENMappa colori da utilizzare per la mappa di calore.
show_inboolTrueFlag per controllare se visualizzare i conteggi in entrata sul flusso video.
show_outboolTrueFlag per controllare se visualizzare i conteggi in uscita sul flusso video.
regionlist'[(20, 400), (1260, 400)]'Elenco di punti che definiscono la regione di conteggio.

Puoi anche applicare diversi argomenti track nella soluzione Heatmap.

ArgomentoTipoPredefinitoDescrizione
trackerstr'botsort.yaml'Specifica l'algoritmo di tracciamento da utilizzare, ad esempio bytetrack.yaml o botsort.yaml.
conffloat0.1Imposta la soglia di confidenza per i rilevamenti; valori più bassi consentono il tracciamento di più oggetti ma potrebbero includere falsi positivi.
ioufloat0.7Imposta la soglia di Intersection over Union (IoU) per filtrare i rilevamenti sovrapposti.
classeslistNoneFiltra i risultati per indice di classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate.
verboseboolTrueControlla la visualizzazione dei risultati di tracciamento, fornendo un output visivo degli oggetti tracciati.
devicestrNoneSpecifica il dispositivo per l'inferenza (ad esempio cpu, cuda:0 o 0). Consente agli utenti di scegliere tra CPU, una specifica GPU o altri dispositivi di calcolo per l'esecuzione del modello.

Inoltre, gli argomenti di visualizzazione supportati sono elencati di seguito:

ArgomentoTipoPredefinitoDescrizione
showboolFalseSe True, visualizza le immagini o i video annotati in una finestra. Utile per un feedback visivo immediato durante lo sviluppo o il test.
line_widthint or NoneNoneSpecifica lo spessore della linea dei riquadri di delimitazione. Se None, lo spessore viene regolato automaticamente in base alla dimensione dell'immagine. Fornisce personalizzazione visiva per maggiore chiarezza.
show_confboolTrueVisualizza il punteggio di confidenza per ogni rilevamento accanto all'etichetta. Offre informazioni sulla certezza del modello per ogni rilevamento.
show_labelsboolTrueVisualizza le etichette per ogni rilevamento nell'output visivo. Fornisce una comprensione immediata degli oggetti rilevati.

COLORMAP per Heatmap

Nome della colormapDescrizione
cv::COLORMAP_AUTUMNMappa colori Autumn
cv::COLORMAP_BONEMappa colori Bone
cv::COLORMAP_JETMappa colori Jet
cv::COLORMAP_WINTERMappa colori Winter
cv::COLORMAP_RAINBOWMappa colori Rainbow
cv::COLORMAP_OCEANMappa colori Ocean
cv::COLORMAP_SUMMERMappa colori Summer
cv::COLORMAP_SPRINGMappa colori Spring
cv::COLORMAP_COOLMappa colori Cool
cv::COLORMAP_HSVMappa colori HSV (Hue, Saturation, Value)
cv::COLORMAP_PINKMappa colori Pink
cv::COLORMAP_HOTMappa colori Hot
cv::COLORMAP_PARULAMappa colori Parula
cv::COLORMAP_MAGMAMappa colori Magma
cv::COLORMAP_INFERNOMappa colori Inferno
cv::COLORMAP_PLASMAMappa colori Plasma
cv::COLORMAP_VIRIDISMappa colori Viridis
cv::COLORMAP_CIVIDISMappa colori Cividis
cv::COLORMAP_TWILIGHTMappa colori Twilight
cv::COLORMAP_TWILIGHT_SHIFTEDMappa colori Twilight (spostata)
cv::COLORMAP_TURBOMappa colori Turbo
cv::COLORMAP_DEEPGREENMappa colori Deep Green

Queste mappe colori sono comunemente usate per visualizzare dati con diverse rappresentazioni cromatiche.

Come funzionano le heatmap in Ultralytics YOLO26

La soluzione Heatmap in Ultralytics YOLO26 estende la classe ObjectCounter per generare e visualizzare pattern di movimento nei flussi video. All'inizializzazione, la soluzione crea un livello heatmap vuoto che viene aggiornato man mano che gli oggetti si muovono attraverso il fotogramma.

Per ogni oggetto rilevato, la soluzione:

  1. Traccia l'oggetto tra i fotogrammi utilizzando le funzionalità di tracking di YOLO26
  2. Aggiorna l'intensità della heatmap nella posizione dell'oggetto
  3. Applica una colormap selezionata per visualizzare i valori di intensità
  4. Sovrappone la heatmap colorata al fotogramma originale

Il risultato è una visualizzazione dinamica che si accumula nel tempo, rivelando pattern di traffico, movimenti della folla o altri comportamenti spaziali nei tuoi dati video.

FAQ

Come genera le heatmap Ultralytics YOLO26 e quali sono i loro vantaggi?

Ultralytics YOLO26 genera heatmap trasformando dati complessi in una matrice codificata a colori in cui diverse tonalità rappresentano le intensità dei dati. Le heatmap rendono più facile visualizzare pattern, correlazioni e anomalie nei dati. Le tonalità più calde indicano valori più alti, mentre i toni più freddi rappresentano valori più bassi. I vantaggi principali includono una visualizzazione intuitiva della distribuzione dei dati, un rilevamento efficiente dei pattern e un'analisi spaziale migliorata per il processo decisionale. Per ulteriori dettagli e opzioni di configurazione, fai riferimento alla sezione Configurazione Heatmap.

Posso usare Ultralytics YOLO26 per eseguire il tracking degli oggetti e generare una heatmap simultaneamente?

Sì, Ultralytics YOLO26 supporta contemporaneamente il tracking degli oggetti e la generazione di heatmap. Questo può essere ottenuto tramite la sua soluzione Heatmap integrata con modelli di tracking degli oggetti. Per farlo, devi inizializzare l'oggetto heatmap e utilizzare le funzionalità di tracking di YOLO26. Ecco un semplice esempio:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, show=True, model="yolo26n.pt")

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

Per ulteriori indicazioni, controlla la pagina Modalità Tracking.

Cosa rende le heatmap di Ultralytics YOLO26 diverse da altri strumenti di visualizzazione dei dati come quelli di OpenCV o Matplotlib?

Le heatmap di Ultralytics YOLO26 sono progettate specificamente per l'integrazione con i suoi modelli di object detection e tracking, fornendo una soluzione end-to-end per l'analisi dei dati in tempo reale. A differenza degli strumenti di visualizzazione generici come OpenCV o Matplotlib, le heatmap di YOLO26 sono ottimizzate per le prestazioni e l'elaborazione automatizzata, supportando funzionalità come il tracking persistente, la regolazione del fattore di decadimento e la sovrapposizione video in tempo reale. Per maggiori informazioni sulle caratteristiche uniche di YOLO26, visita l'Introduzione a Ultralytics YOLO26.

Come posso visualizzare solo classi di oggetti specifiche nelle heatmap utilizzando Ultralytics YOLO26?

Puoi visualizzare classi di oggetti specifiche specificando le classi desiderate nel metodo track() del modello YOLO. Ad esempio, se vuoi visualizzare solo auto e persone (supponendo che i loro indici di classe siano 0 e 2), puoi impostare il parametro classes di conseguenza.

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

Perché le aziende dovrebbero scegliere Ultralytics YOLO26 per la generazione di heatmap nell'analisi dei dati?

Ultralytics YOLO26 offre una perfetta integrazione di object detection avanzata e generazione di heatmap in tempo reale, rendendolo una scelta ideale per le aziende che desiderano visualizzare i dati in modo più efficace. I vantaggi chiave includono una visualizzazione intuitiva della distribuzione dei dati, un rilevamento efficiente dei pattern e un'analisi spaziale migliorata per un migliore processo decisionale. Inoltre, le funzionalità all'avanguardia di YOLO26 come il tracking persistente, le colormap personalizzabili e il supporto per vari formati di esportazione lo rendono superiore ad altri strumenti come TensorFlow e OpenCV per un'analisi dei dati completa. Scopri di più sulle applicazioni aziendali su Piani Ultralytics.

Commenti