YOLO Vision 2026:

Confronto tra YOLOv9 e YOLOv5#

Il campo della computer vision ha registrato una crescita straordinaria, con l'object detection che funge da spina dorsale per innumerevoli applicazioni industriali e di ricerca. Scegliere l'architettura giusta richiede spesso un'attenta valutazione del mean Average Precision (mAP), della velocità di inferenza e dell'overhead di memoria. In questo confronto, esploriamo due modelli estremamente influenti: YOLOv9, celebre per le sue innovazioni architetturali nella conservazione delle informazioni sui gradienti, e Ultralytics YOLOv5, lo standard industriale collaudato noto per la sua incredibile facilità d'uso e la sua impareggiabile versatilità di deployment.

Innovazioni architettoniche e origini tecniche#

Comprendere i meccanismi sottostanti a questi due modelli fornisce un contesto fondamentale per i loro rispettivi profili di prestazione.

YOLOv9: Programmable Gradient Information#

Sviluppato dai ricercatori Chien-Yao Wang e Hong-Yuan Mark Liao presso l'Institute of Information Science, Academia Sinica a Taiwan, YOLOv9 è stato rilasciato il 21 febbraio 2024. Il modello introduce due concetti rivoluzionari per affrontare il collo di bottiglia informativo comune nelle reti neurali profonde: Programmable Gradient Information (PGI) e Generalized Efficient Layer Aggregation Network (GELAN).

Utilizzando PGI, YOLOv9 assicura che le informazioni vitali vengano conservate durante l'intero processo feed-forward, portando ad aggiornamenti dei gradienti estremamente accurati. Nel frattempo, l'architettura GELAN massimizza l'efficienza dei parametri, consentendo al modello di raggiungere un'accuratezza allo stato dell'arte con un overhead computazionale sorprendentemente basso. Puoi esplorare i dettagli tecnici nel YOLOv9 Arxiv paper ufficiale o visualizzare il YOLOv9 GitHub repository.

Scopri di più su YOLOv9

Ultralytics YOLOv5: lo standard per la produzione#

Creato da Glenn Jocher e rilasciato da Ultralytics il 26 giugno 2020, YOLOv5 ha rivoluzionato l'accessibilità della computer vision. Essendo uno dei primi modelli di object detection basati nativamente sul framework PyTorch, ha superato le complessità del vecchio Darknet C-framework. YOLOv5 sfrutta un backbone CSPNet altamente ottimizzato e un neck PANet, dando priorità a un equilibrio perfetto tra velocità e precisione.

Il suo più grande trionfo, tuttavia, è la sua integrazione nel più ampio ecosistema Ultralytics. YOLOv5 è altamente ottimizzato per una rapida training efficiency e ambienti a basso consumo di memoria, rendendolo incredibilmente stabile per i deployment edge.

Scopri di più su YOLOv5

Efficienza della memoria

Quando valuti i modelli per i dispositivi edge, ricorda che i modelli Ultralytics YOLO richiedono solitamente molta meno memoria GPU durante l'addestramento e l'inferenza rispetto alle pesanti architetture basate su Transformer.

Analisi delle prestazioni: velocità vs. precisione#

Quando si progetta una pipeline di computer vision, gli sviluppatori devono valutare i compromessi tra precisione e latenza. La seguente tabella illustra le differenze di performance sul COCO dataset standard.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
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 dei compromessi#

YOLOv9 stabilisce un dominio assoluto nella precisione pura. Il YOLOv9e spinge i confini del mAP al 55,6%, sfruttando i suoi layer GELAN per preservare i dettagli a grana fine. Questo lo rende una scelta eccezionale per il medical imaging o per scenari che richiedono una rigorosa precisione sui piccoli oggetti.

Al contrario, YOLOv5 brilla per la sua velocità di deployment pura e la flessibilità hardware. Il YOLOv5n (Nano) è notoriamente leggero, eseguendo inferenze in appena 1,12ms su una T4 GPU tramite TensorRT. Se stai eseguendo il deployment su dispositivi IoT vincolati, telefoni cellulari o Raspberry Pi, il footprint di memoria di YOLOv5 lo rende straordinariamente affidabile.

Il vantaggio dell'ecosistema Ultralytics#

Una considerazione fondamentale quando si seleziona un modello è l'ecosistema software circostante. Mentre YOLOv9 fornisce benchmark di ricerca di alto livello, l'utilizzo di entrambi i modelli tramite la moderna Ultralytics Python API colma il divario, offrendo agli sviluppatori un'esperienza unificata e ottimizzata.

