Vai al contenuto

YOLOv9 vs YOLOv5: Un Confronto Dettagliato

Questa pagina fornisce un confronto tecnico tra due importanti modelli di object detection: YOLOv9 e Ultralytics YOLOv5. Entrambi i modelli fanno parte dell'influente serie YOLO (You Only Look Once), nota per bilanciare velocità e precisione nell'object detection in tempo reale. Questo confronto esplora le loro differenze architetturali, le metriche di performance e i casi d'uso ideali per aiutarti a selezionare il modello più adatto per i tuoi progetti di computer vision.

YOLOv9: Avanzamento dell'accuratezza con una nuova architettura

YOLOv9 è stato introdotto a febbraio 2024, portando significative innovazioni architetturali all'avanguardia nel rilevamento di oggetti. Mira a risolvere il problema della perdita di informazioni nelle reti neurali profonde, una sfida critica per l'addestramento di modelli altamente efficaci.

Autori: Chien-Yao Wang, Hong-Yuan Mark Liao
Organizzazione: Institute of Information Science, Academia Sinica, Taiwan
Data: 2024-02-21
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: https://github.com/WongKinYiu/yolov9
Documentazione: https://docs.ultralytics.com/models/yolov9/

Architettura e Innovazioni

YOLOv9 introduce due concetti rivoluzionari descritti nel suo paper, "YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information":

  • Informazioni sul Gradiente Programmabile (PGI): Questo nuovo approccio è progettato per affrontare il problema del collo di bottiglia delle informazioni che si verifica quando i dati fluiscono attraverso i livelli di una rete profonda. PGI assicura che le informazioni di input complete siano disponibili per il calcolo della funzione di perdita, preservando così i dati cruciali per aggiornamenti del gradiente più accurati e un addestramento del modello più efficace.
  • Generalized Efficient Layer Aggregation Network (GELAN): YOLOv9 presenta anche GELAN, una nuova architettura di rete ottimizzata per un utilizzo dei parametri e un'efficienza computazionale superiori. Si basa sui principi di CSPNet e ELAN per creare una struttura che raggiunge una maggiore precisione con meno parametri e costi computazionali (FLOP).

Punti di forza

  • Accuratezza Migliorata: YOLOv9 stabilisce un nuovo stato dell'arte sul dataset COCO, superando molti precedenti rilevatori di oggetti in tempo reale nella precisione media (mAP).
  • Maggiore efficienza: La combinazione di PGI e GELAN si traduce in modelli che non sono solo altamente accurati, ma anche computazionalmente efficienti, rendendoli potenti per attività in cui le prestazioni sono fondamentali.
  • Preservazione delle informazioni: Affrontando direttamente il collo di bottiglia delle informazioni, PGI consente l'addestramento di reti più profonde e complesse senza il tipico degrado delle prestazioni, portando a modelli più robusti.

Punti deboli

  • Risorse di addestramento: Come indicato nella documentazione di YOLOv9, l'addestramento dei modelli YOLOv9 può richiedere più risorse e tempo rispetto a modelli più consolidati come YOLOv5.
  • Ecosistema più recente: Essendo un modello più recente di un diverso gruppo di ricerca, il suo ecosistema, il supporto della community e le integrazioni di terze parti sono meno maturi di quelli del consolidato Ultralytics YOLOv5.
  • Versatilità delle attività: YOLOv9 originale si concentra principalmente sul rilevamento di oggetti. Manca del supporto integrato per altre attività di visione come la segmentazione di istanze, la classificazione di immagini e la stima della posa, che sono supportate nativamente nei modelli Ultralytics.

Casi d'uso

  • Applicazioni che richiedono la massima accuratezza possibile nel rilevamento degli oggetti, come l'analisi video avanzata e l'ispezione industriale ad alta precisione.
  • Scenari in cui l'efficienza computazionale deve essere bilanciata con prestazioni di alto livello, come nell'IA per la gestione del traffico.
  • Ricerca e sviluppo nella computer vision avanzata, dove l'esplorazione di architetture innovative è una priorità.

Scopri di più su YOLOv9

Ultralytics YOLOv5: Lo standard consolidato e versatile

Rilasciato nel 2020, Ultralytics YOLOv5 è diventato rapidamente uno standard del settore grazie al suo eccezionale equilibrio tra velocità, precisione e facilità d'uso. Sviluppato interamente in PyTorch, è stato continuamente perfezionato ed è supportato da un ecosistema robusto.

Autore: Glenn Jocher
Organizzazione: Ultralytics
Data: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
Documentazione: https://docs.ultralytics.com/models/yolov5/

Architettura e Funzionalità

YOLOv5 utilizza un'architettura collaudata con un backbone CSPDarknet53 e un neck PANet per un'efficace aggregazione delle caratteristiche. Il suo detection head basato su anchor è altamente efficiente. Il modello è disponibile in varie dimensioni (n, s, m, l, x), consentendo agli sviluppatori di scegliere il perfetto compromesso tra prestazioni e vincoli di risorse.

