Dataset COCO-Seg#
Il dataset COCO-Seg fornisce maschere di segmentazione di istanze COCO (oggetti comuni nel contesto) — 118.287 immagini di addestramento e 5.000 immagini di convalida con maschere poligonali in 80 categorie di oggetti — nel formato delle etichette Ultralytics YOLO. Usa le immagini originali di COCO e le relative annotazioni di segmentazione native, convertite per l'addestramento YOLO, ed è quindi una risorsa fondamentale per ricercatori e sviluppatori che lavorano su attività di segmentazione di istanze.
Modelli preaddestrati COCO-Seg#
| Modello | dimensione (pixel) | mAPbox 50-95(e2e) | mAPmaschera 50-95(e2e) | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|---|
| YOLO26n-seg | 640 | 39.6 | 33.9 | 53.3 ± 0.5 | 2.1 ± 0.0 | 2.7 | 9.3 |
| YOLO26s-seg | 640 | 47.3 | 40.0 | 118.4 ± 0.9 | 3.3 ± 0.0 | 10.4 | 34.5 |
| YOLO26m-seg | 640 | 52.5 | 44.1 | 328.2 ± 2.4 | 6.7 ± 0.1 | 23.6 | 121.7 |
| YOLO26l-seg | 640 | 54.4 | 45.5 | 387.0 ± 3.7 | 8.0 ± 0.1 | 28.0 | 140.1 |
| YOLO26x-seg | 640 | 56.5 | 47.0 | 787.0 ± 6.8 | 16.4 ± 0.1 | 62.8 | 314.0 |
Funzionalità principali#
- COCO-Seg fornisce maschere di segmentazione di istanze per 123.287 immagini COCO train2017/val2017 etichettate (118.287 di addestramento + 5.000 di convalida), su circa ~330.000 immagini della versione più ampia di COCO.
- Il dataset comprende le stesse 80 categorie di oggetti del dataset COCO originale.
- Le annotazioni forniscono maschere di segmentazione di istanze nel formato delle etichette poligonali YOLO.
- COCO-Seg fornisce metriche standardizzate mAP e mAR per valutare le prestazioni della segmentazione di istanze, consentendo confronti efficaci tra modelli.
- Dimensione del download: ~20,3 GB al primo utilizzo (
train2017.zip+val2017.zip+ etichette). Il filetest2017.zipda 7 GB non viene scaricato automaticamente, poiché le relative immagini non hanno le annotazioni di riferimento e serve solo per una submission test-dev2017.
Struttura del dataset#
Il dataset COCO-Seg è suddiviso in tre sottoinsiemi:
- Train2017: 118.287 immagini per addestrare modelli di segmentazione delle istanze.
- Val2017: 5.000 immagini usate per la validazione durante lo sviluppo del modello.
- Test-dev2017: 20.288 delle 40.670 immagini di test2017, usate per il benchmarking. Le annotazioni di ground truth per questo sottoinsieme non sono disponibili pubblicamente, quindi le predizioni devono essere inviate al server di valutazione COCO per ottenere un punteggio.
Per le sperimentazioni su scala ridotta, consulta i sottoinsiemi COCO128-Seg (128 immagini) e COCO8-Seg (8 immagini).
Applicazioni#
COCO-Seg è ampiamente usato per addestrare e valutare modelli di deep learning per la segmentazione delle istanze, come i modelli YOLO. L'elevato numero di immagini annotate, la varietà delle categorie di oggetti e le metriche di valutazione standardizzate ne fanno una risorsa indispensabile per ricercatori e professionisti della visione artificiale. Puoi anche esplorare e gestire tutte le annotazioni di COCO-Seg su Ultralytics Platform.
YAML del dataset#
Un file YAML viene usato per definire la configurazione del dataset. Contiene informazioni sui percorsi, sulle classi e su altri aspetti rilevanti del dataset. Per il dataset COCO-Seg, il file coco.yaml è gestito in https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco.yaml.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO 2017 dataset https://cocodataset.org by Microsoft
# Documentation: https://docs.ultralytics.com/datasets/detect/coco
# Example usage: yolo train data=coco.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco ← downloads here (20.3 GB)
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: coco # dataset root dir
train: train2017.txt # train images (relative to 'path') 118287 images
val: val2017.txt # val images (relative to 'path') 5000 images
test: test-dev2017.txt # 20288 of 40670 images, submit via https://cocodataset.org/#detection-eval
# Classes
names:
0: person
1: bicycle
2: car
3: motorcycle
4: airplane
5: bus
6: train
7: truck
8: boat
9: traffic light
10: fire hydrant
11: stop sign
12: parking meter
13: bench
14: bird
15: cat
16: dog
17: horse
18: sheep
19: cow
20: elephant
21: bear
22: zebra
23: giraffe
24: backpack
25: umbrella
26: handbag
27: tie
28: suitcase
29: frisbee
30: skis
31: snowboard
32: sports ball
33: kite
34: baseball bat
35: baseball glove
36: skateboard
37: surfboard
38: tennis racket
39: bottle
40: wine glass
41: cup
42: fork
43: knife
44: spoon
45: bowl
46: banana
47: apple
48: sandwich
49: orange
50: broccoli
51: carrot
52: hot dog
53: pizza
54: donut
55: cake
56: chair
57: couch
58: potted plant
59: bed
60: dining table
61: toilet
62: tv
63: laptop
64: mouse
65: remote
66: keyboard
67: cell phone
68: microwave
69: oven
70: toaster
71: sink
72: refrigerator
73: book
74: clock
75: vase
76: scissors
77: teddy bear
78: hair drier
79: toothbrush
# Download script/URL (optional)
download: |
from pathlib import Path
from ultralytics.utils import ASSETS_URL
from ultralytics.utils.downloads import download
# Download labels
segments = True # segment or box labels
dir = Path(yaml["path"]) # dataset root dir
urls = [ASSETS_URL + ("/coco2017labels-segments.zip" if segments else "/coco2017labels.zip")] # labels
download(urls, dir=dir.parent)
# Download data (test2017.zip excluded: ground truth is withheld, only used for the eval-server test-dev split)
urls = [
"http://images.cocodataset.org/zips/train2017.zip", # 19G, 118k images
"http://images.cocodataset.org/zips/val2017.zip", # 1G, 5k images
]
download(urls, dir=dir / "images", threads=3)Utilizzo#
Per addestrare un modello YOLO26n-seg sul dataset COCO-Seg per 100 epoche con una dimensione delle immagini di 640, puoi usare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, consulta la pagina Addestramento del modello.
from ultralytics import YOLO
# Carica un modello
model = YOLO("yolo26n-seg.pt") # carica un modello preaddestrato (consigliato per l'addestramento)
# Addestra il modello
results = model.train(data="coco.yaml", epochs=100, imgsz=640)Immagini di esempio e annotazioni#
COCO-Seg contiene le stesse immagini varie, categorie di oggetti e scene complesse di COCO, con maschere di segmentazione delle istanze nel formato di etichette YOLO. Ecco alcuni esempi di immagini del dataset e delle relative maschere di segmentazione delle istanze:

