Vai al contenuto

RTDETRv2 vs YOLOv7: un confronto tecnico dettagliato

Il panorama del rilevamento degli oggetti in tempo reale ha visto una feroce competizione tra le reti neurali convoluzionali (CNN) e gli emergenti trasformatori di visione (ViT). Due pietre miliari di questa evoluzione sono RTDETRv2 (Real-Time Detection Transformer v2) e YOLOv7. YOLOv7 (You Only Look Once versione 7). Mentre YOLOv7 rappresenta l'apice dell'ottimizzazione dell'architettura CNN, RTDETRv2 introduce la potenza dei trasformatori per eliminare la necessità di fasi di post-elaborazione come la soppressione non massimaleNMS).

Questo confronto esplora le specifiche tecniche, le differenze architettoniche e le metriche delle prestazioni di entrambi i modelli per aiutare gli sviluppatori a scegliere lo strumento giusto per le loro applicazioni di computer vision.

Metriche delle prestazioni: Precisione e velocità

La tabella seguente presenta un confronto diretto delle principali metriche di prestazione. RTDETRv2-x dimostra un'accuratezza superiore con un mAP più elevato, in gran parte grazie alla comprensione del contesto globale basata su trasformatori. Tuttavia, YOLOv7 rimane competitivo, in particolare negli scenari in cui sono richiesti un peso ridotto e una velocità di inferenza bilanciata su hardware diversi.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

RTDETRv2: L'approccio del trasformatore

RTDETRv2 si basa sul successo dell'originale RT-DETR, il primo rilevatore basato su trasformatori a competere realmente con i modelli YOLO in termini di velocità in tempo reale. Sviluppato dai ricercatori di Baidu, affronta i colli di bottiglia computazionali associati all'interazione multi-scala nelle architetture DETR standard.

Caratteristiche architettoniche principali

RTDETRv2 utilizza un codificatore ibrido che elabora in modo efficiente le caratteristiche multiscala disaccoppiando l'interazione intrascala e la fusione interscala. Questo design riduce significativamente i costi computazionali rispetto ai trasformatori standard. Una caratteristica di spicco è la selezione delle queryIoU, che migliora l'inizializzazione delle query sugli oggetti, portando a una convergenza più rapida e a una maggiore precisione. A differenza dei modelli basati su CNN, RTDETRv2 è NMS, ovvero non richiede la postelaborazione Non-Maximum Suppression, semplificando la pipeline di distribuzione e riducendo il jitter di latenza.

Vantaggio del trasformatore

Il vantaggio principale dell'architettura RTDETRv2 è la sua capacità di catturare il contesto globale. Mentre le CNN considerano campi recettivi localizzati, il meccanismo di autoattenzione dei trasformatori permette al modello di considerare l'intero contesto dell'immagine quando rileva gli oggetti, il che è vantaggioso per risolvere le ambiguità in scene complesse con occlusione.

Scopri di più su RT-DETR

YOLOv7: il picco della CNN

YOLOv7 spinge i confini di ciò che è possibile fare con le reti neurali convoluzionali. Si concentra sull'ottimizzazione del processo di addestramento e dell'architettura del modello per ottenere un "bag-of-freebies", ovvero metodi che aumentano l'accuratezza senza aumentare il costo dell'inferenza.

Caratteristiche architettoniche principali

YOLOv7 introduce E-ELAN (Extended Efficient Layer Aggregation Network), che migliora la capacità di apprendimento della rete controllando la lunghezza del percorso del gradiente. Impiega inoltre la ri-parametrizzazione del modello, una tecnica in cui la struttura del modello è complessa durante l'addestramento per migliorare l'apprendimento, ma è semplificata durante l'inferenza per garantire la velocità. Ciò consente a YOLOv7 di mantenere alte le prestazioni sui dispositiviGPU , pur mantenendo i parametri relativamente bassi rispetto ai modelli a trasformatore.

Per saperne di più su YOLOv7

Analisi comparativa

Architettura e versatilità

