Dataset COCO128-Seg#
Introduzione#
Il dataset Ultralytics COCO128-Seg è un set di dati di instance segmentation piccolo ma versatile, composto dalle prime 128 immagini del set COCO train 2017. Questo dataset è ideale per testare e sottoporre a debug i modelli di segmentazione, oppure per sperimentare nuovi approcci di rilevamento. Con 128 immagini, è abbastanza piccolo da essere facilmente gestibile, ma sufficientemente vario per testare le pipeline di addestramento alla ricerca di errori e fungere da controllo di integrità prima di addestrare dataset più ampi.
Struttura del dataset#
- Immagini: 128 in totale, con divisione train e val identica (vedi nota sotto).
- Classi: Le stesse 80 categorie di oggetti di COCO.
- Etichette: poligoni in formato YOLO memorizzati in
labels/train2017per la directory condivisa di immagini train e val. - Dimensioni download: ~7 MB.
Lo YAML predefinito punta train e val alle stesse 128 immagini, quindi le metriche di validazione misurano l'adattamento sul set di addestramento anziché la generalizzazione su dati non visti. Duplica o personalizza la divisione se hai bisogno di un vero set di test.
Questo dataset è inteso per l'uso con Ultralytics Platform e YOLO26.
Dataset YAML#
Un file YAML viene utilizzato per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, le classi e altre informazioni rilevanti. Nel caso del dataset COCO128-Seg, il file coco128-seg.yaml è mantenuto su https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco128-seg.yaml.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO128-seg dataset https://www.kaggle.com/datasets/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/coco128-seg
# Example usage: yolo train data=coco128-seg.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco128-seg ← downloads here (7 MB)
# 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: coco128-seg # dataset root dir
train: images/train2017 # train images (relative to 'path') 128 images
val: images/train2017 # val images (relative to 'path') 128 images
test: # test images (optional)
# 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: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco128-seg.zipUtilizzo#
Per addestrare un modello YOLO26n-seg sul dataset COCO128-Seg per 100 epochs con una dimensione dell'immagine di 640, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, fai riferimento alla pagina di Training del modello.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-seg.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="coco128-seg.yaml", epochs=100, imgsz=640)Esempi di immagini e annotazioni#
Ecco alcuni esempi di immagini dal dataset COCO128-Seg, insieme alle relative annotazioni:
- Immagine Mosaico: Questa immagine mostra un batch di addestramento composto da immagini del dataset a mosaico. Il mosaico è una tecnica utilizzata durante l'addestramento che combina più immagini in un'unica immagine per aumentare la varietà di oggetti e scene all'interno di ogni batch di addestramento. Ciò aiuta a migliorare la capacità del modello di generalizzare a diverse dimensioni, proporzioni e contesti degli oggetti.
Citazioni e riconoscimenti#
Se utilizzi il dataset COCO nel tuo lavoro di ricerca o sviluppo, cita il seguente articolo:
@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}
}Desideriamo ringraziare il COCO Consortium per aver creato e mantenuto questa preziosa risorsa per la comunità di visione artificiale. Per ulteriori informazioni sul dataset COCO e sui suoi creatori, visita il sito web del dataset COCO.
FAQ#
Cos'è il dataset COCO128-Seg e come viene utilizzato in Ultralytics YOLO26?#
Il dataset COCO128-Seg è un dataset compatto per l'instance segmentation creato da Ultralytics, composto dalle prime 128 immagini del set COCO train 2017. Questo dataset è pensato per testare e sottoporre a debug i modelli di segmentazione o per sperimentare nuovi metodi di rilevamento. È particolarmente utile con Ultralytics YOLO26 e Platform per un'iterazione rapida e per verificare la presenza di errori nelle pipeline prima di passare a dataset più ampi. Per un utilizzo dettagliato, fai riferimento alla pagina di Training del modello.
Come posso addestrare un modello YOLO26n-seg utilizzando il dataset COCO128-Seg?#
Per addestrare un modello YOLO26n-seg sul dataset COCO128-Seg per 100 epoche con una dimensione dell'immagine di 640, puoi utilizzare Python o i comandi CLI. Ecco un esempio rapido:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-seg.pt") # Load a pretrained model (recommended for training)
# Train the model
results = model.train(data="coco128-seg.yaml", epochs=100, imgsz=640)Per una spiegazione approfondita degli argomenti disponibili e delle opzioni di configurazione, puoi consultare la documentazione Training.
Perché il dataset COCO128-Seg è importante per lo sviluppo e il debug dei modelli?#
Poiché il ciclo di download e train/val è molto più piccolo del COCO completo, COCO128-Seg ti permette di eseguire un controllo di integrità di 1 epoca su una nuova pipeline — verificando che il modello si addestri, validi e salvi correttamente i checkpoint — prima di passare al dataset COCO-Seg completo. Scopri di più sui formati di dataset supportati nella guida ai dataset di segmentazione di Ultralytics.
Dove posso trovare il file di configurazione YAML per il dataset COCO128-Seg?#
Il file di configurazione YAML per il dataset COCO128-Seg è disponibile nel repository di Ultralytics. Puoi accedere al file direttamente all'indirizzo https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco128-seg.yaml. Il file YAML include informazioni essenziali sui percorsi del dataset, le classi e le impostazioni di configurazione necessarie per l'addestramento e la validazione del modello.
Come si confronta COCO128-Seg con COCO8-Seg e il dataset COCO-Seg completo?#
COCO128-Seg (128 immagini) si colloca tra COCO8-Seg (8 immagini) e il dataset COCO-Seg completo (118.287 immagini di addestramento) in termini di dimensioni:
- COCO8-Seg: 8 immagini (4 train, 4 val) — ideale per rapidi controlli di integrità e debug.
- COCO128-Seg: 128 immagini — bilanciato tra dimensioni e diversità, con train e val che condividono la stessa directory.
- COCO-Seg completo: 118.287 immagini di addestramento — completo ma intensivo in termini di risorse, che richiede ~27 GB al primo download.
COCO128-Seg offre una maggiore diversità rispetto a COCO8-Seg pur rimanendo molto più gestibile rispetto al dataset COCO-Seg completo per la sperimentazione e lo sviluppo iniziale del modello.