Ultralytics YOLO27 :

Jeu de données ADE20K#

Le jeu de données ADE20K est un benchmark à grande échelle de segmentation sémantique créé par MIT CSAIL. Il comprend 20 210 images d'entraînement et 2 000 images de validation densément annotées, réparties en 150 catégories intérieures, extérieures, d'objets et de matières de fond. C'est une ressource de référence pour entraîner et évaluer des modèles de compréhension dense des scènes avec Ultralytics YOLO.

Fonctionnalités clés#

  • Le benchmark SceneParsing complet d'ADE20K comprend 25 562 images : 20 210 pour l'entraînement, 2 000 pour la validation et 3 352 pour le test. Les annotations des images de test ne sont pas publiées ; l'archive téléchargeable ADEChallengeData2016 et la configuration Ultralytics ade20k.yaml n'utilisent donc que les partitions d'entraînement et de validation.
  • Le jeu de données couvre 150 classes sémantiques réparties entre les catégories intérieur, extérieur, objets et éléments de fond.
  • Les annotations sont des masques de segmentation denses au niveau du pixel, adaptés à l’analyse de scènes.

Structure du jeu de données#

La configuration Ultralytics attend la structure officielle ADEChallengeData2016 :

ADEChallengeData2016/
├── images/
│   ├── training/
│   └── validation/
└── annotations/
    ├── training/
    └── validation/
Téléchargement manuel requis

ADE20K ne dispose d’aucun script de téléchargement automatique. Télécharge l’archive d’environ 1 Go ADEChallengeData2016.zip et extrais-la directement dans ton dossier datasets/. Le dossier racine de l’archive s’appelle déjà ADEChallengeData2016/, ce qui crée la structure datasets/ADEChallengeData2016/ conforme à la structure ci-dessus — ne crée pas toi-même un dossier ADEChallengeData2016 pour y extraire l’archive, sinon tu obtiendras un répertoire datasets/ADEChallengeData2016/ADEChallengeData2016/ imbriqué que le fichier YAML ne trouvera pas.

Le champ masks_dir est défini sur annotations : chaque image sous images/ est donc associée au masque correspondant sous annotations/. Les masques ADE20K d’origine utilisent des ID de classe source où 0 est ignoré, et la section label_mapping convertit les étiquettes valides 1 à 150 en ID d’entraînement contigus 0 à 149, les pixels ignorés étant associés à 255.

Applications#

ADE20K est largement utilisé pour entraîner et évaluer des modèles d’apprentissage profond en segmentation sémantique et en analyse de scènes. La diversité de ses catégories et la complexité de ses scènes en font un jeu de données précieux pour des applications telles que la navigation autonome, la robotique, la réalité augmentée et la retouche d’images.

La diversité des scènes intérieures et extérieures fait également d’ADE20K une référence de choix pour évaluer la capacité de généralisation des modèles entre différents domaines. Les modèles YOLO26 de segmentation sémantique préentraînés atteignent jusqu’à 51,5 mIoU sur l’ensemble de validation ADE20K — consulte la page des modèles de segmentation sémantique pour le tableau complet des résultats. Les jeux de données au format ADE20K sont également entièrement compatibles avec Ultralytics Platform pour la gestion des jeux de données et l’entraînement.

Fichier YAML du jeu de données#

Un fichier YAML de jeu de données définit les chemins ADE20K, les classes, le répertoire des masques et la correspondance des étiquettes. Le fichier ade20k.yaml est maintenu dans https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/ade20k.yaml.

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-ade20k.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.zip

Utilisation#

Pour entraîner un modèle YOLO26n-sem sur le jeu de données ADE20K pendant 100 époques, avec une taille d’image de 640, tu peux utiliser les extraits de code suivants. Pour consulter la liste complète des arguments disponibles, reporte-toi à la page Entraînement du modèle.

Exemple d’entraînement
from ultralytics import YOLO

