Vai al contenuto

RTDETRv2 vs. YOLOv5: un confronto tecnico

Nel panorama in rapida evoluzione del rilevamento degli oggetti, la scelta del modello giusto comporta spesso un compromesso tra complessità architettonica, velocità di inferenza e usabilità pratica. Questa guida fornisce un confronto tecnico completo tra RTDETRv2, un rilevatore in tempo reale basato su trasformatori di Baidu, e YOLOv5il leggendario modello basato su CNN di Ultralytics , noto per la sua versatilità e la sua ampia adozione.

Analisi delle prestazioni: Velocità contro precisione

La differenza fondamentale tra questi due modelli risiede nella loro filosofia architettonica. RTDETRv2 impiega un approccio Vision Transformer (ViT) per catturare il contesto globale, puntando alla massima precisione nei benchmark. Al contrario, YOLOv5 utilizza un progetto di rete neurale convoluzionale (CNN) altamente ottimizzato, dando priorità a un equilibrio tra velocità, efficienza e facilità di implementazione su hardware diversi.

La tabella seguente illustra questa distinzione. Sebbene RTDETRv2 ottenga punteggi mAP elevati sul set di datiCOCO , richiede risorse computazionali significativamente maggiori. YOLOv5, in particolare nelle sue varianti più piccole (Nano e Small), offre velocità di inferenza drasticamente più elevate, soprattutto sulle CPU, e un ingombro di memoria molto più ridotto, che lo rendono la scelta pratica per le applicazioni del mondo reale.

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
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Efficienza della memoria

YOLOv5 richiede una quantità di memoria CUDA significativamente inferiore per l'addestramento rispetto ai modelli basati su trasformatori come RTDETRv2. Questa minore barriera all'ingresso consente agli sviluppatori di addestrare modelli personalizzati su GPU consumer standard o persino su ambienti basati su cloud come Google Colab senza incorrere in errori di Out-Of-Memory (OOM).

RTDETRv2: Il Transformer Challenger

RTDETRv2 (Real-Time Detection Transformer v2) rappresenta uno sforzo per portare i vantaggi di precisione dei trasformatori in scenari in tempo reale. Utilizzando un'architettura ibrida, cerca di mitigare gli elevati costi computazionali tipicamente associati ai trasformatori di visione.

Architettura e punti di forza

RTDETRv2 combina una struttura portante CNN per un'efficiente estrazione di caratteristiche con un encoder-decoder trasformatore. Questo design consente al modello di utilizzare meccanismi di autoattenzione per comprendere le relazioni globali tra gli oggetti, che possono essere utili in scene complesse con occlusione o affollamento. Il suo punto di forza principale è l'elevata accuratezza nei benchmark accademici, dove spesso supera i modelli basati su CNN di dimensioni simili nelle metriche mAP pure.

Punti deboli

Nonostante la sua precisione, RTDETRv2 deve affrontare problemi di versatilità e facilità d'uso. L'architettura del trasformatore è intrinsecamente più pesante e comporta tempi di addestramento più lenti e un maggiore consumo di memoria. Inoltre, il suo ecosistema è principalmente incentrato sulla ricerca e manca di un'ampia gamma di strumenti, di supporto alla distribuzione e di risorse della comunità che si trovano in framework più maturi. Inoltre, si limita principalmente al rilevamento degli oggetti, mentre i progetti moderni spesso richiedono la segmentazione o la classificazione all'interno della stessa pipeline.

Scopri di più su RTDETRv2

Ultralytics YOLOv5: lo standard versatile

YOLOv5 è ampiamente considerato come uno dei modelli di computer vision più pratici e facili da usare disponibili. Costruito da Ultralytics, dà la priorità a un'esperienza semplificata di "addestramento, implementazione e fine", rendendo l'IA avanzata accessibile a tutti, dagli hobbisti agli ingegneri aziendali.

Perché YOLOv5 si distingue

YOLOv5 eccelle per il suo approccio olistico alle operazioni di apprendimento automatico (MLOps). Non si tratta solo di un'architettura di modelli, ma di un ecosistema completo.

  • Facilità d'uso: Con una semplice API Python e un'interfaccia a riga di comando, gli utenti possono iniziare la formazione su dati personalizzati in pochi minuti.
  • Equilibrio delle prestazioni: La famiglia di modelli (da Nano a X-Large) offre un perfetto gradiente di velocità e precisione, consentendo agli utenti di adattare la propria scelta a un hardware specifico, come NVIDIA Jetson o Raspberry Pi.
  • Versatilità: A differenza di RTDETRv2, YOLOv5 supporta in modo nativo più compiti, tra cui la classificazione delle immagini e la segmentazione delle istanze, riducendo la necessità di mantenere codebase separate per i diversi compiti di visione.
  • Esportabilità: Ultralytics offre un supporto integrato per l'esportazione in ONNX, TensorRT, CoreML e TFLite, assicurando che i modelli possano essere distribuiti ovunque, dalle applicazioni mobili ai server cloud.

