YOLO26 vs YOLOv9: La prossima evoluzione nel rilevamento oggetti in tempo reale
Il panorama della computer vision avanza rapidamente, con nuove architetture che spingono costantemente i limiti di velocità e precisione. In questo confronto tecnico, esaminiamo le differenze tra YOLO26 e YOLOv9, due modelli altamente influenti nel campo del rilevamento oggetti in tempo reale. Sebbene entrambi i modelli offrano innovazioni architettoniche distinte, comprendere i compromessi in termini di prestazioni, le capacità di deployment e i requisiti hardware è fondamentale per selezionare lo strumento giusto per il tuo prossimo progetto di visione.
YOLO26: La potenza ottimizzata per l'edge
Rilasciato all'inizio del 2026, Ultralytics YOLO26 rappresenta un salto generazionale nell'efficienza di deployment e nella stabilità dell'addestramento del modello. Progettato per essere un framework nativamente end-to-end, risolve direttamente i colli di bottiglia di deployment che hanno storicamente afflitto le applicazioni di edge AI.
Dettagli del modello:
- Autori: Glenn Jocher e Jing Qiu
- Organizzazione: Ultralytics
- Data: 2026-01-14
- GitHub: Repository Ultralytics
- Documentazione: Documentazione di YOLO26
Architettura e innovazioni
YOLO26 ridisegna fondamentalmente la pipeline di post-elaborazione introducendo un design End-to-End NMS-Free. Eliminando la necessità di Non-Maximum Suppression (NMS), il modello raggiunge una variabilità di latenza drasticamente inferiore. Ciò rende significativamente più semplice il deployment su piattaforme mobile ed edge, specialmente durante l'esportazione verso framework come ONNX e Apple CoreML.
Inoltre, la rimozione della Distribution Focal Loss (DFL) snellisce il processo di esportazione e aumenta la compatibilità con i microcontrollori a basso consumo. Per migliorare la stabilità dell'addestramento, YOLO26 integra il nuovo ottimizzatore MuSGD, un ibrido tra Stochastic Gradient Descent (SGD) e Muon (ispirato alle innovazioni nell'addestramento di Large Language Model). Ciò si traduce in una convergenza più rapida e in un'estrazione delle caratteristiche più robusta su dataset complessi.
Grazie alle semplificazioni architettoniche e alla rimozione della DFL, YOLO26 ottiene un'inferenza su CPU fino al 43% più veloce, rendendolo la scelta ideale per dispositivi edge con risorse limitate come Raspberry Pi o NVIDIA Jetson Nano.
Per rilevare elementi estremamente complessi in scene come immagini aeree da drone, YOLO26 utilizza le funzioni di perdita aggiornate ProgLoss + STAL. Queste forniscono notevoli miglioramenti nel richiamo del riconoscimento di piccoli oggetti. Inoltre, vanta miglioramenti specifici per attività, tra cui multi-scale proto per instance segmentation, Residual Log-Likelihood Estimation (RLE) per pose estimation e una loss angolare specializzata per il rilevamento di Oriented Bounding Boxes (OBB).
YOLOv9: Informazioni sul gradiente programmabile
Introdotto all'inizio del 2024, YOLOv9 ha apportato progressi teorici al modo in cui le reti neurali gestiscono il flusso del gradiente durante la fase di addestramento, concentrandosi sull'efficienza dei parametri e sulla conservazione delle feature profonde.
Dettagli del modello:
- Autori: Chien-Yao Wang e Hong-Yuan Mark Liao
- Organizzazione: Institute of Information Science, Academia Sinica, Taiwan
- Data: 21-02-2024
- Arxiv: Paper su YOLOv9
- GitHub: Repository di YOLOv9
- Documentazione: Documentazione di YOLOv9
Architettura e punti di forza
YOLOv9 è costruito attorno al concetto di Programmable Gradient Information (PGI) e alla Generalized Efficient Layer Aggregation Network (GELAN). Questi concetti risolvono il problema del collo di bottiglia informativo spesso osservato nelle reti neurali profonde. Preservando le informazioni essenziali attraverso il processo feed-forward, GELAN assicura che i gradienti utilizzati per gli aggiornamenti dei pesi rimangano affidabili. Questa architettura offre un'elevata precisione e rende YOLOv9 un forte candidato per la ricerca accademica sulla teoria delle reti neurali e sull'ottimizzazione del percorso del gradiente utilizzando il framework PyTorch.
Limitazioni
Nonostante l'eccellente efficienza dei parametri, YOLOv9 si basa pesantemente sulla NMS tradizionale per la post-elaborazione delle bounding box, che può creare colli di bottiglia computazionali durante l'inferenza su dispositivi edge. Inoltre, il repository ufficiale è focalizzato principalmente sul rilevamento oggetti, richiedendo un lavoro di ingegneria personalizzata significativo per adattarlo ad attività specializzate come il tracking o la pose estimation.
Confronto delle prestazioni
Quando valuti questi modelli per un deployment nel mondo reale, bilanciare precisione (mAP), velocità di inferenza e utilizzo della memoria è fondamentale. I modelli Ultralytics sono rinomati per i loro bassi requisiti di memoria sia durante l'addestramento che l'inferenza, richiedendo molta meno memoria CUDA rispetto ad alternative basate su transformer come RT-DETR.
Di seguito è riportato un confronto diretto delle prestazioni di YOLO26 e YOLOv9 sul dataset COCO. I valori migliori in ogni colonna sono evidenziati in grassetto.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOP (B) |
|---|---|---|---|---|---|---|
| YOLO26n | 640 | 40.9 | 38.9 | 1.7 | 2.4 | 5.4 |
| YOLO26s | 640 | 48.6 | 87.2 | 2.5 | 9.5 | 20.7 |
| YOLO26m | 640 | 53.1 | 220.0 | 4.7 | 20.4 | 68.2 |
| YOLO26l | 640 | 55.0 | 286.2 | 6.2 | 24.8 | 86.4 |
| YOLO26x | 640 | 57.5 | 525.8 | 11.8 | 55.7 | 193.9 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Nota: le velocità della CPU per YOLOv9 sono omesse poiché variano notevolmente in base alla configurazione della NMS e sono generalmente più lente dell'implementazione nativa NMS-free di YOLO26.
Casi d'uso e raccomandazioni
La scelta tra YOLO26 e YOLOv9 dipende dai requisiti specifici del tuo progetto, dai vincoli di deployment e dalle preferenze dell'ecosistema.
Quando scegliere YOLO26
YOLO26 è un'ottima scelta per:
- 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.
Quando scegliere YOLOv9
YOLOv9 è consigliato per:
- Ricerca sul collo di bottiglia informativo: Progetti accademici che studiano le architetture Programmable Gradient Information (PGI) e Generalized Efficient Layer Aggregation Network (GELAN).
- Studi sull'ottimizzazione del flusso del gradiente: Ricerca focalizzata sulla comprensione e sulla mitigazione della perdita di informazioni negli strati profondi della rete durante l'addestramento.
- Benchmarking del rilevamento ad alta precisione: Scenari in cui le solide prestazioni di YOLOv9 nel benchmark COCO sono necessarie come punto di riferimento per confronti architettonici.
Il vantaggio di Ultralytics
Scegliere un modello implica molto più che leggere semplicemente un benchmark di precisione; l'ecosistema software circostante determina la velocità con cui puoi passare dalla raccolta dei dati alla produzione.
Facilità d'uso ed ecosistema
La Python API di Ultralytics offre un'esperienza "zero-to-hero" senza interruzioni. Invece di clonare repository complessi o configurare manualmente script di addestramento distribuito, gli sviluppatori possono installare il pacchetto tramite pip e iniziare subito ad addestrare. L' ecosistema Ultralytics, attivamente mantenuto, garantisce aggiornamenti frequenti, integrazioni automatizzate con piattaforme ML come Weights & Biases e una documentazione estesa.
Versatilità attraverso le attività di visione
Mentre YOLOv9 è principalmente un motore di rilevamento, YOLO26 è uno strumento di visione per scopi generali. Utilizzando una sintassi unificata, puoi passare facilmente dal rilevamento oggetti alla image segmentation pixel-perfect o alla classification dell'intera immagine. Questa versatilità riduce il debito tecnico derivante dal mantenimento di molteplici codebase disgiunte per diverse funzionalità di computer vision.
Addestramento e deployment efficienti
L'efficienza nell'addestramento è una pietra miliare della filosofia Ultralytics. YOLO26 utilizza pesi pre-addestrati facilmente disponibili e vanta un utilizzo della memoria significativamente inferiore rispetto ai pesi ingombranti dei vision transformer. Una volta addestrato, le pipeline di esportazione integrate consentono conversioni con un clic in formati ottimizzati come TensorRT o TensorFlow Lite, rendendo fluido il percorso verso la produzione.
Esempio di codice: Iniziare con YOLO26
Implementare YOLO26 è straordinariamente semplice. Il seguente snippet Python dimostra come caricare un modello pre-addestrato, addestrarlo su dati personalizzati ed eseguire l'inferenza utilizzando l'API di Ultralytics.
from ultralytics import YOLO
# Load the latest state-of-the-art YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset utilizing the MuSGD optimizer
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device=0, # Uses GPU 0, or use 'cpu' for CPU training
)
# Run an NMS-free inference on a sample image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Display the bounding boxes and confidences
predictions[0].show()Sfruttando la velocità, l'architettura semplificata e il solido ecosistema di YOLO26, i team possono portare sul mercato applicazioni di visione AI avanzate più velocemente e con meno ostacoli tecnici che mai.