Facilità d'uso ed esportazione#

Ultralytics astrae i complessi ostacoli ingegneristici. Funzionalità come la data augmentation automatica e l'hyperparameter tuning sono gestite nativamente. Portare i modelli in produzione è altrettanto banale, grazie ai comandi di export integrati per convertire i modelli nei formati ONNX, OpenVINO o TFLite.

Versatilità delle attività#

Sebbene entrambi i modelli eccellano nell'object detection, i moderni modelli Ultralytics sono progettati per affrontare una varietà di sfide di computer vision. Il framework più ampio offre supporto nativo per image classification, instance segmentation, pose estimation e oriented bounding boxes (OBB), consentendo agli sviluppatori di risolvere molteplici problemi di visione senza cambiare codebase.

Casi d'uso e raccomandazioni#

Scegliere tra YOLOv9 e YOLOv5 dipende dai requisiti specifici del tuo progetto, dai vincoli di distribuzione e dalle preferenze dell'ecosistema.

Quando scegliere YOLOv9#

YOLOv9 è una scelta solida per:

  • Ricerca sul collo di bottiglia dell'informazione: Progetti accademici che studiano le architetture Programmable Gradient Information (PGI) e Generalized Efficient Layer Aggregation Network (GELAN).
  • Studi sull'ottimizzazione del flusso di gradienti: 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 forti prestazioni del benchmark COCO di YOLOv9 sono necessarie come punto di riferimento per i confronti architettonici.

Quando scegliere YOLOv5#

YOLOv5 è consigliato per:

  • Sistemi di produzione comprovati: Deployment esistenti in cui sono apprezzati la lunga storia di stabilità, l'ampia documentazione e il massiccio supporto della comunità 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 sono vantaggiosi.
  • Ampio supporto per i formati di esportazione: Progetti che richiedono la distribuzione su molti formati tra cui 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 per gli sviluppatori:

  • Implementazione Edge senza NMS: Applicazioni che richiedono un'inferenza costante e a bassa latenza senza la complessità della post-elaborazione della soppressione dei non massimi.
  • Ambienti solo CPU: Dispositivi senza accelerazione GPU dedicata, dove l'inferenza CPU fino al 43% più veloce di YOLO26 fornisce un vantaggio decisivo.
  • Rilevamento di piccoli oggetti: Scenari complessi come aerial drone imagery o analisi di sensori IoT in cui ProgLoss e STAL aumentano significativamente l'accuratezza sugli oggetti minuscoli.

Esempio di implementazione#

La bellezza dell'ecosistema Ultralytics è che puoi passare da un modello YOLOv5 a un modello YOLOv9 semplicemente cambiando la stringa dei pesi.

from ultralytics import YOLO

# Load a pretrained YOLOv9 model (swap to "yolov5s.pt" to use YOLOv5)
model = YOLO("yolov9c.pt")

# Train the model efficiently on a custom dataset
train_results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on new images
predictions = model.predict("https://ultralytics.com/images/zidane.jpg")

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

Esplorare nuove architetture#

Sebbene YOLOv5 e YOLOv9 siano modelli eccellenti con vantaggi distinti, il campo continua ad avanzare. Gli utenti che esplorano nuovi progetti potrebbero voler valutare anche le ultime iterazioni di Ultralytics.

  • YOLO11: Una potente e raffinata evoluzione della stirpe YOLOv8 che offre un eccellente bilanciamento tra velocità e precisione in tutte le attività di visione.
  • YOLO26: Rilasciato nel 2026, YOLO26 è la raccomandazione definitiva per le pipeline moderne. Introduce un End-to-End NMS-Free Design, eliminando completamente i colli di bottiglia del post-processing. Con la DFL Removal (Distribution Focal Loss rimossa per un export semplificato e una migliore compatibilità con dispositivi edge/a bassa potenza), raggiunge fino al 43% di inferenza CPU più veloce. La stabilità dell'addestramento è potenziata al massimo tramite il nuovo MuSGD Optimizer, e ProgLoss + STAL offre funzioni di loss migliorate con notevoli miglioramenti nel riconoscimento dei piccoli oggetti, fondamentali per IoT, robotica e immagini aeree, rendendolo l'architettura più robusta sia per i deployment edge che cloud.

Per i team che gestiscono grandi dataset e complesse pipeline di deployment, l'utilizzo della Ultralytics Platform offre una soluzione no-code per addestrare, tracciare e fare il deploy di questi modelli all'avanguardia senza sforzo.

Contributori

Commenti