Meet YOLO26: next-gen vision AI.

Link to this sectionConfronto tra YOLOv9 e YOLOv5#

Il campo della computer vision ha assistito a una crescita enorme, con il rilevamento degli oggetti che funge da pilastro per innumerevoli applicazioni industriali e di ricerca. Scegliere l'architettura giusta richiede spesso un'attenta valutazione della mean Average Precision (mAP), della velocità di inferenza e dell'overhead di memoria. In questo confronto, esploriamo due modelli estremamente influenti: YOLOv9, celebrato per le sue innovazioni architettoniche nella conservazione delle informazioni di gradiente, e Ultralytics YOLOv5, lo standard industriale collaudato, noto per la sua incredibile facilità d'uso e l'impareggiabile versatilità di distribuzione.

Link to this sectionInnovazioni architettoniche e origini tecniche#

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

Link to this sectionYOLOv9: 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 tutto il processo feed-forward, portando ad aggiornamenti del gradiente altamente accurati. Nel frattempo, l'architettura GELAN massimizza l'efficienza dei parametri, consentendo al modello di raggiungere una precisione all'avanguardia con un overhead computazionale sorprendentemente basso. Puoi esplorare i dettagli tecnici nel paper Arxiv di YOLOv9 ufficiale o visualizzare il repository GitHub di YOLOv9.

Scopri di più su YOLOv9

Link to this sectionUltralytics 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 rilevamento oggetti costruito nativamente sul framework PyTorch, ha aggirato le complessità del vecchio framework Darknet in C. YOLOv5 sfrutta un backbone CSPNet altamente ottimizzato e un neck PANet, dando priorità a un equilibrio perfetto tra velocità e precisione.

Il suo successo principale, tuttavia, è l'integrazione nel più ampio ecosistema Ultralytics. YOLOv5 è fortemente ottimizzato per una rapida efficienza di addestramento e per ambienti a bassa memoria, rendendolo incredibilmente stabile per le distribuzioni 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.

Link to this sectionAnalisi delle prestazioni: velocità vs. precisione#

Quando progetti una pipeline di computer vision, devi valutare i compromessi tra precisione e latenza. La seguente tabella illustra le differenze di prestazioni sul dataset COCO 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

Link to this sectionAnalisi dei compromessi#

YOLOv9 stabilisce un dominio assoluto nella precisione pura. Lo YOLOv9e spinge i limiti della mAP al 55,6%, utilizzando i suoi layer GELAN per preservare i dettagli a grana fine. Questo lo rende una scelta eccezionale per l'imaging medicale o per scenari che richiedono un rigore assoluto nella precisione su oggetti piccoli.

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

Link to this sectionIl vantaggio dell'ecosistema Ultralytics#

Una considerazione importante quando selezioni un modello è l'ecosistema software circostante. Mentre YOLOv9 fornisce benchmark di ricerca di alto livello, utilizzare entrambi i modelli tramite il moderno Ultralytics Python API colma il divario, offrendo agli sviluppatori un'esperienza unificata e semplificata.

Link to this sectionFacilità d'uso ed esportazione#

Ultralytics astrae complessi ostacoli ingegneristici. Funzionalità come data augmentation automatica e hyperparameter tuning sono gestite immediatamente. Portare i modelli in produzione è altrettanto banale, con comandi di esportazione integrati per convertire i modelli in formati ONNX, OpenVINO o TFLite.

Link to this sectionVersatilità delle attività#

Sebbene entrambi i modelli eccellano nel rilevamento oggetti, i moderni modelli Ultralytics sono costruiti per affrontare una varietà di sfide di computer vision. Il framework più ampio fornisce supporto nativo per classificazione immagini, segmentazione istanze, stima della posa e oriented bounding boxes (OBB), consentendo agli sviluppatori di risolvere molteplici problemi di visione senza cambiare codebase.

Link to this sectionCasi 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.

Link to this sectionQuando 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.

Link to this sectionQuando 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 di formati di esportazione: Progetti che richiedono il deployment su molti formati, inclusi ONNX, TensorRT, CoreML e TFLite.

Link to this sectionQuando 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 oggetti piccoli: Scenari impegnativi come immagini di droni aerei o analisi di sensori IoT in cui ProgLoss e STAL aumentano significativamente la precisione su oggetti minuscoli.

Link to this sectionEsempio 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")

Link to this sectionEsplorare 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: un'evoluzione potente e raffinata della linea YOLOv8 che offre un eccellente equilibrio tra velocità e precisione in tutte le attività di visione.
  • YOLO26: Rilasciato nel 2026, YOLO26 è la raccomandazione definitiva per le moderne pipeline. Introduce un Design End-to-End NMS-Free, eliminando completamente i colli di bottiglia del post-processing. Con la DFL Removal (Distribution Focal Loss rimossa per un'esportazione semplificata e una migliore compatibilità con dispositivi edge/a basso consumo), ottiene un'inferenza CPU fino al 43% più veloce. La stabilità dell'addestramento è potenziata dal nuovo MuSGD Optimizer, e ProgLoss + STAL fornisce funzioni di perdita migliorate con notevoli miglioramenti nel riconoscimento di piccoli oggetti, critico per IoT, robotica e immagini aeree, rendendolo l'architettura più robusta sia per le distribuzioni edge che cloud.

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

Collaboratori

Commenti