- Immagine con mosaico: questa immagine mostra un batch di addestramento composto da immagini del dataset disposte a mosaico. Il mosaico è una tecnica usata durante l'addestramento che combina più immagini in un'unica immagine per aumentare la varietà di oggetti e scene in ogni batch di addestramento. Questo aiuta il modello a generalizzare a dimensioni degli oggetti, rapporti d'aspetto e contesti diversi.
Citazioni e ringraziamenti#
Se usi il dataset COCO-Seg nel tuo lavoro di ricerca o sviluppo, cita il paper originale di COCO e menziona l'estensione COCO-Seg:
@misc{lin2015microsoft,
title={Microsoft COCO: Common Objects in Context},
author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
year={2015},
eprint={1405.0312},
archivePrefix={arXiv},
primaryClass={cs.CV}
}Ringraziamo il COCO Consortium per aver creato e mantenuto questa preziosa risorsa per la comunità della visione artificiale. Per maggiori informazioni sul dataset COCO e sui suoi creatori, visita il sito web del dataset COCO.
Domande frequenti#
COCO-Seg è il confezionamento in formato Ultralytics YOLO delle maschere native di segmentazione delle istanze di COCO (Oggetti comuni nel contesto) per le stesse 118.287 immagini train2017 e 5.000 immagini val2017. Le annotazioni COCO originali includono già queste maschere poligonali per tutte le 80 categorie di oggetti; COCO-Seg le converte nel formato di etichette YOLO usato per l'addestramento alla segmentazione delle istanze di oggetti.
Per addestrare un modello YOLO26n-seg sul dataset COCO-Seg per 100 epoche con una dimensione delle immagini di 640, puoi usare i seguenti frammenti di codice. Per un elenco dettagliato degli argomenti di addestramento disponibili, consulta la pagina Addestramento del modello.
Esempio di addestramentofrom ultralytics import YOLO # Carica un modello model = YOLO("yolo26n-seg.pt") # carica un modello preaddestrato (consigliato per l'addestramento) # Addestra il modello results = model.train(data="coco.yaml", epochs=100, imgsz=640)Il dataset COCO-Seg include diverse caratteristiche principali:
- Fornisce maschere di segmentazione delle istanze per 123.287 immagini COCO train2017/val2017 etichettate (118.287 train + 5.000 val).
- Annota le stesse 80 categorie di oggetti presenti nel COCO originale.
- Fornisce maschere di segmentazione delle istanze nel formato di etichette poligonali YOLO.
- Usa metriche di valutazione standardizzate, come la precisione media (mAP) e il richiamo medio (mAR) per le attività di segmentazione delle istanze.
Il dataset COCO-Seg supporta diversi modelli di segmentazione YOLO26 preaddestrati, con metriche di prestazione variabili. Ecco un riepilogo dei modelli disponibili e delle relative metriche principali:
Modello dimensione
(pixel)mAPbox
50-95(e2e)mAPmaschera
50-95(e2e)Velocità
CPU ONNX
(ms)Velocità
T4 TensorRT10
(ms)parametri
(M)FLOPs
(B)YOLO26n-seg 640 39.6 33.9 53.3 ± 0.5 2.1 ± 0.0 2.7 9.3 YOLO26s-seg 640 47.3 40.0 118.4 ± 0.9 3.3 ± 0.0 10.4 34.5 YOLO26m-seg 640 52.5 44.1 328.2 ± 2.4 6.7 ± 0.1 23.6 121.7 YOLO26l-seg 640 54.4 45.5 387.0 ± 3.7 8.0 ± 0.1 28.0 140.1 YOLO26x-seg 640 56.5 47.0 787.0 ± 6.8 16.4 ± 0.1 62.8 314.0 Questi modelli vanno dal leggero YOLO26n-seg al più potente YOLO26x-seg e offrono diversi compromessi tra velocità e precisione, per soddisfare vari requisiti applicativi. Per maggiori informazioni sulla scelta del modello, visita la pagina dei modelli Ultralytics.
Il dataset COCO-Seg è suddiviso in tre sottoinsiemi per esigenze specifiche di addestramento e valutazione:
- Train2017: contiene 118.287 immagini usate principalmente per addestrare modelli di segmentazione delle istanze.
- Val2017: comprende 5.000 immagini usate per la validazione durante il processo di addestramento.
- Test-dev2017: comprende 20.288 delle 40.670 immagini test2017 riservate al test e al benchmarking dei modelli addestrati. Le annotazioni di ground truth per questo sottoinsieme non sono disponibili pubblicamente e i risultati delle prestazioni vengono inviati al server di valutazione COCO per la valutazione.
Per le sperimentazioni su scala ridotta, puoi anche valutare il dataset COCO128-Seg (128 immagini) oppure il dataset COCO8-Seg, una versione compatta che contiene solo 8 immagini del set COCO train 2017.



