Cityscapes8-Datensatz
Einführung
Der Ultralytics Cityscapes8-Datensatz ist ein kompakter semantic segmentation-Datensatz mit 8 Bildern, die aus dem Cityscapes-Datensatz stammen: 4 für das Training und 4 für die Validierung. Er wurde für schnelles Testen, Debugging und Experimente mit YOLO-Modellen für semantische Segmentierung und Trainings-Pipelines entwickelt. Sein Inhalt mit städtischen Szenen bietet eine nützliche Überprüfung der Pipeline, bevor auf den vollständigen Cityscapes-Datensatz skaliert wird.
Cityscapes8 verwendet dieselben 19 Bewertungsklassen und das gleiche label_mapping-Verhalten wie der vollständige Cityscapes-Datensatz und ist vollständig kompatibel mit YOLO26 Workflows für semantische Segmentierung.
Datensatz YAML
Die Konfiguration des Cityscapes8-Datensatzes ist in einer YAML-Datei definiert, die Datensatzpfade, Klassennamen und andere wesentliche Metadaten festlegt. Du kannst die offizielle cityscapes8.yaml-Datei im Ultralytics GitHub repository einsehen. Das YAML enthält eine Download-URL für das kleine, gepackte Subset.
# 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)Zitate und Danksagungen
Wenn du den Cityscapes-Datensatz in deiner Forschung oder Entwicklung verwendest, zitiere bitte das folgende Paper:
@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 fortlaufenden Beiträge zu den Bereichen autonomes Fahren und computer vision.
FAQ
Wofür wird der Ultralytics Cityscapes8-Datensatz verwendet?
Der Ultralytics Cityscapes8-Datensatz wurde für schnelles 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 semantische Segmentierung zu verifizieren, einschließlich Masken-Laden, Augmentierungen, Validierung und Exportpfaden, bevor auf den vollständigen Cityscapes-Datensatz skaliert wird. Erkunde die Cityscapes8 YAML configuration für weitere Details.
Wie trainiere ich ein YOLO26-Modell mit dem Cityscapes8-Datensatz?
Du kannst ein YOLO26-Modell für semantische Segmentierung auf Cityscapes8 entweder mit Python oder über die CLI trainieren:
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)Für zusätzliche Trainingsoptionen beziehe dich auf die YOLO Training documentation.
Sollte ich Cityscapes8 für Benchmarking verwenden?
Nein. Cityscapes8 ist zu klein für einen aussagekräftigen Modellvergleich und ist für die Überprüfung von Trainings- und Evaluierungs-Pipelines gedacht. Verwende den vollständigen Cityscapes Validierungssatz, wenn du repräsentative Benchmark-Ergebnisse für semantische Segmentierung benötigst.