Yolo Vision Shenzhen
Shenzhen
Iscriviti ora

YOLO12 spiegato: applicazioni e casi d'uso nel mondo reale

Abirami Vina

5 minuti di lettura

26 febbraio 2025

Scopri YOLO12, l'ultimo modello di computer vision! Scopri come la sua architettura incentrata sull'attenzione e la tecnologia FlashAttention migliorano le attività di object detection in tutti i settori

La computer vision è una branca dell'intelligenza artificiale (IA) che aiuta le macchine a comprendere immagini e video. È un campo che sta avanzando a un ritmo incredibile perché i ricercatori e gli sviluppatori di IA spingono costantemente i limiti. La comunità dell'IA mira sempre a rendere i modelli più veloci, intelligenti ed efficienti. Una delle ultime scoperte è YOLO12, l'ultima aggiunta alla serie di modelli YOLO (You Only Look Once), rilasciata il 18 febbraio 2025.

YOLO12 è stato sviluppato da ricercatori dell'Università di Buffalo, SUNY (State University of New York) e dell'Università dell'Accademia cinese delle scienze. Con un nuovo approccio unico, YOLO12 introduce meccanismi di attenzione, consentendo al modello di concentrarsi sulle parti più essenziali di un'immagine piuttosto che elaborare tutto allo stesso modo. 

Dispone inoltre di FlashAttention, una tecnica che velocizza l'elaborazione utilizzando meno memoria, e di un meccanismo di area attention, progettato per imitare il modo in cui gli esseri umani si concentrano naturalmente sugli oggetti centrali.

Questi miglioramenti rendono YOLO12n il 2,1% più preciso di YOLOv10n e YOLO12m l'1,0% più preciso di YOLO11m. Tuttavia, ciò comporta un compromesso: YOLO12n è il 9% più lento di YOLOv10n e YOLO12m è il 3% più lento di YOLO11m.

__wf_reserved_inherit
Fig. 1. Esempio di utilizzo di YOLO12 per rilevare oggetti.

In questo articolo, esploreremo cosa rende YOLO12 diverso, come si confronta con le versioni precedenti e dove può essere applicato.

Il percorso verso il rilascio di YOLO12

La serie di modelli YOLO è una raccolta di modelli di computer vision progettati per il rilevamento di oggetti in tempo reale, il che significa che possono identificare e localizzare rapidamente oggetti in immagini e video. Nel tempo, ogni versione è migliorata in termini di velocità, precisione ed efficienza.

Ad esempio, Ultralytics YOLOv5, rilasciato nel 2020, è diventato ampiamente utilizzato perché era veloce e facile da addestrare e distribuire in modo personalizzato. Successivamente, Ultralytics YOLOv8 ha migliorato questo aspetto offrendo ulteriore supporto per attività di computer vision come la segmentazione di istanze e il tracciamento di oggetti. 

Più recentemente, Ultralytics YOLO11 si è concentrato sul miglioramento dell'elaborazione in tempo reale, mantenendo un equilibrio tra velocità e precisione. Ad esempio, YOLO11m aveva il 22% in meno di parametri rispetto a YOLOv8m, ma offriva comunque prestazioni di rilevamento migliori sul dataset COCO, un benchmark ampiamente utilizzato per valutare i modelli di object detection.

Basandosi su questi progressi, YOLO12 introduce un cambiamento nel modo in cui elabora le informazioni visive. Invece di trattare tutte le parti di un'immagine allo stesso modo, dà priorità alle aree più rilevanti, migliorando la precisione del rilevamento. In parole semplici, YOLO12 si basa sui miglioramenti precedenti con l'obiettivo di essere più preciso.

Caratteristiche principali di YOLO12

YOLO12 introduce diversi miglioramenti che potenziano le attività di computer vision mantenendo intatte le velocità di elaborazione in tempo reale. Ecco una panoramica delle caratteristiche principali di YOLO12:

  • Architettura incentrata sull'attenzione: Invece di trattare ogni parte di un'immagine allo stesso modo, YOLO12 si concentra sulle aree più importanti. Ciò migliora la precisione e riduce l'elaborazione non necessaria, rendendo il rilevamento più nitido ed efficiente, anche in immagini disordinate.
  • FlashAttention: YOLO12 velocizza l'analisi delle immagini utilizzando meno memoria. Con FlashAttention (un algoritmo a efficienza di memoria), ottimizza la gestione dei dati, riducendo lo stress sull'hardware e rendendo le attività in tempo reale più fluide e affidabili.
  • Residual Efficient Layer Aggregation Networks (R-ELAN): YOLO12 organizza i suoi layer in modo più efficiente utilizzando R-ELAN, il che migliora il modo in cui il modello elabora e apprende dai dati. Ciò rende l'addestramento più stabile, il riconoscimento degli oggetti più nitido e i requisiti di calcolo inferiori, quindi funziona in modo efficiente in diversi ambienti.

