Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Guide

Migliorare le applicazioni di visione artificiale con le visualizzazioni

Scopri come trasformare i dati delle applicazioni di visione artificiale in grafici di facile comprensione usando il pacchetto Python Ultralytics, per ottenere informazioni più approfondite.

Nuvola LadiNuvola Ladi11 min di lettura
Trasformare i dati di visione artificiale in grafici analitici

Ogni minuto vengono creati enormi volumi di dati, dagli aeroporti e dalle stazioni ferroviarie ai centri commerciali. Con la diffusione dell’IA, molti di questi dati vengono ora analizzati ed elaborati. A volte, però, i risultati dei modelli di IA rendono difficile individuare schemi o cogliere le tendenze a colpo d’occhio. È qui che entra in gioco la visualizzazione dei dati: trasforma output complessi in informazioni chiare e facili da comprendere.

Questo vale soprattutto per le applicazioni di visione artificiale. La visione artificiale è un ramo dell'intelligenza artificiale (AI) che aiuta le macchine a interpretare e comprendere le informazioni visive provenienti dal mondo circostante, come immagini e video. I modelli di AI per la visione, come Ultralytics YOLO11, possono analizzare questi dati visivi per ricavare informazioni; la visualizzazione dei dati permette poi di rappresentare tali informazioni in un formato facile da comprendere.

In parole semplici, la visualizzazione dei dati colma il divario tra dati grezzi e comprensione concreta usando grafici analitici significativi. È importante perché non basta che le macchine eseguano le attività: devono anche raccontarci una storia.

È proprio questa esigenza di raccontare storie a spiegare la crescita della visualizzazione dei dati: si prevede che il mercato raggiungerà i $18,36 miliardi entro il 2030. In precedenza abbiamo visto come la visione artificiale possa offrire preziosi insight aziendali. Oggi faremo un passo avanti e vedremo come generare grafici analitici chiari e significativi per le applicazioni di visione artificiale usando il pacchetto Ultralytics.

Visualizzazione dei dati basata sui risultati di Ultralytics YOLO11

Fig. 1. Un esempio di visualizzazione dei dati basata sui risultati di YOLO11.

Panoramica sulla visualizzazione dei dati nelle applicazioni di visione artificiale#

La visualizzazione dei dati nelle applicazioni di visione artificiale consiste nel trasformare i risultati delle attività di visione artificiale, come il rilevamento e il tracciamento degli oggetti, in grafici o dashboard facili da comprendere. Queste rappresentazioni visive aiutano a individuare schemi e tendenze, soprattutto quando si lavora con grandi volumi di riprese video.

Per esempio, invece di rivedere manualmente ore di video di sorveglianza, un semplice grafico a linee che mostra il numero di auto o persone rilevate nel tempo può evidenziare rapidamente le ore di punta o i periodi insolitamente tranquilli.

Ecco alcuni motivi fondamentali per cui la visualizzazione dei dati è utile:

  • Semplifica i dati complessi: Migliaia di rilevamenti di oggetti possono essere difficili da gestire, ma le visualizzazioni, come i grafici a barre o a torta, facilitano la comprensione del quadro generale, per esempio mostrando quali oggetti compaiono più spesso.
  • Evidenzia le tendenze: I grafici a linee e a barre aiutano a individuare gli schemi nel tempo, per esempio quando e dove tende ad aumentare il flusso di pedoni.
  • Fa risparmiare tempo: Invece di esaminare ogni fotogramma del video, i grafici possono evidenziare rapidamente i dettagli importanti, come improvvisi picchi nell'attività dei veicoli o la comparsa di oggetti insoliti in aree riservate.
  • Migliora la comunicazione: Le rappresentazioni visive facilitano la condivisione delle informazioni con un pubblico non tecnico e aiutano tutti a comprendere meglio i risultati.

Diversi tipi di visualizzazioni dei dati#

Diversi tipi di grafici analitici possono trasformare i risultati della visione artificiale in rappresentazioni chiare e facili da comprendere. Immagina di lavorare a un'applicazione di visione artificiale che rileva persone e veicoli nelle riprese di sorveglianza. In questo caso, un grafico a linee è ideale per mostrare come cambia nel tempo il numero di rilevamenti, per esempio per seguire i picchi di passaggio dei pedoni durante la giornata.

