Ultralytics YOLO27:
Get Started

YOLOv10 vs YOLOv5#

Scegliere l’architettura di rete neurale giusta è fondamentale per distribuire in produzione pipeline di visione artificiale efficaci. Questa pagina offre un’analisi tecnica approfondita che confronta YOLOv10 e YOLOv5, due modelli di grande influenza nell’evoluzione del rilevamento di oggetti in tempo reale. Entrambi hanno avuto un impatto significativo sulla community dell’AI, ma appartengono a epoche e filosofie diverse nella progettazione delle architetture di deep learning.

Questa guida valuta le architetture in base alla precisione media (mAP), alla latenza di inferenza, all’efficienza dei parametri e al supporto dell’ecosistema, aiutandoti a scegliere il modello più adatto alle tue esigenze di distribuzione.

Panoramica dei modelli#

YOLOv10: rilevamento di oggetti end-to-end in tempo reale#

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

La svolta che definisce YOLOv10 è la sua progettazione end-to-end senza NMS. Storicamente, i modelli YOLO si affidavano alla soppressione dei massimi non locali (NMS) per filtrare i riquadri di delimitazione ridondanti. YOLOv10 utilizza assegnazioni duali coerenti per l’addestramento senza NMS, riducendo drasticamente la variabilità della latenza di inferenza e semplificando la logica di distribuzione. Inoltre, l’architettura adotta una progettazione olistica orientata all’efficienza e alla precisione, ottimizzando a fondo diversi componenti per ridurre la ridondanza computazionale.

Scopri di più su YOLOv10

YOLOv5: lo standard di settore per la facilità d’uso#

Rilasciato poco dopo la creazione del repository Ultralytics PyTorch, YOLOv5 ha ridefinito le aspettative degli sviluppatori nei confronti di un framework open source di AI per la visione. Resta una delle architetture più diffuse al mondo.

YOLOv5 è apprezzato per la facilità d’uso e l’ecosistema mantenuto con cura. Scritto interamente in PyTorch, offriva un’esperienza fluida che portava rapidamente da zero a risultati eccellenti, con supporto pronto all’uso per l’addestramento, la convalida e l’esportazione in formati come ONNX e TensorRT. A differenza di YOLOv10, incentrato principalmente sul rilevamento puro di oggetti, YOLOv5 dimostra un’eccezionale versatilità, supportando la segmentazione delle istanze e la classificazione delle immagini nella stessa API Python unificata.

Confronto delle prestazioni e delle metriche#

Visualizzare la relazione tra velocità e precisione è essenziale per identificare i modelli che offrono la precisione migliore entro un determinato vincolo di velocità. Comprendere queste metriche delle prestazioni è fondamentale per selezionare un modello adatto ai vincoli specifici del tuo hardware.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv10n64038.5-1.842.36.7
YOLOv10s64046.3-2.497.221.6
YOLOv10m64051.1-4.7415.459.1
YOLOv10b64052.5-5.7419.192.0
YOLOv10l64053.2-7.2824.4120.3
YOLOv10x64054.4-10.7029.5160.4
YOLOv5n64028.0-1.121.94.5
YOLOv5s64037.4-1.927.216.5
YOLOv5m64045.4-4.0321.249.0
YOLOv5l64049.0-6.6146.5109.1
YOLOv5x64050.7-11.8986.7205.7

Analisi tecnica#

  1. Precisione (mAP): YOLOv10 dimostra un chiaro vantaggio generazionale in termini di precisione. Per esempio, il modello YOLOv10-X raggiunge una mAP del 54,4%val, superando YOLOv5x (mAP del 50,7%). Questo salto è dovuto in gran parte alla strategia di addestramento senza NMS e ai perfezionamenti architetturali introdotti nel 2024.
  2. Latenza di inferenza: i modelli YOLOv5 sono estremamente veloci nei benchmark TensorRT puri su T4 (per esempio, YOLOv5n a 1,12 ms), ma YOLOv10 elimina del tutto il passaggio di post-elaborazione NMS. Nelle distribuzioni pratiche end-to-end, la progettazione senza NMS di YOLOv10 offre una latenza più costante e deterministica, fondamentale per applicazioni in tempo reale come i veicoli autonomi e la robotica.
  3. Efficienza dei parametri: i modelli YOLOv10 mantengono un equilibrio prestazionale molto competitivo. YOLOv10-S raggiunge una mAP del 46,3% con 7,2 milioni di parametri, lo stesso numero di YOLOv5s, che raggiunge una mAP del 37,4%.
Consiglio per la distribuzione

Quando distribuisci su dispositivi di AI edge come NVIDIA Jetson, i modelli senza logica NMS (come YOLOv10 o YOLO26 esportato con nms=False) spesso vengono compilati più facilmente con TensorRT, evitando operazioni di ripiego sulla CPU.

Casi d'uso e consigli#

La scelta tra YOLOv10 e YOLOv5 dipende dai requisiti specifici del progetto, dai vincoli di distribuzione e dalle preferenze relative all’ecosistema.

Quando scegliere YOLOv10#

