Vai al contenuto

RTDETRv2 vs. YOLOX: un confronto tecnico per il rilevamento di oggetti in tempo reale

Nel panorama in rapida evoluzione della computer vision, la ricerca di un equilibrio ottimale tra velocità e precisione continua a guidare l'innovazione. Due approcci distinti sono emersi come leader: RTDETRv2, basato su Transformer, e YOLOX, basato su CNN priva di ancore. Questo confronto esplora le loro differenze architettoniche, le metriche delle prestazioni e i casi d'uso ideali per aiutare gli sviluppatori a scegliere lo strumento giusto per le loro esigenze specifiche.

Panoramica dei modelli

Prima di addentrarci nelle specifiche tecniche, vediamo le origini e le filosofie di base di questi due modelli influenti.

RTDETRv2

RTDETRv2 (Real-Time DEtection TRansformer version 2) rappresenta un significativo passo avanti nel portare le architetture Transformer alle applicazioni in tempo reale. Sviluppato dai ricercatori di Baidu, si basa sull'RT-DETR originale introducendo una "Bag-of-Freebies" che migliora la stabilità e le prestazioni dell'addestramento senza aumentare la latenza dell'inferenza. L'obiettivo è quello di risolvere l'elevato costo computazionale tipicamente associato ai Vision Transformers (ViT), superando al contempo i rilevatori CNN tradizionali in termini di accuratezza.

Scopri di più su RTDETRv2

YOLOX

YOLOX ha rivitalizzato la famiglia YOLO nel 2021, passando a un meccanismo privo di ancore e incorporando tecniche avanzate come le testine disaccoppiate e l'assegnazione di etichette SimOTA. Pur mantenendo il backbone in stile Darknet caratteristico della serie YOLO , i suoi cambiamenti architettonici hanno affrontato molte limitazioni dei rilevatori basati su ancore, dando vita a un modello altamente efficiente e flessibile che si comporta in modo eccezionale sui dispositivi edge.

Scopri di più su YOLOX

Analisi delle prestazioni

I compromessi delle prestazioni tra RTDETRv2 e YOLOX sono diversi. RTDETRv2 privilegia la precisione di piccomAP), sfruttando i meccanismi di attenzione globale dei trasformatori per comprendere meglio le scene complesse e gli oggetti occlusi. Tuttavia, questo comporta requisiti computazionali più elevati, in particolare per quanto riguarda l'utilizzo della memoria GPU .

Al contrario, YOLOX è ottimizzato per la velocità e l'efficienza. Il suo design privo di ancoraggi semplifica la testa di rilevamento, riducendo il numero di parametri di progettazione e velocizzando la post-elaborazioneNMS). I modelli YOLOX, in particolare le varianti Nano e Tiny, sono spesso preferiti per le implementazioni di intelligenza artificiale ai margini, dove le risorse hardware sono limitate.

La tabella seguente evidenzia queste differenze. Si noti che, mentre RTDETRv2 ottiene punteggi mAP più elevati, YOLOX-s offre una maggiore velocità di inferenza su TensorRT, illustrando la sua idoneità per applicazioni sensibili alla latenza.

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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Approfondimento sull'architettura

La comprensione delle differenze strutturali aiuta a chiarire perché questi modelli hanno prestazioni diverse.

RTDETRv2: Il codificatore-decodificatore ibrido

RTDETRv2 affronta i colli di bottiglia computazionali dei modelli DETR standard introducendo un efficiente codificatore ibrido. Questo componente elabora caratteristiche multiscala, disaccoppiando l'interazione intrascala (all'interno dello stesso livello di caratteristiche) e la fusione interscala (tra i livelli).

  • Selezione delle queryIoU: Invece di selezionare query statiche sugli oggetti, RTDETRv2 seleziona un numero fisso di caratteristiche dell'immagine da utilizzare come query iniziali sugli oggetti in base ai loro punteggi di classificazione, migliorando l'inizializzazione.
  • Decoder flessibile: Il decodificatore supporta l'adattamento dinamico dei numeri di interrogazione durante l'inferenza, consentendo agli utenti di trovare un compromesso tra velocità e accuratezza senza dover ricorrere alla riqualificazione.

YOLOX: senza ancoraggio e disaccoppiato

YOLOX si allontana dal paradigma basato sulle ancore utilizzato in YOLOv4 e YOLOv5.

  • Anchor-Free: prevedendo direttamente i centri e le dimensioni degli oggetti, YOLOX elimina la necessità di progettare manualmente i box di ancoraggio, riducendo la complessità della regolazione degli iperparametri.
  • Testa disaccoppiata: separa i compiti di classificazione e regressione in rami diversi della testa della rete. Questa separazione spesso porta a una convergenza più rapida e a una migliore accuratezza.
  • SimOTA: una strategia avanzata di assegnazione delle etichette che considera il processo di assegnazione come un problema di trasporto ottimale, assegnando dinamicamente i campioni positivi alle verità di base in base a un costo di ottimizzazione globale.

Basato su ancore e senza ancore