Allo stesso modo, i grafici a barre sono utili per confrontare il numero di oggetti di tipo diverso rilevati, per esempio per vedere se nel video compaiono più auto, biciclette o pedoni. I grafici a torta, invece, mostrano quale percentuale del totale dei rilevamenti rappresenta ciascun tipo di oggetto. Ogni grafico ha una funzione specifica e aiuta a interpretare e condividere più facilmente dati complessi di visione artificiale.

Esempi di grafici analitici

Fig. 2. Esempi di grafici analitici.

Generare grafici analitici per ottenere informazioni utili dalla visione artificiale#

Ora che abbiamo visto che cos'è la visualizzazione dei dati e perché i diversi tipi di grafici analitici sono importanti, approfondiamo come usare la soluzione Analytics di Ultralytics per visualizzare i risultati delle previsioni del tuo modello di visione artificiale. Prima di esaminare il procedimento passo passo, vediamo gli strumenti e le opzioni di configurazione per addestrare e usare il pacchetto Ultralytics e modelli come YOLO11.

Il pacchetto Ultralytics per Python semplifica l'addestramento dei modelli, il rilevamento degli oggetti, l'esecuzione delle previsioni e la visualizzazione dei risultati. Per iniziare, ti serve un ambiente di programmazione. Ecco tre semplici opzioni:

  • Interfaccia a riga di comando (CLI): è uno strumento di base, solo testuale, in cui puoi digitare comandi per eseguire il codice. Non dispone di un’interfaccia visiva e si usa digitando istruzioni in un terminale o nel prompt dei comandi.
  • Jupyter Notebooks: è un ambiente di programmazione interattivo in cui puoi scrivere, eseguire e testare piccoli blocchi di codice (chiamati "celle"), uno alla volta. I risultati vengono mostrati direttamente sotto ogni cella, così è facile capire cosa succede passo dopo passo. È particolarmente utile per imparare e sperimentare.
  • Google Colab: è una versione gratuita di Jupyter Notebooks basata sul cloud e utilizzabile dal browser. Non richiede alcuna configurazione sul computer e offre accesso gratuito alle GPU per elaborazioni più rapide.

Questi strumenti sono ottimi per iniziare rapidamente, ma puoi anche integrare Ultralytics in ambienti di sviluppo integrati (IDEs), come Visual Studio Code (VS Code), o nelle pipeline di produzione. Per altre opzioni, consulta la documentazione ufficiale di Ultralytics.

Passaggio 1: configurazione dell'ambiente#

Dopo aver scelto l'ambiente che preferisci, il passaggio successivo consiste nel configurarlo per eseguire le previsioni e visualizzare i risultati. Puoi usare uno qualsiasi degli ambienti menzionati sopra, in base a quello con cui ti trovi più a tuo agio.

Se lavori in Google Colab, tieni presente che per impostazione predefinita usa una CPU, che può rallentare le prestazioni. Per velocizzare l'elaborazione, passa a una GPU aprendo il menu "Runtime", selezionando "Change runtime type" e impostando l'acceleratore hardware su GPU (idealmente una T4).

Per preparare l'ambiente, dovrai installare il pacchetto Ultralytics per Python usando il comando riportato di seguito. Negli strumenti basati su notebook, come Colab o Jupyter, ricordati di aggiungere un punto esclamativo (!) prima del comando.

pip install ultralytics

Passaggio 2: scaricare un file video#

Ora ci serve un video su cui lavorare. Puoi scaricarne facilmente uno da un sito di video stock gratuiti come Pexels. Scegli un video che includa oggetti che Ultralytics YOLO11 è in grado di rilevare. Poiché il modello è preaddestrato sul dataset COCO, può riconoscere oggetti comuni come persone, auto e biciclette.

Per questo tutorial useremo un video della gestione dei bagagli in un affollato terminal aeroportuale. Puoi usare lo stesso video o sceglierne un altro adatto al tuo progetto.

Un fotogramma del video di input che mostra la gestione dei bagagli in un terminal aeroportuale

Fig. 3. Un fotogramma del video di input che mostra la gestione dei bagagli in un terminal aeroportuale.

Passaggio 3: importare i pacchetti#

Ora possiamo importare le librerie necessarie e caricare il video di input.

Inizieremo importando OpenCV (cv2), una libreria molto usata per lavorare con immagini e video nella visione artificiale. Importeremo anche la libreria Ultralytics, che ci aiuta a eseguire il rilevamento degli oggetti e a generare analisi dal video.

