Vai al contenuto

YOLOv5 vs YOLOv7: Un Confronto Dettagliato

La scelta del modello di object detection giusto è una decisione critica che bilancia la necessità di velocità, accuratezza e facilità di implementazione. Questa pagina offre un confronto tecnico tra Ultralytics YOLOv5 e YOLOv7, due modelli influenti nel panorama della computer vision. Mentre entrambi hanno dato contributi significativi, Ultralytics YOLOv5 si distingue per il suo eccezionale equilibrio tra performance, design intuitivo e un ecosistema completo e ben mantenuto, rendendolo una scelta preferita per una vasta gamma di applicazioni nel mondo reale.

Ultralytics YOLOv5: Lo standard industriale consolidato

Ultralytics YOLOv5, rilasciato nel 2020 da Glenn Jocher, è rapidamente diventato uno dei modelli di rilevamento oggetti più popolari grazie alla sua notevole combinazione di velocità, precisione e facilità d'uso. Sviluppato interamente in PyTorch, YOLOv5 è altamente ottimizzato e offre un'esperienza semplificata dall'addestramento all'implementazione.

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

Architettura e Caratteristiche Chiave di YOLOv5

YOLOv5 presenta un'architettura flessibile ed efficiente costruita su un backbone CSPDarknet53 e un neck PANet per un'efficace aggregazione delle feature. Utilizza una detection head anchor-based, che è stata perfezionata nel corso di numerose versioni. Uno dei suoi punti di forza principali è la varietà di dimensioni del modello (n, s, m, l, x), che consente agli sviluppatori di selezionare il compromesso ottimale tra prestazioni e risorse computazionali. Questa scalabilità lo rende adatto a qualsiasi cosa, dai dispositivi edge leggeri ai potenti server cloud.

Punti di forza di YOLOv5

  • Facilità d'uso: YOLOv5 è rinomato per le sue semplici interfacce Python e CLI, la vasta documentazione e le pipeline di addestramento e inferenza semplici.
  • Ecosistema ben mantenuto: È supportato dal solido ecosistema Ultralytics, che include sviluppo attivo, una vasta comunità, aggiornamenti frequenti e strumenti potenti come Ultralytics HUB per l'addestramento e il deployment senza codice.
  • Bilanciamento delle prestazioni: YOLOv5 raggiunge un eccellente compromesso tra velocità di inferenza e accuratezza del rilevamento, rendendolo estremamente pratico per diversi scenari del mondo reale.
  • Versatilità ed efficienza di addestramento: Supporta molteplici attività di visione, tra cui object detection, segmentazione di istanza e classificazione delle immagini. Il processo di addestramento è efficiente, con pesi pre-addestrati facilmente disponibili e requisiti di memoria inferiori rispetto alle architetture più complesse.

Punti deboli di YOLOv5

  • Limiti di precisione: Pur essendo altamente preciso, i modelli più recenti hanno superato i suoi punteggi mAP su benchmark standard come COCO.
  • Design basato su anchor: La sua dipendenza da anchor box predefiniti a volte può richiedere una maggiore messa a punto per dataset con oggetti di forma insolita rispetto ai moderni approcci anchor-free.

Casi d'uso per YOLOv5

  • Applicazioni in Tempo Reale: Ideale per applicazioni che richiedono un'inferenza rapida, come la robotica, la visione tramite drone nelle applicazioni di computer vision nelle operazioni di drone con IA e l'analisi video in tempo reale.
  • Distribuzione edge: Adatto per la distribuzione su dispositivi edge con risorse limitate grazie al suo design efficiente e alle dimensioni ridotte del modello. Esplora le guide alla distribuzione di NVIDIA Jetson.
  • Prototipazione rapida: Una scelta eccellente per la prototipazione e il deployment rapidi di soluzioni di object detection, grazie alla sua facilità d'uso e all'ampio supporto.

Scopri di più su YOLOv5

YOLOv7: Focus sull'alta accuratezza

YOLOv7, creato da Chien-Yao Wang, Alexey Bochkovskiy e Hong-Yuan Mark Liao, è stato rilasciato il 6 luglio 2022. Ha introdotto diverse ottimizzazioni architettoniche e strategie di addestramento, note come "trainable bag-of-freebies", con l'obiettivo di spingere i confini della precisione mantenendo la velocità in tempo reale.

