Vai al contenuto

PP-YOLOE+ vs. YOLOv5: un confronto tecnico sul rilevamento di oggetti in tempo reale

Nel panorama competitivo della visione artificiale, la scelta dell'architettura giusta per il rilevamento degli oggetti è una decisione fondamentale per sviluppatori e ricercatori. PP-YOLOE+, sviluppato dal PaddlePaddle di Baidu, e YOLOv5, creato da Ultralytics, si distinguono come due approcci distinti per risolvere le sfide del rilevamento in tempo reale. Mentre PP-YOLOE+ enfatizza i meccanismi senza ancoraggio all'interno PaddlePaddle , YOLOv5 stabilito lo standard del settore per usabilità, flessibilità di implementazione e supporto della comunità all'interno PyTorch.

Questa guida fornisce un'analisi tecnica approfondita di questi due modelli influenti, confrontandone le architetture, le metriche delle prestazioni e l'idoneità per applicazioni reali come l'automazione della produzione e l'edge computing.

Panoramica del modello

PP-YOLOE+

PP-YOLOE+ è un'evoluzione di PP-YOLOE, progettato per migliorare la convergenza dell'addestramento e le prestazioni delle attività a valle. Funziona sul PaddlePaddle e utilizza un paradigma senza ancoraggio per semplificare la testa di rilevamento. Incorporando una struttura più solida e strategie di addestramento perfezionate, mira a fornire un'elevata precisione per le applicazioni industriali in cui l'inferenza basata sul cloud è comune.

Ultralytics YOLOv5

YOLOv5 ha rivoluzionato l'esperienza utente nel rilevamento degli oggetti. Rilasciato da Ultralytics, dà priorità all'ingegneria "deployment-first", garantendo che i modelli non solo siano accurati, ma anche incredibilmente facili da addestrare, esportare ed eseguire su hardware diversi. La sua architettura basata su anchor è altamente ottimizzata per la velocità, rendendolo uno dei preferiti per l'inferenza in tempo reale sui dispositivi edge.

Scopri di più su YOLOv5

Confronto dell'Architettura Tecnica

Le filosofie architettoniche di PP-YOLOE+ e YOLOv5 in modo significativo, influenzando il loro comportamento di addestramento e le caratteristiche di implementazione.

Backbone ed estrazione delle feature

YOLOv5 utilizza una dorsale CSPDarknet (Cross Stage Partial Network). Questo design migliora il flusso del gradiente e riduce il numero di parametri senza sacrificare le prestazioni. L'architettura è altamente modulare, consentendo una rapida sperimentazione con diverse profondità e larghezze del modello (da Nano a X-Large). Questa modularità è fondamentale per gli sviluppatori che implementano in ambienti con risorse limitate come Raspberry Pi o dispositivi mobili.

PP-YOLOE+, al contrario, impiega tipicamente una struttura CSPRepResStage, che combina connessioni residue con tecniche di riparametrizzazione. Sebbene efficace per l'estrazione di caratteristiche ricche, questa struttura spesso comporta una maggiore complessità durante la fase di addestramento rispetto all'efficienza semplificata dell'implementazione YOLOv5.

Teste di rilevamento: con ancoraggio vs. senza ancoraggio

Una differenza fondamentale risiede nelle teste di rilevamento:

  1. YOLOv5 basato su anchor): utilizza anchor box predefiniti per prevedere la posizione degli oggetti. Sebbene richieda una configurazione iniziale (che Ultralytics tramite AutoAnchor), fornisce gradienti di addestramento stabili e prestazioni storicamente robuste su set di dati standard come COCO.
  2. PP-YOLOE+ (Anchor-Free): prevede direttamente i centri e le dimensioni degli oggetti, eliminando la necessità di ottimizzare gli iperparametri dell'anchor box. Questo approccio gestisce bene gli oggetti con proporzioni estreme, ma può essere più sensibile alla qualità dei dati di addestramento e alla convergenza iniziale della perdita.

Evoluzione verso l'ancoraggio senza ancora

Mentre YOLOv5 utilizza YOLOv5 gli anchor, Ultralytics più recenti come YOLOv8 e l'innovativo YOLO26 sono passati a design senza anchor, combinando il meglio dei due mondi: facilità d'uso e generalizzazione geometrica superiore.

Metriche di performance

Quando si valuta la performance, è fondamentale considerare il compromesso tra la precisione media (mAP) e la latenza. La tabella sottostante evidenzia che, mentre PP-YOLOE+ raggiunge un'elevata accuratezza, YOLOv5 un vantaggio competitivo in termini di CPU e versatilità di implementazione, con barriere di ingresso significativamente inferiori per i nuovi utenti.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59
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

Analisi della velocità e dell'efficienza

