Ultralytics YOLO27:

Confronto tra YOLOv10 e YOLOv7#

La rapida evoluzione della computer vision negli ultimi anni ha prodotto architetture sempre più efficienti per le applicazioni in tempo reale. Il confronto tra YOLOv10 e YOLOv7 evidenzia una fase di transizione cruciale in questa evoluzione. Mentre YOLOv7 ha introdotto strategie di addestramento e tecniche di scalabilità architetturale altamente efficaci, YOLOv10 ha rivoluzionato il deployment eliminando la consolidata dipendenza dalla Soppressione dei Massimi Non (NMS).

Entrambi i modelli hanno ampliato i confini del rilevamento di oggetti al momento del rispettivo rilascio, ma il moderno ecosistema Ultralytics e l'introduzione di modelli di nuova generazione come YOLO26 offrono workflow di gran lunga superiori per i professionisti dell'AI di oggi.

Profili e origini dei modelli#

Comprendere le origini di questi modelli fornisce un contesto prezioso sulle scelte relative alla loro progettazione architetturale e sulla ricerca accademica che li guida.

Dettagli di YOLOv10#

Scopri di più su YOLOv10

Dettagli di YOLOv7#

Scopri di più su YOLOv7

Innovazioni architetturali#

L'approccio di YOLOv7#

Rilasciato nel 2022, YOLOv7 si è concentrato fortemente sull'ottimizzazione dei percorsi del gradiente. Ha introdotto la Rete di Aggregazione dei Livelli Efficienti Estesa (E-ELAN), che ha consentito al modello di apprendere caratteristiche più diversificate senza distruggere il percorso originale del gradiente. Inoltre, gli autori hanno implementato una metodologia del tipo "insieme addestrabile di vantaggi gratuiti", utilizzando tecniche di riparametrizzazione durante l'addestramento che potevano essere fuse durante l'inferenza per mantenere elevate velocità di esecuzione. Nonostante queste notevoli ottimizzazioni, YOLOv7 dipendeva ancora fortemente dalla NMS per il post-processing, creando una latenza variabile durante l'analisi di scene dense.

La svolta di YOLOv10#

YOLOv10 ha affrontato direttamente il collo di bottiglia della NMS. Introducendo assegnazioni doppie coerenti durante l'addestramento, il team della Tsinghua University ha abilitato il rilevamento end-to-end senza NMS. Questo approccio a due teste utilizza un ramo con assegnazioni uno-a-molti per segnali di supervisione ricchi durante l'addestramento e un altro ramo con assegnazioni uno-a-uno per l'inferenza senza NMS. Questo cambiamento architetturale garantisce una latenza di inferenza costante e ultra-bassa, adatta all'analisi video ad alta velocità. Inoltre, YOLOv10 utilizza una progettazione del modello guidata globalmente dall'efficienza e dall'accuratezza, eliminando la ridondanza computazionale presente nelle generazioni precedenti.

Impatto del post-processing

La rimozione del post-processing NMS non solo accelera l'inferenza, ma semplifica significativamente il deployment su hardware AI edge, come gli acceleratori AI e le NPU, sui quali le operazioni NMS personalizzate sono notoriamente difficili da compilare.

Confronto delle prestazioni#

Confrontando le metriche grezze sul dataset MS COCO, il divario generazionale diventa evidente. YOLOv10 raggiunge un compromesso molto più favorevole tra numero di parametri, requisiti computazionali e accuratezza.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Come mostrato sopra, YOLOv10x offre un mAP superiore, pari al 54,4%, rispetto al 53,1% di YOLOv7x, utilizzando al contempo circa il 20% di parametri in meno. Inoltre, i modelli YOLOv10 leggeri (Nano e Small) offrono velocità eccezionali di deployment con TensorRT, rendendoli particolarmente interessanti per il deployment su dispositivi mobili.

Il vantaggio dell'ecosistema Ultralytics#

Sebbene lo studio degli articoli sulle architetture sia istruttivo, lo sviluppo moderno della computer vision si basa su framework solidi e ben mantenuti. Selezionare un modello supportato da Ultralytics offre un enorme vantaggio agli sviluppatori che desiderano passare rapidamente dal prototipo alla produzione.

Sviluppo semplificato#

È possibile accedere sia a YOLOv10 sia a YOLOv7 tramite il pacchetto Python standard di Ultralytics. Questo offre una Facilità d'uso senza pari, sostituendo migliaia di righe di codice boilerplate con un'API semplice e intuitiva. Inoltre, i modelli Ultralytics YOLO richiedono una quantità di memoria CUDA significativamente inferiore durante l'addestramento rispetto alle architetture Transformer più pesanti, consentendo l'utilizzo di batch size maggiori su hardware di livello consumer.

Versatilità senza pari#

Mentre i repository più datati si concentrano spesso esclusivamente sul rilevamento dei riquadri, il framework Ultralytics integrato supporta senza soluzione di continuità un'enorme varietà di attività. Che tu stia eseguendo la segmentazione delle istanze, la stima della posa o il rilevamento di riquadri orientati (OBB), il workflow rimane identico.

Esempio di codice: workflow di addestramento coerenti#

Il seguente frammento di codice mostra il processo di addestramento continuo, che gestisce automaticamente l'aumento dei dati e lo scheduling del learning rate:

from ultralytics import YOLO

# Load the desired model (YOLOv10, YOLOv7, or the recommended YOLO26)
model = YOLO("yolo26n.pt")

# Train the model effortlessly on your dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)

# Export to ONNX format for rapid deployment
model.export(format="onnx")

Casi d'uso e raccomandazioni#

La scelta tra YOLOv10 e YOLOv7 dipende dai requisiti specifici del tuo progetto, dai vincoli di deployment e dalle preferenze relative all'ecosistema.

Quando scegliere YOLOv10#

YOLOv10 è una scelta ottimale per:

  • Rilevamento in tempo reale senza NMS: applicazioni che traggono vantaggio dal rilevamento end-to-end senza soppressione non massima, riducendo la complessità della distribuzione.
  • Compromesso equilibrato tra velocità e accuratezza: progetti che richiedono un equilibrio efficace tra velocità di inferenza e accuratezza del rilevamento su diverse dimensioni del modello.
  • Applicazioni a latenza coerente: scenari di distribuzione in cui sono fondamentali tempi di inferenza prevedibili, come la robotica o i sistemi autonomi.

Quando scegliere YOLOv7#

YOLOv7 è consigliato per:

  • Benchmark accademici: riprodurre i risultati dello stato dell'arte del 2022 o studiare gli effetti di E-ELAN e delle tecniche dell'insieme addestrabile di vantaggi gratuiti.
  • Ricerca sulla riparametrizzazione: analizzare convoluzioni riparametrizzate pianificate e strategie di scalabilità composta dei modelli.
  • Pipeline personalizzate esistenti: progetti con pipeline fortemente personalizzate costruite attorno all'architettura specifica di YOLOv7, che non possono essere facilmente rifattorizzate.

Quando scegliere Ultralytics (YOLO26)#

Per la maggior parte dei nuovi progetti, Ultralytics YOLO26 offre la migliore combinazione di prestazioni ed esperienza per gli sviluppatori:

  • Deployment edge senza NMS: applicazioni che richiedono un'inferenza coerente e a bassa latenza senza la complessità della post-elaborazione con Soppressione non massima.
  • Ambienti esclusivamente CPU: dispositivi privi di accelerazione GPU dedicata, dove l'inferenza su CPU fino al 43% più veloce di YOLO26 offre un vantaggio decisivo.
  • Rilevamento di oggetti piccoli: scenari complessi come le immagini aeree riprese da droni o l'analisi di sensori IoT, in cui ProgLoss e STAL migliorano significativamente l'accuratezza sugli oggetti di piccole dimensioni.

Il nuovo standard: introduzione di YOLO26#

Sebbene YOLOv10 abbia rappresentato un enorme passo avanti nel 2024, il panorama della computer vision evolve a una velocità incredibile. Per ogni nuovo sviluppo, consigliamo vivamente il modello di ultima generazione: Ultralytics YOLO26. Rilasciato a gennaio 2026, rappresenta il vertice assoluto dell'AI per la computer vision in tempo reale, superando ampiamente sia YOLOv7 sia YOLOv10.

YOLO26 introduce innovazioni senza precedenti, progettate specificamente per i moderni ambienti di deployment:

  • Progettazione end-to-end senza NMS: basandosi sulle fondamenta gettate da YOLOv10, YOLO26 elimina nativamente il post-processing NMS per pipeline di deployment più semplici e un'inferenza ad alta velocità coerente.
  • Inferenza su CPU fino al 43% più veloce: fortemente ottimizzata per l'edge computing e per i dispositivi privi di GPU dedicate, offre enormi risparmi sui costi dell'hardware.
  • Rimozione di DFL: la Distribution Focal Loss è stata rimossa completamente, semplificando radicalmente la logica di export e migliorando notevolmente la compatibilità con dispositivi edge a basso consumo e microcontrollori.
  • Ottimizzatore MuSGD: ispirato a Kimi K2 di Moonshot AI, questo ibrido di SGD e Muon porta direttamente nella computer vision le innovazioni dell'addestramento dei Large Language Model (LLM), producendo dinamiche di addestramento incredibilmente stabili e una convergenza più rapida.
  • ProgLoss + STAL: queste funzioni di loss avanzate offrono miglioramenti significativi nel riconoscimento degli oggetti piccoli, un'area storicamente complessa ma fondamentale per droni, robotica e monitoraggio delle smart city.
  • Miglioramenti specifici per attività: YOLO26 non è solo un detector. Include una loss specializzata per la segmentazione semantica, la Stima della Log-Verosimiglianza Residuale (RLE) per un tracciamento della posa ultra-accurato e algoritmi specializzati di loss dell'angolo per eliminare i problemi dei bordi degli OBB.
Gestione dei dataset e dell'addestramento

Per un'esperienza ottimale nella gestione dei tuoi dataset, nell'addestramento di YOLO26 e nel deployment dei modelli sul cloud, esplora la Ultralytics Platform. Offre un'interfaccia senza codice che completa perfettamente l'SDK Python.

Casi d'uso nel mondo reale#

La scelta dell'architettura giusta dipende in larga misura dai vincoli dell'hardware e dell'applicazione.

Quando utilizzare YOLOv7#

YOLOv7 rimane una scelta affidabile per mantenere pipeline legacy già profondamente integrate con le sue specifiche strutture tensoriali o per replicare benchmark accademici del 2022 e del 2023. Offre prestazioni eccellenti sulle GPU server di fascia alta.

Quando utilizzare YOLOv10#

YOLOv10 eccelle negli scenari che richiedono una latenza rigorosa e invariabile. Essendo privo di NMS, è eccellente per il conteggio di folle ad alta densità o per il rilevamento dei difetti di produzione, dove il numero di oggetti varia enormemente ma il tempo di elaborazione per fotogramma deve rimanere costante.

Quando utilizzare YOLO26#

YOLO26 è la scelta definitiva per qualsiasi progetto greenfield. Dal deployment di sofisticati sistemi di allarme di sicurezza su un semplice Raspberry Pi all'esecuzione di analisi video cloud su larga scala, le sue velocità superiori su CPU e il rilevamento avanzato degli oggetti piccoli lo rendono nettamente superiore alle generazioni precedenti.

Per gli sviluppatori interessati a esplorare architetture moderne alternative, offriamo anche un supporto esteso per detector basati su Transformer come RT-DETR e per modelli affermati delle generazioni precedenti come Ultralytics YOLO11.

Commenti