YOLOv10 è una scelta valida per:

  • Rilevamento in tempo reale senza NMS: applicazioni che traggono vantaggio dal rilevamento end-to-end senza soppressione non massima, riducendo la complessità della distribuzione.
  • Compromesso equilibrato tra velocità e precisione: progetti che richiedono un buon equilibrio tra velocità di inferenza e precisione di rilevamento con modelli di diverse dimensioni.
  • Applicazioni con latenza costante: scenari di distribuzione in cui i tempi di inferenza prevedibili sono fondamentali, ad esempio nella robotica o nei sistemi autonomi.

Quando scegliere YOLOv5#

YOLOv5 è consigliato per:

  • Sistemi di produzione collaudati: distribuzioni esistenti in cui sono apprezzati lo storico di stabilità di YOLOv5, la documentazione esaustiva e il vasto supporto della community.
  • Addestramento con risorse limitate: ambienti con risorse GPU limitate, in cui la pipeline di addestramento efficiente e i requisiti di memoria ridotti di YOLOv5 sono vantaggiosi.
  • Ampio supporto dei formati di esportazione: progetti che richiedono la distribuzione in numerosi formati, tra cui ONNX, TensorRT, CoreML e LiteRT.

Quando scegliere Ultralytics (YOLO26)#

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

  • Distribuzione edge senza NMS: applicazioni che richiedono inferenza costante a bassa latenza senza la complessità della post-elaborazione con soppressione non massima.
  • Ambienti con sola CPU: dispositivi senza accelerazione GPU dedicata, sui quali l'inferenza su CPU di YOLO26, fino al 43% più veloce, offre un vantaggio decisivo.
  • Rilevamento di oggetti di piccole dimensioni: scenari complessi come le immagini aeree acquisite da droni o l'analisi dei sensori IoT, in cui ProgLoss e STAL migliorano notevolmente la precisione sugli oggetti molto piccoli.

I vantaggi di Ultralytics#

YOLOv10 offre eccellenti capacità di rilevamento, ma affidarsi a repository accademici può talvolta complicare le pipeline di produzione. Utilizzando il pacchetto Python ufficiale di Ultralytics, hai accesso a un ecosistema unificato che supporta sia YOLOv5 sia YOLOv10, oltre a funzionalità avanzate.

  • Efficienza di addestramento: le architetture Ultralytics YOLO sono ottimizzate a fondo per ridurre i requisiti di memoria durante l’addestramento. A differenza dei pesanti modelli Transformer, come RT-DETR, che richiedono molta memoria CUDA, puoi addestrare comodamente YOLOv5 e YOLOv10 su normali GPU consumer.
  • Integrazione nell’ecosistema: l’integrazione con la piattaforma Ultralytics consente agli sviluppatori di gestire visivamente i dataset, monitorare gli esperimenti con Weights & Biases e ottimizzare automaticamente gli iperparametri.

Esempio di codice: addestramento senza interruzioni#

Con la libreria Ultralytics, passare da un’architettura all’altra è semplice quanto 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

# Per usare YOLOv5:
# model = YOLO("yolov5su.pt")

# Per usare YOLOv10:
model = YOLO("yolov10s.pt")

# Addestra il modello su un dataset personalizzato
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device=0,  # Usa la GPU 0
)

# Esporta il modello addestrato in formato ONNX
path = model.export(format="onnx")

La nuova generazione: Ultralytics YOLO26#

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

YOLO26 integra nativamente la progettazione end-to-end senza NMS introdotta da YOLOv10, disponibile come testa opzionale uno-a-uno (nms=False), per consentire una distribuzione rapida e deterministica. Inoltre, YOLO26 introduce diverse innovazioni fondamentali:

  • Inferenza su CPU fino al 43% più veloce: rimuovendo il modulo Distribution Focal Loss (DFL), YOLO26 offre notevoli incrementi di velocità sulle CPU standard, rendendolo la scelta ideale per la distribuzione su dispositivi mobili e i 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. Questo garantisce sessioni di addestramento estremamente stabili e una convergenza molto più rapida rispetto agli ottimizzatori standard SGD e AdamW usati nei precedenti modelli YOLO.
  • ProgLoss + STAL: queste funzioni di perdita avanzate migliorano notevolmente il riconoscimento degli oggetti piccoli, una capacità fondamentale per le immagini da drone e le applicazioni di sicurezza aerea.
  • Eccellenza specifica per ogni attività: YOLOv10 è esclusivamente un rilevatore di riquadri di delimitazione, mentre YOLO26 offre miglioramenti architetturali dedicati a tutte le attività, tra cui la stima della log-verosimiglianza residua (RLE) per la posa e funzioni di perdita angolare specializzate per i riquadri di delimitazione orientati (OBB).
Approfondisci

Se stai esplorando il panorama più ampio del rilevamento di oggetti, potrebbe interessarti anche confrontare queste architetture con altri framework. Scopri le nostre analisi approfondite su YOLO11 vs EfficientDet o RT-DETR vs YOLOv8 per benchmark più completi.

Che tu faccia affidamento sulla solida esperienza di YOLOv5, sull’innovazione senza NMS di YOLOv10 o sulle prestazioni all’avanguardia senza pari di YOLO26, l’ecosistema Ultralytics offre gli strumenti necessari per realizzare le tue applicazioni di AI per la visione in modo rapido ed efficiente.

Collaboratori

Commenti