Ultralytics YOLO27:
Get Started

YOLOv8 vs YOLOv10#

L'evoluzione del rilevamento degli oggetti in tempo reale procede a un ritmo senza precedenti. Per gli sviluppatori e i ricercatori che vogliono integrare nelle proprie pipeline i modelli di computer vision più efficienti e precisi, confrontare le architetture di punta è essenziale. In questo approfondimento confrontiamo Ultralytics YOLOv8 e YOLOv10, esaminandone le differenze architetturali, le metriche di prestazione e gli scenari di distribuzione ideali, per aiutarti a prendere una decisione informata per il tuo prossimo progetto di IA.

Panoramica del modello: YOLOv8#

Introdotto come un importante passo avanti nella famiglia YOLO, YOLOv8 ha definito un nuovo standard per un framework unificato e versatile. È stato progettato fin dall'inizio per supportare numerose attività oltre ai riquadri delimitatori standard, diventando uno strumento estremamente flessibile per la computer vision moderna.

Dettagli di YOLOv8:

Architettura e punti di forza#

YOLOv8 ha introdotto una testa di rilevamento anchor-free e un backbone CSPDarknet rinnovato, migliorando notevolmente sia la precisione sia la latenza di inferenza. Eliminando gli anchor box, il modello riduce il numero di previsioni dei riquadri, accelerando la soppressione non massima (NMS) durante la post-elaborazione.

Uno dei vantaggi più evidenti di YOLOv8 è la sua enorme versatilità. Mentre molti modelli si concentrano esclusivamente sul rilevamento degli oggetti, YOLOv8 supporta nativamente la segmentazione di istanze, la classificazione delle immagini, la stima della posa e i riquadri delimitatori orientati (OBB). È quindi una soluzione potente per pipeline complesse e articolate in più fasi, che richiedono contemporaneamente diversi tipi di comprensione visiva. Inoltre, rispetto alle architetture basate su Transformer come RT-DETR, i requisiti di memoria durante l'addestramento sono notevolmente ottimizzati, consentendo ai ricercatori di addestrare modelli di grandi dimensioni su GPU consumer standard.

Panoramica del modello: YOLOv10#

Sviluppato dai ricercatori della Tsinghua University, YOLOv10 si proponeva di affrontare uno dei colli di bottiglia più persistenti della famiglia YOLO: la dipendenza dalla post-elaborazione NMS.

Dettagli su YOLOv10:

Architettura e punti di forza#

L'innovazione principale di YOLOv10 è la strategia Consistent Dual Assignments, che consente l'addestramento senza NMS e la distribuzione end-to-end. Eliminando il passaggio NMS, YOLOv10 riduce drasticamente la latenza di inferenza, soprattutto sui dispositivi edge, dove le operazioni di post-elaborazione possono richiedere molte risorse di calcolo.

Inoltre, YOLOv10 adotta una progettazione olistica del modello, orientata all'equilibrio tra efficienza e accuratezza, che calibra attentamente il costo computazionale di ogni livello. Il risultato è un modello che richiede meno parametri e FLOPs, pur raggiungendo una precisione media (mAP) competitiva. È un eccellente contributo accademico per i casi d'uso che richiedono la latenza minima assoluta nelle attività di solo rilevamento.

Rilevamento end-to-end

La rimozione della NMS in YOLOv10 semplifica notevolmente l'esportazione verso framework come OpenVINO e TensorRT, poiché è possibile compilare l'intero modello come un unico grafo, senza livelli personalizzati di post-elaborazione.

Scopri di più su YOLOv10

Confronto delle prestazioni e delle metriche#

Nel confronto tra queste due architetture è fondamentale valutare i compromessi tra numero di parametri, FLOPs e precisione. Di seguito trovi il confronto esatto delle metriche di prestazione sul dataset COCO.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.1
YOLOv8x64053.9479.114.3768.2257.8
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

In alcune scale YOLOv10 raggiunge un mAP leggermente superiore con meno parametri, ma YOLOv8 offre un ecosistema più solido e supporta una gamma più ampia di attività. In generale, è quindi più affidabile negli ambienti di produzione che richiedono più dei soli riquadri delimitatori.

Ecosistema e metodologia di addestramento#

