Ultralytics YOLO27:

YOLOX vs YOLOv7#

L'evoluzione del rilevamento degli oggetti in tempo reale è stata guidata da innovazioni architetturali continue. Due tappe fondamentali di questo percorso sono YOLOX e YOLOv7. Rilasciati a meno di un anno di distanza l'uno dall'altro, entrambi i modelli hanno introdotto approcci innovativi al paradigma standard del rilevamento degli oggetti, migliorando significativamente il compromesso tra velocità e accuratezza.

Questa pagina fornisce un'analisi tecnica approfondita di YOLOX e YOLOv7, confrontandone le architetture, le metriche delle prestazioni e i casi d'uso ideali per aiutare gli sviluppatori a scegliere lo strumento giusto per le proprie implementazioni di computer vision.

YOLOX: pioniere del rilevamento senza anchor#

Introdotto dai ricercatori di Megvii nel luglio 2021, YOLOX ha rappresentato una svolta importante, abbandonando i design tradizionali basati su anchor. Colmando il divario tra la ricerca accademica e l'applicazione industriale, YOLOX ha semplificato la head di rilevamento e migliorato le prestazioni complessive.

Dettagli principali del modello:

Innovazioni architetturali#

YOLOX ha introdotto un approccio senza anchor, che ha ridotto drasticamente il numero di parametri di progettazione e di regolazioni euristiche richieste per i dataset personalizzati. Ha implementato una head disaccoppiata, separando le attività di classificazione e regressione, migliorando così la velocità di convergenza e l'accuratezza. Inoltre, YOLOX ha utilizzato strategie avanzate di data augmentation come MixUp e Mosaic per aumentare la robustezza del modello.

Scopri di più su YOLOX

Vantaggi dell'approccio senza ancoraggi

Eliminando le anchor box, YOLOX riduce il sovraccarico computazionale del calcolo dell'Intersezione sull'unione (IoU) tra le predizioni e i ground truth durante l'addestramento, con conseguente riduzione dei requisiti di memoria CUDA e tempi di addestramento più rapidi.

YOLOv7: Bag-of-Freebies addestrabile#

Rilasciato nel luglio 2022 dai ricercatori dell'Institute of Information Science dell'Academia Sinica, Taiwan, YOLOv7 ha spinto ulteriormente i limiti del rilevamento degli oggetti in tempo reale. Ha introdotto il concetto di "insieme addestrabile di tecniche gratuite", stabilendo nuovi benchmark all'avanguardia sul dataset MS COCO al momento del rilascio.

Dettagli principali del modello:

Innovazioni architetturali#

L'architettura di YOLOv7 è costruita attorno alla Rete estesa di aggregazione efficiente dei livelli (E-ELAN), che consente al modello di apprendere continuamente caratteristiche più diversificate senza degradare il percorso del gradiente. Inoltre, YOLOv7 ha utilizzato tecniche di riparametrizzazione del modello, consentendo di semplificare le complesse reti di addestramento multi-ramo in reti più veloci a percorso singolo durante l'inferenza.

Scopri di più su YOLOv7

Confronto delle prestazioni#

Quando si valutano questi modelli per applicazioni reali, è fondamentale comprenderne le prestazioni a scale diverse. La tabella seguente confronta le metriche standard per varie dimensioni di YOLOX e YOLOv7.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Analisi#

  • Accuratezza: YOLOv7 generalmente raggiunge un mAP più elevato rispetto ai modelli YOLOX equivalenti. Ad esempio, YOLOv7x raggiunge 53.1 mAP rispetto al valore di 51.1 di YOLOXx.
  • Velocità: Sebbene entrambi i modelli siano altamente ottimizzati per l'esecuzione su GPU usando TensorRT, l'architettura E-ELAN di YOLOv7 offre un throughput leggermente migliore per le applicazioni di fascia alta, mentre YOLOX mantiene una latenza eccellente sui dispositivi edge più piccoli.
  • Versatilità: YOLOv7 ha ampliato le proprie capacità oltre i riquadri di delimitazione, fornendo nativamente i pesi per la segmentazione delle istanze e la stima della posa, risultando più versatile del repository YOLOX di base.

Applicazioni nel mondo reale#

La scelta tra questi modelli dipende spesso dal tuo specifico ambiente di implementazione.

Edge computing e IoT#

Per dispositivi edge con risorse limitate, come Raspberry Pi o processori mobili meno recenti, YOLOX-Nano e YOLOX-Tiny sono opzioni molto interessanti. Il loro numero ridotto di parametri e la natura senza anchor li rendono più facili da implementare in ambienti a basso consumo per attività come il rilevamento di movimenti di base o le applicazioni per campanelli intelligenti.

Analisi video ad alta fedeltà#

Per l'elaborazione di flussi ad alta risoluzione nel rilevamento di difetti industriali o nel monitoraggio del traffico intenso, YOLOv7 è superiore. La sua solida aggregazione delle caratteristiche gli consente di mantenere un'elevata accuratezza anche quando gli oggetti sono parzialmente occlusi o variano notevolmente in scala.

Casi d'uso e raccomandazioni#

La scelta tra YOLOX e YOLOv7 dipende dai requisiti specifici del tuo progetto, dai vincoli di implementazione e dalle preferenze relative all'ecosistema.

Quando scegliere YOLOX#