I rilevatori tradizionali utilizzano caselle predefinite (ancore) per stimare la posizione degli oggetti. YOLOX elimina questa dipendenza, semplificando l'architettura e rendendo il modello più robusto alle diverse forme degli oggetti. RTDETRv2, essendo un trasformatore, utilizza le interrogazioni degli oggetti al posto delle ancore, imparando a seguire dinamicamente le regioni dell'immagine rilevanti.

Punti di forza e debolezze

RTDETRv2

  • Punti di forza:
    • Alta precisione: raggiunge lo stato dell'arte della mAP sui benchmark COCO .
    • Contesto globale: I meccanismi di attenzione dei trasformatori catturano efficacemente le dipendenze a lungo raggio.
    • Adattabilità: La selezione regolabile delle query consente una certa flessibilità al momento dell'inferenza.
  • Punti deboli:
    • Intenso di risorse: Richiede una notevole quantità di memoria GPU per l'addestramento e l'inferenza rispetto alle CNN.
    • Formazione più lenta: I trasformatori richiedono generalmente un tempo di convergenza più lungo rispetto alle architetture basate su CNN.

YOLOX

  • Punti di forza:
    • Velocità di inferenza: estremamente veloce, soprattutto nelle varianti più piccole (Nano, Tiny, S).
    • Facile da implementare: più facile da implementare su dispositivi edge e CPUS grazie a un numero inferiore di FLOP e di parametri.
    • Semplicità: Il design privo di ancoraggi riduce la complessità ingegneristica.
  • Punti deboli:
    • Precisione di picco inferiore: fatica ad eguagliare la precisione di alto livello dei modelli di trasformatori di grandi dimensioni come RTDETRv2-x.
    • Evoluzione delle caratteristiche: Manca di alcune delle funzionalità multimodali presenti nei framework più recenti.

Il vantaggio Ultralytics: perché scegliere YOLO11?

Mentre RTDETRv2 e YOLOX sono modelli formidabili, il modello Ultralytics YOLO con in testa lo stato dell'arte del sistema YOLO11-offre una soluzione completa che spesso supera i vantaggi dei singoli modelli.

  • Equilibrio delle prestazioni: YOLO11 è stato progettato per fornire un compromesso ottimale tra velocità e precisione. Spesso eguaglia o supera l'accuratezza dei modelli basati su trasformatori, pur mantenendo la velocità di inferenza caratteristica della famiglia YOLO .
  • Facilità d'uso: Ultralytics dà priorità all'esperienza degli sviluppatori. Grazie a un'API e a una CLI Python unificate, è possibile addestrare, convalidare e distribuire i modelli con poche righe di codice.
  • Efficienza della memoria: A differenza di RTDETRv2, che può essere pesante per la VRAM GPU , YOLO11 è altamente efficiente in termini di memoria sia durante l'addestramento che l'inferenza. Questo lo rende accessibile a ricercatori e sviluppatori con hardware di livello consumer.
  • Ecosistema ben curato: I modelli Ultralytics sono supportati da aggiornamenti frequenti, da una vivace comunità e da un'ampia documentazione. Funzioni come Ultralytics HUB facilitano la gestione dei modelli e la formazione nel cloud.
  • Versatilità: Oltre al semplice rilevamento degli oggetti, YOLO11 supporta nativamente la segmentazione delle istanze, la stima della posa, l'OBB e la classificazione, mentre YOLOX e RTDETRv2 si concentrano principalmente sul rilevamento.
  • Efficienza di formazione: Grazie ai pesi pre-addestrati disponibili per vari compiti e alle sofisticate capacità di apprendimento per trasferimento, YOLO11 riduce drasticamente il tempo e l'energia necessari per addestrare modelli ad alte prestazioni.

Scopri di più su YOLO11

Esempio di codice

Ultralytics rende incredibilmente semplice l'utilizzo di questi modelli avanzati. Di seguito è riportato un esempio di come eseguire l'inferenza utilizzando YOLO11; in particolare, Ultralytics supporta direttamente anche RT-DETR , semplificandone notevolmente l'utilizzo rispetto al repository originale.

from ultralytics import RTDETR, YOLO

# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")

# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")

# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")

# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")

Conclusione

La scelta tra RTDETRv2 e YOLOX dipende in ultima analisi dai vostri vincoli specifici.

  • Scegliete RTDETRv2 se la vostra applicazione richiede la massima accuratezza, ad esempio nella ricerca accademica o nell'ispezione industriale di alta precisione, e se avete accesso a potenti risorse GPU .
  • Scegliete YOLOX se state distribuendo in ambienti con risorse limitate, come Raspberry Pi o dispositivi mobili, dove ogni millisecondo di latenza conta.

Tuttavia, per la maggior parte delle applicazioni reali, Ultralytics YOLO11 emerge come la scelta migliore in assoluto. Combina i vantaggi di precisione delle architetture moderne con la velocità e l'efficienza delle CNN, il tutto in un ecosistema facile da usare e pronto per la produzione. Sia che stiate costruendo per l'edge che per il cloud, YOLO11 offre gli strumenti e le prestazioni necessarie per avere successo.

Esplora altri confronti

Per informare ulteriormente la tua decisione, considera di esplorare altri confronti di modelli:


Commenti