Dataset Cityscapes8

Introduzione

Il dataset Ultralytics Cityscapes8 è un set di dati compatto per la semantic segmentation che include 8 immagini tratte dal dataset Cityscapes: 4 per l'addestramento e 4 per la validazione. È progettato per test rapidi, debugging e sperimentazione con i modelli di semantic segmentation YOLO e le pipeline di addestramento. Il suo contenuto basato su scenari urbani fornisce un utile controllo della pipeline prima di passare al dataset Cityscapes completo.

Cityscapes8 utilizza le stesse 19 classi di valutazione e lo stesso comportamento di label_mapping del dataset Cityscapes completo, ed è pienamente compatibile con i flussi di lavoro di semantic segmentation YOLO26.

YAML del dataset

La configurazione del dataset Cityscapes8 è definita in un file YAML, che specifica i percorsi del dataset, i nomi delle classi e altri metadati essenziali. Puoi consultare il file ufficiale cityscapes8.yaml nel repository GitHub di Ultralytics. Lo YAML include un URL di download per il piccolo subset pacchettizzato.

ultralytics/cfg/datasets/cityscapes8.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# Cityscapes semantic segmentation dataset (19 classes)
# Documentation: https://docs.ultralytics.com/datasets/semantic/cityscapes8/
# Example usage: yolo semantic train data=cityscapes8.yaml model=yolo26n-sem.pt
# parent
# ├── ultralytics
# └── datasets
#     └── cityscapes8 ← downloads here (small subset)
#         └── images
#         └── masks

# Dataset root directory
path: cityscapes8 # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 images

masks_dir: masks # semantic mask directory

# Cityscapes 19-class labels
names:
  0: road
  1: sidewalk
  2: building
  3: wall
  4: fence
  5: pole
  6: traffic light
  7: traffic sign
  8: vegetation
  9: terrain
  10: sky
  11: person
  12: rider
  13: car
  14: truck
  15: bus
  16: train
  17: motorcycle
  18: bicycle

# Map source label IDs to train IDs; ignore_label is converted to 255.
label_mapping:
  -1: ignore_label
  0: ignore_label
  1: ignore_label
  2: ignore_label
  3: ignore_label
  4: ignore_label
  5: ignore_label
  6: ignore_label
  7: 0
  8: 1
  9: ignore_label
  10: ignore_label
  11: 2
  12: 3
  13: 4
  14: ignore_label
  15: ignore_label
  16: ignore_label
  17: 5
  18: ignore_label
  19: 6
  20: 7
  21: 8
  22: 9
  23: 10
  24: 11
  25: 12
  26: 13
  27: 14
  28: 15
  29: ignore_label
  30: ignore_label
  31: 16
  32: 17
  33: 18

# Download URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/cityscapes8.zip

Utilizzo

Per addestrare un modello YOLO26n-sem sul dataset Cityscapes8 per 100 epochs con una dimensione immagine di 1024, utilizza i seguenti esempi. Per un elenco completo delle opzioni di addestramento, consulta la documentazione sull'addestramento YOLO.

Esempio di training
from ultralytics import YOLO

# Load a pretrained YOLO26n-sem model
model = YOLO("yolo26n-sem.pt")

# Train the model on Cityscapes8
results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)

Citazioni e riconoscimenti

Se utilizzi il dataset Cityscapes nella tua ricerca o sviluppo, ti preghiamo di citare il seguente documento:

Citazione
@inproceedings{Cordts2016Cityscapes,
  title={The Cityscapes Dataset for Semantic Urban Scene Understanding},
  author={Cordts, Marius and Omran, Mohamed and Ramos, Sebastian and Rehfeld, Timo and Enzweiler, Markus and Benenson, Rodrigo and Franke, Uwe and Roth, Stefan and Schiele, Bernt},
  booktitle={Proc. of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2016}
}

Un ringraziamento speciale al team di Cityscapes per i loro continui contributi alle comunità della guida autonoma e della computer vision.

FAQ

A cosa serve il dataset Ultralytics Cityscapes8?

Il dataset Ultralytics Cityscapes8 è progettato per il test rapido e il debugging di modelli di semantic segmentation. Con sole 8 immagini (4 per l'addestramento, 4 per la validazione), è ideale per verificare le pipeline di semantic segmentation YOLO, inclusi il caricamento delle maschere, le aumentazioni, la validazione e i percorsi di esportazione, prima di passare al dataset Cityscapes completo. Esplora la configurazione YAML di Cityscapes8 per maggiori dettagli.

Come posso addestrare un modello YOLO26 utilizzando il dataset Cityscapes8?

Puoi addestrare un modello di semantic segmentation YOLO26 su Cityscapes8 utilizzando Python o la CLI:

Esempio di training
from ultralytics import YOLO

# Load a pretrained YOLO26n-sem model
model = YOLO("yolo26n-sem.pt")

# Train the model on Cityscapes8
results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)

Per ulteriori opzioni di addestramento, fai riferimento alla documentazione sull'addestramento YOLO.

Dovrei usare Cityscapes8 per il benchmarking?

No. Cityscapes8 è troppo piccolo per un confronto significativo tra modelli ed è inteso solo per controlli della pipeline di addestramento e valutazione. Usa il set di validazione completo di Cityscapes quando hai bisogno di risultati di benchmark rappresentativi per la semantic segmentation.

Commenti