Ultralytics YOLO11
Panoramica
YOLO11 è l'ultima iterazione della serie Ultralytics YOLO di rilevatori di oggetti in tempo reale, che ridefinisce ciò che è possibile con accuratezza, velocità ed efficienza all'avanguardia. Basandosi sugli impressionanti progressi delle precedenti versioni di YOLO, YOLO11 introduce miglioramenti significativi nell'architettura e nei metodi di addestramento, rendendolo una scelta versatile per un'ampia gamma di attività di computer vision.

Ultralytics YOLO11 🚀 Podcast generato da NotebookLM
Guarda: Come utilizzare Ultralytics YOLO11 per il rilevamento e il tracciamento di oggetti | Come effettuare il benchmark | YOLO11 RILASCIATO🚀
Caratteristiche principali
- Estrazione di feature migliorata: YOLO11 impiega un'architettura backbone e neck migliorata, che aumenta le capacità di estrazione di feature per un rilevamento di oggetti più preciso e prestazioni di attività complesse.
- Ottimizzato per Efficienza e Velocità: YOLO11 introduce design architetturali perfezionati e pipeline di training ottimizzate, offrendo velocità di elaborazione più elevate e mantenendo un equilibrio ottimale tra precisione e prestazioni.
- Maggiore accuratezza con meno parametri: Grazie ai progressi nella progettazione del modello, YOLO11m raggiunge una precisione media media (mAP) più elevata sul set di dati COCO pur utilizzando il 22% in meno di parametri rispetto a YOLOv8m, rendendolo computazionalmente efficiente senza compromettere l'accuratezza.
- Adattabilità tra ambienti: YOLO11 può essere implementato senza problemi in vari ambienti, inclusi dispositivi edge, piattaforme cloud e sistemi che supportano GPU NVIDIA, garantendo la massima flessibilità.
- Ampia gamma di attività supportate: Che si tratti di rilevamento oggetti, segmentazione di istanze, classificazione di immagini, stima della posa o rilevamento di oggetti orientati (OBB), YOLO11 è progettato per soddisfare una serie diversificata di sfide di computer vision.
Attività e modalità supportate
YOLO11 si basa sulla versatile gamma di modelli stabilita dalle precedenti versioni di Ultralytics YOLO, offrendo un supporto avanzato per varie attività di computer vision:
| Modello | Nomi dei file | Task | Inferenza | Validazione | Training | Esportazione |
|---|---|---|---|---|---|---|
| YOLO11 | yolo11n.pt yolo11s.pt yolo11m.pt yolo11l.pt yolo11x.pt | Rilevamento | ✅ | ✅ | ✅ | ✅ |
| YOLO11-seg | yolo11n-seg.pt yolo11s-seg.pt yolo11m-seg.pt yolo11l-seg.pt yolo11x-seg.pt | Segmentazione delle istanze | ✅ | ✅ | ✅ | ✅ |
| YOLO11-pose | yolo11n-pose.pt yolo11s-pose.pt yolo11m-pose.pt yolo11l-pose.pt yolo11x-pose.pt | Posa/Punti chiave | ✅ | ✅ | ✅ | ✅ |
| YOLO11-obb | yolo11n-obb.pt yolo11s-obb.pt yolo11m-obb.pt yolo11l-obb.pt yolo11x-obb.pt | Rilevamento orientato | ✅ | ✅ | ✅ | ✅ |
| YOLO11-cls | yolo11n-cls.pt yolo11s-cls.pt yolo11m-cls.pt yolo11l-cls.pt yolo11x-cls.pt | Classificazione | ✅ | ✅ | ✅ | ✅ |
Questa tabella fornisce una panoramica delle varianti del modello YOLO11, mostrando la loro applicabilità in attività specifiche e la compatibilità con modalità operative come Inferenza, Validazione, Addestramento ed Esportazione. Questa flessibilità rende YOLO11 adatto a un'ampia gamma di applicazioni nella visione artificiale, dal rilevamento in tempo reale a complesse attività di segmentazione.
Metriche di performance
Prestazioni
Consulta la documentazione sul Detection per esempi di utilizzo con questi modelli addestrati su COCO, che includono 80 classi pre-addestrate.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 ± 0.8 | 1.5 ± 0.0 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 ± 1.2 | 2.5 ± 0.0 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 ± 2.0 | 4.7 ± 0.1 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 ± 1.4 | 6.2 ± 0.1 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 ± 6.7 | 11.3 ± 0.2 | 56.9 | 194.9 |
Consulta la documentazione sulla Segmentazione per esempi di utilizzo con questi modelli addestrati su COCO, che includono 80 classi pre-addestrate.
| Modello | dimensione (pixel) | mAPbox 50-95 | mAPmask 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|---|
| YOLO11n-seg | 640 | 38.9 | 32.0 | 65.9 ± 1.1 | 1.8 ± 0.0 | 2.9 | 9.7 |
| YOLO11s-seg | 640 | 46.6 | 37.8 | 117.6 ± 4.9 | 2.9 ± 0.0 | 10.1 | 33.0 |
| YOLO11m-seg | 640 | 51.5 | 41.5 | 281.6 ± 1.2 | 6.3 ± 0.1 | 22.4 | 113.2 |
| YOLO11l-seg | 640 | 53.4 | 42.9 | 344.2 ± 3.2 | 7.8 ± 0.2 | 27.6 | 132.2 |
| YOLO11x-seg | 640 | 54.7 | 43.8 | 664.5 ± 3.2 | 15.8 ± 0.7 | 62.1 | 296.4 |
Consulta la documentazione sulla classificazione per esempi di utilizzo con questi modelli addestrati su ImageNet, che includono 1000 classi pre-addestrate.
| Modello | dimensione (pixel) | acc top1 | acc top5 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) a 224 |
|---|---|---|---|---|---|---|---|
| YOLO11n-cls | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 2.8 | 0.5 |
| YOLO11s-cls | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 6.7 | 1.6 |
| YOLO11m-cls | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 11.6 | 4.9 |
| YOLO11l-cls | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 14.1 | 6.2 |
| YOLO11x-cls | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 29.6 | 13.6 |
Consulta la documentazione sulla stima della posa per esempi di utilizzo con questi modelli addestrati su COCO, che includono 1 classe pre-addestrata, 'person'.
| Modello | dimensione (pixel) | mAPpose 50-95 | mAPpose 50 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|---|
| YOLO11n-pose | 640 | 50.0 | 81.0 | 52.4 ± 0.5 | 1.7 ± 0.0 | 2.9 | 7.4 |
| YOLO11s-pose | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.1 |
| YOLO11m-pose | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.4 |
| YOLO11l-pose | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6.4 ± 0.1 | 26.1 | 90.3 |
| YOLO11x-pose | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 | 202.8 |
Consulta la documentazione sul rilevamento orientato per esempi di utilizzo con questi modelli addestrati su DOTAv1, che include 15 classi pre-addestrate.
| Modello | dimensione (pixel) | mAPtest 50 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n-obb | 1024 | 78.4 | 117.6 ± 0.8 | 4.4 ± 0.0 | 2.7 | 16.8 |
| YOLO11s-obb | 1024 | 79.5 | 219.4 ± 4.0 | 5.1 ± 0.0 | 9.7 | 57.1 |
| YOLO11m-obb | 1024 | 80.9 | 562,8 ± 2,9 | 10.1 ± 0.4 | 20.9 | 182.8 |
| YOLO11l-obb | 1024 | 81.0 | 712.5 ± 5.0 | 13.5 ± 0.6 | 26.1 | 231.2 |
| YOLO11x-obb | 1024 | 81.3 | 1408.6 ± 7.7 | 28.6 ± 1.0 | 58.8 | 519.1 |
Esempi di utilizzo
Questa sezione fornisce semplici esempi di addestramento e inferenza YOLO11. Per la documentazione completa su queste e altre modalità, consulta le pagine della documentazione Predict, Train, Val ed Export.
Si noti che l'esempio seguente è per i modelli YOLO11 Detect per il rilevamento di oggetti. Per ulteriori attività supportate, consultare i documenti Segment, Classify, OBB e Pose.
Esempio
PyTorch pre-addestrato *.pt modelli, così come la configurazione *.yaml file possono essere passati alla YOLO() classe per creare un'istanza del modello in Python:
from ultralytics import YOLO
# Load a COCO-pretrained YOLO11n model
model = YOLO("yolo11n.pt")
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLO11n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
Sono disponibili comandi CLI per eseguire direttamente i modelli:
# Load a COCO-pretrained YOLO11n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo11n.pt data=coco8.yaml epochs=100 imgsz=640
# Load a COCO-pretrained YOLO11n model and run inference on the 'bus.jpg' image
yolo predict model=yolo11n.pt source=path/to/bus.jpg
Citazioni e ringraziamenti
Pubblicazione Ultralytics YOLO11
Ultralytics non ha pubblicato un documento di ricerca formale per YOLO11 a causa della rapida evoluzione dei modelli. Ci concentriamo sul progresso della tecnologia e sul renderla più facile da usare, piuttosto che sulla produzione di documentazione statica. Per le informazioni più aggiornate sull'architettura, le caratteristiche e l'utilizzo di YOLO, fare riferimento al nostro repository GitHub e alla documentazione.
Se utilizzi YOLO11 o qualsiasi altro software da questo repository nel tuo lavoro, citalo utilizzando il seguente formato:
@software{yolo11_ultralytics,
author = {Glenn Jocher and Jing Qiu},
title = {Ultralytics YOLO11},
version = {11.0.0},
year = {2024},
url = {https://github.com/ultralytics/ultralytics},
orcid = {0000-0001-5950-6979, 0000-0003-3783-7069},
license = {AGPL-3.0}
}
Si prega di notare che il DOI è in sospeso e verrà aggiunto alla citazione non appena sarà disponibile. I modelli YOLO11 sono forniti con licenze AGPL-3.0 ed Enterprise.
FAQ
Quali sono i principali miglioramenti in Ultralytics YOLO11 rispetto alle versioni precedenti?
Ultralytics YOLO11 introduce diversi progressi significativi rispetto ai suoi predecessori. I miglioramenti chiave includono:
- Estrazione di Feature Migliorata: YOLO11 impiega un'architettura backbone e neck migliorata, potenziando le capacità di estrazione di feature per un rilevamento di oggetti più preciso.
- Efficienza e Velocità Ottimizzate: Design architetturali perfezionati e pipeline di training ottimizzate offrono velocità di elaborazione più elevate, mantenendo al contempo un equilibrio tra precisione e prestazioni.
- Maggiore accuratezza con meno parametri: YOLO11m raggiunge una media di precisione (mAP) più elevata sul set di dati COCO con il 22% in meno di parametri rispetto a YOLOv8m, rendendolo computazionalmente efficiente senza compromettere l'accuratezza.
- Adattabilità tra ambienti: YOLO11 può essere implementato in vari ambienti, inclusi dispositivi edge, piattaforme cloud e sistemi che supportano GPU NVIDIA.
- Ampia gamma di attività supportate: YOLO11 supporta diverse attività di computer vision come il rilevamento di oggetti, la segmentazione di istanze, la classificazione di immagini, la stima della posa e il rilevamento di oggetti orientati (OBB).
Come posso addestrare un modello YOLO11 per il rilevamento di oggetti?
L'addestramento di un modello YOLO11 per l'object detection può essere eseguito utilizzando comandi Python o CLI. Di seguito sono riportati esempi per entrambi i metodi:
Esempio
from ultralytics import YOLO
# Load a COCO-pretrained YOLO11n model
model = YOLO("yolo11n.pt")
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a COCO-pretrained YOLO11n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolo11n.pt data=coco8.yaml epochs=100 imgsz=640
Per istruzioni più dettagliate, fare riferimento alla documentazione Addestramento.
Quali task possono eseguire i modelli YOLO11?
I modelli YOLO11 sono versatili e supportano un'ampia gamma di attività di computer vision, tra cui:
- Rilevamento di Oggetti: Identificazione e localizzazione di oggetti all'interno di un'immagine.
- Segmentazione di istanza: Rilevamento di oggetti e delineazione dei loro confini.
- Classificazione delle immagini: Categorizzazione delle immagini in classi predefinite.
- Stima della posa: Rilevamento e tracciamento dei punti chiave sui corpi umani.
- Object Detection Orientato (OBB): Rilevamento di oggetti con rotazione per una maggiore precisione.
Per maggiori informazioni su ciascuna attività, consulta la documentazione relativa a Rilevamento, Segmentazione delle istanze, Classificazione, Stima della posa e Rilevamento orientato.
In che modo YOLO11 raggiunge una maggiore accuratezza con meno parametri?
YOLO11 raggiunge una maggiore accuratezza con meno parametri grazie ai progressi nella progettazione del modello e nelle tecniche di ottimizzazione. L'architettura migliorata consente un'estrazione e un'elaborazione efficienti delle feature, ottenendo una media di precisione media (mAP) più elevata su dataset come COCO, utilizzando il 22% in meno di parametri rispetto a YOLOv8m. Ciò rende YOLO11 efficiente dal punto di vista computazionale senza compromettere l'accuratezza, rendendolo adatto per l'implementazione su dispositivi con risorse limitate.
YOLO11 può essere implementato su dispositivi edge?
Sì, YOLO11 è progettato per l'adattabilità in vari ambienti, inclusi i dispositivi edge. La sua architettura ottimizzata e le efficienti capacità di elaborazione lo rendono adatto per la distribuzione su dispositivi edge, piattaforme cloud e sistemi che supportano GPU NVIDIA. Questa flessibilità garantisce che YOLO11 possa essere utilizzato in diverse applicazioni, dal rilevamento in tempo reale su dispositivi mobili a complesse attività di segmentazione in ambienti cloud. Per maggiori dettagli sulle opzioni di implementazione, fare riferimento alla documentazione di Esportazione.