Conjunto de datos Cityscapes8#
Introducción#
El conjunto de datos Cityscapes8 de Ultralytics es un conjunto compacto de segmentación semántica con 8 imágenes seleccionadas del conjunto de datos Cityscapes: 4 para entrenamiento y 4 para validación. Está diseñado para probar, depurar y experimentar rápidamente con modelos de segmentación semántica YOLO y flujos de entrenamiento. Su contenido de escenas urbanas permite comprobar el flujo de trabajo antes de ampliarlo al conjunto de datos Cityscapes completo.
Cityscapes8 utiliza las mismas 19 clases de evaluación y el mismo comportamiento de label_mapping que el conjunto de datos Cityscapes completo, y es totalmente compatible con los flujos de trabajo de segmentación semántica de YOLO26.
Cityscapes8 es solo para probar flujos de trabajo, no para obtener referencias de rendimiento: sus 8 imágenes son insuficientes para una comparación significativa de mIoU. Usa el conjunto de validación completo de Cityscapes para obtener resultados representativos.
Estructura del conjunto de datos#
Cityscapes8 reproduce la estructura del conjunto de datos completo, pero sin una partición test:
cityscapes8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── masks/
├── train/ # 4 single-channel PNG masks
└── val/ # 4 single-channel PNG masksLas máscaras se emparejan con las imágenes mediante el campo masks_dir: masks, y label_mapping convierte los ID de etiqueta de origen de Cityscapes en los 19 ID de entrenamiento contiguos descritos en la estructura completa del conjunto de datos Cityscapes.
YAML del conjunto de datos#
La configuración del conjunto de datos Cityscapes8 se define en un archivo YAML que especifica las rutas del conjunto de datos, los nombres de las clases y otros metadatos esenciales. Puedes consultar el archivo oficial cityscapes8.yaml en el repositorio de GitHub de Ultralytics. El YAML incluye una URL de descarga del pequeño subconjunto empaquetado.
# 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.zipUso#
Para entrenar un modelo YOLO26n-sem con el conjunto de datos Cityscapes8 durante 100 épocas y con un tamaño de imagen de 1024, usa los siguientes ejemplos. Consulta la documentación de entrenamiento de YOLO para ver la lista completa de opciones de entrenamiento.
from ultralytics import YOLO
# Cargar un modelo YOLO26n-sem preentrenado
model = YOLO("yolo26n-sem.pt")
# Entrenar el modelo con Cityscapes8
results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)También puedes gestionar Cityscapes8 y entrenar modelos de segmentación semántica en la nube con Ultralytics Platform.
Citas, licencia y agradecimientos#
Cityscapes8 se ha creado a partir de Cityscapes, que se distribuye con una licencia personalizada para uso no comercial: consulta la página completa del conjunto de datos Cityscapes para obtener más información.
Si utilizas el conjunto de datos Cityscapes en tus investigaciones o trabajos de desarrollo, cita el siguiente artículo:
@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}
}Nuestro agradecimiento especial al equipo de Cityscapes por sus continuas contribuciones a las comunidades de conducción autónoma y visión artificial.
Preguntas frecuentes#
El conjunto de datos Cityscapes8 de Ultralytics está diseñado para probar y depurar rápidamente modelos de segmentación semántica. Con solo 8 imágenes (4 para entrenamiento y 4 para validación), es ideal para verificar los flujos de segmentación semántica de YOLO, incluida la carga de máscaras, los aumentos de datos, la validación y las rutas de exportación, antes de ampliarlos al conjunto de datos Cityscapes completo. Consulta la configuración YAML de Cityscapes8 para obtener más información.
Cityscapes8 selecciona 8 imágenes (4 para entrenamiento y 4 para validación) de las particiones de Cityscapes de 2.975 imágenes de entrenamiento y 500 de validación. Usa las mismas 19 clases y
label_mapping, por lo que cualquier flujo de trabajo que funcione con Cityscapes8 también funciona sin modificaciones con el conjunto de datos completo: basta con asignardata=acityscapes.yamlen lugar de acityscapes8.yaml. A diferencia del conjunto de datos completo, Cityscapes8 no requiere descarga manual ni tiene una particióntest.Puedes entrenar un modelo de segmentación semántica YOLO26 con Cityscapes8 usando Python o la CLI:
Ejemplo de entrenamientofrom ultralytics import YOLO # Cargar un modelo YOLO26n-sem preentrenado model = YOLO("yolo26n-sem.pt") # Entrenar el modelo con Cityscapes8 results = model.train(data="cityscapes8.yaml", epochs=100, imgsz=1024)Para consultar otras opciones de entrenamiento, visita la documentación de entrenamiento de YOLO.
No. Cityscapes8 es demasiado pequeño para comparar modelos de forma significativa y está pensado para comprobar los flujos de entrenamiento y evaluación. Usa el conjunto de validación completo de Cityscapes cuando necesites resultados representativos de referencia para la segmentación semántica.



