Jeu de données Cityscapes8#
Introduction#
Le jeu de données Ultralytics Cityscapes8 est un jeu de données de semantic segmentation compact comprenant 8 images échantillonnées à partir du jeu de données Cityscapes : 4 pour l'entraînement et 4 pour la validation. Il est conçu pour des tests rapides, le débogage et l'expérimentation avec les modèles de segmentation sémantique YOLO et les pipelines d'entraînement. Son contenu de scènes urbaines fournit une vérification de pipeline utile avant de passer à l'échelle sur le jeu de données Cityscapes complet.
Cityscapes8 utilise les mêmes 19 classes d'évaluation et le même comportement label_mapping que le jeu de données Cityscapes complet, et est entièrement compatible avec les flux de travail de segmentation sémantique YOLO26.
Cityscapes8 est destiné uniquement aux tests de pipeline et non aux benchmarks — ses 8 images sont trop peu nombreuses pour une comparaison mIoU significative. Utilise l'ensemble de validation Cityscapes complet pour des résultats représentatifs.
Structure du jeu de données#
Cityscapes8 reflète la structure du jeu de données complet, sans répartition test :
cityscapes8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── masks/
├── train/ # 4 single-channel PNG masks
└── val/ # 4 single-channel PNG masksLes masques sont associés aux images via le champ masks_dir: masks, et label_mapping convertit les ID d'étiquettes Cityscapes sources en 19 ID d'entraînement contigus décrits dans la structure du jeu de données Cityscapes complet.
YAML du jeu de données#
La configuration du jeu de données Cityscapes8 est définie dans un fichier YAML de jeu de données, qui spécifie les chemins des jeux de données, les noms des classes et d'autres métadonnées essentielles. Tu peux consulter le fichier officiel cityscapes8.yaml dans le référentiel GitHub d'Ultralytics. Le fichier YAML inclut une URL de téléchargement pour le petit sous-ensemble empaqueté.
# 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.zipUtilisation#
Pour entraîner un modèle YOLO26n-sem sur le jeu de données Cityscapes8 pendant 100 epochs avec une taille d'image de 1024, utilise les exemples suivants. Pour obtenir une liste complète des options d'entraînement, consulte la documentation sur l'entraînement YOLO.
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)Tu peux également gérer Cityscapes8 et entraîner des modèles de segmentation sémantique dans le cloud avec Ultralytics Platform.
Citations, licence et remerciements#
Cityscapes8 est échantillonné à partir de Cityscapes, qui est publié sous une licence personnalisée non commerciale — consulte la page du jeu de données Cityscapes pour plus de détails.
Si tu utilises le jeu de données Cityscapes dans tes recherches ou ton développement, merci de citer le document suivant :
@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 grand merci à l'équipe Cityscapes pour ses contributions continues aux communautés de la conduite autonome et de la computer vision.
FAQ#
Le jeu de données Ultralytics Cityscapes8 est conçu pour des tests rapides et le débogage des modèles de semantic segmentation. Avec seulement 8 images (4 pour l'entraînement, 4 pour la validation), il est idéal pour vérifier les pipelines de segmentation sémantique YOLO, y compris le chargement de masques, les augmentations, la validation et les chemins d'exportation, avant de passer à l'échelle sur le jeu de données Cityscapes complet. Explore la configuration YAML de Cityscapes8 pour plus de détails.
Cityscapes8 échantillonne 8 images (4 pour l'entraînement, 4 pour la validation) parmi la division de 2 975 entraînements / 500 validations de Cityscapes, en utilisant les 19 mêmes classes et
label_mapping, de sorte qu'un pipeline exécuté sur Cityscapes8 fonctionne sans modification sur l'ensemble de données complet — il suffit de pointerdata=verscityscapes.yamlau lieu decityscapes8.yaml. Contrairement au jeu de données complet, Cityscapes8 ne comporte aucune étape de téléchargement manuel et aucune divisiontest.Non. Cityscapes8 est trop petit pour une comparaison de modèles significative et est destiné aux vérifications des pipelines d'entraînement et d'évaluation. Utilise l'ensemble de validation Cityscapes complet lorsque tu as besoin de résultats de benchmark représentatifs pour la segmentation sémantique.
Tu peux entraîner un modèle de segmentation sémantique YOLO26 sur Cityscapes8 en utilisant Python ou le CLI :
Pour des options d'entraînement supplémentaires, réfère-toi à la documentation sur l'entraînement YOLO.