Ultralytics YOLO27:

YOLOv7 vs YOLOv6-3.0#

Il campo della visione artificiale è in continua evoluzione, con nuovi modelli di rilevamento degli oggetti che ampliano costantemente i limiti di velocità e accuratezza. Due tappe importanti di questo percorso sono YOLOv7 e YOLOv6-3.0. Entrambi i modelli hanno introdotto innovazioni architetturali specifiche, progettate per massimizzare il throughput e la precisione nelle applicazioni del mondo reale. Questa pagina offre un'analisi tecnica approfondita di entrambe le architetture, confrontandone prestazioni, metodologie di addestramento e casi d'uso ideali per aiutarti a prendere una decisione informata per il tuo prossimo progetto di intelligenza artificiale.

YOLOv7: il pioniere dei bag-of-freebies#

Rilasciato a metà del 2022, YOLOv7 ha introdotto diverse strategie innovative per ottimizzare l'architettura della rete senza aumentare il costo dell'inferenza. Si è concentrato fortemente sui "bag of freebies" addestrabili per migliorare l'accuratezza mantenendo prestazioni in tempo reale.

Punti salienti dell'architettura#

YOLOv7 è caratterizzato dalla Extended Efficient Layer Aggregation Network (E-ELAN). Questa architettura consente al modello di apprendere caratteristiche più diverse controllando i percorsi del gradiente più brevi e più lunghi. Inoltre, YOLOv7 utilizza tecniche di riparametrizzazione strutturale durante l'inferenza per unire i layer di convoluzione, riducendo efficacemente il numero di parametri e il tempo di calcolo senza sacrificare le rappresentazioni apprese.

Il modello presenta inoltre una strategia esclusiva di addestramento con testa ausiliaria. Utilizzando una "testa principale" per le predizioni finali e una "testa ausiliaria" per guidare l'addestramento nei livelli intermedi, YOLOv7 ottiene una convergenza migliore e un'estrazione delle caratteristiche più ricca, particolarmente utile per affrontare attività impegnative di rilevamento degli oggetti.

Scopri di più su YOLOv7

YOLOv6-3.0: throughput di livello industriale#

Sviluppato dal Meituan Vision AI Department, YOLOv6-3.0 è stato progettato esplicitamente come un "rilevatore di oggetti di nuova generazione per applicazioni industriali". Rilasciato all'inizio del 2023, si concentra fortemente sulla massimizzazione dell'utilizzo dell'hardware, in particolare delle GPU NVIDIA.

Punti salienti dell'architettura#

YOLOv6-3.0 adotta un backbone EfficientRep, altamente ottimizzato per l'elaborazione parallela sulle GPU. Questo lo rende estremamente efficiente per l'elaborazione batch su larga scala. La versione 3.0 ha introdotto un modulo Bi-directional Concatenation (BiC) nel neck per migliorare la fusione delle caratteristiche tra scale diverse, potenziando la capacità del modello di rilevare oggetti di dimensioni diverse.

Inoltre, YOLOv6-3.0 utilizza una strategia di Anchor-Aided Training (AAT). Questo approccio innovativo combina i vantaggi dell'addestramento basato su anchor con l'inferenza anchor-free, consentendo al modello di sfruttare la stabilità degli anchor durante la fase di apprendimento e di mantenere al contempo la velocità e la semplicità di un design anchor-free durante la distribuzione.

Learn more about YOLOv6

Confronto delle prestazioni#

Quando valuti i modelli per la produzione, è fondamentale bilanciare l'accuratezza (mAP) con la velocità di inferenza e il sovraccarico computazionale (FLOPs). Di seguito trovi un confronto dettagliato delle varianti standard di entrambi i modelli.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7
Considerazioni sull'hardware

YOLOv6-3.0 è particolarmente adatto agli ambienti GPU ad alto throughput (come TensorRT), mentre YOLOv7 offre un equilibrio solido per i sistemi in cui la conservazione delle caratteristiche è una priorità elevata.

Il vantaggio di Ultralytics#

