Vai al contenuto

YOLOv10 . RTDETRv2: architetture e prestazioni nel rilevamento in tempo reale

La scelta dell'architettura giusta per il rilevamento degli oggetti è una decisione fondamentale per gli sviluppatori che realizzano applicazioni di visione artificiale. Questa guida fornisce un'analisi approfondita di due approcci distinti al rilevamento in tempo reale: YOLOv10, un'evoluzione della YOLO basata su CNN che introduce funzionalità end-to-end, e RTDETRv2, un modello basato su trasformatori progettato per sfidare il predominio delle CNN. Analizziamo le loro architetture, i benchmark e l'idoneità per vari scenari di implementazione.

Panoramica e Origini del Modello

Comprendere la genealogia di questi modelli aiuta a chiarire le loro filosofie di progettazione e i casi d'uso previsti.

YOLOv10: La CNN NMS

Rilasciato nel maggio 2024 dai ricercatori dell'Università di Tsinghua, YOLOv10 un cambiamento significativo nella YOLO . Affronta un ostacolo di lunga data nei rilevatori in tempo reale: la soppressione non massima (NMS). Utilizzando assegnazioni doppie coerenti per un addestramento NMS, YOLOv10 una latenza inferiore e semplifica le pipeline di implementazione rispetto alle generazioni precedenti come YOLOv9 YOLOv8.

Scopri di più su YOLOv10

RTDETRv2: lo sfidante Transformer

RT-DETR Real-Time Detection Transformer) è stato il primo modello basato su trasformatori a competere realmente con YOLO . RTDETRv2, sviluppato da Baidu, perfeziona questa architettura con un approccio "Bag of Freebies", ottimizzando la strategia di formazione e l'architettura per una migliore convergenza e flessibilità. Sfrutta la potenza dei trasformatori di visione (ViT) per catturare il contesto globale, spesso superando le CNN in scene complesse con occlusione, sebbene con un costo computazionale più elevato.

  • Autori: Wenyu Lv, Yian Zhao, Qinyao Chang, et al.
  • Organizzazione:Baidu
  • Data: 17/04/2023 ( RT-DETR originale), aggiornamenti nel 2024
  • Link:Arxiv Paper | GitHub Repository

Confronto dell'Architettura Tecnica

La differenza fondamentale risiede nel modo in cui questi modelli elaborano le caratteristiche e generano previsioni.

Architettura YOLOv10

YOLOv10 una struttura di rete neurale convoluzionale (CNN), ma rivoluziona il processo di addestramento e la testa.

  1. Assegnazioni doppie coerenti: utilizza un'assegnazione uno-a-molti per una supervisione approfondita durante l'addestramento e un'assegnazione uno-a-uno per l'inferenza. Ciò consente al modello di prevedere un unico riquadro ottimale per ogni oggetto, eliminando la necessità di NMS.
  2. Progettazione olistica dell'efficienza: l'architettura è dotata di teste di classificazione leggere e downsampling con disaccoppiamento spaziale-canale per ridurre la ridondanza computazionale.
  3. Convoluzioni con kernel di grandi dimensioni: analogamente ai recenti progressi, utilizza campi ricettivi di grandi dimensioni per migliorare la precisione senza il costo elevato dei meccanismi di auto-attenzione.

Architettura RTDETRv2

RTDETRv2 si basa sulla struttura del codificatore-decodificatore del trasformatore.

  1. Codificatore ibrido: utilizza una struttura CNN (in genere ResNet o HGNetv2) per estrarre le caratteristiche, che vengono poi elaborate da un codificatore trasformatore. Ciò consente di modellare le dipendenze a lungo raggio nell'immagine.
  2. Selezione delle query con incertezza minima: questo meccanismo seleziona query iniziali di alta qualità per il decodificatore, migliorando la velocità di inizializzazione e convergenza.
  3. Distacco flessibile: RTDETRv2 supporta il campionamento discreto, consentendo agli utenti di trovare un compromesso tra velocità e precisione in modo più dinamico rispetto alle rigide strutture CNN.

Perché l'ecosistema è importante

Sebbene modelli accademici come RTDETRv2 offrano architetture innovative, spesso mancano degli strumenti robusti necessari per la produzione. Ultralytics come YOLO26 e YOLO11 sono integrati in un ecosistema completo. Questo include la Ultralytics per una facile gestione dei set di dati, formazione con un solo clic e implementazione senza soluzione di continuità su dispositivi edge.

Metriche di performance

La tabella seguente mette a confronto le prestazioni di entrambi i modelli sul COCO .

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Analisi dei Benchmark

  • Dominio della latenza: YOLOv10 una latenza significativamente inferiore su tutti i modelli di dimensioni diverse. Ad esempio, YOLOv10s è circa 2 volte più veloce di RTDETRv2-s su GPU T4, pur mantenendo un'accuratezza competitiva (46,7% contro 48,1% mAP).
  • Efficienza dei parametri: YOLOv10 altamente efficiente in termini di parametri e FLOP. YOLOv10m raggiunge una precisione simile a RTDETRv2-m, ma richiede meno della metà dei parametri (15,4 milioni contro 36 milioni), rendendolo di gran lunga superiore per le applicazioni AI mobili e edge.
  • Limite massimo di precisione: RTDETRv2 eccelle nelle categorie "Piccola" e "Media" per quanto riguarda la precisione grezza (mAP), sfruttando la capacità del trasformatore di vedere il contesto globale. Tuttavia, alle scale più grandi (X-large), YOLOv10 e supera RTDETRv2, pur rimanendo più veloce.

Considerazioni relative alla formazione e all'implementazione

Quando si passa dalla ricerca alla produzione, fattori quali l'efficienza della formazione e l'utilizzo della memoria diventano fondamentali.

Requisiti di Memoria

I modelli basati su trasformatori come RTDETRv2 consumano generalmente una quantità significativamente maggiore CUDA durante l'addestramento a causa della complessità quadratica dei meccanismi di auto-attenzione. Ciò richiede costose GPU di fascia alta per l'addestramento. Al contrario, YOLO Ultralytics sono rinomati per la loro efficienza in termini di memoria. Modelli come YOLOv10 il più recente YOLO26 possono spesso essere ottimizzati su hardware di livello consumer o istanze cloud standard, abbassando la barriera all'ingresso.

Facilità d'uso ed ecosistema

Uno dei vantaggi più significativi dell'utilizzo YOLOv10 la Ultralytics è l'esperienza utente semplificata.

  • Ultralytics : è possibile caricare, addestrare e implementare YOLOv10 poche righe di Python , identico al flusso di lavoro per YOLOv8 o YOLO11.
  • Opzioni di esportazione: Ultralytics l'esportazione istantanea in formati quali ONNX, TensorRT, CoreML e OpenVINO. Sebbene RTDETRv2 abbia migliorato il supporto alla distribuzione, spesso richiede una configurazione più complessa per gestire le forme dinamiche associate ai trasformatori.
  • Documentazione: una documentazione completa garantisce agli sviluppatori l'accesso a tutorial, guide agli iperparametri e risorse per la risoluzione dei problemi.
from ultralytics import YOLO

# Load a pretrained YOLOv10 model
model = YOLO("yolov10n.pt")

# Train on a custom dataset with just one line
model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Export to ONNX for deployment
model.export(format="onnx")

Casi d'uso ideali

Quando scegliere YOLOv10

YOLOv10 la scelta preferita per scenari in cui la velocità e i limiti delle risorse sono fondamentali.

  • Applicazioni mobili:iOS che richiedono inferenze in tempo reale senza consumare la batteria.
  • Sistemi integrati: funzionano su dispositivi come Raspberry Pi o NVIDIA dove la memoria (RAM) è limitata.
  • Elaborazione video ad alto FPS: applicazioni come il monitoraggio del traffico o l'analisi sportiva, in cui è essenziale mantenere un frame rate elevato per evitare sfocature dovute al movimento o eventi persi.

Quando scegliere RTDETRv2

RTDETRv2 è adatto quando la precisione è la priorità e le risorse hardware sono abbondanti.

  • Scene complesse: ambienti con forte occlusione o ingombro in cui il meccanismo di attenzione globale aiuta a distinguere gli oggetti sovrapposti.
  • Inferenza lato server: scenari in cui i modelli vengono eseguiti su potenti GPU cloud, rendendo accettabili la maggiore latenza e il costo della memoria per un leggero aumento mAP.

Il futuro: Ultralytics

Mentre YOLOv10 il concetto NMS, il settore è in rapida evoluzione. Rilasciato nel gennaio 2026, Ultralytics rappresenta l'apice di questa evoluzione.

YOLO26 adotta il design end-to-end NMS introdotto da YOLOv10 lo migliora con l'ottimizzatore MuSGD (ispirato all'addestramento LLM) e funzioni di perdita migliorate come ProgLoss. Ciò si traduce in modelli non solo più facili da addestrare, ma anche fino al 43% più veloci sulla CPU rispetto alle generazioni precedenti. Inoltre, YOLO26 supporta nativamente una gamma completa di attività, tra cui segmentazione, stima della posa e OBB, offrendo una versatilità che i modelli incentrati sul rilevamento come RTDETRv2 non possono eguagliare.

Per gli sviluppatori che cercano il miglior equilibrio tra velocità, precisione e facilità di implementazione, è altamente consigliato il passaggio a YOLO26.

Scopri di più su YOLO26

Riepilogo

Sia YOLOv10 RTDETRv2 ampliano i confini del rilevamento di oggetti in tempo reale. YOLOv10 elimina YOLOv10 il NMS , offrendo un'architettura CNN pura incredibilmente veloce ed efficiente. RTDETRv2 dimostra che i trasformatori possono essere contendenti in tempo reale, eccellendo nell'estrazione di caratteristiche complesse. Tuttavia, per la stragrande maggioranza delle applicazioni reali che richiedono una combinazione di velocità, efficienza e strumenti di facile utilizzo per gli sviluppatori, Ultralytics , che supporta YOLOv10, YOLO11 e l'innovativo YOLO26, rimane lo standard del settore.

Per ulteriori confronti, consulta la nostra analisi di YOLOv8 . YOLOv10 o scopri come ottimizzare i tuoi modelli con la nostra guida all'esportazione.


Commenti