Vai al contenuto

YOLOv10 vs. YOLO: un confronto tecnico dettagliato per il rilevamento di oggetti

La scelta del modello ottimale di rilevamento degli oggetti è fondamentale per le applicazioni di computer vision, con modelli che differiscono in modo significativo per precisione, velocità ed efficienza. Questa pagina offre un confronto tecnico dettagliato tra YOLOv10 e YOLO, due modelli avanzati nel panorama del rilevamento degli oggetti. Esploreremo le loro architetture, i benchmark delle prestazioni e le applicazioni adatte per guidare il processo di selezione del modello.

YOLOv10

YOLOv10 è l'ultima evoluzione della serie YOLO , nota per le sue capacità di rilevamento degli oggetti in tempo reale. Sviluppato dai ricercatori della Tsinghua University e presentato il 2024-05-23(arXiv preprint arXiv:2405.14458), YOLOv10 è stato progettato per garantire efficienza end-to-end e prestazioni migliori. L'implementazione ufficiale di PyTorch è disponibile su GitHub.

Architettura e caratteristiche principali

YOLOv10 introduce diverse innovazioni incentrate sulla semplificazione dell'architettura e sul miglioramento dell'equilibrio tra velocità e accuratezza, con l'obiettivo di passare a una formazione senza NMS e a una progettazione efficiente dei modelli. I punti salienti dell'architettura includono:

  • Formazione senza NMS: Utilizza assegnazioni duali coerenti per l'addestramento senza soppressione non massimale (NMS), riducendo l'overhead di post-elaborazione e la latenza di inferenza.
  • Progettazione olistica orientata all'efficienza e alla precisione: Ottimizzazione completa dei vari componenti del modello per ridurre al minimo la ridondanza computazionale e migliorare le capacità di rilevamento.
  • Struttura della spina dorsale e della rete: Livelli di estrazione delle caratteristiche perfezionati e una struttura di rete semplificata per una maggiore efficienza dei parametri e un'elaborazione più rapida.

Metriche di prestazione

YOLOv10 offre prestazioni all'avanguardia su varie scale di modelli, fornendo una gamma di opzioni per soddisfare le diverse esigenze di calcolo. Le metriche delle prestazioni sul set di dati COCO includono:

  • mAP: Raggiunge una precisione media competitiva (mAP) sul set di dati di convalida COCO. Ad esempio, YOLOv10-S raggiunge il 46,7% di mAPval50-95.
  • Velocità di inferenza: Offre una velocità di inferenza impressionante: YOLOv10-N ha raggiunto un tempo di inferenza di 1,56 ms con T4 TensorRT10.
  • Dimensioni del modello: Disponibile in più taglie (N, S, M, B, L, X) con dimensioni del modello che vanno dai parametri 2,3M per YOLOv10-N ai 56,9M per YOLOv10-X.

Punti di forza e di debolezza

Punti di forza:

  • Prestazioni in tempo reale: Ottimizzato per velocità ed efficienza, è ideale per le applicazioni in tempo reale.
  • Alta precisione: Raggiunge un'accuratezza all'avanguardia, soprattutto con le varianti di modello più grandi come YOLOv10-X.
  • Efficienza end-to-end: Il design senza NMS riduce la latenza e semplifica l'implementazione.
  • Versatilità: Adatto a varie attività di rilevamento di oggetti e adattabile a diverse piattaforme hardware, compresi i dispositivi edge come Raspberry Pi e NVIDIA Jetson.
  • Facilità d'uso: l'integrazione con ilpacchetto Ultralytics Python semplifica i flussi di lavoro di formazione, convalida e distribuzione.

Punti deboli:

  • Modello emergente: Essendo un modello recente, il supporto della comunità e i pesi preformati in ecosistemi più ampi potrebbero essere ancora in via di sviluppo rispetto a modelli più consolidati.
  • Trade-off: i modelli più piccoli privilegiano la velocità, potenzialmente a costo di una certa accuratezza rispetto alle varianti più grandi o ai modelli più complessi.

Casi d'uso

YOLOv10 è particolarmente indicato per le applicazioni che richiedono un rilevamento preciso e ad alta velocità degli oggetti, come ad esempio:

Per saperne di più su YOLOv10

DAMO-YOLO