Ultralytics YOLOv5 un'efficienza eccezionale, in particolare nelle varianti "Nano" e "Small". Il modello YOLOv5n, con soli 1,9 milioni di parametri, è progettato specificamente per ambienti estremamente limitati, come app mobili o sensori IoT. Sebbene PP-YOLOE+ offra ottimi mAP , la complessità della configurazione e la dipendenza dal PaddlePaddle possono causare attriti nelle pipeline di produzione che si basano su ONNX PyTorch ONNX standard.

Inoltre, i requisiti di memoria favoriscono YOLOv5. Durante l'addestramento, i caricatori di dati ottimizzati e la gestione della memoria YOLOv5 consentono di ottenere batch di dimensioni maggiori su GPU di livello consumer rispetto a molti concorrenti, riducendo la barriera hardware per gli ingegneri di IA.

Formazione ed ecosistema

L'ecosistema che circonda un modello è spesso importante quanto il modello stesso. È qui che Ultralytics un vantaggio distintivo.

Facilità d'uso e documentazione

YOLOv5 famoso per la sua esperienza "zero-to-hero". Uno sviluppatore può passare dall'installazione della libreria all'addestramento di un modello personalizzato su un set di dati come VisDrone in pochi minuti.

from ultralytics import YOLO

# Load a pretrained YOLO model (YOLOv5 or the newer YOLO26)
model = YOLO("yolov5s.pt")

# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate performance
metrics = model.val()

In confronto, PP-YOLOE+ richiede l'installazione di PaddlePaddle la clonazione del repository PaddleDetection. La configurazione spesso comporta la modifica di più file YAML e la navigazione in una struttura di directory più complessa, il che può rappresentare una curva di apprendimento più ripida per chi è abituato alla semplicità Pythonica di Ultralytics.

Versatilità e supporto per i task

Mentre PP-YOLOE+ è incentrato principalmente sul rilevamento, Ultralytics offre supporto nativo per una gamma più ampia di attività di visione all'interno di un'unica API:

Questa versatilità consente agli sviluppatori di passare da un'attività all'altra senza dover apprendere nuovi framework o riscrivere le pipeline di dati.

Applicazioni nel mondo reale

Quando scegliere PP-YOLOE+

PP-YOLOE+ è un ottimo candidato se la tua infrastruttura è già profondamente integrata con lo stack tecnologico di Baidu. Per gli utenti nelle regioni in cui PaddlePaddle il framework dominante, o per specifiche implementazioni lato server in cui mAP l'unica priorità rispetto alla facilità di implementazione, PP-YOLOE+ rimane un'opzione valida.

Quando scegliereYOLO Ultralytics

Per la stragrande maggioranza degli sviluppatori, delle startup e dei team aziendali di tutto il mondo, Ultralytics YOLOv5 (e i suoi successori) è la scelta consigliata per i seguenti motivi:

  1. Distribuzione Edge: esportazione senza interruzioni su TFLite, CoreML e OpenVINO garantisce l'esecuzione efficiente dei modelli sui dispositivi degli utenti finali.
  2. Supporto della community: una community numerosa e attiva contribuisce a frequenti aggiornamenti, garantendo che i bug vengano risolti e che nuove funzionalità come l'annotazione automatica vengano aggiunte regolarmente.
  3. Piattaforma olistica: la Ultralytics semplifica l'intero ciclo di vita, dalla gestione dei set di dati all'addestramento dei modelli e all'implementazione nel cloud.

Il futuro: entra in YOLO26

Sebbene YOLOv5 uno strumento robusto e affidabile, il campo della visione artificiale è in rapida evoluzione. Ultralytics recentemente introdotto YOLO26, che rappresenta lo stato dell'arte assoluto in termini di efficienza e prestazioni.

YOLO26 offre diversi miglioramenti rivoluzionari rispetto sia a YOLOv5 a PP-YOLOE+:

  • End-to-End NMS: YOLO26 elimina la Non-Maximum Suppression (NMS), una fase di post-elaborazione che rallenta l'inferenza. Ciò si traduce in una logica di implementazione più semplice e una latenza inferiore.
  • MuSGD Optimizer: ispirato alla formazione LLM, questo ottimizzatore ibrido garantisce una convergenza stabile e tempi di formazione più rapidi.
  • Rilevamento avanzato di oggetti di piccole dimensioni: grazie a ProgLoss e STAL (Task-Alignment Loss), YOLO26 eccelle nel rilevamento di oggetti di piccole dimensioni, una capacità fondamentale per l'ispezione con droni e l'agricoltura di precisione.
  • CPU più veloce del 43%: con la rimozione della Distribution Focal Loss (DFL), YOLO26 è ottimizzato specificamente per le CPU, rendendolo la scelta migliore per un edge computing conveniente.

Agli sviluppatori che inizieranno nuovi progetti nel 2026, consigliamo vivamente di valutare YOLO26 per rendere le loro applicazioni a prova di futuro grazie agli ultimi progressi nell'architettura delle reti neurali.

Scopri di più su YOLO26


Commenti