Conjunto de datos ADE20K#
El conjunto de datos ADE20K es un benchmark a gran escala de segmentación semántica de MIT CSAIL, con 20.210 imágenes de entrenamiento y 2.000 de validación anotadas densamente en 150 categorías de interiores, exteriores, objetos y elementos de fondo. Es un recurso estándar para entrenar y evaluar modelos de comprensión densa de escenas con Ultralytics YOLO.
Características principales#
- El benchmark completo SceneParsing de ADE20K consta de 25.562 imágenes: 20.210 para entrenamiento, 2.000 para validación y 3.352 para pruebas. Las anotaciones de las imágenes de prueba no se han publicado, por lo que el archivo descargable
ADEChallengeData2016y la configuración de Ultralyticsade20k.yamlutilizan únicamente las particiones de entrenamiento y validación. - El conjunto de datos abarca 150 clases semánticas de interiores, exteriores, objetos y elementos de fondo.
- Las anotaciones son máscaras de segmentación densas a nivel de píxel, adecuadas para el análisis de escenas.
Estructura del dataset#
La configuración de Ultralytics espera la estructura oficial de ADEChallengeData2016:
ADEChallengeData2016/
├── images/
│ ├── training/
│ └── validation/
└── annotations/
├── training/
└── validation/ADE20K no incluye ningún script de descarga automática. Descarga el archivo ADEChallengeData2016.zip de ~1 GB y extráelo directamente en tu carpeta datasets/. La carpeta de nivel superior del propio archivo ya se llama ADEChallengeData2016/, por lo que así se genera datasets/ADEChallengeData2016/, que coincide con la estructura anterior; no crees tú una carpeta ADEChallengeData2016 para extraerlo en ella, o acabarás con un directorio anidado datasets/ADEChallengeData2016/ADEChallengeData2016/ que el YAML no encontrará.
El campo masks_dir está establecido en annotations, por lo que cada imagen de images/ se empareja con su máscara correspondiente en annotations/. Las máscaras originales de ADE20K utilizan identificadores de etiquetas de origen en los que 0 se ignora, y la sección label_mapping convierte las etiquetas válidas 1 a 150 en identificadores de entrenamiento contiguos 0 a 149, asignando los píxeles ignorados a 255.
Aplicaciones#
ADE20K se utiliza ampliamente para entrenar y evaluar modelos de deep learning en segmentación semántica y análisis de escenas. Su conjunto diverso de categorías y sus escenas complejas lo hacen valioso para aplicaciones como la navegación autónoma, la robótica, la realidad aumentada y la edición de imágenes.
La variedad de escenas interiores y exteriores también convierte ADE20K en un benchmark sólido para evaluar la generalización de los modelos entre dominios. Los modelos de segmentación semántica YOLO26 preentrenados alcanzan hasta 51,5 mIoU en el conjunto de validación de ADE20K; consulta la página de modelos de segmentación semántica para ver la tabla de benchmarks completa. Los conjuntos de datos con formato ADE20K también son totalmente compatibles con Ultralytics Platform para la gestión y el entrenamiento de conjuntos de datos.
YAML del dataset#
Un archivo YAML del conjunto de datos define las rutas de ADE20K, las clases, el directorio de máscaras y la asignación de etiquetas. El archivo ade20k.yaml se mantiene en https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/ade20k.yaml.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# ADE20K semantic segmentation dataset (150 classes)
# Documentation: https://docs.ultralytics.com/datasets/semantic/ade20k
# Example usage: yolo semantic train data=ade20k.yaml model=yolo26n-sem.pt
# parent
# ├── ultralytics
# └── datasets
# └── ADEChallengeData2016 ← downloads here (1 GB)
# └── images
# └── annotations
# Dataset root directory
path: ADEChallengeData2016
train: images/training
val: images/validation
masks_dir: annotations # semantic mask directory
# ADE20K 150-class labels
names:
0: wall
1: building
2: sky
3: floor
4: tree
5: ceiling
6: road
7: bed
8: windowpane
9: grass
10: cabinet
11: sidewalk
12: person
13: earth
14: door
15: table
16: mountain
17: plant
18: curtain
19: chair
20: car
21: water
22: painting
23: sofa
24: shelf
25: house
26: sea
27: mirror
28: rug
29: field
30: armchair
31: seat
32: fence
33: desk
34: rock
35: wardrobe
36: lamp
37: bathtub
38: railing
39: cushion
40: base
41: box
42: column
43: signboard
44: chest of drawers
45: counter
46: sand
47: sink
48: skyscraper
49: fireplace
50: refrigerator
51: grandstand
52: path
53: stairs
54: runway
55: case
56: pool table
57: pillow
58: screen door
59: stairway
60: river
61: bridge
62: bookcase
63: blind
64: coffee table
65: toilet
66: flower
67: book
68: hill
69: bench
70: countertop
71: stove
72: palm
73: kitchen island
74: computer
75: swivel chair
76: boat
77: bar
78: arcade machine
79: hovel
80: bus
81: towel
82: light
83: truck
84: tower
85: chandelier
86: awning
87: streetlight
88: booth
89: television receiver
90: airplane
91: dirt track
92: apparel
93: pole
94: land
95: bannister
96: escalator
97: ottoman
98: bottle
99: buffet
100: poster
101: stage
102: van
103: ship
104: fountain
105: conveyor belt
106: canopy
107: washer
108: plaything
109: swimming pool
110: stool
111: barrel
112: basket
113: waterfall
114: tent
115: bag
116: minibike
117: cradle
118: oven
119: ball
120: food
121: step
122: tank
123: trade name
124: microwave
125: pot
126: animal
127: bicycle
128: lake
129: dishwasher
130: screen
131: blanket
132: sculpture
133: hood
134: sconce
135: vase
136: traffic light
137: tray
138: ashcan
139: fan
140: pier
141: crt screen
142: plate
143: monitor
144: bulletin board
145: shower
146: radiator
147: glass
148: clock
149: flag
# Map source label IDs to train IDs; ignore_label is converted to 255.
label_mapping:
0: ignore_label
1: 0
2: 1
3: 2
4: 3
5: 4
6: 5
7: 6
8: 7
9: 8
10: 9
11: 10
12: 11
13: 12
14: 13
15: 14
16: 15
17: 16
18: 17
19: 18
20: 19
21: 20
22: 21
23: 22
24: 23
25: 24
26: 25
27: 26
28: 27
29: 28
30: 29
31: 30
32: 31
33: 32
34: 33
35: 34
36: 35
37: 36
38: 37
39: 38
40: 39
41: 40
42: 41
43: 42
44: 43
45: 44
46: 45
47: 46
48: 47
49: 48
50: 49
51: 50
52: 51
53: 52
54: 53
55: 54
56: 55
57: 56
58: 57
59: 58
60: 59
61: 60
62: 61
63: 62
64: 63
65: 64
66: 65
67: 66
68: 67
69: 68
70: 69
71: 70
72: 71
73: 72
74: 73
75: 74
76: 75
77: 76
78: 77
79: 78
80: 79
81: 80
82: 81
83: 82
84: 83
85: 84
86: 85
87: 86
88: 87
89: 88
90: 89
91: 90
92: 91
93: 92
94: 93
95: 94
96: 95
97: 96
98: 97
99: 98
100: 99
101: 100
102: 101
103: 102
104: 103
105: 104
106: 105
107: 106
108: 107
109: 108
110: 109
111: 110
112: 111
113: 112
114: 113
115: 114
116: 115
117: 116
118: 117
119: 118
120: 119
121: 120
122: 121
123: 122
124: 123
125: 124
126: 125
127: 126
128: 127
129: 128
130: 129
131: 130
132: 131
133: 132
134: 133
135: 134
136: 135
137: 136
138: 137
139: 138
140: 139
141: 140
142: 141
143: 142
144: 143
145: 144
146: 145
147: 146
148: 147
149: 148
150: 149
# Download URL (manual): https://data.csail.mit.edu/places/ADEchallenge/ADEChallengeData2016.zipUso#
Para entrenar un modelo YOLO26n-sem con el conjunto de datos ADE20K durante 100 épocas y con un tamaño de imagen de 512, puedes utilizar los siguientes fragmentos de código. Para consultar la lista completa de argumentos disponibles, visita la página de entrenamiento del modelo.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-sem.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="ade20k.yaml", epochs=100, imgsz=512)Citas, licencia y agradecimientos#
Las imágenes de ADE20K se publican únicamente para investigación no comercial y uso educativo; el software de anotación del conjunto de datos se distribuye bajo una licencia BSD-3 independiente. El uso comercial requiere permiso de MIT CSAIL.
Si utilizas el conjunto de datos ADE20K en tu trabajo de investigación o desarrollo, cita el siguiente artículo:
@inproceedings{zhou2017scene,
title={Scene Parsing through ADE20K Dataset},
author={Zhou, Bolei and Zhao, Hang and Puig, Xavier and Fidler, Sanja and Barriuso, Adela and Torralba, Antonio},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
year={2017}
}Nos gustaría reconocer al grupo de Computer Vision de MIT CSAIL por crear y mantener este valioso recurso para la comunidad de visión por ordenador. Para obtener más información sobre el conjunto de datos ADE20K y sus creadores, visita el sitio web del conjunto de datos ADE20K.
Preguntas frecuentes#
El conjunto de datos ADE20K es un benchmark de análisis de escenas a gran escala utilizado para la segmentación semántica, con 20.210 imágenes de entrenamiento y 2.000 de validación publicadas en 150 categorías que abarcan clases de interiores, exteriores, objetos y elementos de fondo. Los investigadores utilizan ADE20K por sus escenas diversas, su conjunto de categorías detallado y sus métricas de evaluación estandarizadas, como la media de intersección sobre unión (mIoU), que lo hacen ideal para comparar modelos de predicción densa.
Para entrenar un modelo YOLO26n-sem con el conjunto de datos ADE20K durante 100 épocas y con un tamaño de imagen de 512, puedes utilizar los siguientes fragmentos de código. Para consultar una lista detallada de los argumentos disponibles, visita la página de entrenamiento del modelo.
Ejemplo de entrenamientofrom ultralytics import YOLO # Load a model model = YOLO("yolo26n-sem.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="ade20k.yaml", epochs=100, imgsz=512)El conjunto de datos ADE20K sigue la estructura oficial de ADEChallengeData2016, con las imágenes organizadas en
images/training/yimages/validation/, y las máscaras correspondientes enannotations/training/yannotations/validation/. El archivo YAML de Ultralytics empareja cada imagen con su máscara mediante el campomasks_dir: annotationsy utilizalabel_mappingpara convertir los identificadores de etiquetas de origen1–150en identificadores de entrenamiento contiguos0–149, asignando la etiqueta de ignorado a255.Sí. Descarga el archivo
ADEChallengeData2016.zip(~1 GB) y extráelo directamente en tu carpetadatasets/antes del entrenamiento; la carpeta de nivel superior del propio archivo ya se llamaADEChallengeData2016/, por lo que extraerlo ahí (no en una carpetaADEChallengeData2016independiente que crees tú) genera la estructuraimages/yannotations/que esperaade20k.yaml.Las máscaras de anotación de ADE20K almacenan identificadores de etiquetas de origen en los que
0representa la clase ignorada o de fondo. La secciónlabel_mappingasigna las etiquetas válidas1a150a identificadores de entrenamiento contiguos0a149, y asigna255a los píxeles ignorados para excluirlos de la pérdida y de las métricas durante el entrenamiento y la validación.No. Las imágenes de ADE20K se publican bajo condiciones que restringen su uso a la investigación y la educación no comerciales; el software de anotación que las acompaña se distribuye bajo una licencia BSD-3 independiente. Contacta con MIT CSAIL para consultar las opciones de licencia comercial.