Per capire come funzionano queste funzionalità nella vita reale, considera un centro commerciale. YOLO12 può aiutare a tracciare i clienti, identificare le decorazioni dei negozi come piante in vaso o cartelli promozionali e individuare oggetti smarriti o abbandonati. 

La sua architettura incentrata sull'attenzione aiuta a concentrarsi sui dettagli più importanti, mentre FlashAttention assicura che elabori tutto rapidamente senza sovraccaricare il sistema. Questo rende più facile per i gestori dei centri commerciali migliorare la sicurezza, organizzare la disposizione dei negozi e migliorare l'esperienza di acquisto complessiva.

__wf_reserved_inherit
Fig. 2. Rilevamento di oggetti in un centro commerciale utilizzando YOLO12.

Tuttavia, YOLO12 presenta anche alcune limitazioni da considerare:

  • Tempi di addestramento più lunghi: A causa della sua architettura, YOLO12 richiede più tempo di addestramento rispetto a YOLO11.
  • Sfide di esportazione: Alcuni utenti potrebbero incontrare difficoltà durante l'esportazione dei modelli YOLO12, in particolare quando li integrano in ambienti di deployment specifici.

Comprendere i benchmark di performance di YOLO12

YOLO12 è disponibile in diverse varianti, ognuna ottimizzata per esigenze diverse. Le versioni più piccole (nano e small) danno priorità alla velocità e all'efficienza, rendendole ideali per i dispositivi mobili e l'edge computing. Le versioni medium e large raggiungono un equilibrio tra velocità e precisione, mentre YOLO12x (extra large) è progettato per applicazioni ad alta precisione, come l'automazione industriale, l'imaging medicale e i sistemi di sorveglianza avanzati.

Con queste variazioni, YOLO12 offre diversi livelli di prestazioni a seconda delle dimensioni del modello. I test di benchmark mostrano che alcune varianti di YOLO12 superano YOLOv10 e YOLO11 in termini di precisione, ottenendo una mean average precision (mAP) più elevata. 

Tuttavia, alcuni modelli, come YOLO12m, YOLO12l e YOLO12x, elaborano le immagini più lentamente di YOLO11, mostrando un compromesso tra accuratezza del rilevamento e velocità. Nonostante ciò, YOLO12 rimane efficiente, richiedendo meno parametri rispetto a molti altri modelli, anche se ne utilizza comunque più di YOLO11. Questo lo rende un'ottima scelta per le applicazioni in cui l'accuratezza è più importante della velocità pura.

__wf_reserved_inherit
Fig. 3. Confronto tra Ultralytics YOLO11 e YOLO12.

Utilizzo di YOLO12 tramite il pacchetto Python Ultralytics

YOLO12 è supportato dal pacchetto Ultralytics Python ed è facile da usare, il che lo rende accessibile sia ai principianti che ai professionisti. Con poche righe di codice, gli utenti possono caricare modelli pre-addestrati, eseguire varie attività di computer vision su immagini e video e anche addestrare YOLO12 su set di dati personalizzati. Il pacchetto Ultralytics Python semplifica il processo, eliminando la necessità di complesse fasi di configurazione.

Ad esempio, ecco i passaggi da seguire per utilizzare YOLO12 per il rilevamento di oggetti:

  • Installa il pacchetto Ultralytics: Innanzitutto, installa il pacchetto Python Ultralytics, che fornisce gli strumenti necessari per eseguire YOLO12 in modo efficiente. Ciò garantisce che tutte le dipendenze siano configurate correttamente.
  • Carica un modello YOLO12 pre-addestrato: Scegli la variante YOLO12 appropriata (nano, small, medium, large o extra large) in base al livello di accuratezza e velocità richiesto per la tua attività.
  • Fornisci un'immagine o un video: Inserisci un file immagine o video che desideri analizzare. YOLO12 può anche elaborare feed video in diretta per il rilevamento in tempo reale.
  • Esecuzione del processo di rilevamento: Il modello scansiona i dati visivi, identifica gli oggetti e posiziona dei riquadri di delimitazione attorno ad essi. Etichetta ogni oggetto rilevato con la sua classe prevista e il punteggio di confidenza.
  • Regola le impostazioni di rilevamento: Puoi anche modificare parametri come le soglie di confidenza per ottimizzare l'accuratezza e le prestazioni del rilevamento.
  • Salvataggio o utilizzo dell'output: L'immagine o il video elaborato, che ora contiene gli oggetti rilevati, può essere salvato o integrato in un'applicazione per ulteriori analisi, automazione o processi decisionali.

