YOLOv10 vs YOLOv5: un confronto tecnico completo

Scegliere la giusta architettura di rete neurale è fondamentale per implementare pipeline di computer vision di successo in produzione. Questa pagina fornisce un'analisi tecnica approfondita che confronta YOLOv10 e YOLOv5, due modelli di grande influenza nell'evoluzione del rilevamento di oggetti in tempo reale. Sebbene entrambi i modelli abbiano avuto un impatto significativo sulla community AI, rappresentano epoche e filosofie diverse nella progettazione di architetture di deep learning.

Questa guida valuta tali architetture basandosi su mean Average Precision (mAP), latenza di inferenza, efficienza dei parametri e supporto dell'ecosistema, aiutandoti a scegliere il modello migliore per le tue esigenze di implementazione.

Panoramica dei modelli

YOLOv10: Rilevamento di oggetti end-to-end in tempo reale

Sviluppato dai ricercatori della Tsinghua University, YOLOv10 ha introdotto un approccio innovativo al rilevamento di oggetti eliminando la necessità di post-elaborazione.

La svolta decisiva di YOLOv10 è il suo design end-to-end senza NMS. Storicamente, i modelli YOLO si affidavano alla Non-Maximum Suppression (NMS) per filtrare i bounding box ridondanti. YOLOv10 utilizza assegnazioni duali coerenti per l'addestramento senza NMS, il che riduce drasticamente la variabilità della latenza di inferenza e semplifica la logica di implementazione. Inoltre, l'architettura presenta un design incentrato sull'efficienza e sulla precisione che ottimizza accuratamente vari componenti per ridurre la ridondanza computazionale.

Scopri di più su YOLOv10

YOLOv5: Lo standard industriale per l'usabilità

Rilasciato poco dopo la nascita del repository PyTorch di Ultralytics, YOLOv5 ha ridefinito le aspettative degli sviluppatori riguardo a un framework di visione AI open source. Rimane una delle architetture più ampiamente implementate a livello globale.

YOLOv5 è celebrato per la sua facilità d'uso e il suo ecosistema ben mantenuto. Scritto interamente in PyTorch, offre un'esperienza "da zero a eroe" fluida con supporto immediato per addestramento, validazione ed esportazione verso formati come ONNX e TensorRT. A differenza di YOLOv10, che si concentra principalmente sul puro rilevamento di oggetti, YOLOv5 dimostra un'eccezionale versatilità, supportando instance segmentation e image classification all'interno della stessa API Python unificata.

Scopri di più su YOLOv5

Confronto tra prestazioni e metriche

