Ultralytics YOLO27:

ADE20Kデータセット#

ADE20Kデータセットは、MIT CSAILによる大規模なセマンティックセグメンテーションベンチマークで、屋内、屋外、オブジェクト、スタッフの150カテゴリにわたって、トレーニング画像20,210枚と検証画像2,000枚に高密度のアノテーションが付与されています。これは、Ultralytics YOLOを使用して、密なシーン理解モデルをトレーニングおよび評価するための標準的なリソースです。

主な特徴#

  • ADE20Kの完全なSceneParsingベンチマークは、トレーニング用20,210枚、検証用2,000枚、テスト用3,352枚の合計25,562枚の画像で構成されています。テスト画像のアノテーションは一般公開されていないため、ダウンロード可能なADEChallengeData2016アーカイブとUltralyticsのade20k.yaml設定では、トレーニングと検証の分割のみを使用します。
  • このデータセットは、屋内、屋外、オブジェクト、スタッフのカテゴリにまたがる150のセマンティッククラスを収録しています。
  • アノテーションは、シーン解析に適した高密度のピクセルレベルセグメンテーションマスクです。

データセットの構成#

Ultralyticsの設定では、公式のADEChallengeData2016レイアウトを想定しています。

ADEChallengeData2016/
├── images/
│   ├── training/
│   └── validation/
└── annotations/
    ├── training/
    └── validation/
手動ダウンロードが必要です

ADE20Kには自動ダウンロードスクリプトがありません。約1 GBのADEChallengeData2016.zipアーカイブをダウンロードし、datasets/フォルダーに直接展開してください。アーカイブ自体のトップレベルフォルダーはすでにADEChallengeData2016/という名前になっているため、これにより上記のレイアウトに一致するdatasets/ADEChallengeData2016/が作成されます。自分でADEChallengeData2016フォルダーを作成してその中に展開しないでください。そうすると、YAMLが見つけられないネストされたdatasets/ADEChallengeData2016/ADEChallengeData2016/ディレクトリが生成されます。

masks_dirフィールドはannotationsに設定されているため、images/以下の各画像は、対応するannotations/以下のマスクとペアになります。元のADE20Kマスクでは、0が無視されるソースラベルIDを使用しており、label_mappingセクションによって、有効なラベル1から150が連続したトレーニングID0から149に変換され、無視されるピクセルは255にマッピングされます。

アプリケーション#

ADE20Kは、セマンティックセグメンテーションおよびシーン解析におけるディープラーニングモデルのトレーニングと評価に広く使用されています。多様なカテゴリセットと複雑なシーンにより、自律ナビゲーション、ロボティクス、拡張現実、画像編集などのアプリケーションに役立ちます。

屋内と屋外のシーンの幅広さにより、ADE20Kはドメイン間でのモデルの汎化性能を評価するための強力なベンチマークにもなっています。事前トレーニング済みのYOLO26セマンティックセグメンテーションモデルは、ADE20K検証セットで最大51.5 mIoUを達成します。完全なベンチマーク表については、セマンティックセグメンテーションモデルページを参照してください。ADE20K形式のデータセットは、データセット管理とトレーニングのためにUltralytics Platformとも完全に互換性があります。

データセット YAML#

データセットのYAMLファイルは、ADE20Kのパス、クラス、マスクディレクトリ、ラベルマッピングを定義します。ade20k.yamlファイルは、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.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

使用方法#

ADE20KデータセットでYOLO26n-semモデルを、画像サイズ512、100エポックでトレーニングするには、次のコードスニペットを使用できます。利用可能な引数の包括的な一覧については、モデルのトレーニングページを参照してください。

トレーニング例
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)

引用、ライセンス、謝辞#

ADE20Kの画像は非商用の研究および教育目的に限り公開されています。データセットのアノテーションソフトウェアは、別途BSD-3.0ライセンスの下でライセンスされています。商用利用にはMIT CSAILの許可が必要です。

ADE20Kデータセットを研究または開発で使用する場合は、次の論文を引用してください。

引用
@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}
}

コンピュータービジョンコミュニティにとって価値のあるこのリソースを作成・維持しているMIT CSAIL Computer Vision Groupに感謝します。ADE20Kデータセットとその作成者の詳細については、ADE20Kデータセットのウェブサイトをご覧ください。

FAQ#

  • ADE20Kデータセットは、セマンティックセグメンテーションに使用される大規模なシーン解析ベンチマークで、屋内、屋外、オブジェクト、スタッフのクラスを含む150カテゴリにわたって、トレーニング画像20,210枚と検証画像2,000枚が一般公開されています。研究者は、多様なシーン、きめ細かなカテゴリセット、平均交差/和集合(mIoU)のような標準化された評価指標を備えているADE20Kを使用します。これらの特長により、密な予測モデルのベンチマークに適しています。

  • ADE20KデータセットでYOLO26n-semモデルを、画像サイズ512、100エポックでトレーニングするには、次のコードスニペットを使用できます。利用可能な引数の詳細な一覧については、モデルのトレーニングページを参照してください。

    トレーニング例
    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)
  • ADE20Kデータセットは公式のADEChallengeData2016レイアウトに従っており、画像はimages/training/images/validation/の下に整理され、対応するマスクはannotations/training/annotations/validation/の下に配置されています。UltralyticsのYAMLファイルは、masks_dir: annotationsフィールドを介して各画像とそのマスクをペアにし、label_mappingを使用してソースラベルID1150を連続したトレーニングID0149に変換し、無視ラベルを255にマッピングします。

  • はい。ADEChallengeData2016.zipアーカイブ(約1 GB)をダウンロードし、トレーニング前にdatasets/フォルダーへ直接展開してください。アーカイブ自体のトップレベルフォルダーはすでにADEChallengeData2016/という名前になっているため、そこに展開すると(自分で作成した別のADEChallengeData2016フォルダー内ではなく)、ade20k.yamlが想定するimages/annotations/のレイアウトになります。

  • ADE20Kのアノテーションマスクは、0が無視または背景クラスを示すソースラベルIDを格納しています。label_mappingセクションは、有効なラベル1から150を連続したトレーニングID0から149にマッピングし、無視されるピクセルに255を割り当てます。これにより、トレーニングと検証中にそれらのピクセルが損失とメトリクスから除外されます。

  • いいえ。ADE20Kの画像は利用を非商用の研究および教育に限定する条件の下で公開されています。付属のアノテーションソフトウェアはBSD-3.0の下で別途ライセンスされています。商用ライセンスのオプションについてはMIT CSAILにお問い合わせください。

コメント