Poi proveremo ad aprire il file video specificandone il percorso. Ricordati di sostituire "path/to/video.mp4" con il percorso effettivo del file video che hai scaricato.

Inoltre, lo snippet di codice qui sotto include un semplice controllo per verificare che il video venga caricato correttamente. Se il percorso è errato o il file è danneggiato, il programma si interromperà e mostrerà un messaggio di errore: "Error reading video file."

import cv2
from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

Passaggio 4: preparare il writer video#

Poi configureremo un writer video per salvare il risultato. Quando eseguiremo le analisi, questa parte del codice creerà un nuovo file video che registrerà i grafici aggiornati generati da ogni fotogramma del video originale.

Nello snippet di codice qui sotto, estraiamo innanzitutto alcune proprietà chiave dal video di input: larghezza, altezza e fotogrammi al secondo (fps). Questi valori vengono ricavati direttamente dal video e convertiti in numeri interi per assicurarsi che abbiano il formato corretto per la scrittura del risultato.

Poi usiamo la funzione cv2.VideoWriter per creare un nuovo file video, chiamato "analytics_output.avi" (puoi rinominarlo come preferisci). Il video viene salvato in formato MJPG, un metodo comune di compressione video. La risoluzione del risultato è impostata su 1280×720 pixel, indipendentemente dalle dimensioni del video originale.

w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
out = cv2.VideoWriter(
    "analytics_output.avi",
    cv2.VideoWriter_fourcc(*"MJPG"),
    fps,
    (1280, 720),
)

Passaggio 5: configurare la soluzione Analytics di Ultralytics#

Ora configureremo la soluzione Analytics di Ultralytics per generare grafici dal video. Puoi scegliere come visualizzare i dati, ad esempio con un grafico a linee, a torta, ad area o a barre, e quale modello YOLO usare. In questo esempio useremo il modello leggero YOLO11n ("yolo11n.pt") e mostreremo i risultati con un grafico ad area.

analytics = solutions.Analytics(
    show=True,
    analytics_type="area",
    model="yolo11n.pt",
)

Passaggio 6: elaborare il video di input#

L'ultima parte del codice esegue un ciclo che elabora il video un fotogramma alla volta. Ogni fotogramma viene passato allo strumento di analisi, che aggiorna il grafico in tempo reale. Il grafico aggiornato viene quindi scritto nel video di output. Se non è possibile leggere un fotogramma, il ciclo si interrompe. Una volta elaborati tutti i fotogrammi, il video viene salvato e tutte le finestre aperte vengono chiuse.

frame_count = 0
while cap.isOpened():
    success, im0 = cap.read()
    if success:
        frame_count += 1
        results = analytics(im0, frame_count)
        out.write(results.plot_im)
    else:
        break

cap.release()
out.release()
cv2.destroyAllWindows()

Passaggio 7: assemblare il tutto#

Infine, mettiamo insieme tutti gli elementi. Bastano poche righe di codice in più per generare due video di output: uno mostra i risultati del rilevamento degli oggetti di Ultralytics YOLO11 con riquadri di delimitazione ed etichette, mentre l'altro mostra i grafici analitici in tempo reale.

A questo scopo, configureremo due istanze di VideoWriter: una per salvare il video delle previsioni e l'altra per le analisi. Questa versione del codice include sia il tracciamento degli oggetti sia la generazione di grafici, così potrai vedere i risultati del rilevamento insieme alle informazioni visive.

Ecco il codice completo, con esempi dei risultati delle previsioni e delle analisi.

import cv2
from ultralytics import YOLO, solutions

# Carica il modello e il video
model = YOLO('yolo11n.pt')
cap = cv2.VideoCapture('path/to/video.mp4')
assert cap.isOpened(), "Error opening video"

# Ottieni le proprietà
w, h = int(cap.get(3)), int(cap.get(4))
fps = cap.get(5)
analytics_res = (1280, 720)