# Charger un modèle
model = YOLO("yolo26n-sem-ade20k.pt")  # charger un modèle préentraîné sur ADE20K (recommandé pour l’entraînement)

# Entraîner le modèle
results = model.train(data="ade20k.yaml", epochs=100, imgsz=640)

Citations, licence et remerciements#

Les images ADE20K sont publiées pour une utilisation à des fins de recherche non commerciale et d’enseignement uniquement ; le logiciel d’annotation du jeu de données est soumis à une licence BSD-3 distincte. Toute utilisation commerciale nécessite l’autorisation du MIT CSAIL.

Si tu utilises le jeu de données ADE20K dans tes travaux de recherche ou de développement, cite l’article suivant :

Citation
@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}
}

Nous remercions le groupe de vision par ordinateur du MIT CSAIL d’avoir créé et maintenu cette ressource précieuse pour la communauté de la vision par ordinateur. Pour en savoir plus sur le jeu de données ADE20K et ses créateurs, consulte le site Web du jeu de données ADE20K.

FAQ#

  • Le jeu de données ADE20K est une référence à grande échelle pour l’analyse de scènes, utilisée en segmentation sémantique. Il comprend 20 210 images d’entraînement et 2 000 images de validation publiées librement, réparties dans 150 catégories couvrant les classes d’intérieur, d’extérieur, d’objets et d’éléments de fond. Les chercheurs utilisent ADE20K pour la diversité de ses scènes, la granularité de ses catégories et ses métriques d’évaluation normalisées, comme l’intersection moyenne sur l’union (mIoU), qui en font un jeu de données idéal pour évaluer les modèles de prédiction dense.

  • Pour entraîner un modèle YOLO26n-sem sur le jeu de données ADE20K pendant 100 époques, avec une taille d’image de 640, tu peux utiliser les extraits de code suivants. Pour consulter la liste détaillée des arguments disponibles, reporte-toi à la page Entraînement du modèle.

    Exemple d’entraînement
    from ultralytics import YOLO
    
    # Charger un modèle
    model = YOLO("yolo26n-sem-ade20k.pt")  # charger un modèle préentraîné sur ADE20K (recommandé pour l’entraînement)
    
    # Entraîner le modèle
    results = model.train(data="ade20k.yaml", epochs=100, imgsz=640)
  • Le jeu de données ADE20K suit la structure officielle ADEChallengeData2016 : les images sont organisées sous images/training/ et images/validation/, et les masques correspondants sous annotations/training/ et annotations/validation/. Le fichier YAML Ultralytics associe chaque image à son masque via le champ masks_dir: annotations et utilise label_mapping pour convertir les ID de classe source 1–150 en ID d’entraînement contigus 0–149, l’étiquette d’exclusion étant associée à 255.

  • Oui. Télécharge l’archive ADEChallengeData2016.zip (environ 1 Go) et extrais-la directement dans ton dossier datasets/ avant l’entraînement — le dossier racine de l’archive s’appelle déjà ADEChallengeData2016/. En l’extrayant à cet endroit (et non dans un dossier distinct ADEChallengeData2016 que tu aurais créé), tu obtiendras la structure images/ et annotations/ attendue par ade20k.yaml.

  • Les masques d’annotation ADE20K contiennent des ID de classe source où 0 désigne la classe à ignorer ou l’arrière-plan. La section label_mapping associe les étiquettes valides 1 à 150 aux ID d’entraînement contigus 0 à 149, et attribue 255 aux pixels ignorés afin de les exclure de la fonction de perte et des métriques pendant l’entraînement et la validation.

  • Non. Les images ADE20K sont publiées selon des conditions qui limitent leur utilisation à la recherche non commerciale et à l’enseignement ; le logiciel d’annotation associé est soumis à une licence BSD-3 distincte. Contacte le MIT CSAIL pour connaître les options de licence commerciale.

Commentaires