Набор данных Cityscapes8#
Введение#
Датасет Ultralytics Cityscapes8 — это компактный датасет semantic segmentation, содержащий 8 изображений, выбранных из датасета Cityscapes: 4 для обучения и 4 для валидации. Он разработан для быстрого тестирования, отладки и экспериментов с моделями семантической сегментации YOLO и обучающими пайплайнами. Его контент с городскими сценами обеспечивает полезную проверку пайплайна перед переходом к полному датасету Cityscapes.
Cityscapes8 использует те же 19 классов оценки и такое же поведение label_mapping, что и полный датасет Cityscapes, и полностью совместим с воркфлоу семантической сегментации YOLO26.
Cityscapes8 предназначен только для тестирования пайплайна, а не для бенчмаркинга: его 8 изображений слишком мало для значимого сравнения mIoU. Используйте полный набор валидации Cityscapes для получения репрезентативных результатов.
Структура набора данных#
Cityscapes8 повторяет структуру полного датасета без разделения test:
cityscapes8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── masks/
├── train/ # 4 single-channel PNG masks
└── val/ # 4 single-channel PNG masksМаски сопоставляются с изображениями с помощью поля masks_dir: masks, а label_mapping преобразует исходные ID меток Cityscapes в 19 непрерывных ID обучения, описанных в структуре полного датасета Cityscapes.
YAML набора данных#
Конфигурация датасета Cityscapes8 определяется в YAML-файле датасета, в котором указаны пути к датасету, имена классов и другие важные метаданные. Ты можешь посмотреть официальный файл cityscapes8.yaml в репозитории Ultralytics на GitHub. YAML включает URL для скачивания небольшой упакованной подвыборки.
# 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.zipИспользование#
Чтобы обучить модель YOLO26n-sem на датасете Cityscapes8 в течение 100 epochs с размером изображения 1024, используй следующие примеры. Полный список параметров обучения см. в документации по обучению 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)Ты также можешь управлять Cityscapes8 и обучать модели семантической сегментации в облаке с помощью Ultralytics Platform.
Цитирование, лицензия и благодарности#
Cityscapes8 сформирован из Cityscapes, который распространяется по лицензии для некоммерческого использования — подробности см. на странице датасета Cityscapes.
Если ты используешь набор данных Cityscapes в своих исследованиях или разработках, пожалуйста, сошлися на следующую работу:
@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}
}Особая благодарность команде Cityscapes за их постоянный вклад в развитие сообществ беспилотного транспорта и computer vision.
FAQ#
Датасет Ultralytics Cityscapes8 предназначен для быстрого тестирования и отладки моделей semantic segmentation. Имея всего 8 изображений (4 для обучения, 4 для валидации), он идеально подходит для проверки пайплайнов семантической сегментации YOLO, включая загрузку масок, аугментации, валидацию и пути экспорта, перед переходом к полному датасету Cityscapes. Ознакомься с YAML-конфигурацией Cityscapes8 для получения подробной информации.
Cityscapes8 выбирает 8 изображений (4 для обучения, 4 для валидации) из разделения Cityscapes на 2975 обучающих и 500 валидационных изображений, используя те же 19 классов и
label_mapping, поэтому пайплайн, который работает на Cityscapes8, работает без изменений и на полном датасете — просто укажиdata=наcityscapes.yamlвместоcityscapes8.yaml. В отличие от полного датасета, в Cityscapes8 нет шага ручной загрузки и разделенияtest.Ты можешь обучить модель семантической сегментации YOLO26 на Cityscapes8, используя Python или CLI:
Пример обучения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)Дополнительные параметры обучения см. в документации по обучению YOLO.
Нет. Cityscapes8 слишком мал для значимого сравнения моделей и предназначен для проверки пайплайнов обучения и оценки. Используй полный набор валидации Cityscapes, когда тебе нужны репрезентативные результаты бенчмарка для семантической сегментации.