La differenza fondamentale sta nel design della struttura portante e della testa. YOLOv7 si affida a strutture CNN profonde, altamente ottimizzate per CUDA ma possono avere difficoltà a gestire le dipendenze a lungo raggio in un'immagine. RTDETRv2 sfrutta i meccanismi di attenzione per comprendere le relazioni tra pixel distanti, rendendolo robusto in ambienti disordinati. Tuttavia, ciò comporta un maggiore consumo di memoria durante l'addestramento.

Modelli Ultralytics come YOLO11 colmano questo divario offrendo un'architettura basata su CNN che integra moderni moduli di tipo attentivo, fornendo la velocità delle CNN con la precisione solitamente riservata ai trasformatori. Inoltre, mentre RTDETRv2 è principalmente un rilevatore di oggetti, i modelli Ultralytics più recenti supportano in modo nativo la segmentazione delle istanze, la stima della posa e la classificazione.

Formazione e facilità d'uso

L'addestramento di modelli trasformatori come RTDETRv2 richiede in genere una notevole quantità di memoria GPU ed epoche di addestramento più lunghe per convergere rispetto a CNN come YOLOv7.

Per gli sviluppatori che cercano Efficienza della formazione e Facilità d'usoL'ecosistema di Ultralytics offre un vantaggio distinto. Con il ultralytics Con il pacchetto Python , gli utenti possono addestrare, validare e distribuire i modelli con poche righe di codice, accedendo a una serie di pesi pre-addestrati per diversi compiti.

from ultralytics import RTDETR, YOLO

# Load an Ultralytics YOLOv7-style model (if available) or YOLO11
model_yolo = YOLO("yolo11n.pt")  # Recommended for best performance
model_yolo.train(data="coco8.yaml", epochs=10)

# Load RT-DETR for comparison
model_rtdetr = RTDETR("rtdetr-l.pt")
model_rtdetr.predict("asset.jpg")

Distribuzione ed ecosistema

YOLOv7 gode di un ampio supporto a causa della sua età, ma l'integrazione nelle moderne pipeline MLOps può essere manuale. RTDETRv2 è più recente e gode di un supporto crescente. Al contrario, Ultralytics beneficiano di un ecosistema ben curato, che comprende l'esportazione senza soluzione di continuità in ONNXTensorRT e CoreML e l'integrazione con strumenti come Ultralytics HUB per l'addestramento nel cloud e la gestione dei set di dati.

Casi d'uso ideali

  • Scegliete RTDETRv2 se: Si dispone di un'ampia memoria GPU e si richiede un'elevata precisione nelle scene con forte occlusione o affollamento, dove l NMS tradizionalmente fallisce. È eccellente per la ricerca e i sistemi di sorveglianza di alto livello.
  • Scegliete YOLOv7 se: Avete bisogno di un'architettura CNN collaudata e consolidata che funzioni in modo efficiente su hardware GPU standard per attività di rilevamento generiche.
  • Scegliete Ultralytics YOLO11 se: Avete bisogno del miglior equilibrio di prestazioni tra velocità e precisione, di requisiti di memoria ridotti e di un modello versatile in grado di rilevare, segmentare e stimare la posa. È la scelta ideale per gli sviluppatori che apprezzano un flusso di lavoro semplificato e un'ampia documentazione.

Perché passare a YOLO11?

YOLOv7 e RTDETRv2 sono potenti, YOLO11 rappresenta l'ultima evoluzione dell'intelligenza artificiale della visione. Richiede meno memoria CUDA rispetto ai trasformatori, si allena più velocemente e offre una precisione all'avanguardia su una gamma più ampia di hardware, dai dispositivi edge ai server cloud.

Conclusione

Sia RTDETRv2 che YOLOv7 hanno segnato la direzione della computer vision. RTDETRv2 ha sfidato con successo l'idea che i trasformatori siano troppo lenti per le applicazioni in tempo reale, mentre YOLOv7 ha dimostrato l'efficienza duratura delle CNN. Tuttavia, per la maggior parte delle applicazioni del mondo reale oggi, la Ultralytics YOLO11 offre un'esperienza di sviluppo superiore, combinando le migliori caratteristiche di questi predecessori con un ecosistema moderno e di supporto.

Esplora altri confronti

Per comprendere meglio il panorama dei modelli, esplorate questi confronti:


Commenti