Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Get Started

YOLOv9 vs YOLOv7#

L'evoluzione del rilevamento degli oggetti in tempo reale è stata guidata dal continuo impegno per bilanciare l'efficienza computazionale e l'elevata precisione. Due architetture fondamentali di questo percorso sono YOLOv9 e YOLOv7, entrambe sviluppate da ricercatori dell'Institute of Information Science, Academia Sinica, a Taiwan. Mentre YOLOv7 ha introdotto l'approccio trainable bag-of-freebies, il più recente YOLOv9 affronta direttamente i colli di bottiglia informativi del deep learning.

Questo confronto tecnico esamina le differenze architetturali, le metriche prestazionali e gli scenari di deployment ideali di entrambi i modelli, aiutando ingegneri ML e ricercatori a scegliere lo strumento giusto per le proprie pipeline di computer vision.

Confronto delle prestazioni e delle metriche#

Nel confronto tra questi modelli, le prestazioni grezze e l'efficienza sono fattori fondamentali. La tabella seguente illustra la precisione media (mAP) e i requisiti computazionali sul benchmark standard del dataset COCO.

Modellodimensione
(pixel)
mAPval50-95Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.226.7
YOLOv9m64051.4-6.4320.176.8
YOLOv9c64053.0-7.1625.5102.8
YOLOv9e64055.6-16.7758.1192.5
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
Equilibrio delle prestazioni

Nota come YOLOv9c raggiunga una precisione pressoché uguale (53,0 mAP) a YOLOv7x (53,1 mAP), utilizzando circa il 64% di parametri in meno (25,5 milioni contro 71,3 milioni) e circa la metà dei FLOPs (102,8 miliardi contro 189,9 miliardi). Questo dimostra quanto le architetture moderne abbiano migliorato il bilanciamento tra precisione ed efficienza.

YOLOv9: risolvere il collo di bottiglia informativo#

Introdotto all'inizio del 2024, YOLOv9 ha cambiato il modo in cui le reti neurali profonde conservano le informazioni nei propri layer.

Innovazioni architetturali#

YOLOv9 introduce la rete di aggregazione dei layer efficiente generalizzata (GELAN) e le informazioni programmabili sul gradiente (PGI). GELAN combina i punti di forza di CSPNet ed ELAN per ottimizzare l'efficienza dei parametri e il costo computazionale, offrendo un'elevata precisione con un numero inferiore di parametri. PGI è un framework di supervisione ausiliaria progettato per prevenire la perdita di dati nelle reti profonde, generando gradienti affidabili per aggiornare i pesi durante l'addestramento.

Punti di forza e limiti#

Il principale punto di forza di YOLOv9 è la capacità di estrarre caratteristiche sottili senza un elevato carico computazionale, il che lo rende adatto ai task che richiedono un'elevata fedeltà delle caratteristiche, come l'analisi di immagini mediche. Tuttavia, la complessa struttura PGI durante l'addestramento può rendere le modifiche architetturali personalizzate più difficili per i principianti rispetto ai framework più unificati.

Scopri di più su YOLOv9

YOLOv7: pioniere dei bag-of-freebies#

Rilasciato nel 2022, YOLOv7 ha stabilito un nuovo punto di riferimento per il rilevamento in tempo reale, introducendo innovazioni strutturali che hanno migliorato notevolmente la velocità dell'inferenza in tempo reale.

Innovazioni architetturali#

Il contributo fondamentale di YOLOv7 è la Rete estesa ed efficiente di aggregazione dei livelli (E-ELAN). Questa architettura consente al modello di apprendere continuamente caratteristiche più diversificate. Inoltre, YOLOv7 utilizza i «bag-of-freebies addestrabili», ovvero tecniche come convoluzioni riparametrizzate pianificate e assegnazione dinamica delle etichette. Questi metodi migliorano l'accuratezza del modello durante l'addestramento senza aggiungere costi di inferenza al momento del deployment.

Punti di forza e limiti#

YOLOv7 è fortemente ottimizzato per l'elaborazione edge in tempo reale e resta un elemento fondamentale dei sistemi legacy e degli ambienti CUDA meno recenti. Oggi il suo principale limite è il numero maggiore di parametri rispetto ai modelli più recenti. Come mostra la tabella delle prestazioni, per raggiungere una precisione di alto livello è necessario il modello YOLOv7x più grande, che richiede molta più memoria GPU rispetto alle architetture moderne equivalenti.

