Cityscapes8-Datensatz#
Einführung#
Das Ultralytics Cityscapes8-Dataset ist ein kompakter semantic segmentation-Datensatz mit 8 Bildern, die aus dem Cityscapes-Datensatz entnommen wurden: 4 für das Training und 4 für die Validierung. Er wurde für das schnelle Testen, Debuggen und Experimentieren mit YOLO-Modellen für semantische Segmentierung und Trainings-Pipelines entwickelt. Sein Inhalt aus urbanen Szenen bietet eine nützliche Pipeline-Überprüfung, bevor auf den vollständigen Cityscapes-Datensatz skaliert wird.
Cityscapes8 verwendet dieselben 19 Evaluierungsklassen und dasselbe label_mapping-Verhalten wie der vollständige Cityscapes-Datensatz und ist vollständig kompatibel mit YOLO26-Workflows für die semantische Segmentierung.
Cityscapes8 dient nur zum Testen von Pipelines und nicht zum Benchmarking – seine 8 Bilder sind zu wenige für einen aussagekräftigen mIoU-Vergleich. Verwende für aussagekräftige Ergebnisse den vollständigen Cityscapes-Validierungssatz.
Datensatzstruktur#
Cityscapes8 spiegelt das Layout des vollständigen Datensatzes wider, ohne einen test-Split:
cityscapes8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── masks/
├── train/ # 4 single-channel PNG masks
└── val/ # 4 single-channel PNG masksMasken werden Bildern über das Feld masks_dir: masks zugeordnet, und label_mapping konvertiert die Quell-Label-IDs von Cityscapes in die 19 zusammenhängenden Train-IDs, die in der vollständigen Cityscapes-Datensatzstruktur beschrieben sind.
Datensatz-YAML#
Die Konfiguration des Cityscapes8-Datensatzes ist in einer Datensatz-YAML-Datei definiert, die Datensatzpfade, Klassennamen und andere wichtige Metadaten festlegt. Du kannst die offizielle cityscapes8.yaml-Datei im Ultralytics GitHub Repository einsehen. Die YAML enthält eine Download-URL für die kleine, paketierte Teilsatz.
# 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 auf dem Cityscapes8-Datensatz für 100 epochs mit einer Bildgröße von 1024 zu trainieren, verwende die folgenden Beispiele. Eine vollständige Liste der Trainingsoptionen findest du in der YOLO Training documentation.
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)Du kannst Cityscapes8 auch verwalten und Modelle für semantische Segmentierung in der Cloud mit Ultralytics Platform trainieren.
Zitate, Lizenz und Danksagungen#
Cityscapes8 stammt von Cityscapes ab, das unter einer custom non-commercial license veröffentlicht wurde – siehe die vollständige Cityscapes dataset page für Details.
Wenn du den Cityscapes-Datensatz in deiner Forschung oder Entwicklung verwendest, zitiere bitte das folgende Papier:
@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}
}Besonderer Dank geht an das Cityscapes team für ihre kontinuierlichen Beiträge zu den Communities für autonomes Fahren und computer vision.
FAQ#
Der Ultralytics Cityscapes8-Datensatz wurde für das schnelle Testen und Debuggen von semantic segmentation-Modellen entwickelt. Mit nur 8 Bildern (4 für das Training, 4 für die Validierung) ist er ideal, um YOLO-Pipelines für die semantische Segmentierung – einschließlich Maskenladen, Augmentierungen, Validierung und Exportpfaden – zu überprüfen, bevor auf den vollständigen Cityscapes-Datensatz skaliert wird. Erkunde die Cityscapes8 YAML configuration für weitere Details.
Cityscapes8 entnimmt 8 Bilder (4 für das Training, 4 für die Validierung) aus dem Split von 2.975 Trainings- und 500 Validierungsbildern von Cityscapes, wobei dieselben 19 Klassen und
label_mappingverwendet werden. Daher läuft eine Pipeline, die auf Cityscapes8 läuft, unverändert auf dem vollständigen Datensatz – verweise einfach mitdata=aufcityscapes.yamlanstelle voncityscapes8.yaml. Im Gegensatz zum vollständigen Datensatz hat Cityscapes8 keinen manuellen Download-Schritt und keinentest-Split.Du kannst ein YOLO26-Modell zur semantischen Segmentierung auf Cityscapes8 entweder mit Python oder über das CLI trainieren:
Trainingsbeispielfrom 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)Zusätzliche Trainingsoptionen findest du in der YOLO Training documentation.
Nein. Cityscapes8 ist zu klein für einen aussagekräftigen Modellvergleich und ist für Trainings- und Auswertungs-Pipeline-Prüfungen gedacht. Verwende den vollständigen Cityscapes-Validierungssatz, wenn du aussagekräftige Benchmark-Ergebnisse für die semantische Segmentierung benötigst.