RTDETRv2 vs. YOLO11: confronto tra architetture Transformer e CNN
Il panorama del rilevamento di oggetti in tempo reale si è evoluto rapidamente, con due distinte filosofie architetturali in prima linea: l'approccio Vision Transformer (ViT) sostenuto da modelli come RTDETRv2 e la linea Convolutional Neural Network (CNN) perfezionata da Ultralytics YOLO11.
Mentre RTDETRv2 (Real-Time Detection Transformer versione 2) amplia i confini di ciò che le architetture basate su trasformatori possono raggiungere in termini di accuratezza e comprensione del contesto globale, YOLO11 rappresenta l'apice dell'efficienza, della versatilità e della facilità di implementazione. Questo confronto esplora le loro specifiche tecniche, le differenze architetturali e le applicazioni pratiche per aiutare gli sviluppatori a scegliere lo strumento giusto per i loro progetti di visione artificiale.
Tabella comparativa: metriche e specifiche
La tabella seguente evidenzia le metriche di prestazione di entrambi i modelli. Si noti come YOLO11 offre una gamma più ampia di dimensioni dei modelli, rendendolo adattabile a tutto, dai microcontrollori ai server di fascia alta, mentre RTDETRv2 si concentra principalmente su modelli ad alta capacità.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Analisi Architetturale
La differenza fondamentale tra questi due modelli all'avanguardia risiede nel modo in cui elaborano le informazioni visive.
RTDETRv2: l'approccio Transformer
RTDETRv2, sviluppato dai ricercatori di Baidu, si basa sul successo dell'originale RT-DETR. Sfrutta la potenza dei trasformatori per catturare le dipendenze a lungo raggio nelle immagini, una caratteristica spesso difficile da gestire per le CNN tradizionali.
- Codificatore ibrido: RTDETRv2 utilizza un codificatore ibrido che elabora caratteristiche multiscala, consentendo al modello di "prestare attenzione" a diverse parti di un'immagine contemporaneamente.
- PrevisioneNMS: una delle sue caratteristiche distintive è l'eliminazione della soppressione non massima (NMS). Prevedendo gli oggetti direttamente utilizzando una serie di query, semplifica la pipeline di post-elaborazione, anche se questo spesso comporta una maggiore complessità di addestramento.
- Bag-of-Freebies: l'aggiornamento "v2" introduce strategie di addestramento ottimizzate e modifiche architetturali per migliorare la velocità e la precisione di convergenza rispetto alla baseline originale.
Metadati:
- Autori: Wenyu Lv, Yian Zhao, Qinyao Chang, et al.
- Organizzazione: Baidu
- Data: 17/07/2024 (Arxiv v2)
- Arxiv:RT-DETRv2 Paper
- GitHub:Repository RT-DETR
YOLO11: lo standard CNN perfezionato
Ultralytics YOLO11 rappresenta l'evoluzione dell'architettura CNN, concentrandosi sulla massimizzazione dell'efficienza dell'estrazione delle caratteristiche e sulla minimizzazione del sovraccarico computazionale.
- Blocchi C3k2 e C2PSA: YOLO11 blocchi avanzati nella sua struttura portante e nel collo. Il blocco C3k2 utilizza kernel di dimensioni variabili per una rappresentazione più ricca delle caratteristiche, mentre il blocco C2PSA integra meccanismi di attenzione in modo efficiente senza il costo elevato dei trasformatori completi.
- Supporto unificato delle attività: a differenza di RTDETRv2, che è principalmente un rilevatore di oggetti, YOLO11 progettato come base visiva universale. Supporta in modo nativo la segmentazione delle istanze, la stima della posa, OBB e la classificazione all'interno dello stesso framework.
- Ottimizzazione edge: l'architettura è specificamente ottimizzata per garantire velocità su diversi tipi di hardware, dalle CPU agli acceleratori Edge AI come NVIDIA .
Metadati:
- Autori: Glenn Jocher e Jing Qiu
- Organizzazione:Ultralytics
- Data: 2024-09-27
- Documentazione:Documentazione YOLO11
Lo sapevi?
Mentre RTDETRv2 elimina NMS progettazione, Ultralytics YOLO26 presenta anche un design nativo End-to-End NMS, che combina la velocità delle CNN con l'implementazione semplificata dei trasformatori.
Ecosistema e facilità d'uso
Per gli sviluppatori e gli ingegneri ML, l'ecosistema software che circonda un modello è spesso importante quanto le metriche grezze del modello stesso.
VantaggiUltralytics : YOLO11 della Ultralytics , leader del settore, che offre un'esperienza coerente dalla gestione dei dati alla distribuzione.
- Efficienza della formazione: YOLO11 sono noti per la rapidità della loro formazione. Il codice base include la regolazione automatica degli iperparametri e controlli intelligenti dei set di dati.
- Flessibilità di implementazione: gli utenti possono esportare i modelli in formati quali ONNX, TensorRT, CoreML e TFLite una sola riga di codice.
- Supporto della community: con milioni di download, la Ultralytics offre risorse complete, dai tutorial su YouTube alle discussioni attive su GitHub.
Considerazioni su RTDETRv2: RTDETRv2 è principalmente un repository di ricerca. Sebbene potente, spesso manca dell'esperienza "batterie incluse". La configurazione delle pipeline di formazione, la gestione dei set di dati e l'esportazione per i dispositivi edge richiedono in genere una configurazione manuale più complessa e Python scripting.
Requisiti di prestazioni e risorse
Quando si implementa nel mondo reale, è fondamentale trovare il giusto equilibrio tra precisione e consumo di risorse.
GPU e formazione
I trasformatori sono notoriamente affamati di memoria. RTDETRv2 richiede in genere una quantità significativa di GPU VRAM della GPU per stabilizzare i suoi meccanismi di attenzione durante l'addestramento. Ciò può rendere difficile l'addestramento su hardware di livello consumer o richiedere batch di dimensioni inferiori, il che può influire sulle statistiche di normalizzazione dei batch.
YOLO11 è significativamente più efficiente in termini di memoria. La sua architettura basata su CNN consente batch di dimensioni maggiori su GPU standard, accelerando l'addestramento e riducendo i costi di sviluppo. Questa efficienza si estende all'inferenza, dove i modelli YOLO11n possono essere eseguiti in tempo reale su CPU, un risultato che i modelli basati su trasformatori faticano a eguagliare a causa della loro complessità computazionale quadratica rispetto ai token delle immagini.
Compromesso tra precisione e velocità
Come mostrato nella tabella comparativa, YOLO11x raggiunge un punteggio mAP più elevato mAP (54,7) rispetto a RTDETRv2-x (54,3), mantenendo velocità di inferenza competitive. Per le applicazioni che richiedono velocità estreme, le YOLO11 più piccole (n/s) offrono un livello di prestazioni che RTDETRv2 non è in grado di eguagliare, rendendo YOLO11 chiaro vincitore per l'implementazione su dispositivi mobili e IoT.
Esempio di codice: utilizzo di YOLO11 RT-DETR
Ultralytics un supporto di prim'ordine sia per YOLO propri YOLO nativi che per le versioni supportate di RT-DETR, consentendo di passare da un'architettura all'altra senza soluzione di continuità.
from ultralytics import RTDETR, YOLO
# 1. Load the Ultralytics YOLO11 model (Recommended)
# Best for general purpose, edge deployment, and versatility
model_yolo = YOLO("yolo11n.pt")
results_yolo = model_yolo.train(data="coco8.yaml", epochs=50, imgsz=640)
# 2. Load an RT-DETR model via Ultralytics API
# Useful for research comparison or specific high-compute scenarios
model_rtdetr = RTDETR("rtdetr-l.pt")
results_rtdetr = model_rtdetr("https://ultralytics.com/images/bus.jpg")
# Visualize the YOLO11 results
for result in results_yolo:
result.show()
Applicazioni nel mondo reale
Dove YOLO11 eccelle
Grazie alla sua leggerezza e alla sua elevata velocità, YOLO11 la scelta preferita per:
- Sistemi autonomi: droni e robotica in cui la bassa latenza è fondamentale per la sicurezza.
- Città intelligenti: monitoraggio del traffico in tempo reale su dispositivi edge come NVIDIA .
- Agricoltura: monitoraggio delle colture e rilevamento delle erbacce su apparecchiature mobili alimentate a batteria.
- Compiti versatili: progetti che richiedono la stima della posa o bounding box orientati insieme al rilevamento.
Dove si inserisce RTDETRv2
RTDETRv2 è particolarmente indicato per:
- Server ad alta potenza di calcolo: scenari in cui sono disponibili potenza e GPU illimitate.
- Occlusioni complesse: ambienti in cui il campo ricettivo globale dei trasformatori aiuta a risolvere la forte sovrapposizione tra gli oggetti.
- Ricerca: Esplorazione accademica dei Vision Transformers (ViT).
Conclusione
Entrambe le architetture dimostrano gli incredibili progressi compiuti nel campo della visione artificiale. RTDETRv2 mette in luce il potenziale dei trasformatori nel mettere in discussione il predominio delle CNN nelle attività di rilevamento. Tuttavia, per la stragrande maggioranza delle applicazioni pratiche, Ultralytics YOLO11 rimane la scelta migliore.
Con il suo framework unificato, i requisiti di risorse ridotti, la gamma più ampia di attività supportate e l'ecosistema di implementazione maturo, YOLO11 agli sviluppatori di passare più rapidamente dal prototipo alla produzione. A chi è alla ricerca della massima efficienza e di un design NMS, consigliamo anche di esplorare l'innovativo YOLO26, che combina le migliori caratteristiche di entrambi i mondi in un potente strumento unificato e end-to-end.