Sebbene i repository indipendenti di YOLOv7 e YOLOv6-3.0 siano potenti, integrarli nell'ecosistema Ultralytics trasforma l'esperienza degli sviluppatori. Il pacchetto Python ultralytics standardizza queste architetture diverse in un unico framework intuitivo.

  • Semplicità d'uso: sono finiti i giorni dei complessi script di configurazione. L'API Ultralytics ti consente di caricare, addestrare e distribuire YOLOv7 o YOLOv6 con una quantità minima di codice di base. Puoi passare facilmente da un'architettura all'altra cambiando semplicemente il file dei pesi del modello.
  • Ecosistema ben mantenuto: Ultralytics offre un ambiente solido con aggiornamenti frequenti, garantendo la compatibilità nativa con le distribuzioni più recenti di PyTorch e le versioni di CUDA.
  • Efficienza dell'addestramento: le pipeline di addestramento sono ottimizzate in modo approfondito per utilizzare efficacemente le risorse della GPU. Inoltre, i modelli Ultralytics YOLO generalmente richiedono meno memoria durante l'addestramento rispetto ai modelli pesanti basati su Transformer (come RT-DETR), consentendo dimensioni dei batch maggiori sull'hardware di livello consumer.
  • Versatilità: oltre al rilevamento standard delle bounding box, il framework Ultralytics supporta perfettamente attività avanzate come la stima della posa e la segmentazione delle istanze nelle famiglie di modelli compatibili, una funzionalità spesso assente nei repository di ricerca indipendenti.

Esempio di codice: addestramento e inferenza#

Integrare questi modelli nella tua pipeline Python è semplice. Assicurati che il tuo dataset sia formattato correttamente (ad esempio, nel formato standard COCO) ed esegui quanto segue:

from ultralytics import YOLO

# Load a pretrained YOLOv7 model (or 'yolov6n.pt' for YOLOv6)
model = YOLO("yolov7.pt")

# Train the model with built-in hyperparameter management
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image URL or local path
predictions = model("https://ultralytics.com/images/bus.jpg")

# Visualize the detection results
predictions[0].show()

Casi d'uso ideali#

Quando scegliere YOLOv7#

YOLOv7 eccelle negli scenari che richiedono elevata accuratezza e un'estrazione densa delle caratteristiche.

  • Videosorveglianza complessa: la sua capacità di conservare dettagli granulari lo rende adatto al monitoraggio di scene affollate o al rilevamento di piccole anomalie nelle infrastrutture delle smart city.
  • Benchmarking accademico: spesso utilizzato come solida baseline nella ricerca grazie alla sua filosofia progettuale completa basata sui "bag of freebies".

Quando scegliere YOLOv6-3.0#

YOLOv6-3.0 è il vero motore delle pipeline ad alto volume accelerate dalla GPU.

  • Automazione industriale: perfetto per le linee di produzione e il rilevamento dei difetti di fabbricazione, dove GPU di livello server elaborano simultaneamente più flussi video.
  • Analisi ad alto throughput: eccellente per elaborare archivi video offline quando l'obiettivo principale è massimizzare i fotogrammi al secondo.

Il futuro: YOLO26#

Sebbene YOLOv7 e YOLOv6-3.0 siano altamente capaci, il rapido ritmo dell'innovazione nell'intelligenza artificiale richiede un'efficienza ancora maggiore. Rilasciato a gennaio 2026, Ultralytics YOLO26 rappresenta un salto generazionale nella visione artificiale e affronta sistematicamente i limiti delle architetture precedenti.

Se stai iniziando un nuovo progetto, YOLO26 è fortemente consigliato rispetto alle generazioni precedenti. Introduce diverse funzionalità rivoluzionarie:

  • Design end-to-end senza NMS: basandosi sulle fondamenta poste da YOLOv10, YOLO26 elimina nativamente la soppressione non massima (NMS). Questo riduce il sovraccarico del post-processing, semplifica la distribuzione nelle applicazioni mobili e garantisce un'inferenza altamente deterministica e a bassa latenza.
  • Ottimizzatore MuSGD: ispirato alle tecniche avanzate di addestramento degli LLM (come quelle utilizzate in Kimi K2 di Moonshot AI), YOLO26 utilizza un ottimizzatore ibrido che combina SGD e Muon. Questo garantisce dinamiche di addestramento più stabili e una convergenza notevolmente più rapida.
  • Inferenza sulla CPU fino al 43% più veloce: rimuovendo strategicamente la perdita focale della distribuzione (DFL), YOLO26 ottiene enormi accelerazioni sulle CPU. Questo lo rende il campione indiscusso per gli ambienti edge come Raspberry Pi e i sensori IoT remoti.
  • ProgLoss + STAL: funzioni di perdita avanzate progettate specificamente per migliorare il riconoscimento degli oggetti piccoli, una debolezza storica dei rilevatori a singolo stadio.

Combinando queste innovazioni con la potente Ultralytics Platform, YOLO26 offre prestazioni, versatilità e facilità di distribuzione senza pari per gli specialisti moderni del machine learning.

Contributori

Commenti