# Writer per i video delle previsioni e delle analisi
out_pred = cv2.VideoWriter('output_predictions.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, (w, h))
out_ana = cv2.VideoWriter('output_analytics.avi', cv2.VideoWriter_fourcc(*'MJPG'), fps, analytics_res)

# Configurazione delle analisi
analytics = solutions.Analytics(show=True, analytics_type="area", model='yolo11n.pt')

# Elabora i fotogrammi
frame_count = 0
while cap.isOpened():
    ret, frame = cap.read()
    if not ret:
        break
    frame_count += 1
    pred_frame = model.track(frame, persist=True)[0].plot()
    out_pred.write(pred_frame)
    resized = cv2.resize(pred_frame, analytics_res)
    out_ana.write(analytics(resized, frame_count).plot_im)

cap.release(), out_pred.release(), out_ana.release(), cv2.destroyAllWindows()

Se il codice qui sopra viene eseguito correttamente, genererà due video di output. Il file “output_predictions.avi” mostrerà i risultati del rilevamento degli oggetti con riquadri di delimitazione ed etichette, mentre “output_analytics.avi” visualizzerà i grafici di analisi in tempo reale basati sui rilevamenti.

Un fotogramma del video di output del rilevamento degli oggetti

Fig. 4. Un fotogramma del file “output_predictions.avi”.

Ecco un fotogramma del risultato delle analisi basate sulle previsioni. Con il grafico ad area possiamo ricavare informazioni, per esempio sulle variazioni nel tempo del numero di valigie, come il picco intorno al fotogramma 268, che indica un movimento o un'attività delle valigie in quella parte del video.

Previsioni di Ultralytics YOLO11 visualizzate con un grafico ad area

Fig. 5. Previsioni di Ultralytics YOLO11 visualizzate con un grafico ad area.

Usare i grafici nelle applicazioni di visione artificiale del mondo reale#

Ecco alcune applicazioni di visione artificiale del mondo reale in cui la visualizzazione dei dati ha un impatto significativo:

  • Assistenza sanitaria: I sistemi di visione artificiale possono monitorare in tempo reale l’attività dei pazienti, gli spostamenti del personale e l’uso delle apparecchiature. In questo modo si generano grandi quantità di dati visivi che, una volta visualizzati, possono rivelare schemi, come i picchi di occupazione dei pazienti o i ritardi nelle risposte.
  • Commercio al dettaglio ed e-commerce: L'AI per la visione può essere usata per tracciare gli spostamenti dei clienti, il tempo che trascorrono davanti agli scaffali e le interazioni con i prodotti. Le analisi visive, per esempio con grafici a barre o a torta, possono evidenziare le aree del negozio o gli articoli che attirano più attenzione, aiutando i rivenditori a ottimizzare il posizionamento dei prodotti e ad aumentare le conversioni.
  • Produzione: Le telecamere dotate di modelli di visione artificiale possono monitorare le linee di assemblaggio per rilevare difetti, violazioni delle norme di sicurezza o lo stato delle attrezzature. La visualizzazione dei dati può mostrare le tendenze relative ai tipi di difetti più comuni o evidenziare i periodi con il maggior numero di errori, consentendo di prendere decisioni più rapidamente e di effettuare la manutenzione preventiva.

Punti chiave#

Con il pacchetto Ultralytics puoi trasformare facilmente le riprese video in grafici chiari e informativi, che mostrano cosa sta succedendo, per esempio tracciando quante persone o quanti oggetti compaiono nel tempo. Invece di rivedere manualmente ore di video, puoi generare riepiloghi visivi che evidenziano schemi e tendenze chiave, facilitando interventi tempestivi. Che si tratti di ospedali, negozi o stabilimenti di produzione, questi grafici trasformano i risultati complessi dell'AI in informazioni che tutti possono comprendere e utilizzare.

Vuoi saperne di più sull’IA? Esplora il nostro repository GitHub, entra in contatto con la nostra community e scopri le nostre opzioni di licenza per dare il via al tuo progetto di visione artificiale. Scopri di più su innovazioni come l’IA nella produzione e la visione artificiale nella logistica nelle nostre pagine dedicate alle soluzioni.

Scritto da

Nuvola Ladi
Nuvola Ladi

Digital Content Manager · Ultralytics

Nuvola Ladi è Digital Content Manager presso Ultralytics, dove crea contenuti dedicati alla Vision AI e a Ultralytics YOLO e rappresenta l'azienda a eventi di settore come la PyTorch Conference 2025. Vive in Spagna e ha conseguito un master in Visual and Digital Media presso IE University. Prima di entrare in Ultralytics, ha ricoperto diversi ruoli presso organizzazioni tra cui XVA Gallery & Hotel e Rolex.

Commenti

Fai una domanda, condividi i tuoi risultati o aiuta qualcun altro.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning