Ultralytics YOLO27:

Confronto tra YOLOv9 e YOLOv10#

Il panorama della computer vision in tempo reale ha registrato enormi progressi, trainati in gran parte da ricercatori che spingono continuamente oltre il confine tra prestazioni ed efficienza. Analizzando l'evoluzione dei modelli di visione all'avanguardia, YOLOv9 e YOLOv10 rappresentano due tappe fondamentali. Rilasciati all'inizio del 2024, entrambi i modelli hanno introdotto architetture innovative per affrontare sfide di lunga data nelle reti neurali profonde, dai colli di bottiglia informativi alla latenza del post-processing.

Questo confronto tecnico completo analizza le loro architetture, le metriche di prestazione e gli scenari di deployment ideali, aiutandoti a orientarti tra le complessità degli ecosistemi moderni di rilevamento degli oggetti.

Origini dei modelli e innovazioni architetturali#

Comprendere la genealogia e i fondamenti teorici di questi modelli è fondamentale per selezionare l'architettura giusta per il tuo progetto specifico di computer vision.

YOLOv9: padroneggiare il flusso delle informazioni#

Presentato il 21 febbraio 2024, YOLOv9 affronta il problema teorico della perdita di informazioni durante il passaggio dei dati attraverso le reti neurali profonde.

YOLOv9 introduce la rete generalizzata di aggregazione efficiente dei livelli (GELAN), che massimizza l'utilizzo dei parametri combinando i punti di forza di CSPNet ed ELAN. Inoltre, impiega le informazioni programmabili sul gradiente (PGI), un meccanismo di supervisione ausiliario che garantisce la conservazione delle informazioni spaziali fondamentali nei livelli profondi. Questo rende YOLOv9 particolarmente efficace per attività che richiedono un'elevata fedeltà delle caratteristiche, come l'analisi di immagini mediche o la sorveglianza a distanza.

Scopri di più su YOLOv9

YOLOv10: efficienza end-to-end in tempo reale#

Rilasciato poco dopo, il 23 maggio 2024, YOLOv10 ripensa la pipeline di deployment eliminando uno dei più noti colli di bottiglia della latenza nel rilevamento degli oggetti: la soppressione non massima (NMS).

YOLOv10 utilizza assegnazioni duali coerenti durante l'addestramento, consentendo una progettazione nativamente priva di NMS. Questo elimina l'overhead del post-processing durante l'inferenza, riducendo drasticamente la latenza. In combinazione con una progettazione del modello basata su un approccio olistico all'efficienza e alla precisione, YOLOv10 raggiunge un equilibrio eccezionale, riducendo il carico computazionale (FLOPs) pur mantenendo una precisione competitiva, il che lo rende particolarmente interessante per le applicazioni di edge computing.

Scopri di più su YOLOv10

Confronto di prestazioni e metriche#

Quando si sottopongono questi due modelli di punta a benchmark sul dataset standard MS COCO, emergono compromessi distinti tra accuratezza assoluta e latenza di inferenza.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
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

Analisi dei dati#

  1. Latenza vs. accuratezza: i modelli YOLOv10 offrono generalmente velocità di inferenza superiori. Ad esempio, YOLOv10s raggiunge il 46,7% di mAP in soli 2,66 ms su TensorRT, rispetto a YOLOv9s, che richiede 3,54 ms per un mAP quasi identico del 46,8%.
  2. Precisione di fascia alta: per gli scenari di ricerca che richiedono la massima accuratezza di rilevamento, YOLOv9e resta una scelta formidabile, raggiungendo un notevole 55,6% di mAP. La sua architettura PGI garantisce l'estrazione affidabile delle caratteristiche più sottili.
  3. Efficienza: YOLOv10 eccelle nell'efficienza in termini di FLOPs. Questo si traduce direttamente in un minore consumo energetico, una metrica cruciale per i dispositivi alimentati a batteria che eseguono modelli di AI per la visione.
Suggerimento per l'implementazione

Se esegui il deployment su CPU o su hardware edge con risorse limitate, come un Raspberry Pi, l'architettura priva di NMS di YOLOv10 fornirà solitamente una pipeline più fluida eliminando le fasi di post-processing non deterministiche.

Il vantaggio di Ultralytics: addestramento ed ecosistema#

Sebbene le differenze architetturali siano fondamentali, l'ecosistema software circostante determina in larga misura il successo di un progetto. Sia YOLOv9 sia YOLOv10 sono completamente integrati nell'ecosistema Ultralytics, offrendo un'esperienza per sviluppatori senza pari.

Semplicità d'uso ed efficienza della memoria#

A differenza delle complesse architetture basate su Transformer, che soffrono di un enorme sovraccarico di memoria, i modelli YOLO di Ultralytics sono progettati per un utilizzo ottimale della memoria della GPU. Questo consente ai ricercatori di utilizzare dimensioni dei batch maggiori su hardware di livello consumer, rendendo accessibile l'AI all'avanguardia.

L'API Python unificata astrae le complessità dell'aumento dei dati e dell'ottimizzazione degli iperparametri. Puoi passare facilmente da un'architettura all'altra modificando semplicemente la stringa del file dei pesi.

from ultralytics import YOLO

# Load a YOLOv10 model (Easily swap to "yolov9c.pt" for YOLOv9)
model = YOLO("yolov10n.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Validate the model's performance
metrics = model.val()

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

Che tu debba registrare le metriche in MLflow o esportare in TensorRT per il deployment su hardware ad alta velocità, la piattaforma Ultralytics gestisce tutto in modo nativo.

Casi d'uso ideali#

La scelta tra questi modelli dipende dai tuoi vincoli di deployment:

Prepararsi al futuro: il passaggio a YOLO26#

Sebbene YOLOv8, YOLOv9 e YOLOv10 siano modelli eccellenti, gli sviluppatori che desiderano creare soluzioni di AI moderne dovrebbero considerare Ultralytics YOLO26, rilasciato a gennaio 2026.

YOLO26 rappresenta la sintesi definitiva delle generazioni precedenti, combinando i migliori aspetti dell'accuratezza di YOLOv9 e dell'efficienza di YOLOv10.

Innovazioni principali di YOLO26#

  • Progettazione end-to-end priva di NMS: basandosi sulle fondamenta poste da YOLOv10, YOLO26 elimina nativamente il post-processing NMS per semplificare il deployment.
  • Ottimizzatore MuSGD: un ibrido di SGD e Muon, che porta le innovazioni avanzate dell'addestramento degli LLM nella computer vision per una convergenza incredibilmente stabile e rapida.
  • Inferenza su CPU fino al 43% più veloce: ottimizzata specificamente per l'edge computing e per i dispositivi privi di GPU dedicate.
  • Rimozione di DFL: la Distribution Focal Loss è stata rimossa per semplificare l'esportazione del modello e migliorare la compatibilità con i dispositivi a basso consumo.
  • ProgLoss + STAL: queste funzioni di perdita migliorate apportano miglioramenti significativi nel riconoscimento degli oggetti piccoli, eguagliando o superando le capacità di YOLOv9.

Per i ricercatori che valutano architetture legacy, RT-DETR e YOLO11 sono alternative altrettanto ben documentate all'interno dell'ecosistema Ultralytics. Tuttavia, per la massima versatilità in tutte le attività di visione, il passaggio a YOLO26 sulla piattaforma Ultralytics garantisce di sfruttare l'apice dell'AI open source per la visione.

Commenti