Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Get Started

YOLOv9 vs YOLOv10#

Il panorama della visione artificiale in tempo reale si è evoluto rapidamente, mentre i ricercatori continuano a migliorare il compromesso tra prestazioni ed efficienza. Nell'evoluzione dei modelli di visione all'avanguardia, YOLOv9 e YOLOv10 rappresentano due tappe importanti. Rilasciati all'inizio del 2024, entrambi i modelli hanno introdotto modifiche architetturali significative per affrontare sfide di lunga data nelle reti neurali profonde, dai colli di bottiglia informativi alla latenza della post-elaborazione.

Questo confronto tecnico esamina le architetture, le metriche prestazionali e gli scenari di distribuzione ideali per aiutarti a scegliere il modello giusto per il rilevamento di oggetti.

Origini e architettura del modello#

Comprendere la genealogia e i fondamenti teorici di questi modelli è fondamentale per scegliere l'architettura giusta per il tuo progetto specifico di visione artificiale.

YOLOv9: padroneggiare il flusso delle informazioni#

Presentato il 21 febbraio 2024, YOLOv9 affronta il problema teorico della perdita di informazioni che si verifica quando i dati attraversano reti neurali profonde.

YOLOv9 introduce la rete di aggregazione efficiente generalizzata dei livelli (GELAN), che massimizza l'utilizzo dei parametri combinando i punti di forza di CSPNet ed ELAN. Inoltre, utilizza le Informazioni sul gradiente programmabili (PGI), un meccanismo di supervisione ausiliario che assicura che i livelli profondi conservino informazioni spaziali fondamentali. Questo rende YOLOv9 adatto alle 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 semplifica la pipeline di distribuzione eliminando un noto collo di bottiglia della latenza nel rilevamento di oggetti: la soppressione non massima (NMS).

Durante l'addestramento, YOLOv10 utilizza assegnazioni doppie coerenti, ottenendo un design nativamente senza NMS. Questo elimina il carico della post-elaborazione durante l'inferenza e riduce la latenza. Insieme a un design del modello olistico, orientato all'efficienza e alla precisione, YOLOv10 raggiunge un buon equilibrio: riduce il carico computazionale (FLOP) mantenendo una precisione competitiva, caratteristica che lo rende interessante per le applicazioni di edge computing.

Scopri di più su YOLOv10

Confronto delle prestazioni e delle metriche#

Nei benchmark delle due famiglie di modelli sul dataset standard MS COCO, emergono compromessi distinti tra la precisione assoluta e la 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.226.7
YOLOv9m64051.4-6.4320.176.8
YOLOv9c64053.0-7.1625.5102.8
YOLOv9e64055.6-16.7758.1192.5
YOLOv10n64038.5-1.842.36.7
YOLOv10s64046.3-2.497.221.6
YOLOv10m64051.1-4.7415.459.1
YOLOv10b64052.5-5.7419.192.0
YOLOv10l64053.2-7.2824.4120.3
YOLOv10x64054.4-10.7029.5160.4

Analisi dei dati#

  1. Latenza e precisione: i modelli YOLOv10 offrono in genere un'inferenza più rapida. Per esempio, YOLOv10s raggiunge il 46.3% di mAP in appena 2.49 ms con TensorRT, mentre YOLOv9s richiede 3.54 ms per ottenere un mAP simile, pari al 46.8%.
  2. Precisione di alto livello: Per gli scenari di ricerca che richiedono la massima precisione di rilevamento, YOLOv9e resta una scelta valida, raggiungendo il 55,6% di mAP, con PGI che lo aiuta a estrarre in modo affidabile caratteristiche sottili.
  3. Efficienza: YOLOv10 eccelle nell'efficienza in FLOPs. Questo si traduce direttamente in un consumo energetico inferiore, un parametro fondamentale per i dispositivi a batteria che eseguono modelli di IA per la visione.
Consiglio per la distribuzione

Se distribuisci i modelli su CPU o hardware edge con risorse limitate, come un Raspberry Pi, l'architettura di YOLOv10 senza NMS in genere offre una pipeline più fluida, eliminando le fasi di post-elaborazione con latenza variabile.

I vantaggi di Ultralytics: addestramento ed ecosistema#

Anche se le differenze architetturali sono fondamentali, spesso è l'ecosistema software circostante a determinare il successo di un progetto. Sia YOLOv9 sia YOLOv10 sono pienamente integrati nell'ecosistema Ultralytics, offrendo un'esperienza di sviluppo coerente.

Semplicità d'uso ed efficienza nell'uso della memoria#

A differenza delle complesse architetture basate su Transformer, che possono richiedere grandi quantità di memoria, i modelli Ultralytics YOLO sono progettati per un uso efficiente della memoria GPU. Questo consente ai ricercatori di utilizzare dimensioni di batch maggiori su hardware di fascia consumer, rendendo accessibile l'IA all'avanguardia.

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

from ultralytics import YOLO

# Carica un modello YOLOv10 (puoi passare facilmente a "yolov9c.pt" per YOLOv9)
model = YOLO("yolov10n.pt")

# Addestra il modello sul dataset COCO8
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Valida le prestazioni del modello
metrics = model.val()

# Esporta il modello addestrato in formato ONNX per il 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à, il pacchetto Python Ultralytics gestisce tutto in modo nativo.

Casi d'uso ideali#

La scelta tra questi modelli dipende dai vincoli del tuo deployment:

Prepararsi al futuro: il passaggio a YOLO26#

Anche se YOLOv8, YOLOv9 e YOLOv10 sono modelli eccellenti, gli sviluppatori che vogliono creare soluzioni IA moderne dovrebbero valutare Ultralytics YOLO26, rilasciato a gennaio 2026.

YOLO26 si basa sulle generazioni precedenti e combina l'efficienza senza NMS di YOLOv10 con una precisione superiore a quella di entrambi i modelli di questo confronto.

Principali innovazioni di YOLO26#

  • Architettura end-to-end priva di NMS: sulla base di YOLOv10, la testa opzionale one-to-one di YOLO26 (nms=False) salta il post-processing NMS per semplificare il deployment.
  • Ottimizzatore MuSGD: un ibrido di SGD e Muon che porta le innovazioni dell'addestramento degli LLM nella computer vision, per un addestramento stabile e una convergenza rapida.
  • Inferenza su CPU fino al 43% più veloce: YOLO26n è fino al 43% più veloce di YOLO11n su CPU, risultando adatto all'edge computing e ai dispositivi senza GPU dedicata.
  • Rimozione della DFL: la Distribution Focal Loss è stata rimossa per semplificare l'esportazione dei modelli e migliorare la compatibilità con i dispositivi a basso consumo.
  • ProgLoss + STAL: la Progressive Loss e l'assegnazione delle etichette consapevole degli oggetti piccoli (STAL) migliorano il rilevamento degli oggetti di piccole dimensioni.

Per i ricercatori che valutano altre architetture, anche RT-DETR e YOLO11 sono alternative ben documentate nell'ecosistema Ultralytics. Per la versatilità necessaria a tutti i task di visione, tuttavia, YOLO26 su Ultralytics Platform è la soluzione consigliata per i nuovi progetti.

Commenti