Punti di forza

  • Velocità ed efficienza eccezionali: YOLOv5 è altamente ottimizzato per l'inferenza rapida, il che lo rende ideale per applicazioni in tempo reale su una vasta gamma di hardware, dalle potenti GPU ai dispositivi edge con risorse limitate.
  • Facilità d'uso: Rinomato per la sua esperienza utente semplificata, YOLOv5 offre semplici interfacce Python e CLI, insieme a una documentazione estesa e chiara.
  • Ecosistema ben manutenuto: YOLOv5 beneficia del completo ecosistema Ultralytics, che include sviluppo attivo, una community ampia e collaborativa su Discord, aggiornamenti frequenti e strumenti potenti come Ultralytics HUB per l'addestramento e il deployment senza codice.
  • Bilanciamento delle prestazioni: Ottiene un forte compromesso tra velocità di inferenza e precisione di rilevamento, rendendolo adatto a una vasta gamma di scenari di implementazione nel mondo reale.
  • Versatilità: A differenza di molti modelli specializzati, YOLOv5 supporta nativamente diverse attività, tra cui il rilevamento di oggetti, la segmentazione di istanze e la classificazione delle immagini.
  • Efficienza di addestramento: YOLOv5 offre processi di addestramento efficienti, pesi pre-addestrati facilmente disponibili e requisiti di memoria generalmente inferiori rispetto a molte altre architetture, specialmente i modelli basati su transformer.

Punti deboli

  • Accuratezza di picco: Pur essendo molto accurati per il periodo in cui sono stati sviluppati, i modelli più recenti come YOLOv9 possono raggiungere punteggi mAP più elevati in benchmark come COCO.
  • Design basato su anchor: Si basa su anchor box predefiniti, il che può richiedere una maggiore messa a punto per dataset con oggetti di forma insolita rispetto ai moderni approcci anchor-free.

Casi d'uso

Scopri di più su YOLOv5

Prestazioni e benchmark: YOLOv9 vs. YOLOv5

Il confronto delle prestazioni tra YOLOv9 e YOLOv5 evidenzia i progressi nell'architettura del modello nel corso degli anni. I modelli YOLOv9 raggiungono costantemente punteggi mAP più alti rispetto alle loro controparti YOLOv5, spesso con un uso più efficiente dei parametri e dei FLOP nella fascia più alta. Ad esempio, YOLOv9-C raggiunge il 53,0% di mAP con 25,3 milioni di parametri, superando il 50,7% di mAP di YOLOv5x con 86,7 milioni di parametri.

Tuttavia, YOLOv5 eccelle in velocità, specialmente nelle sue varianti più piccole come YOLOv5n e YOLOv5s, che offrono tempi di inferenza estremamente rapidi sia su CPU che su GPU, rendendole imbattibili per molte applicazioni edge in tempo reale.

Modello dimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv9t 640 38.3 - 2.3 2.0 7.7
YOLOv9s 640 46.8 - 3.54 7.1 26.4
YOLOv9m 640 51.4 - 6.43 20.0 76.3
YOLOv9c 640 53.0 - 7.16 25.3 102.1
YOLOv9e 640 55.6 - 16.77 57.3 189.0
YOLOv5n 640 28.0 73.6 1.12 2.6 7.7
YOLOv5s 640 37.4 120.7 1.92 9.1 24.0
YOLOv5m 640 45.4 233.9 4.03 25.1 64.2
YOLOv5l 640 49.0 408.4 6.61 53.2 135.0
YOLOv5x 640 50.7 763.2 11.89 97.2 246.4

Conclusione: Quale modello dovresti scegliere?

La scelta tra YOLOv9 e YOLOv5 dipende molto dalle esigenze specifiche del tuo progetto.

  • YOLOv9 è la scelta migliore per le applicazioni in cui l'accuratezza massima è l'obiettivo primario e si dispone di risorse computazionali sufficienti per l'addestramento. La sua architettura innovativa lo rende ideale per superare i limiti delle prestazioni di object detection in settori specializzati.

  • Ultralytics YOLOv5 rimane l'opzione più pratica e versatile per una gamma più ampia di applicazioni. I suoi vantaggi principali—facilità d'uso, velocità, supporto multi-task e un ecosistema maturo e ben supportato—lo rendono il modello di riferimento per gli sviluppatori che devono costruire soluzioni robuste e reali in modo rapido ed efficiente. Per i progetti che richiedono l'implementazione su dispositivi edge o un equilibrio tra velocità e precisione, YOLOv5 è spesso la scelta ottimale.

Per chi è alla ricerca di una via di mezzo o di funzionalità ancora più avanzate, Ultralytics offre una suite completa di modelli. Si consiglia di esplorare YOLOv8, che combina molti dei vantaggi di usabilità di YOLOv5 con un'architettura senza ancore e una versatilità ancora maggiore, oppure l'ultimo YOLO11 per prestazioni all'avanguardia all'interno dell'ecosistema Ultralytics. Ulteriori confronti sono disponibili nella nostra pagina di confronto dei modelli.



📅 Creato 1 anno fa ✏️ Aggiornato 1 mese fa

Commenti