Cityscapes8-Datensatz#
Einführung#
Der Cityscapes8-Datensatz von Ultralytics ist ein kompakter Datensatz für die semantische Segmentierung mit 8 Bildern aus dem Datensatz Cityscapes: 4 für das Training und 4 für die Validierung. Er ist für schnelle Tests, die Fehlersuche und Experimente mit YOLO-Modellen für semantische Segmentierung und Trainingspipelines konzipiert. Die urbanen Szenen eignen sich gut, um eine Pipeline zu prüfen, bevor du zum vollständigen Cityscapes-Datensatz wechselst.
Cityscapes8 verwendet dieselben 19 Evaluierungsklassen und dasselbe Verhalten für label_mapping wie der vollständige Cityscapes-Datensatz und ist vollständig mit YOLO26-Abläufen für semantische Segmentierung kompatibel.
Cityscapes8 ist nur zum Testen von Abläufen gedacht, nicht für Benchmarks — 8 Bilder sind zu wenige für einen aussagekräftigen mIoU-Vergleich. Verwende für repräsentative Ergebnisse den vollständigen Cityscapes-Validierungssatz.
Datensatzstruktur#
Cityscapes8 entspricht der Verzeichnisstruktur des vollständigen Datensatzes, enthält jedoch keinen Abschnitt test:
cityscapes8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── masks/
├── train/ # 4 single-channel PNG masks
└── val/ # 4 single-channel PNG masksMasken werden über das Feld masks_dir: masks den Bildern zugeordnet, und label_mapping wandelt die ursprünglichen Cityscapes-Label-IDs in die 19 fortlaufenden Trainings-IDs um, die in der Struktur des vollständigen Cityscapes-Datensatzes beschrieben sind.
YAML-Datei des Datensatzes#
Die Konfiguration des Cityscapes8-Datensatzes ist in einer YAML-Datei definiert, die Datensatzpfade, Klassennamen und weitere wichtige Metadaten festlegt. Die offizielle Datei cityscapes8.yaml findest du im Ultralytics-GitHub-Repository. Die YAML-Datei enthält eine Download-URL für die kleine gepackte Teilmenge.
# 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.zipVerwendung#
Um ein YOLO26n-sem-Modell 100 Epochen lang mit einer Bildgröße von 1024 auf dem Cityscapes8-Datensatz zu trainieren, verwende die folgenden Beispiele. Eine vollständige Liste der Trainingsoptionen findest du in der YOLO-Trainingsdokumentation.
from ultralytics import YOLO
# Ein vortrainiertes YOLO26n-sem-Modell laden
model = YOLO("yolo26n-sem.pt")
# Das Modell mit Cityscapes8 trainieren
results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)Du kannst Cityscapes8 auch mit der Ultralytics Platform verwalten und Modelle für semantische Segmentierung in der Cloud trainieren.
Zitate, Lizenz und Danksagungen#
Cityscapes8 ist eine Teilmenge von Cityscapes, das unter einer speziellen nichtkommerziellen Lizenz veröffentlicht wird — Einzelheiten findest du auf der vollständigen Cityscapes-Datensatzseite.
Wenn du den Cityscapes-Datensatz für deine Forschung oder Entwicklung verwendest, zitiere bitte die folgende Veröffentlichung:
@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}
}Ein besonderer Dank gilt dem Cityscapes-Team für seine fortlaufenden Beiträge zur Fachgemeinschaft für autonomes Fahren und Computer Vision.
Häufig gestellte Fragen#
Der Ultralytics-Datensatz Cityscapes8 ist für schnelle Tests und die Fehlersuche bei Modellen zur semantischen Segmentierung konzipiert. Mit nur 8 Bildern (4 für das Training, 4 für die Validierung) eignet er sich ideal, um YOLO-Pipelines für semantische Segmentierung zu überprüfen. Dazu gehören das Laden von Masken, Augmentierungen, Validierung und Export, bevor du zum vollständigen Cityscapes-Datensatz wechselst. Weitere Informationen findest du in der Cityscapes8-YAML-Konfiguration.
Cityscapes8 umfasst 8 Bilder (4 für das Training, 4 für die Validierung) aus der Aufteilung von Cityscapes mit 2.975 Trainings- und 500 Validierungsbildern. Dabei werden dieselben 19 Klassen und
label_mappingverwendet. Eine Pipeline, die mit Cityscapes8 funktioniert, läuft daher ohne Änderungen auch mit dem vollständigen Datensatz — verweise einfach mitdata=aufcityscapes.yamlstatt aufcityscapes8.yaml. Anders als beim vollständigen Datensatz ist für Cityscapes8 kein manueller Download erforderlich und es gibt keinen Abschnitttest.Du kannst ein YOLO26-Modell für semantische Segmentierung mit Cityscapes8 entweder mit Python oder der CLI trainieren:
Trainingsbeispielfrom ultralytics import YOLO # Ein vortrainiertes YOLO26n-sem-Modell laden model = YOLO("yolo26n-sem.pt") # Das Modell mit Cityscapes8 trainieren results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)Weitere Trainingsoptionen findest du in der YOLO-Trainingsdokumentation.
Nein. Cityscapes8 ist zu klein für aussagekräftige Modellvergleiche und dient zum Prüfen von Trainings- und Evaluierungspipelines. Verwende den vollständigen Cityscapes-Validierungssatz, wenn du repräsentative Benchmark-Ergebnisse für die semantische Segmentierung benötigst.