Visualizzare la relazione tra velocità e precisione è essenziale per identificare i modelli che offrono la migliore accuratezza per un dato vincolo di velocità. Comprendere queste metriche di performance è fondamentale per selezionare un modello che si allinei ai tuoi specifici vincoli hardware.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOP
(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
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

Analisi tecnica

  1. Precisione (mAP): YOLOv10 dimostra un chiaro vantaggio generazionale in termini di precisione. Ad esempio, il modello YOLOv10-X raggiunge un mAPval del 54,4%, superando YOLOv5x (mAP del 50,7%). Questo salto è dovuto in gran parte alla strategia di addestramento senza NMS e ai perfezionamenti architettonici introdotti nel 2024.
  2. Latenza di inferenza: Sebbene i modelli YOLOv5 siano eccezionalmente veloci sui benchmark raw T4 TensorRT (ad esempio, YOLOv5n a 1,12ms), YOLOv10 elimina completamente il passaggio di post-elaborazione NMS. Nelle implementazioni pratiche end-to-end, il design senza NMS di YOLOv10 fornisce una latenza più coerente e deterministica, fondamentale per applicazioni in tempo reale come veicoli autonomi e robotica.
  3. Efficienza dei parametri: I modelli YOLOv10 mantengono un equilibrio di performance altamente competitivo. YOLOv10-S raggiunge un mAP del 46,7% con soli 7,2M di parametri, mentre YOLOv5s raggiunge un mAP del 37,4% con 9,1M di parametri.
Consiglio per l'implementazione

Quando effettui l'implementazione su dispositivi edge AI come NVIDIA Jetson, i modelli senza logica NMS (come YOLOv10 e YOLO26) spesso si compilano in modo più pulito verso TensorRT, evitando operazioni di fallback sulla CPU.

Casi d'uso e raccomandazioni

La scelta tra YOLOv10 e YOLOv5 dipende dai requisiti specifici del tuo progetto, dai vincoli di implementazione e dalle preferenze riguardo l'ecosistema.

Quando scegliere YOLOv10

YOLOv10 è un'ottima scelta per:

  • Rilevamento in tempo reale senza NMS: Applicazioni che traggono vantaggio dal rilevamento end-to-end senza Non-Maximum Suppression, riducendo la complessità di deployment.
  • Compromessi equilibrati tra velocità e accuratezza: Progetti che richiedono un solido equilibrio tra velocità di inferenza e accuratezza di rilevamento su varie scale del modello.
  • Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.

Quando scegliere YOLOv5

YOLOv5 è consigliato per:

  • Sistemi di produzione comprovati: Implementazioni esistenti in cui sono apprezzati il lungo storico di stabilità, l'ampia documentazione e il massiccio supporto della community di YOLOv5.
  • Addestramento con risorse limitate: Ambienti con risorse GPU limitate in cui la pipeline di addestramento efficiente e i minori requisiti di memoria di YOLOv5 risultano vantaggiosi.
  • Ampio supporto per formati di esportazione: Progetti che richiedono l'implementazione su molti formati, inclusi ONNX, TensorRT, CoreML e TFLite.

Quando scegliere Ultralytics (YOLO26)

Per la maggior parte dei nuovi progetti, Ultralytics YOLO26 offre la migliore combinazione di prestazioni ed esperienza di sviluppo:

  • Deployment Edge senza NMS: Applicazioni che richiedono un'inferenza coerente e a bassa latenza senza la complessità della post-elaborazione con Non-Maximum Suppression.
  • Ambienti solo CPU: Dispositivi senza accelerazione GPU dedicata, dove l'inferenza su CPU di YOLO26, fino al 43% più veloce, offre un vantaggio decisivo.
  • Rilevamento di piccoli oggetti: Scenari complessi come immagini di droni aerei o analisi tramite sensori IoT dove ProgLoss e STAL migliorano significativamente l'accuratezza su oggetti minuscoli.

Il vantaggio di Ultralytics

Sebbene YOLOv10 offra eccellenti capacità di rilevamento, fare affidamento su repository accademici a volte può complicare le pipeline di produzione. Utilizzando il pacchetto Python ufficiale di Ultralytics, ottieni l'accesso a un ecosistema unificato che supporta sia YOLOv5 che YOLOv10, insieme a funzionalità avanzate.

  • Efficienza di addestramento: Le architetture Ultralytics YOLO sono profondamente ottimizzate per requisiti di memoria inferiori durante l'addestramento. A differenza dei pesanti modelli Transformer (come RT-DETR) che richiedono una massiccia memoria CUDA, puoi addestrare comodamente YOLOv5 e YOLOv10 su comuni GPU consumer.
  • Integrazione dell'ecosistema: L'integrazione con Ultralytics Platform consente agli sviluppatori di gestire visivamente i dataset, tracciare esperimenti utilizzando Weights & Biases e ottimizzare automaticamente gli iperparametri.

Esempio di codice: Addestramento senza interruzioni

Utilizzando la libreria Ultralytics, passare da un'architettura all'altra è semplice come cambiare la stringa del modello. La pipeline di addestramento gestisce automaticamente l'aumento dei dati, il ridimensionamento e la configurazione dell'ottimizzatore.

from ultralytics import YOLO

# To use YOLOv5:
# model = YOLO("yolov5s.pt")

# To use YOLOv10:
model = YOLO("yolov10s.pt")

# Train the model on a custom dataset
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device=0,  # Use GPU 0
)

# Export the trained model to ONNX format
path = model.export(format="onnx")

La prossima generazione: Ultralytics YOLO26

Se stai iniziando un nuovo progetto di machine learning oggi, ti consigliamo vivamente di valutare l'ultimo Ultralytics YOLO26. Rilasciato a gennaio 2026, rappresenta lo stato dell'arte assoluto combinando le migliori innovazioni degli ultimi cinque anni.

YOLO26 incorpora nativamente il design end-to-end senza NMS sperimentato da YOLOv10, garantendo un'implementazione rapida e deterministica. Inoltre, YOLO26 introduce diverse innovazioni critiche:

  • Inferenza CPU fino al 43% più veloce: Rimuovendo il modulo Distribution Focal Loss (DFL), YOLO26 ottiene enormi incrementi di velocità sulle CPU standard, rendendolo la scelta principale per implementazioni mobile e sensori IoT a basso consumo.
  • Ottimizzatore MuSGD: Ispirato alle tecniche di addestramento dei modelli linguistici di grandi dimensioni (LLM) come Kimi K2 di Moonshot AI, YOLO26 utilizza un ibrido di SGD e Muon. Ciò garantisce cicli di addestramento incredibilmente stabili e una convergenza vastamente accelerata rispetto agli ottimizzatori AdamW utilizzati in YOLOv10.
  • ProgLoss + STAL: Queste funzioni di perdita avanzate producono notevoli miglioramenti nel riconoscimento di piccoli oggetti, il che è fondamentale per immagini da droni e applicazioni di sicurezza aerea.
  • Padronanza specifica per attività: Mentre YOLOv10 è strettamente un rilevatore di bounding box, YOLO26 offre miglioramenti architettonici dedicati per tutte le attività, inclusa la stima della verosimiglianza logaritmica residua (RLE) per Pose e perdite angolari specializzate per i bounding box orientati (OBB).
Esplora ulteriormente

Se stai esplorando il panorama più ampio del rilevamento di oggetti, potresti anche essere interessato a confrontare queste architetture con altri framework. Dai un'occhiata ai nostri approfondimenti su YOLO11 vs EfficientDet o RT-DETR vs YOLOv8 per benchmark più completi.

Che tu faccia affidamento sulla solida eredità di YOLOv5, sull'innovazione senza NMS di YOLOv10 o sulle impareggiabili prestazioni all'avanguardia di YOLO26, l'ecosistema Ultralytics fornisce gli strumenti necessari per dare vita alle tue applicazioni di visione AI in modo rapido ed efficiente.

Commenti