Ultralytics YOLO27:
Get Started

Analisi con Ultralytics YOLO26#

Le analisi con Ultralytics YOLO26 trasformano i risultati del rilevamento degli oggetti e del tracciamento in grafici in tempo reale, così puoi osservare come cambiano i conteggi degli oggetti, fotogramma per fotogramma. 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 da uno all'altro usando esempi condivisi per Python e CLI.



Guarda: Come generare grafici analitici con Ultralytics | Grafici a linee, a barre, ad area e a torta

Esempi visivi#

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

Perché visualizzare i dati di rilevamento?#

  • I grafici a linee sono ideali per monitorare le variazioni su periodi brevi e lunghi e per confrontare l'andamento 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 categorie e mostrare le parti di un insieme.
  • I grafici ad area riempiono lo spazio sotto il grafico a linee, rendendo più immediata la lettura dei conteggi degli oggetti per classe nel tempo.

Genera grafici di analisi#

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 disegna un grafico da 1280×720 (per impostazione predefinita), che puoi scrivere direttamente in un video di output. Passa da "line" a "bar", "pie" e "area" con un solo 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 di Analytics#

Ecco una tabella che riepiloga gli argomenti di Analytics:

ArgomentoTipoPredefinitoDescrizione
modelstrNonePercorso a un file modello Ultralytics YOLO.
analytics_typestr'line'Tipo di grafico, ad es. line, bar, area o pie.
figsizetuple[float, float](12.8, 7.2)Dimensioni della figura in pollici per i grafici Analytics; (12.8, 7.2) genera un fotogramma da 1280×720.
line_widthint2Spessore delle linee dei riquadri, dei punti chiave e dei conteggi disegnati dalla soluzione.
verboseboolTrueAbilita il log per frame della soluzione, con forma dell'input, conteggi per classe e velocità di elaborazione. La chiamata di tracking è sempre silenziosa.

Puoi anche usare diversi argomenti track nella soluzione Analytics.

ArgomentoTipoPredefinitoDescrizione
trackerstr'tracktrack.yaml'Specifica l'algoritmo di tracciamento da usare. 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 destinazione per l'inferenza: un intero per un'immagine quadrata o una coppia (height, width). Le forme vengono adattate allo stride del modello.
max_detint300Numero massimo di rilevazioni da mantenere per fotogramma prima del tracciamento, che limita gli oggetti elaborati da una soluzione nelle scene dense.
quantizeint or strNonePrecisione dell’inferenza: 16 (FP16) oppure 32/unset (FP32) per i modelli PyTorch e TorchScript quando non si usa la CPU; gli altri formati usano la precisione selezionata dal rispettivo artefatto e ambiente di esecuzione. Sostituisce l’argomento deprecato half.

Sono inoltre supportati i seguenti argomenti di visualizzazione:

ArgomentoTipoPredefinitoDescrizione
showboolFalseSe True, mostra le immagini o i video annotati in una finestra. Utile per ottenere un riscontro visivo immediato durante lo sviluppo o i test.

Conclusione#

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

Domande frequenti#

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

    1. Carica un modello YOLO26 e apri il file video.
    2. Inizializza la classe Analytics con analytics_type="line".
    3. Scorri i 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 come punto di partenza l'esempio Python qui sopra: esegue già l'intero ciclo sui fotogrammi e il grafico a linee è il analytics_type predefinito.

  • Usare Ultralytics YOLO26 per creare grafici a barre offre diversi vantaggi:

    1. Visualizzazione dei dati in tempo reale: integra senza problemi i risultati del rilevamento degli oggetti nei grafici a barre per aggiornarli dinamicamente.
    2. Facilità d'uso: API e funzioni semplici rendono immediata l'implementazione e la visualizzazione dei dati.
    3. Personalizzazione: personalizza titoli, etichette, colori e altro per adattarli alle tue esigenze specifiche.
    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 qui sopra: il resto del ciclo sui fotogrammi è identico. Consulta la sezione Esempi visivi per un'anteprima.

  • Ultralytics YOLO26 è un'ottima scelta 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 usare con poche righe 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 soluzione ideale per i progetti di analisi video.

    Per generare un grafico a torta, imposta analytics_type="pie" nell'esempio Python qui sopra. 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 ogni 30 fotogrammi usando i dati degli oggetti tracciati, così grafici a linee, a barre, a torta e ad area riflettono tutti i conteggi aggiornati. È proprio ciò che fa il ciclo sui fotogrammi nell'esempio Python qui sopra. Per informazioni sulla funzionalità di tracciamento sottostante, consulta la sezione Tracciamento.

  • 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 inferenze ad alta velocità, è adatto alle applicazioni in tempo reale.
    4. Ampia varietà di applicazioni: supporta il tracciamento di più oggetti, l'addestramento di modelli personalizzati e l'esportazione in formati diversi come ONNX, TensorRT e CoreML.
    5. Documentazione completa: ampia documentazione e risorse del blog per guidare gli utenti in ogni fase.

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

Commenti