Ultralytics YOLO27:
Get Started

YOLOv9 vs YOLOX#

Il campo della visione artificiale ha visto una rapida evoluzione delle architetture per il rilevamento di oggetti in tempo reale. Questa guida offre un confronto completo tra YOLOv9 e YOLOX, analizzandone le innovazioni architetturali, le metriche prestazionali e le metodologie di addestramento. Che tu stia sviluppando applicazioni intelligenti per l'IA nella produzione o esplorando la modellazione predittiva, comprendere questi modelli ti aiuterà a prendere decisioni consapevoli per la tua prossima distribuzione.

Innovazioni architetturali#

YOLOv9: informazioni di gradiente programmabili#

YOLOv9 ha introdotto un cambio di paradigma affrontando il problema del collo di bottiglia informativo insito nelle reti neurali profonde. Tra le sue innovazioni fondamentali figurano Programmable Gradient Information (PGI) e Generalized Efficient Layer Aggregation Network (GELAN).

  • Autori: Chien-Yao Wang e Hong-Yuan Mark Liao
  • Organizzazione: Institute of Information Science, Academia Sinica, Taiwan
  • Data: 21 febbraio 2024
  • Arxiv: 2402.13616
  • GitHub: WongKinYiu/yolov9

Conservando dati essenziali sulle caratteristiche durante il processo di propagazione in avanti, YOLOv9 assicura che i gradienti utilizzati per aggiornare i pesi durante la retropropagazione rimangano accurati. Questa architettura eccelle nell'estrazione delle caratteristiche, risultando molto efficace nel rilevamento di oggetti piccoli in ambienti complessi, come quelli delle immagini aeree e delle scansioni mediche dettagliate.

Scopri di più su YOLOv9

YOLOX: un ponte tra ricerca e industria#

Rilasciato a metà del 2021, YOLOX ha orientato la serie YOLO verso un design senza anchor. Ha introdotto una testa disaccoppiata, che separa le attività di classificazione e localizzazione, e ha utilizzato la strategia di assegnazione delle etichette SimOTA per migliorare la convergenza dell'addestramento.

Sebbene YOLOX fosse innovativo per l'epoca, raggiungesse un'eccellente precisione media media (mAP) ed eliminasse la regolazione degli iperparametri delle anchor box, la sua architettura di base è stata nel frattempo superata da reti moderne che bilanciano meglio il numero di parametri e la conservazione delle caratteristiche.

Scopri di più su YOLOX

Evoluzione senza anchor

Sia YOLOX sia i modelli Ultralytics più recenti adottano design senza anchor, riducendo la complessità della regolazione degli iperparametri e migliorando la capacità di generalizzazione su dataset diversi.

Analisi delle prestazioni#

Confrontando questi modelli sul benchmark MS COCO, i progressi di YOLOv9 diventano evidenti. YOLOv9 offre costantemente un compromesso migliore tra accuratezza e FLOPs.

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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Sebbene YOLOX offra varianti leggere come YOLOX-Nano per i casi edge più estremi, le varianti YOLOv9 superano sistematicamente i modelli YOLOX di dimensioni analoghe in termini di accuratezza pura. Per esempio, YOLOv9m raggiunge un mAP del 51,4% rispetto al 49,7% di YOLOXl, pur avendo meno della metà dei parametri (20,1 M contro 54,2 M).

I vantaggi di Ultralytics#

La scelta di un modello non dipende solo dalla teoria architetturale: l'ecosistema che lo circonda determina la velocità di sviluppo e il successo della distribuzione. Utilizzare YOLOv9 nell'ecosistema Ultralytics offre una semplicità d'uso senza pari e un solido supporto della community.

A differenza dei repository originali di ricerca più datati, il framework Ultralytics offre un'API Python unificata che semplifica le pipeline complesse. L'addestramento richiede molta meno memoria GPU rispetto a molte alternative, garantendo un'efficienza di addestramento eccezionale.

from ultralytics import YOLO

# Inizializza il modello YOLOv9c
model = YOLO("yolov9c.pt")

# Addestra facilmente il modello sul tuo dataset personalizzato
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

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

# Esporta il modello ottimizzato nel formato TensorRT
model.export(format="engine")

Grazie al supporto integrato per più attività, tra cui il rilevamento degli oggetti, la segmentazione di istanze e la stima della posa, puoi adattare rapidamente le tue soluzioni di visione artificiale senza modificare l'intera codebase.

Esportazione senza complicazioni

Devi distribuire il modello su dispositivi edge? Ultralytics semplifica l'esportazione dei modelli addestrati in formati altamente ottimizzati come ONNX, TensorRT e OpenVINO con un solo comando.

Applicazioni nel mondo reale#

I punti di forza specifici di questi modelli li rendono adatti a diverse applicazioni del mondo reale:

Analisi retail ad alta velocità#