YOLOX è una scelta valida per:

  • Ricerca sul rilevamento senza anchor: ricerca accademica che utilizza l'architettura pulita e senza anchor di YOLOX come baseline per sperimentare nuove teste di rilevamento o funzioni di perdita.
  • Dispositivi edge ultraleggeri: distribuzione su microcontrollori o hardware mobile legacy, dove l'ingombro estremamente ridotto della variante YOLOX-Nano (0.91M di parametri) è fondamentale.
  • Studi sull'assegnazione delle label SimOTA: progetti di ricerca che analizzano le strategie di assegnazione delle label basate sul trasporto ottimale e il loro impatto sulla convergenza dell'addestramento.

Quando scegliere YOLOv7#

YOLOv7 è consigliato per:

  • Benchmark accademici: riprodurre i risultati dello stato dell'arte del 2022 o studiare gli effetti di E-ELAN e delle tecniche dell'insieme addestrabile di vantaggi gratuiti.
  • Ricerca sulla riparametrizzazione: analizzare convoluzioni riparametrizzate pianificate e strategie di scalabilità composta dei modelli.
  • Pipeline personalizzate esistenti: progetti con pipeline fortemente personalizzate costruite attorno all'architettura specifica di YOLOv7, che non possono essere facilmente rifattorizzate.

Quando scegliere Ultralytics (YOLO26)#

Per la maggior parte dei nuovi progetti, Ultralytics YOLO26 offre la migliore combinazione di prestazioni ed esperienza per gli sviluppatori:

  • Deployment edge senza NMS: applicazioni che richiedono un'inferenza coerente e a bassa latenza senza la complessità della post-elaborazione con Soppressione non massima.
  • Ambienti esclusivamente CPU: dispositivi privi di accelerazione GPU dedicata, dove l'inferenza su CPU fino al 43% più veloce di YOLO26 offre un vantaggio decisivo.
  • Rilevamento di oggetti piccoli: scenari complessi come le immagini aeree riprese da droni o l'analisi di sensori IoT, in cui ProgLoss e STAL migliorano significativamente l'accuratezza sugli oggetti di piccole dimensioni.

Il vantaggio di Ultralytics#

Sebbene YOLOX e YOLOv7 siano entrambe potenti implementazioni di ricerca, passare da un repository di ricerca a un ambiente di produzione scalabile può essere impegnativo. È qui che la Ultralytics Platform fa la differenza.

I modelli Ultralytics forniscono una API Python unificata, trattando l'addestramento, la validazione e l'implementazione dei modelli come attività semplificate e standardizzate. Eviti la complicazione di gestire dipendenze di terze parti complesse o operatori C++ personalizzati, comuni nelle architetture meno recenti.

Inoltre, i modelli Ultralytics YOLO richiedono molta meno memoria CUDA durante l'addestramento rispetto ai rilevatori basati su Transformer come RT-DETR. Questo consente di utilizzare batch size più grandi, stabilizzando l'addestramento e accelerando la convergenza sui dataset personalizzati.

Integrazioni supportate

Ultralytics supporta nativamente l'esportazione dei modelli in formati standard del settore come ONNX, OpenVINO e CoreML con un semplice flag booleano, semplificando notevolmente il processo di implementazione del modello.

Esempio di codice: addestramento con Ultralytics#

L'ecosistema Ultralytics consente di caricare, addestrare ed eseguire facilmente l'inferenza usando YOLOv7 o architetture più recenti con poche righe di codice.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on a custom dataset (e.g., COCO8)
# The API handles data loading, augmentation, and memory management automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on a test image
predictions = model("path/to/image.jpg")
predictions[0].show()

Il futuro: Ultralytics YOLO26#

Sebbene YOLOv7 e YOLOX rappresentino importanti tappe storiche, lo stato dell'arte si evolve rapidamente. Rilasciato nel gennaio 2026, Ultralytics YOLO26 introduce paradigmi rivoluzionari che superano i modelli precedenti.

  • Design end-to-end senza NMS: YOLO26 elimina nativamente la post-elaborazione della Soppressione non massima (NMS). Questo riduce drasticamente i colli di bottiglia della latenza e garantisce tempi di esecuzione deterministici tra configurazioni hardware diverse.
  • Inferenza su CPU fino al 43% più veloce: rimuovendo la Perdita focale della distribuzione (DFL) e ottimizzando la profondità della rete, YOLO26 è fortemente adattato ai dispositivi edge privi di hardware GPU dedicato.
  • Ottimizzatore MuSGD: ispirato a tecniche avanzate di addestramento degli LLM, l'ottimizzatore MuSGD (un ibrido di SGD e Muon) offre un'eccezionale stabilità dell'addestramento e una convergenza più rapida.
  • Rilevamento migliorato degli oggetti piccoli: l'integrazione delle funzioni di perdita ProgLoss + STAL offre miglioramenti significativi nel riconoscimento di oggetti piccoli e distanti, un aspetto fondamentale per la mappatura con droni e la videosorveglianza.
  • Supporto nativo delle attività: YOLO26 supporta integralmente i riquadri di delimitazione orientati (OBB), la segmentazione delle istanze e la stima della posa in modo nativo all'interno della stessa API semplificata.

Per qualsiasi sviluppatore che inizi oggi un nuovo progetto di computer vision, valutare Ultralytics YOLO26 sulla Platform è il percorso consigliato per ottenere il miglior equilibrio possibile tra velocità, accuratezza e semplicità di implementazione. Per chi esegue l'upgrade da generazioni precedenti come YOLO11 o YOLOv8, la transizione richiede solo la modifica della stringa del modello, sbloccando immediatamente funzionalità superiori.

Contributori

Commenti