Questi passaggi rendono YOLO12 facile da usare per una varietà di applicazioni, dalla sorveglianza e il monitoraggio della vendita al dettaglio all'imaging medicale e ai veicoli autonomi.

Applicazioni pratiche di YOLO12

YOLO12 può essere utilizzato in una varietà di applicazioni reali grazie al suo supporto per l'object detection, l'instance segmentation, la classificazione delle immagini, la stima della posa e l'oriented object detection (OBB). 

__wf_reserved_inherit
Fig 4. YOLO12 supporta attività come il rilevamento di oggetti e la segmentazione di istanze.

Tuttavia, come discusso in precedenza, i modelli YOLO12 danno priorità all'accuratezza rispetto alla velocità, il che significa che impiegano un po' più di tempo per elaborare le immagini rispetto alle versioni precedenti. Questo compromesso rende YOLO12 ideale per applicazioni in cui la precisione è più importante della velocità in tempo reale, come:

  • Imaging medicale: YOLO12 può essere addestrato su misura per rilevare tumori o anomalie in radiografie e risonanze magnetiche con elevata precisione, rendendolo uno strumento utile per medici e radiologi che necessitano di un'analisi precisa delle immagini per la diagnosi.
  • Controllo qualità nella produzione: Può aiutare a identificare i difetti del prodotto durante il processo di produzione, garantendo che solo gli articoli di alta qualità arrivino sul mercato, riducendo al contempo gli sprechi e migliorando l'efficienza.
  • Analisi forense: Le forze dell'ordine possono ottimizzare YOLO12 per analizzare filmati di sorveglianza e raccogliere prove. Nelle indagini penali, la precisione è fondamentale per identificare i dettagli chiave.
  • Agricoltura di precisione: Gli agricoltori possono utilizzare YOLO12 per analizzare la salute delle colture, rilevare malattie o infestazioni di parassiti e monitorare le condizioni del suolo. Valutazioni accurate aiutano a ottimizzare le strategie agricole, portando a una migliore resa e gestione delle risorse.

Inizia con YOLO12

Prima di eseguire YOLO12, è importante assicurarsi che il sistema soddisfi i requisiti necessari.

Tecnicamente, YOLO12 può essere eseguito su qualsiasi GPU (Graphics Processing Unit) dedicata. Di default, non richiede FlashAttention, quindi può funzionare sulla maggior parte dei sistemi GPU senza di esso. Tuttavia, abilitare FlashAttention può essere particolarmente utile quando si lavora con dataset di grandi dimensioni o immagini ad alta risoluzione, in quanto aiuta a prevenire rallentamenti, ridurre l'utilizzo della memoria e migliorare l'efficienza dell'elaborazione. 

Per utilizzare FlashAttention, è necessaria una GPU NVIDIA di una di queste serie: Turing (T4, Quadro RTX), Ampere (RTX 30 series, A30, A40, A100), Ada Lovelace (RTX 40 series) o Hopper (H100, H200).

Tenendo presente l'usabilità e l'accessibilità, il pacchetto Python di Ultralytics non supporta ancora l'inferenza FlashAttention, poiché la sua installazione può essere tecnicamente complessa. Per saperne di più su come iniziare con YOLO12 e ottimizzarne le prestazioni, consulta la documentazione ufficiale di Ultralytics.

Punti chiave

Con l'avanzare della computer vision, i modelli stanno diventando più precisi ed efficienti. YOLO12 migliora le attività di computer vision come il rilevamento di oggetti, la segmentazione di istanze e la classificazione di immagini con elaborazione incentrata sull'attenzione e FlashAttention, migliorando la precisione e ottimizzando l'uso della memoria.

Allo stesso tempo, la computer vision è più accessibile che mai. YOLO12 è facile da usare tramite il pacchetto Python Ultralytics e, con la sua attenzione all'accuratezza rispetto alla velocità, è adatto per l'imaging medicale, le ispezioni industriali e la robotica: applicazioni in cui la precisione è fondamentale.

Sei curioso di AI? Visita il nostro repository GitHub e interagisci con la nostra community. Esplora le innovazioni in settori come l'AI nelle auto a guida autonoma e la computer vision in agricoltura sulle nostre pagine delle soluzioni. Dai un'occhiata alle nostre opzioni di licenza e dai vita ai tuoi progetti Vision AI. 🚀

Costruiamo insieme il futuro
dell'AI!

Inizia il tuo viaggio con il futuro del machine learning

Inizia gratis
Link copiato negli appunti