YOLO, sviluppato dal gruppo Alibaba, è un modello di rilevamento di oggetti ad alte prestazioni introdotto nel 2022(arXiv preprint arXiv:2211.15444v2). È stato progettato per essere veloce e preciso, incorporando diverse tecniche avanzate per il rilevamento efficiente degli oggetti. L'implementazione ufficiale e la documentazione sono disponibili su GitHub.

Architettura e caratteristiche principali

YOLO integra diversi componenti innovativi per ottenere un equilibrio tra velocità e precisione:

  • Backbone NAS: Utilizza la ricerca dell'architettura neurale (NAS) per progettare reti dorsali efficienti ottimizzate per le attività di rilevamento degli oggetti.
  • RepGFPN efficiente: Impiega una rete di piramidi di caratteristiche di gradiente riparametrizzate (RepGFPN) per una fusione efficiente delle caratteristiche e una rappresentazione multiscala delle stesse.
  • ZeroHead: una testina di rilevamento leggera, progettata per ridurre al minimo l'overhead computazionale mantenendo l'accuratezza del rilevamento.
  • AlignedOTA: utilizza Aligned Optimal Transport Assignment (AlignedOTA) per migliorare l'assegnazione delle etichette durante l'addestramento, migliorando le prestazioni di rilevamento.
  • Miglioramento della distillazione: Incorpora tecniche di distillazione della conoscenza per migliorare ulteriormente le prestazioni del modello.

Metriche di prestazione

I modelli YOLO sono disponibili in varie dimensioni (Tiny, Small, Medium, Large) per soddisfare le diverse esigenze di prestazione. Gli indicatori di prestazione chiave includono:

  • mAP: Raggiunge una mAP elevata su set di dati di riferimento come COCO. YOLO, ad esempio, raggiunge il 50,8% di mAPval50-95.
  • Velocità di inferenza: Offre una velocità di inferenza elevata, che lo rende adatto alle applicazioni in tempo reale: YOLO ha raggiunto un tempo di inferenza di 2,32 ms su T4 TensorRT10.
  • Dimensioni del modello: Le dimensioni dei modelli variano, garantendo la flessibilità necessaria per diversi scenari di implementazione, e vanno da 8,5M di parametri per YOLO a 42,1M per YOLO.

Punti di forza e di debolezza

Punti di forza:

  • Alta precisione: Raggiunge un'eccellente precisione di rilevamento grazie alle innovazioni architettoniche e alle tecniche di formazione avanzate.
  • Inferenza veloce: Progettato per la velocità, fornisce prestazioni di inferenza efficienti adatte ai sistemi in tempo reale.
  • Design efficiente: Incorpora dorsali NAS e teste leggere per ottimizzare l'efficienza di calcolo.
  • Set di funzioni completo: Integra diverse tecniche avanzate come RepGFPN e AlignedOTA per garantire prestazioni elevate.

Punti deboli:

  • Complessità: L'integrazione di NAS e di più componenti avanzati potrebbe introdurre complessità nella personalizzazione e nella modifica.
  • Requisiti di risorse: I modelli YOLO più grandi possono richiedere notevoli risorse computazionali rispetto ad alternative estremamente leggere.

Casi d'uso

YOLO è adatto ad applicazioni che richiedono un'elevata precisione e velocità nel rilevamento di oggetti, come ad esempio:

Per saperne di più su YOLO

Modello dimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4TensorRT10
(ms)
params
(M)
FLOP
(B)
YOLOv10n 640 39.5 - 1.56 2.3 6.7
YOLOv10s 640 46.7 - 2.66 7.2 21.6
YOLOv10m 640 51.3 - 5.48 15.4 59.1
YOLOv10b 640 52.7 - 6.54 24.4 92.0
YOLOv10l 640 53.3 - 8.33 29.5 120.3
YOLOv10x 640 54.4 - 12.2 56.9 160.4
DAMO-YOLOt 640 42.0 - 2.32 8.5 18.1
DAMO-YOLO 640 46.0 - 3.45 16.3 37.8
DAMO-YOLOm 640 49.2 - 5.09 28.2 61.8
DAMO-YOLOl 640 50.8 - 7.18 42.1 97.3

Gli utenti potrebbero essere interessati a confrontare YOLOv10 e YOLO con altri modelli della famiglia Ultralytics YOLO e non solo:

📅C reato 1 anno fa ✏️ Aggiornato 1 mese fa

Commenti