Ultralytics YOLO27:

DAMO-YOLO vs YOLOv10#

Il campo della visione artificiale ha assistito a una rapida evoluzione delle architetture di rilevamento degli oggetti in tempo reale. Confrontando DAMO-YOLO e YOLOv10, osserviamo due filosofie distinte nella progettazione dei modelli: ricerca automatizzata dell'architettura rispetto all'ottimizzazione end-to-end senza NMS. Sebbene entrambi spingano oltre i limiti di accuratezza e velocità, le loro strutture sottostanti e i casi d'uso ideali differiscono significativamente.

DAMO-YOLO: ricerca dell'architettura neurale su larga scala#

Sviluppato dal Gruppo Alibaba, DAMO-YOLO è emerso come un potente detector focalizzato sull'uso della ricerca automatizzata per ottenere efficienza strutturale.

Punti salienti dell'architettura#

DAMO-YOLO si affida pesantemente alla Neural Architecture Search (NAS) per bilanciare prestazioni e latenza. Il suo backbone, denominato MAE-NAS, utilizza una ricerca guidata dall'entropia massima sotto rigorosi budget computazionali per trovare la profondità e la larghezza ottimali dei layer.

Per gestire la fusione delle feature su più scale, il modello utilizza un RepGFPN (Feature Pyramid Network generalizzato riparametrizzato) efficiente. Questa struttura heavy-neck è particolarmente adatta all'estrazione di gerarchie spaziali complesse, rendendola utile in scenari come l'analisi di immagini aeree. Inoltre, DAMO-YOLO introduce ZeroHead, una detection head semplificata che riduce notevolmente la complessità dei layer di predizione finali, affidandosi a un solido processo di miglioramento tramite distillazione durante il training.

Training tramite distillazione

DAMO-YOLO utilizza spesso un processo di distillazione della conoscenza in più fasi. Richiede il training di un modello "teacher" più pesante per guidare il modello "student" più piccolo, che ottiene una mAP (precisione media) superiore, ma aumenta significativamente il tempo di calcolo richiesto sulla GPU.

YOLOv10: rilevamento degli oggetti end-to-end all'avanguardia#

Rilasciato un anno e mezzo dopo, YOLOv10 ha introdotto un cambio di paradigma eliminando completamente la necessità della Non-Maximum Suppression (NMS) durante l'inferenza.

Punti salienti dell'architettura#

La caratteristica distintiva di YOLOv10 sono le sue assegnazioni duali coerenti per il training senza NMS. I detector tradizionali predicono più riquadri di delimitazione sovrapposti per un singolo oggetto, richiedendo NMS per filtrare i duplicati. Questa fase di post-processing crea un collo di bottiglia, soprattutto sui dispositivi edge. YOLOv10 risolve il problema consentendo al modello di predire naturalmente un singolo riquadro di delimitazione accurato per ogni oggetto.

Gli autori si sono inoltre concentrati su una progettazione del modello guidata olisticamente dall'efficienza e dall'accuratezza. Analizzando attentamente la ridondanza computazionale nelle architetture esistenti, hanno ottimizzato il backbone e la head per ridurre il numero di FLOPs e parametri. Questa progettazione leggera garantisce a YOLOv10 una latenza di inferenza eccezionale quando viene esportato in formati come TensorRT o OpenVINO.

Scopri di più su YOLOv10

Prestazioni e benchmark#

La tabella seguente illustra le metriche di prestazione grezze sul dataset COCO. I migliori valori complessivi in ogni colonna sono evidenziati in grassetto.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

Sebbene DAMO-YOLO si difenda bene in termini di accuratezza, YOLOv10 offre costantemente una latenza inferiore e pesi del modello significativamente più piccoli. Ad esempio, YOLOv10s raggiunge una mAP leggermente superiore (46,7%) rispetto a DAMO-YOLOs (46,0%), utilizzando meno della metà dei parametri (7,2M contro 16,3M). I minori requisiti di memoria rendono YOLOv10 una scelta eccezionalmente versatile per i sistemi embedded.

Efficienza e usabilità del training#

Nel passaggio dalla ricerca accademica alla produzione, la facilità d'uso è fondamentale. Il processo di distillazione in più fasi di DAMO-YOLO e le complesse configurazioni NAS possono rappresentare una curva di apprendimento ripida per i team di ingegneria.

Al contrario, YOLOv10 trae enormi vantaggi dall'essere completamente integrato nell'SDK Python di Ultralytics. Il training di un modello personalizzato richiede una quantità minima di codice boilerplate. Ultralytics gestisce automaticamente l'aumento dei dati, l'ottimizzazione degli iperparametri e il monitoraggio degli esperimenti.

from ultralytics import YOLO

# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")

# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()
Prototipazione rapida

L'uso dell'ecosistema Ultralytics consente agli sviluppatori di passare da un prototipo a un modello ONNX esportato completo in poche righe di codice, evitando le complesse configurazioni dell'ambiente richieste dai framework meno recenti.

Casi d'uso nel mondo reale#

  • Retail intelligente (DAMO-YOLO): l'accuratezza di DAMO-YOLO è adatta agli ambienti server ad alta densità che analizzano il comportamento dei clienti, dove le GPU sono abbondanti e i colli di bottiglia dell'NMS in tempo reale sono gestibili.
  • Veicoli autonomi (YOLOv10): l'architettura senza NMS garantisce una latenza deterministica e prevedibile, fondamentale per i sistemi di sicurezza nella guida autonoma.
  • Automazione industriale (YOLOv10): il rilevamento dei difetti sulle linee di assemblaggio ad alta velocità richiede modelli che massimizzino le velocità di inferenza in tempo reale senza consumare enormi quantità di VRAM, rendendo YOLOv10 un candidato ideale per il deployment edge.

Casi d'uso e raccomandazioni#

La scelta tra DAMO-YOLO e YOLOv10 dipende dai requisiti specifici del tuo progetto, dai vincoli di deployment e dalle tue preferenze in termini di ecosistema.

Quando scegliere DAMO-YOLO#

DAMO-YOLO è una scelta solida per:

  • Analisi video ad alta produttività: Elaborazione di flussi video ad alto FPS su infrastrutture GPU NVIDIA fisse, dove la produttività con batch-1 è la metrica principale.
  • Linee di produzione industriale: Scenari con rigorosi vincoli di latenza GPU su hardware dedicato, come l'ispezione della qualità in tempo reale sulle linee di assemblaggio.
  • Ricerca sulla ricerca dell'architettura neurale: Studio degli effetti della ricerca automatizzata dell'architettura (MAE-NAS) e dei backbone efficienti riparametrizzati sulle prestazioni di rilevamento.

Quando scegliere YOLOv10#

YOLOv10 è consigliato per:

  • Rilevamento in tempo reale senza NMS: applicazioni che traggono vantaggio dal rilevamento end-to-end senza soppressione non massima, riducendo la complessità della distribuzione.
  • Compromesso equilibrato tra velocità e accuratezza: progetti che richiedono un equilibrio efficace tra velocità di inferenza e accuratezza del rilevamento su diverse dimensioni del modello.
  • Applicazioni a latenza coerente: scenari di distribuzione in cui sono fondamentali tempi di inferenza prevedibili, come la robotica o i sistemi autonomi.

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.

La prossima generazione: entra in scena Ultralytics YOLO26#

Sebbene YOLOv10 abbia gettato le basi per il rilevamento senza NMS, la tecnologia si è evoluta rapidamente. Per le applicazioni moderne, il modello Ultralytics YOLO26 offre prestazioni e usabilità senza pari, combinando i punti di forza delle generazioni precedenti e perfezionandoli per la produzione.

YOLO26 presenta un design nativamente end-to-end, eliminando la post-elaborazione NMS per pipeline di deployment più semplici su dispositivi edge. Inoltre, la rimozione della Distribution Focal Loss (DFL) ha migliorato drasticamente la compatibilità con l'hardware edge AI a basso consumo.

Per quanto riguarda il training, YOLO26 introduce l'ottimizzatore MuSGD, un approccio ibrido ispirato alle tecniche di training dei Large Language Model (LLM). Questo garantisce un training più stabile e una convergenza più rapida. In combinazione con le funzioni di perdita ProgLoss + STAL, YOLO26 mostra notevoli miglioramenti nel riconoscimento degli oggetti piccoli, una caratteristica fondamentale per la conservazione della fauna selvatica e le operazioni con droni.

È importante sottolineare che YOLO26 non è solo un detector di oggetti. Offre miglioramenti specifici per ogni attività, supportando nativamente la segmentazione delle istanze, la stima della posa tramite Residual Log-Likelihood Estimation (RLE) e funzioni di perdita angolari specializzate per i riquadri di delimitazione orientati (OBB). Con un'inferenza su CPU fino al 43% più veloce rispetto ai predecessori, è la scelta definitiva per i team di ingegneria agili.

Per la gestione centralizzata, l'annotazione e il training nel cloud dei modelli YOLO26, la piattaforma Ultralytics offre un'interfaccia intuitiva che semplifica l'intero ciclo di vita della visione artificiale.

Gli sviluppatori interessati a esplorare altri recenti progressi possono anche valutare Ultralytics YOLO11 o il framework RT-DETR basato su Transformer per scenari che richiedono soluzioni architetturali diverse.

Commenti