Scopri di più su YOLOv5

Esempio di utilizzo

YOLOv5 è stato progettato per essere semplice. Di seguito è riportato un esempio di come caricare un modello pre-addestrato ed eseguire l'inferenza utilizzando PyTorch Hub, dimostrando l'intuitività dell'API per cui Ultralytics è nota.

import torch

# Load the YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")

# Define an image URL
img = "https://ultralytics.com/images/zidane.jpg"

# Perform inference
results = model(img)

# Print results to the console
results.print()

# Show the image with bounding boxes
results.show()

Confronto tra formazione ed ecosistema

L'esperienza dello sviluppatore è spesso fondamentale quanto le prestazioni del modello. In questo caso, le differenze sono notevoli.

Efficienza della formazione

YOLOv5 utilizza rilevatori basati su ancore che sono computazionalmente efficienti da addestrare. Il framework Ultralytics include "bag-of-freebies" come l'aumento del mosaico e l'evoluzione automatica degli ancoraggi, che aiutano i modelli a convergere più velocemente e a generalizzare meglio con meno dati. Al contrario, l'addestramento di RTDETRv2 è più impegnativo dal punto di vista delle risorse a causa della complessità quadratica degli strati di attenzione del trasformatore, e spesso richiede GPU di fascia alta con una notevole quantità di VRAM.

Supporto all'ecosistema

L'EcosistemaUltralytics offre un vantaggio distinto. Gli utenti beneficiano di:

  • Sviluppo attivo: Aggiornamenti frequenti garantiscono la compatibilità con le ultime versioni di PyTorch e CUDA.
  • Supporto della comunità: Un'enorme comunità su GitHub e Discord aiuta a risolvere rapidamente i problemi.
  • Strumenti integrati: L'integrazione perfetta con strumenti come Ultralytics HUB consente la formazione di modelli senza codice, la gestione dei set di dati e la distribuzione con un solo clic.

RTDETRv2, pur essendo tecnicamente notevole, non dispone di questo livello di infrastruttura circostante, rendendo più difficile l'integrazione nelle pipeline di produzione.

Casi d'uso ideali

La scelta del modello giusto dipende da vincoli e obiettivi specifici.

Quando scegliere RTDETRv2

  • Ricerca accademica: Se il vostro obiettivo è quello di ottenere numeri mAP all'avanguardia su dataset come COCO e avete accesso a GPU di punta (ad esempio, A100).
  • Contesto complesso: In scenari in cui la comprensione della relazione tra oggetti distanti è più critica della velocità di inferenza o del costo dell'hardware.

Quando scegliere YOLOv5

  • Impiego sui bordi: Per applicazioni su dispositivi mobili, droni o sistemi embedded in cui la velocità CPU e l'efficienza energetica sono fondamentali.
  • Produzione in tempo reale: Alimentazione di sistemi di allarme di sicurezza o di monitoraggio del traffico dove la bassa latenza non è negoziabile.
  • Sviluppo rapido: Le startup e i team aziendali che hanno bisogno di iterare rapidamente, dalla raccolta dei dati al modello implementato, troveranno il flusso di lavoro di YOLOv5 significativamente più veloce.
  • Requisiti multi-task: I progetti che richiedono sia il rilevamento che la segmentazione possono utilizzare un unico framework, semplificando lo stack tecnologico.

Cercate le ultime novità tecnologiche?

Sebbene YOLOv5 rimanga uno strumento potente, gli sviluppatori che cercano le ultime novità in termini di prestazioni e architettura dovrebbero dare un'occhiata a YOLO11. YOLO11 si basa sull'eredità di YOLOv5, offrendo un'accuratezza ancora maggiore, velocità più elevate e funzionalità ampliate come la stima della posa e il rilevamento orientato degli oggetti (OBB).

Conclusione

Sia RTDETRv2 che YOLOv5 sono strumenti formidabili nell'arsenale degli ingegneri di computer vision. RTDETRv2 mette in mostra il potenziale dei trasformatori per il rilevamento ad alta precisione, rendendolo un forte concorrente per le applicazioni di ricerca con ampie risorse di calcolo.

Tuttavia, per la stragrande maggioranza delle applicazioni pratiche e reali, Ultralytics YOLOv5 rimane la scelta migliore. La sua impareggiabile facilità d'uso, la maturità dell'ecosistema e la versatilità lo rendono la soluzione ideale per gli sviluppatori che hanno bisogno di risultati affidabili e ad alta velocità. Che si tratti di implementazione nel cloud o nell'edge, l'efficienza e il supporto forniti da Ultralytics assicurano un percorso più agevole dall'ideazione alla produzione.

Esplora altri confronti tra modelli

Per aiutarvi a prendere una decisione più consapevole, analizzate il confronto tra questi modelli e le altre architetture del settore:


Commenti