Autori: Chien-Yao Wang, Alexey Bochkovskiy e Hong-Yuan Mark Liao
Organizzazione: Institute of Information Science, Academia Sinica, Taiwan
Data: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Documentazione: https://docs.ultralytics.com/models/yolov7/

Architettura e Caratteristiche Chiave di YOLOv7

  • E-ELAN: Utilizza Extended Efficient Layer Aggregation Network (E-ELAN) nella backbone per migliorare la capacità di apprendimento.
  • Scalabilità del modello: Implementa il ridimensionamento composto per la profondità e la larghezza del modello per ottimizzare diversi budget computazionali.
  • Addestramento con Testa Ausiliaria: Utilizza teste ausiliarie durante l'addestramento (rimosse durante l'inferenza) per migliorare l'apprendimento delle caratteristiche.
  • Bag-of-Freebies: Sfrutta tecniche di addestramento avanzate per aumentare la precisione senza aumentare il costo di inferenza.

Punti di forza di YOLOv7

  • Elevata precisione: Raggiunge elevati punteggi mAP su benchmark come COCO, in particolare con varianti di modello più grandi.
  • Efficient Training Techniques: Incorpora nuove strategie di training per massimizzare le prestazioni.

Punti deboli di YOLOv7

  • Complessità: L'architettura e il processo di addestramento possono essere più complessi rispetto all'approccio semplificato di Ultralytics YOLOv5.
  • Ecosistema e Supporto: Manca della documentazione esaustiva, dei tutorial e dell'ecosistema integrato forniti da Ultralytics per YOLOv5.
  • Utilizzo intensivo di risorse: I modelli più grandi richiedono notevoli risorse computazionali, limitando potenzialmente il deployment su dispositivi con risorse limitate.

Casi d'uso per YOLOv7

  • Rilevamento ad alte prestazioni: Adatto per applicazioni in cui è fondamentale ottenere la massima accuratezza possibile e le risorse computazionali sono meno limitate, come nei veicoli autonomi.
  • Ricerca: utilizzata nella ricerca accademica che esplora tecniche di rilevamento oggetti all'avanguardia.

Scopri di più su YOLOv7

Prestazioni e confronto tecnico

Un confronto diretto tra YOLOv5 e YOLOv7 sul dataset COCO rivela differenze chiave nei loro profili di performance. I modelli YOLOv7 generalmente raggiungono punteggi mAP più elevati, ma spesso a costo di una maggiore complessità e requisiti di risorse. Al contrario, Ultralytics YOLOv5 offre un profilo più bilanciato, eccellendo nella velocità di inferenza su CPU e mantenendo un'accuratezza competitiva, il che è cruciale per molti implementazioni nel mondo reale.

Modello dimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
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
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9

Conclusione: Quale modello dovresti scegliere?

La scelta tra YOLOv5 e YOLOv7 dipende molto dalle priorità del progetto.

YOLOv7 è una scelta valida per ricercatori e sviluppatori che necessitano della massima accuratezza possibile su benchmark standard e hanno accesso a significative risorse computazionali. Le sue innovative tecniche di training dimostrano come spingere i limiti delle prestazioni.

Tuttavia, per la stragrande maggioranza delle applicazioni pratiche, Ultralytics YOLOv5 rimane la scelta superiore. I suoi vantaggi chiave—facilità d'uso, implementazione rapida, eccellente equilibrio tra velocità e precisione e un ecosistema fiorente—la rendono uno strumento incredibilmente efficiente e affidabile. Consente agli sviluppatori di creare rapidamente soluzioni di computer vision robuste, dal prototipo iniziale all'implementazione in produzione.

Inoltre, l'ecosistema Ultralytics ha continuato a evolversi. I modelli più recenti come YOLOv8 e YOLO11 si basano sulle fondamenta di YOLOv5, offrendo prestazioni ancora migliori e una maggiore versatilità in attività come la segmentazione, la stima della posa e il tracciamento. Per gli sviluppatori che cercano un framework moderno, a prova di futuro e facile da usare, la famiglia Ultralytics YOLO fornisce la soluzione più interessante e completa.

Esplora altri modelli

Se stai esplorando modelli di object detection, potresti anche essere interessato a questi altri confronti:



📅 Creato 1 anno fa ✏️ Aggiornato 1 mese fa

Commenti