Scopri di più su YOLOv7

I vantaggi di Ultralytics: deployment semplificato#

Sebbene i repository di ricerca originali di YOLOv9 e YOLOv7 offrano ottime basi accademiche, distribuire questi modelli in ambienti di produzione può essere complesso. Integrare YOLOv9 tramite il pacchetto ultralytics (YOLOv7 è supportato solo tramite modelli ONNX o TensorRT esportati) semplifica notevolmente il deployment.

Con Ultralytics Platform, gli sviluppatori possono contare su un ecosistema ben gestito, con un'API Python intuitiva, una community attiva e un solido monitoraggio degli esperimenti.

Prepararsi al futuro con YOLO26#

Se stai avviando un nuovo progetto di computer vision, Ultralytics consiglia YOLO26, rilasciato a gennaio 2026, al posto di YOLOv9 e YOLOv7. YOLO26 introduce diversi miglioramenti:

  • Design end-to-end senza NMS: una head opzionale one-to-one (nms=False) salta la post-elaborazione di soppressione non massima (NMS), riducendo la complessità e la latenza del deployment.
  • Inferenza su CPU fino al 43% più veloce: YOLO26n è fino al 43% più veloce di YOLO11n su CPU, consentendo alle applicazioni di funzionare senza problemi negli ambienti di edge computing, anche senza GPU dedicate.
  • Ottimizzatore MuSGD: un ibrido di SGD e Muon ispirato all'addestramento degli LLM, che offre una convergenza stabile e tempi di addestramento più brevi.
  • Rimozione di DFL: esportazione del modello semplificata eliminando Distribution Focal Loss, per migliorare la compatibilità con i dispositivi mobili a basso consumo.
  • ProgLoss + STAL: la Progressive Loss e l'assegnazione delle etichette consapevole degli oggetti piccoli (STAL) migliorano il rilevamento degli oggetti di piccole dimensioni, con vantaggi per le immagini aeree e la sorveglianza.

Altre alternative diffuse nell'ecosistema sono Ultralytics YOLOv8 e YOLO11, entrambi compatibili con più task, come la segmentazione di istanze e la stima della posa.

Esempio di implementazione#

Come mostra il codice seguente, addestrare ed esportare YOLOv9 o YOLO26 è semplice grazie all'API unificata.

from ultralytics import YOLO

# Inizializza YOLOv9 o il modello YOLO26 consigliato
model = YOLO("yolov9c.pt")  # Sostituisci con "yolo26n.pt" per prestazioni edge più rapide

# Addestra su un dataset personalizzato con l'aumento dei dati integrato
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=16, device=0)

# Esporta il modello addestrato in formato ONNX per il deployment
model.export(format="onnx")
Requisiti di memoria

Quando si esegue l'addestramento su hardware di fascia consumer, l'efficienza della memoria è fondamentale. Le implementazioni Ultralytics di YOLOv9 e YOLO26 sono ottimizzate per ridurre l'uso della VRAM, a differenza dei modelli basati su Transformer (come RT-DETR), che spesso richiedono molta più memoria durante l'addestramento.

Applicazioni nel mondo reale e casi d'uso ideali#

La scelta tra queste architetture dipende spesso dai vincoli specifici del tuo ambiente di produzione.

Quando usare YOLOv9: YOLOv9 eccelle negli ambienti in cui è necessario conservare i dettagli più fini. La sua solida estrazione delle caratteristiche lo rende adatto all'analisi del settore retail per contare i prodotti disposti fittamente sugli scaffali, oppure alle applicazioni agricole in cui è fondamentale identificare le malattie delle colture nelle fasi iniziali, sulle foglie più piccole.

Quando usare YOLOv7: YOLOv7 resta una valida scelta per le pipeline di distribuzione legacy. Se stai integrando il modello in sistemi hardware meno recenti, come alcune generazioni del Google Coral Edge TPU, la semplice architettura CNN di YOLOv7 potrebbe essere più facile da compilare rispetto ai modelli più recenti.

Quando usare YOLO26 (consigliato): Per qualsiasi deployment moderno, dai droni autonomi alla gestione del traffico nelle città intelligenti, YOLO26 è la scelta migliore. La sua architettura senza NMS offre tempi di inferenza più prevedibili, un aspetto importante per la robotica critica per la sicurezza, e la sua precisione supera quella di YOLOv9 e YOLOv7 a dimensioni comparabili.

Commenti