Ultralytics YOLO27:

YOLOv9 vs YOLOv8#

Il panorama della computer vision in tempo reale si è evoluto notevolmente negli ultimi anni, con ogni nuovo modello che spinge i limiti teorici di ciò che è possibile fare sia sui dispositivi edge sia sui server cloud. Nel confrontare la più recente architettura YOLOv9 con il diffusissimo framework Ultralytics YOLOv8, gli sviluppatori si trovano spesso a scegliere tra percorsi teorici dei gradienti all'avanguardia e un ecosistema ampiamente testato sul campo e pronto per la produzione.

Questa guida completa mette a confronto questi due protagonisti, analizzandone le innovazioni architetturali, le metriche prestazionali e gli scenari di distribuzione ideali, per aiutarti a scegliere il modello giusto per il tuo prossimo progetto di intelligenza artificiale.

Specifiche tecniche e autori#

Comprendere la genealogia di questi modelli fornisce un contesto essenziale per le rispettive scelte progettuali.

YOLOv9 Sviluppato da Chien-Yao Wang e Hong-Yuan Mark Liao presso l'Institute of Information Science dell'Academia Sinica, Taiwan, YOLOv9 è stato rilasciato il 21 febbraio 2024. La ricerca di base si concentra sulla risoluzione del collo di bottiglia informativo nelle reti neurali profonde. Puoi consultare l'articolo di ricerca su YOLOv9 originale su Arxiv oppure visualizzare il codice sorgente nel repository GitHub ufficiale di YOLOv9.

Scopri di più su YOLOv9

Ultralytics YOLOv8 Sviluppato da Glenn Jocher, Ayush Chaurasia e Jing Qiu presso Ultralytics, YOLOv8 è stato lanciato il 10 gennaio 2023. Si è affermato come standard del settore per la sua versatilità, offrendo un'API unificata per un'enorme varietà di attività di computer vision. Il codice sorgente è mantenuto nel repository GitHub principale di Ultralytics, garantendo aggiornamenti continui e stabilità a lungo termine.

Innovazioni architetturali#

YOLOv9: informazioni programmabili sul gradiente#

La caratteristica distintiva di YOLOv9 è l'introduzione delle Informazioni programmabili sui gradienti (PGI) e della Rete generalizzata di aggregazione efficiente dei livelli (GELAN). Man mano che le reti neurali convoluzionali diventano più profonde, in genere perdono informazioni essenziali sulle caratteristiche durante il processo feed-forward. PGI affronta questo collo di bottiglia informativo conservando gradienti accurati utilizzati per aggiornare i pesi e garantendo un'estrazione affidabile delle caratteristiche. Questa architettura massimizza l'efficienza dei parametri, consentendo a YOLOv9 di raggiungere un'elevata precisione con un numero inferiore di operazioni in virgola mobile (FLOPs).

YOLOv8: il modello versatile e affidabile#

YOLOv8 ha introdotto un meccanismo di rilevamento semplificato e privo di anchor, che riduce il numero di previsioni dei riquadri e accelera la soppressione non massima (NMS) durante il post-processing. Il suo modulo C2f (collo di bottiglia parziale tra fasi con due convoluzioni) migliora il flusso dei gradienti attraverso la rete rispetto ai modelli precedenti. Ancora più importante, YOLOv8 è stato progettato pensando alla Versatilità e supporta nativamente rilevamento degli oggetti, segmentazione delle istanze, stima della posa, classificazione delle immagini ed estrazione di riquadri delimitatori orientati (OBB), tutto già integrato.

Integrazione nell'ecosistema

Sebbene YOLOv9 offra metriche di rilevamento grezze eccezionali, integrarlo nativamente in pipeline complesse può essere difficile. L'utilizzo di YOLOv9 tramite il framework Ultralytics colma questa lacuna, fornendo accesso ai nostri solidi strumenti di esportazione e distribuzione.

Equilibrio delle prestazioni e benchmark#

Il compromesso tra velocità e accuratezza è il fattore più critico quando si distribuiscono modelli di computer vision. Di seguito trovi un confronto dettagliato delle dimensioni dei modelli, della latenza e della Average Precision media, valutate sul dataset COCO standard.

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
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8

Analizzando le metriche, YOLOv9 dimostra un notevole rapporto tra numero di parametri e accuratezza. Il modello YOLOv9c raggiunge un impressionante 53,0% di mAP utilizzando solo 25,3 milioni di parametri. Tuttavia, YOLOv8 mantiene un vantaggio significativo nei requisiti di memoria e nella velocità di inferenza sugli acceleratori hardware, in particolare con la variante YOLOv8n che raggiunge 1,47 ms su una configurazione NVIDIA TensorRT.

Il vantaggio dell'ecosistema Ultralytics#

Un fattore importante nella scelta di un'architettura è la facilità d'uso e l'ecosistema software circostante. Gestire le dipendenze, scrivere data loader personalizzati e gestire script di esportazione complessi può rallentare lo sviluppo. L'ecosistema integrato di Ultralytics astrae queste complessità.