Nei flussi di lavoro moderni di ML, spesso è l'ecosistema che circonda l'architettura a fare davvero la differenza. Scegliere un modello Ultralytics come YOLOv8 offre una facilità d'uso senza pari e un'esperienza di sviluppo senza interruzioni.

Con un SDK per Python estremamente intuitivo, gli sviluppatori possono gestire l'annotazione dei dati, l'addestramento e la distribuzione con il minimo sforzo. L'ecosistema Ultralytics è mantenuto in modo eccellente e offre aggiornamenti frequenti, documentazione completa sull'ottimizzazione degli iperparametri e un solido supporto della community su piattaforme come Discord e GitHub.

Esempio di codice: addestramento semplificato#

L'API Python di Ultralytics rende estremamente semplice istanziare, addestrare e convalidare entrambi i modelli. Nota come lo stesso flusso di lavoro si applichi a prescindere dall'architettura sottostante.

from ultralytics import YOLO

# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")

# Train the model efficiently with automated learning rate scheduling
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device=0,  # optimized CUDA memory usage
    batch=16,
)

# Validate the model to check mAP metrics
metrics = model.val()
print(f"Validation mAP: {metrics.box.map}")

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

Casi d'uso e consigli#

La scelta tra YOLOv8 e YOLOv10 dipende dai requisiti specifici del tuo progetto, dai vincoli di distribuzione e dalle tue preferenze in termini di ecosistema.

Quando scegliere YOLOv8#

YOLOv8 è un'ottima scelta per:

  • Distribuzioni versatili e multi-attività: progetti che richiedono un modello collaudato per rilevamento, segmentazione, classificazione e stima della posa nell’ecosistema Ultralytics.
  • Sistemi di produzione consolidati: ambienti di produzione esistenti già basati sull’architettura YOLOv8, con pipeline di distribuzione stabili e ben testate.
  • Ampio supporto della community e dell’ecosistema: applicazioni che traggono vantaggio dagli estesi tutorial di YOLOv8, dalle integrazioni di terze parti e dalle risorse della community attiva.

Quando scegliere YOLOv10#

YOLOv10 è consigliato 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 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.

Il futuro: fare un passo avanti con YOLO26#

Sebbene YOLOv8 sia un eccellente modello tuttofare e YOLOv10 offra interessanti spunti accademici sulle architetture senza NMS, la computer vision ha continuato a evolversi. Per ottenere il miglior equilibrio tra velocità, accuratezza e semplicità di distribuzione, consigliamo vivamente di passare a YOLO26.

Rilasciato all’inizio del 2026, YOLO26 rappresenta il massimo risultato raggiunto dalla famiglia YOLO. Unisce senza soluzione di continuità le migliori caratteristiche dei predecessori e introduce tecnologie rivoluzionarie:

  • Progettazione end-to-end senza NMS: adottando l’innovazione introdotta da YOLOv10, YOLO26 offre l’inferenza opzionale senza NMS (nms=False) per una distribuzione più rapida e semplice.
  • Rimozione di DFL: eliminare Distribution Focal Loss rende molto più semplice esportare il modello su CoreML e sui dispositivi edge.
  • Ottimizzatore MuSGD: ispirato ai paradigmi di addestramento dei modelli linguistici di grandi dimensioni (LLM), questo ottimizzatore ibrido garantisce una convergenza più rapida e una stabilità di addestramento senza pari.
  • Prestazioni superiori nell’inferenza su CPU: YOLO26 offre un’inferenza su CPU fino al 43% più rapida rispetto alle generazioni precedenti, rendendolo una svolta per Raspberry Pi e le applicazioni IoT.
  • ProgLoss + STAL: queste funzioni di perdita avanzate migliorano notevolmente il riconoscimento degli oggetti di piccole dimensioni, aspetto fondamentale per le immagini aeree e la robotica.

Se stai valutando dei modelli, potrebbe interessarti anche YOLO11, il predecessore diretto di YOLO26, che rimane un framework affidabile e pronto per la produzione, ampiamente utilizzato nelle soluzioni aziendali. Tuttavia, per ottenere prestazioni e protezione dal rischio di obsolescenza ottimali, esplorare le funzionalità avanzate della Ultralytics Platform con YOLO26 è la scelta migliore per la tua strategia di IA visiva.

Commenti