Per gli ambienti retail moderni che richiedono il riconoscimento dei prodotti in tempo reale, YOLOv9 è un'ottima scelta. La sua capacità di conservare dettagli complessi delle caratteristiche lo rende ideale per le implementazioni di IA nel retail, dove è necessario distinguere prodotti visivamente simili su uno scaffale affollato.

Distribuzioni edge su sistemi legacy#

In scenari soggetti a rigidi limiti hardware o che utilizzano NPU specializzate con difficoltà nel gestire i più recenti blocchi di aggregazione, YOLOX-Nano può talvolta trovare una nicchia. I suoi schemi di convoluzione essenziali e ridotti sono a volte preferiti per i microcontrollori con risorse estremamente limitate.

Robotica autonoma#

Nella navigazione robotica, non rilevare oggetti piccoli può avere conseguenze catastrofiche. L'architettura GELAN di YOLOv9 impedisce che le caratteristiche degli ostacoli piccoli e lontani vadano perse nei livelli profondi della rete, superando i modelli più datati in contesti critici per la sicurezza, come le applicazioni di IA nel settore automobilistico.

Casi d'uso e consigli#

La scelta tra YOLOv9 e YOLOX dipende dai requisiti specifici del tuo progetto, dai vincoli di distribuzione e dalle tue preferenze in fatto di ecosistemi.

Quando scegliere YOLOv9#

YOLOv9 è una scelta valida per:

  • Ricerca sui colli di bottiglia informativi: progetti accademici che studiano le informazioni di gradiente programmabili (PGI) e le architetture di rete di aggregazione efficiente generalizzata dei livelli (GELAN).
  • Studi sull'ottimizzazione del flusso del gradiente: ricerche incentrate sulla comprensione e sulla riduzione della perdita di informazioni nei livelli delle reti profonde durante l'addestramento.
  • Benchmark di rilevamento ad alta precisione: scenari in cui le prestazioni di YOLOv9 nei benchmark COCO servono come riferimento per confrontare le architetture.

Quando scegliere YOLOX#

YOLOX è consigliato per:

  • Ricerca sul rilevamento senza anchor: Ricerca accademica che usa l'architettura pulita e senza anchor di YOLOX come riferimento per sperimentare nuove head di rilevamento o funzioni di perdita.
  • Dispositivi edge ultraleggeri: Implementazione su microcontrollori o hardware mobile legacy, dove le dimensioni estremamente ridotte della variante YOLOX-Nano (0,91 M di parametri) sono fondamentali.
  • Studi sull'assegnazione delle etichette SimOTA: Progetti di ricerca che analizzano le strategie di assegnazione delle etichette basate sul trasporto ottimale e il loro impatto sulla convergenza dell'addestramento.

Quando scegliere Ultralytics (YOLO26)#

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

  • Distribuzione edge senza NMS: applicazioni che richiedono inferenza costante a bassa latenza senza la complessità della post-elaborazione con soppressione non massima.
  • Ambienti con sola CPU: dispositivi senza accelerazione GPU dedicata, sui quali l'inferenza su CPU di YOLO26, fino al 43% più veloce, offre un vantaggio decisivo.
  • Rilevamento di oggetti di piccole dimensioni: scenari complessi come le immagini aeree acquisite da droni o l'analisi dei sensori IoT, in cui ProgLoss e STAL migliorano notevolmente la precisione sugli oggetti molto piccoli.

Il futuro: arriva YOLO26#

Sebbene YOLOv9 rappresenti un traguardo notevole, le esigenze degli ambienti di produzione spingono costantemente oltre i limiti. Il nuovo YOLO26 rappresenta lo standard definitivo per la moderna IA visiva.

YOLO26 rinnova completamente la pipeline di distribuzione con un design end-to-end senza NMS opzionale. Eliminando la necessità della complessa soppressione non massima durante la post-elaborazione con nms=False, riduce notevolmente la latenza di inferenza.

Inoltre, YOLO26 integra il rivoluzionario ottimizzatore MuSGD, una combinazione di SGD e Muon che riprende le innovazioni dell'addestramento degli LLM per offrire una convergenza estremamente stabile e rapida. Rimuovendo Distribution Focal Loss (DFL), YOLO26 raggiunge un'inferenza su CPU fino al 43% più veloce rispetto ai predecessori, risultando la scelta migliore per dispositivi edge e distribuzioni aziendali. Grazie ai notevoli miglioramenti nel riconoscimento degli oggetti piccoli apportati da ProgLoss e STAL, YOLO26 supera efficacemente sia YOLOX sia YOLOv9.

Agli ingegneri che stanno esplorando le architetture moderne consigliamo anche YOLO11 e RT-DETR, valide alternative nella suite Ultralytics. Rendi il tuo progetto pronto per il futuro sfruttando le prestazioni senza pari dei modelli più recenti sulla Ultralytics Platform.

Commenti