Vai al contenuto

YOLOv7 vs YOLO11: dall'eredità in tempo reale all'efficienza allo stato dell'arte

Per navigare nel panorama dei modelli di visione computerizzata è necessario comprendere le sfumature tra le architetture consolidate e le ultime innovazioni all'avanguardia (SOTA). Questa guida fornisce un confronto tecnico completo tra YOLOv7, un'importante pietra miliare della serie YOLO , e Ultralytics YOLO11, il modello all'avanguardia progettato per prestazioni e versatilità superiori.

Esploreremo le loro differenze architettoniche, le metriche di benchmark e le applicazioni pratiche per aiutare sviluppatori e ricercatori a scegliere lo strumento ottimale per compiti che vanno dal rilevamento di oggetti alla segmentazione di istanze complesse.

YOLOv7: un benchmark per un'architettura efficiente

Rilasciato nel luglio del 2022, YOLOv7 ha rappresentato un importante balzo in avanti nell'equilibrio tra efficienza di addestramento e velocità di inferenza. È stato progettato per superare le prestazioni dei rilevatori precedenti, concentrandosi su ottimizzazioni architettoniche che riducono il numero di parametri senza sacrificare l'accuratezza.

Autori: Chien-Yao Wang, Alexey Bochkovskiy, and 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
Docsultralytics

Punti salienti dell'architettura

YOLOv7 ha introdotto la Extended Efficient Layer Aggregation Network (E-ELAN). Questa architettura consente al modello di apprendere più caratteristiche diverse controllando i percorsi di gradiente più brevi e più lunghi, migliorando la convergenza durante l'addestramento. Inoltre, ha utilizzato il "bag-of-freebies addestrabile", un insieme di strategie di ottimizzazione come la ri-parametrizzazione del modello e l'assegnazione dinamica delle etichette, che migliorano l'accuratezza senza aumentare il costo di inferenza.

Pur essendo principalmente un modello di rilevamento degli oggetti, la comunità open-source ha esplorato l'estensione di YOLOv7 per la stima della posa. Tuttavia, queste implementazioni spesso mancano della perfetta integrazione che si trova nei framework unificati.

Punti di forza e limiti

YOLOv7 è apprezzato per la sua:

  • Prestazioni solide: Al momento del rilascio ha stabilito una nuova linea di riferimento per i rilevatori in tempo reale, ottenendo buone prestazioni con il set di datiCOCO .
  • Innovazione architettonica: L'introduzione di E-ELAN ha influenzato le successive ricerche sulla progettazione delle reti.

Tuttavia, deve affrontare delle sfide nei flussi di lavoro moderni:

  • Complessità: La pipeline di formazione può essere complessa e richiede una configurazione manuale significativa rispetto agli standard moderni.
  • Versatilità limitata: Non supporta in modo nativo attività come la classificazione o le bounding box orientate (OBB).
  • Utilizzo delle risorse: L'addestramento di varianti più grandi, come YOLOv7x, richiede una notevole quantità di risorse per la GPU che può rappresentare un collo di bottiglia per i ricercatori con hardware limitato.

Per saperne di più su YOLOv7

Ultralytics YOLO11: ridefinire velocità, precisione e facilità d'uso

Ultralytics YOLO11 è l'ultima evoluzione della rinomata linea YOLO , progettata per offrire prestazioni SOTA in un'ampia gamma di attività di computer vision. Basato su un'eredità di continui miglioramenti, YOLO11 offre un'architettura raffinata che massimizza l'efficienza per l'implementazione nel mondo reale.

Autori: Glenn Jocher e Jing Qiu
Organizzazione:Ultralytics
Data: 2024-09-27
GitHubultralytics
Docsyolo11

Architettura avanzata e versatilità

YOLO11 impiega una struttura portante modernizzata che utilizza blocchi C3k2 e un modulo SPPF migliorato per catturare in modo più efficace le caratteristiche a varie scale. Questo design si traduce in un modello non solo più accurato, ma anche significativamente più leggero in termini di parametri e FLOP rispetto ai suoi predecessori e concorrenti.

Una caratteristica distintiva di YOLO11 è il supporto multi-task nativo. All'interno di un unico quadro, gli utenti possono eseguire:

  • Rilevamento: Identificazione di oggetti con caselle di delimitazione.
  • Segmentazione: Mascheramento a livello di pixel per un'analisi precisa della forma.
  • Classificazione: assegnazione di etichette di classe a intere immagini.
  • Stima della posa: Rilevamento di punti chiave su corpi umani.
  • OBB: Rilevamento di oggetti ruotati, fondamentale per le immagini aeree.

Ecosistema unificato

Ultralytics YOLO11 si integra perfettamente con Ultralytics HUB, una piattaforma per la gestione dei set di dati, la formazione senza codice e la distribuzione con un solo clic. Questa integrazione accelera in modo significativo il ciclo di vita di MLOps.