Sia che tu scelga YOLOv8 o YOLOv9 (completamente supportato nella libreria Ultralytics), puoi beneficiare di un'API unificata, di tecniche di aumento dei dati automatiche e di un'esportazione semplificata nel formato ONNX. Inoltre, le architetture Ultralytics offrono generalmente un'elevata efficienza di addestramento, evitando il massiccio consumo di memoria CUDA comunemente associato ai grandi modelli basati su Transformer.

Esempio di codice per l'addestramento#

L'addestramento di entrambi i modelli tramite l'API Python è semplice e richiede solo poche righe di codice.

from ultralytics import YOLO

# Load the preferred model (swap 'yolov9c.pt' with 'yolov8n.pt' as needed)
model = YOLO("yolov8n.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

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

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

Casi d'uso e raccomandazioni#

La scelta tra YOLOv9 e YOLOv8 dipende dai requisiti specifici del tuo progetto, dai vincoli di distribuzione e dalle preferenze relative all'ecosistema.

Quando scegliere YOLOv9#

YOLOv9 è una scelta valida per:

  • Ricerca sui colli di bottiglia informativi: progetti accademici che studiano le architetture basate sulle Informazioni programmabili sul gradiente (PGI) e sulla Rete generalizzata per l'aggregazione efficiente dei livelli (GELAN).
  • Studi sull'ottimizzazione del flusso del gradiente: ricerche incentrate sulla comprensione e sulla mitigazione della perdita di informazioni nei livelli delle reti profonde durante l'addestramento.
  • Benchmarking del rilevamento ad alta accuratezza: scenari in cui le solide prestazioni di YOLOv9 sul benchmark COCO sono necessarie come punto di riferimento per confronti architetturali.

Quando scegliere YOLOv8#

YOLOv8 è consigliato per:

  • Implementazione versatile multi-attività: Progetti che richiedono un modello collaudato per rilevamento, segmentazione, classificazione e stima della posa all'interno dell'ecosistema Ultralytics.
  • Sistemi di produzione consolidati: Ambienti di produzione esistenti già basati sull'architettura YOLOv8, con pipeline di implementazione stabili e ampiamente testate.
  • Ampio supporto della community e dell'ecosistema: Applicazioni che traggono vantaggio dagli estesi tutorial di YOLOv8, dalle integrazioni di terze parti e dalle risorse attive della community.

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.

Uno sguardo al futuro: l'arrivo di YOLO26#

Sebbene YOLOv8 e YOLOv9 siano entrambi estremamente capaci, il panorama della computer vision si evolve rapidamente. Per le distribuzioni moderne, ti consigliamo vivamente di utilizzare Ultralytics YOLO26, rilasciato a gennaio 2026.

YOLO26 rappresenta un cambio di paradigma nel funzionamento dei rilevatori di oggetti in produzione. Offre un design nativo end-to-end privo di NMS, che elimina efficacemente la latenza e il comportamento non deterministico del post-processing. Per supportare meglio l'hardware edge e a basso consumo, YOLO26 integra la completa rimozione di DFL (Distribution Focal Loss), rendendo le esportazioni per dispositivi mobili notevolmente più semplici.

Inoltre, YOLO26 utilizza l'innovativo ottimizzatore MuSGD, un ibrido di SGD e Muon che porta la stabilità di addestramento a livello LLM alle attività di computer vision, con una convergenza significativamente più rapida. Con un'inferenza su CPU fino al 43% più veloce e l'integrazione di ProgLoss + STAL per un riconoscimento degli oggetti piccoli notevolmente migliorato, YOLO26 è la scelta indiscussa per le nuove iniziative aziendali.

Architetture alternative

A seconda dei tuoi vincoli hardware, potresti anche essere interessato a confrontare questi modelli con Ultralytics YOLO11 per attività generiche equilibrate o a esplorare modelli basati su Transformer come RT-DETR per ricerche specializzate ad alta fedeltà.

Applicazioni e casi d'uso nel mondo reale#

La scelta tra YOLOv8 e YOLOv9 dipende in larga misura dai vincoli del tuo progetto e dall'hardware di destinazione.

  • Sanità e imaging medico: quando ogni pixel conta, come nei sistemi di rilevamento dei tumori, l'architettura GELAN di YOLOv9 preserva eccezionalmente bene i dettagli fini, riducendo i falsi negativi nelle diagnosi critiche.
  • Analisi del commercio al dettaglio e dell'inventario: per i sistemi di supermercati intelligenti che monitorano scaffali densamente pieni, YOLOv9 fornisce la mAP necessaria per separare in modo affidabile gli articoli sovrapposti.
  • Città intelligenti e monitoraggio del traffico: nella rapida gestione della logistica e del traffico, la latenza estremamente bassa e la comprovata robustezza di YOLOv8 lo rendono ideale per monitorare i veicoli su più flussi video contemporaneamente.
  • Distribuzioni edge: se stai effettuando una distribuzione su dispositivi con risorse limitate, come un Raspberry Pi o hardware mobile, i blocchi C2f altamente ottimizzati di YOLOv8 (insieme alle ottimizzazioni della CPU di YOLO26) forniscono una pipeline di inferenza molto più fluida e attenta ai consumi della batteria.

Commenti