Ultralytics YOLO27:

Analisi con Ultralytics YOLO26#

L'analisi con Ultralytics YOLO26 trasforma i risultati di rilevamento degli oggetti e tracciamento in grafici in tempo reale, così puoi osservare come cambiano i conteggi degli oggetti attraverso i fotogrammi di un video. Questa guida illustra quattro tipi di visualizzazione dei dati — grafici a linee, grafici a barre, grafici a torta e grafici ad area — e mostra come passare dall'uno all'altro con esempi condivisi in Python e CLI.



Watch: How to generate Analytical Graphs using Ultralytics | Line Graphs, Bar Plots, Area and Pie Charts

Esempi visivi#

Grafico a lineeGrafico a barreGrafico a torta
Grafico a linee di analisi YOLO per il tracciamento degli oggettiGrafico a barre di analisi YOLO per i conteggi dei rilevamentiGrafico a torta di analisi YOLO per la distribuzione delle classi

Perché visualizzare i dati dei rilevamenti?#

  • I grafici a linee sono ideali per monitorare i cambiamenti su periodi brevi e lunghi e per confrontare i cambiamenti di più gruppi nello stesso periodo.
  • I grafici a barre sono adatti per confrontare quantità tra categorie diverse e mostrare le relazioni tra una categoria e il suo valore numerico.
  • I grafici a torta sono efficaci per illustrare le proporzioni tra le categorie e mostrare le parti di un insieme.
  • I grafici ad area riempiono il grafico a linee, facilitando la lettura immediata dei conteggi degli oggetti per classe nel tempo.

Genera grafici analitici#

Passa il video alla soluzione Analytics e seleziona un grafico con analytics_type. La soluzione esegue il rilevamento e il tracciamento su ogni fotogramma e genera un grafico 1280×720 (per impostazione predefinita) che puoi scrivere direttamente in un video di output. Passa da "line", "bar", "pie" e "area" con un singolo argomento.

Analisi con Ultralytics YOLO
yolo solutions analytics show=True

# Pass the source
yolo solutions analytics source="path/to/video.mp4"

# Generate the pie chart
yolo solutions analytics analytics_type="pie" show=True

# Generate the bar plots
yolo solutions analytics analytics_type="bar" show=True

# Generate the area plots
yolo solutions analytics analytics_type="area" show=True

Argomenti Analytics#

Ecco una tabella che illustra gli argomenti di Analytics:

ArgomentoTipoPredefinitoDescrizione
modelstrNonePercorso al file del modello Ultralytics YOLO.
analytics_typestr'line'Tipo di grafico, ovvero line, bar, area o pie.
line_widthint2Spessore delle linee per i riquadri, i punti chiave e i conteggi disegnati dalla soluzione.
verboseboolTrueAbilita il registro per fotogramma della soluzione, con forma dell'input, conteggi delle classi e velocità di elaborazione. La chiamata di tracciamento è sempre silenziosa.

Puoi anche utilizzare diversi argomenti di track nella soluzione Analytics.

ArgomentoTipoPredefinitoDescrizione
trackerstr'botsort.yaml'Specifica l'algoritmo di tracciamento da utilizzare. Opzioni integrate: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Imposta la soglia di confidenza per le rilevazioni; valori più bassi consentono di tracciare più oggetti, ma possono includere falsi positivi.
ioufloat0.7Imposta la soglia di Intersezione sull'unione (IoU) per filtrare le rilevazioni sovrapposte.
classeslistNoneFiltra i risultati in base all'indice della classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate.
devicestrNoneSpecifica il dispositivo per l'inferenza (ad es. cpu, cuda:0 o 0). Consente di scegliere tra CPU, una GPU specifica o altri dispositivi di calcolo per l'esecuzione del modello.
imgszint or tuple640Dimensione dell'immagine di inferenza di destinazione: un numero intero per un'immagine quadrata o una coppia (height, width). Le forme vengono regolate in base al passo del modello.
max_detint300Numero massimo di rilevamenti conservati per fotogramma prima del tracciamento, limitando gli oggetti elaborati da una soluzione in scene dense.
quantizeint or strNonePrecisione dell'inferenza: 16 (FP16) o 32/non impostato (FP32) per i modelli PyTorch e TorchScript; altri formati vengono calcolati alla precisione selezionata dal loro artefatto e runtime. Sostituisce il flag deprecato half.

Inoltre, sono supportati i seguenti argomenti di visualizzazione:

ArgomentoTipoPredefinitoDescrizione
showboolFalseSe True, visualizza le immagini o i video annotati in una finestra. È utile per ottenere un feedback visivo immediato durante lo sviluppo o i test.

Conclusioni#

Capire quando e come utilizzare diversi tipi di visualizzazione è fondamentale per un'analisi efficace dei dati. I grafici a linee, i grafici a barre e i grafici a torta sono strumenti fondamentali che possono aiutarti a comunicare la storia dei tuoi dati in modo più chiaro ed efficace. La soluzione Analytics di Ultralytics YOLO26 offre un modo semplificato per generare queste visualizzazioni dai risultati di rilevamento degli oggetti e tracciamento, facilitando l'estrazione di informazioni significative dai tuoi dati visivi.

FAQ#

  • Per creare un grafico a linee usando Analytics di Ultralytics YOLO26, segui questi passaggi:

    1. Carica un modello YOLO26 e apri il file video.
    2. Inizializza la classe Analytics con analytics_type="line".
    3. Itera sui fotogrammi del video, chiamando la soluzione a ogni fotogramma per aggiornare il grafico a linee con dati come i conteggi degli oggetti.
    4. Scrivi results.plot_im in un video di output per salvare il grafico.

    Usa l'esempio Python precedente come punto di partenza: esegue già il ciclo completo sui fotogrammi e un grafico a linee è il valore predefinito di analytics_type.

  • L'utilizzo di Ultralytics YOLO26 per creare grafici a barre offre diversi vantaggi:

    1. Visualizzazione dei dati in tempo reale: integra perfettamente i risultati del rilevamento degli oggetti nei grafici a barre per aggiornamenti dinamici.
    2. Facilità d'uso: API e funzioni semplici rendono facile implementare e visualizzare i dati.
    3. Personalizzazione: personalizza titoli, etichette, colori e altro per soddisfare i tuoi requisiti specifici.
    4. Efficienza: gestisci in modo efficiente grandi quantità di dati e aggiorna i grafici in tempo reale durante l'elaborazione video.

    Per generare un grafico a barre, imposta analytics_type="bar" nell'esempio Python precedente: il resto del ciclo sui fotogrammi è identico. Consulta la sezione Esempi visivi per un'anteprima.

  • Ultralytics YOLO26 è una scelta eccellente per creare grafici a torta perché:

    1. Integrazione con il rilevamento degli oggetti: integra direttamente i risultati del rilevamento degli oggetti nei grafici a torta per ottenere informazioni immediate.
    2. API intuitiva: semplice da configurare e utilizzare con una quantità minima di codice.
    3. Personalizzabile: offre diverse opzioni di personalizzazione per colori, etichette e altro.
    4. Aggiornamenti in tempo reale: gestisci e visualizza i dati in tempo reale, una caratteristica ideale per i progetti di analisi video.

    Per generare un grafico a torta, imposta analytics_type="pie" nell'esempio Python precedente. Per ulteriori informazioni, consulta la sezione Esempi visivi della guida.

  • Sì. Il tracciamento è integrato nella soluzione Analytics: traccia più oggetti in tempo reale e aggiorna il grafico a ogni fotogramma usando i dati degli oggetti tracciati, così grafici a linee, grafici a barre, grafici a torta e grafici ad area riflettono tutti i conteggi in tempo reale. È esattamente ciò che fa il ciclo sui fotogrammi nell'esempio Python precedente. Per informazioni sulla funzionalità di tracciamento sottostante, consulta la sezione Tracking.

  • Ultralytics YOLO26 si distingue da altre soluzioni di rilevamento degli oggetti come OpenCV e TensorFlow per diversi motivi:

    1. Precisione all'avanguardia: YOLO26 offre una precisione superiore nelle attività di rilevamento degli oggetti, segmentazione delle istanze, segmentazione semantica e classificazione.
    2. Facilità d'uso: l'API intuitiva consente un'implementazione e un'integrazione rapide senza dover scrivere molto codice.
    3. Prestazioni in tempo reale: ottimizzato per l'inferenza ad alta velocità, è adatto alle applicazioni in tempo reale.
    4. Applicazioni diversificate: supporta il tracciamento di più oggetti, l'addestramento di modelli personalizzati e l'esportazione in diversi formati come ONNX, TensorRT e CoreML.
    5. Documentazione completa: un'ampia documentazione e risorse del blog guidano gli utenti in ogni fase.

    Per confronti e casi d'uso più dettagliati, esplora il nostro blog di Ultralytics.

Commenti