Perché gli sviluppatori scelgono YOLO11

  • Facilità d'uso: Con un design incentrato sull'utente, YOLO11 può essere implementato con poche righe di codice Python o tramite una semplice CLI.
  • Ecosistema ben curato: Sostenuto da una comunità attiva e dal team di Ultralytics , il modello riceve frequenti aggiornamenti, garantendo la compatibilità con le ultime versioni di PyTorch e gli acceleratori hardware più recenti.
  • Equilibrio delle prestazioni: Raggiunge un eccezionale compromesso tra velocità di inferenza e precisione media (mAP), che lo rende ideale sia per i dispositivi edge che per i server cloud.
  • Efficienza della memoria: I modelli YOLO11 richiedono in genere meno memoria CUDA durante l'addestramento rispetto alle architetture più vecchie o ai modelli basati su trasformatori, consentendo di ottenere batch di dimensioni maggiori o di addestrarsi su hardware modesto.

Scopri di più su YOLO11

Confronto delle prestazioni: Benchmark tecnici

La tabella seguente illustra le differenze di prestazioni tra YOLOv7 e YOLO11. I dati evidenziano come le moderne ottimizzazioni consentano a YOLO11 di ottenere una precisione superiore con una frazione del costo computazionale.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9

Analisi:

  • Efficienza: YOLO11m eguaglia l'accuratezza di YOLOv7l (51,5 vs 51,4 mAP) pur utilizzando quasi la metà dei parametri (20,1M vs 36,9M) e un numero significativamente inferiore di FLOP.
  • Velocità: Per le applicazioni in tempo reale, YOLO11n è drasticamente più veloce, con una velocità di 1,5 ms su una GPU T4, il che lo rende perfetto per l'elaborazione di video ad alta velocità.
  • Precisione: Il modello più grande, YOLO11x, supera YOLOv7x in termini di accuratezza (54,7 contro 53,1 mAP) pur mantenendo un numero di parametri competitivo.

Casi d'uso reali

Agricoltura e monitoraggio ambientale

Nell'agricoltura di precisione, il rilevamento delle malattie delle colture o il monitoraggio della crescita richiedono modelli in grado di funzionare su dispositivi con potenza limitata, come i droni o i sensori di campo.

  • YOLO11: la sua architettura leggera (in particolare YOLO11n/s) consente l'implementazione su dispositivi Raspberry Pi o NVIDIA Jetson, permettendo il monitoraggio in tempo reale della salute delle colture.
  • YOLOv7: sebbene sia accurato, la sua maggiore richiesta di calcolo ne limita l'utilità sui dispositivi edge alimentati a batteria.

Produzione intelligente e controllo qualità

I sistemi di ispezione visiva automatizzati richiedono un'elevata precisione per detect difetti più piccoli nelle linee di produzione.

  • YOLO11: la capacità del modello di eseguire la segmentazione e l'OBB è fondamentale in questo caso. Ad esempio, l'OBB è essenziale per rilevare i componenti ruotati su un nastro trasportatore, una funzione supportata in modo nativo da YOLO11 ma che richiede implementazioni personalizzate in YOLOv7.
  • YOLOv7: adatto per il rilevamento di rettangoli di selezione standard, ma meno adattabile a difetti geometrici complessi senza modifiche significative.

Sorveglianza e sicurezza

I sistemi di sicurezza spesso elaborano più flussi video contemporaneamente.

  • YOLO11: L'elevata velocità di inferenza consente a un singolo server di elaborare più flussi in parallelo, riducendo i costi dell'infrastruttura.
  • YOLOv7: efficace, ma la latenza più elevata per frame riduce il numero totale di canali che una singola unità può gestire.

Efficienza nell'implementazione e nella formazione

Una delle caratteristiche principali dell'ecosistema Ultralytics è l'esperienza semplificata degli sviluppatori. Di seguito viene illustrato come iniziare.

Semplicità nel codice

Ultralytics YOLO11 è stato progettato per essere "batterie incluse", astraendo dal codice boilerplate complesso.

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Al contrario, i repository più vecchi spesso richiedono la clonazione del repo, la regolazione manuale dei file di configurazione e l'esecuzione di complessi script di shell per la formazione e l'inferenza.

Flessibilità di esportazione

YOLO11 supporta l'esportazione con un solo clic in diversi formati per la distribuzione, tra cui ONNX, TensorRTCoreML e TFLite. Questa flessibilità garantisce che il modello sia pronto per la produzione in qualsiasi ambiente.

Conclusione: Il chiaro vincitore

Mentre YOLOv7 rimane un modello di tutto rispetto nella storia della computer vision, Ultralytics YOLO11 rappresenta il futuro. Per gli sviluppatori e i ricercatori, YOLO11 offre un pacchetto interessante:

  1. Metriche superiori: mAP più elevato e velocità di inferenza più elevata.
  2. Ricco ecosistema: Accesso a Ultralytics HUB, ampia documentazione e supporto della comunità.
  3. Versatilità: Un unico framework per rilevamento, segmentazione, posa, classificazione e OBB.
  4. A prova di futuro: Aggiornamenti e manutenzione continui garantiscono la compatibilità con le nuove librerie hardware e software.

Per qualsiasi nuovo progetto, sfruttare l'efficienza e la facilità d'uso di YOLO11 è il percorso consigliato per ottenere risultati all'avanguardia con il minimo attrito.

Esplora altri modelli

Se siete interessati a ulteriori confronti, esplorate le pagine correlate della documentazione:


Commenti