Ultralytics YOLO27:

ADE20K Veri Kümesi#

ADE20K veri kümesi, MIT CSAIL tarafından sunulan ve 150 iç mekân, dış mekân, nesne ve stuff kategorisinde yoğun şekilde etiketlenmiş 20.210 eğitim ve 2.000 doğrulama görüntüsü içeren, büyük ölçekli bir semantik segmentasyon kıyaslama veri kümesidir. Ultralytics YOLO ile yoğun sahne anlama modellerini eğitmek ve değerlendirmek için standart bir kaynaktır.

Temel Özellikler#

  • ADE20K'nin tam SceneParsing kıyaslaması toplam 25.562 görüntü içerir: 20.210 eğitim, 2.000 doğrulama ve 3.352 test görüntüsü. Test görüntülerine ait açıklamalar herkese açık olarak yayımlanmadığından, indirilebilir ADEChallengeData2016 arşivi ve Ultralytics ade20k.yaml yapılandırması yalnızca eğitim ve doğrulama bölümlerini kullanır.
  • Veri kümesi; iç mekân, dış mekân, nesne ve stuff kategorilerine yayılan 150 semantik sınıf içerir.
  • Açıklamalar, sahne ayrıştırma için uygun yoğun piksel düzeyinde segmentasyon maskeleridir.

Veri Kümesi Yapısı#

Ultralytics yapılandırması, resmî ADEChallengeData2016 düzenini bekler:

ADEChallengeData2016/
├── images/
│   ├── training/
│   └── validation/
└── annotations/
    ├── training/
    └── validation/
Manuel İndirme Gerekli

ADE20K'nin otomatik indirme betiği yoktur. ~1 GB boyutundaki ADEChallengeData2016.zip arşivini indirin ve doğrudan datasets/ klasörünüze çıkarın. Arşivin kendi üst düzey klasörü zaten ADEChallengeData2016/ olarak adlandırılmıştır; böylece yukarıdaki düzenle eşleşen datasets/ADEChallengeData2016/ oluşur — kendiniz bir ADEChallengeData2016 klasörü oluşturup arşivi onun içine çıkarmayın; aksi hâlde YAML dosyasının bulamayacağı iç içe bir datasets/ADEChallengeData2016/ADEChallengeData2016/ dizini oluşur.

masks_dir alanı annotations olarak ayarlanmıştır; bu nedenle images/ altındaki her görüntü, annotations/ altındaki karşılık gelen maskeyle eşleştirilir. Orijinal ADE20K maskeleri, 0 değerinin yok sayıldığı kaynak etiket kimliklerini kullanır; label_mapping bölümü geçerli 1 ile 150 arasındaki etiketleri ardışık 0 ile 149 arasındaki eğitim kimliklerine dönüştürür ve yok sayılan pikselleri 255 ile eşler.

Uygulamalar#

ADE20K, semantik segmentasyon ve sahne ayrıştırmada derin öğrenme modellerini eğitmek ve değerlendirmek için yaygın olarak kullanılır. Çeşitli kategori kümesi ve karmaşık sahneleri, onu otonom navigasyon, robotik, artırılmış gerçeklik ve görüntü düzenleme gibi uygulamalar için değerli kılar.

İç ve dış mekân sahnelerinin kapsamı, ADE20K'yi modellerin alanlar arası genellemesini değerlendirmek için güçlü bir kıyaslama veri kümesi hâline getirir. Önceden eğitilmiş YOLO26 semantik segmentasyon modelleri, ADE20K doğrulama kümesinde 51.5 mIoU değerine ulaşır — tam kıyaslama tablosu için semantik segmentasyon modelleri sayfasına bakın. ADE20K biçimindeki veri kümeleri, veri kümesi yönetimi ve eğitim için Ultralytics Platform ile de tamamen uyumludur.

Veri Kümesi YAML'i#

Bir veri kümesi YAML dosyası, ADE20K yollarını, sınıflarını, maske dizinini ve etiket eşlemesini tanımlar. ade20k.yaml dosyası https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/ade20k.yaml adresinde tutulur.

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

Kullanım#

ADE20K veri kümesi üzerinde 512 görüntü boyutuyla 100 epoch boyunca bir YOLO26n-sem modeli eğitmek için aşağıdaki kod parçacıklarını kullanabilirsin. Kullanılabilir bağımsız değişkenlerin kapsamlı listesi için modelin Eğitim sayfasına bakın.

Eğitim Örneği
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)

Atıflar, Lisans ve Teşekkürler#

ADE20K görüntüleri yalnızca ticari olmayan araştırma ve eğitim amaçlı kullanım için yayımlanmıştır; veri kümesinin açıklama yazılımı ayrıca BSD-3 kapsamında lisanslanmıştır. Ticari kullanım için MIT CSAIL'den izin alınması gerekir.

ADE20K veri kümesini araştırma veya geliştirme çalışmalarında kullanırsanız lütfen aşağıdaki makaleye atıfta bulunun:

Alıntı
@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}
}

Bilgisayarlı görü topluluğu için bu değerli kaynağı oluşturan ve sürdüren MIT CSAIL Computer Vision Group'a teşekkür ederiz. ADE20K veri kümesi ve geliştiricileri hakkında daha fazla bilgi için ADE20K veri kümesi web sitesini ziyaret edin.

SSS#

  • ADE20K veri kümesi, semantik segmentasyon için kullanılan, 150 iç mekân, dış mekân, nesne ve stuff sınıfını kapsayan 20.210 eğitim ve 2.000 doğrulama görüntüsünün herkese açık olarak yayımlandığı, büyük ölçekli bir sahne ayrıştırma kıyaslama veri kümesidir. Araştırmacılar ADE20K'yi çeşitli sahneleri, ince ayrıntılı kategori kümesi ve yoğun tahmin modellerini kıyaslamak için ideal olan ortalama Kesişim-Birleşim (mIoU) gibi standartlaştırılmış değerlendirme ölçütleri nedeniyle kullanır.

  • ADE20K veri kümesi üzerinde 512 görüntü boyutuyla 100 epoch boyunca bir YOLO26n-sem modeli eğitmek için aşağıdaki kod parçacıklarını kullanabilirsin. Kullanılabilir bağımsız değişkenlerin ayrıntılı listesi için modelin Eğitim sayfasına bakın.

    Eğitim Örneği
    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 veri kümesi, görüntülerin images/training/ ve images/validation/ altında, karşılık gelen maskelerin ise annotations/training/ ve annotations/validation/ altında düzenlendiği resmî ADEChallengeData2016 düzenini izler. Ultralytics YAML dosyası, masks_dir: annotations alanı aracılığıyla her görüntüyü maskesiyle eşleştirir ve kaynak etiket kimlikleri 1150 değerlerini ardışık eğitim kimlikleri 0149 değerlerine dönüştürmek için label_mapping öğesini kullanarak yok sayma etiketini 255 ile eşler.

  • Evet. ADEChallengeData2016.zip arşivini (~1 GB) indirin ve eğitimden önce doğrudan datasets/ klasörünüze çıkarın — arşivin kendi üst düzey klasörü zaten ADEChallengeData2016/ olarak adlandırılmıştır; bu nedenle arşivi (kendiniz oluşturacağınız ayrı bir ADEChallengeData2016 klasörüne değil) buraya çıkarmak, ade20k.yaml tarafından beklenen images/ ve annotations/ düzenini oluşturur.

  • ADE20K açıklama maskeleri, 0 değerinin yok sayma veya arka plan sınıfını belirttiği kaynak etiket kimliklerini depolar. label_mapping bölümü, geçerli 1 ile 150 arasındaki etiketleri ardışık 0 ile 149 arasındaki eğitim kimliklerine eşler ve yok sayılan piksellere 255 atayarak bunların eğitim ve doğrulama sırasında kayıp ve ölçütlerin dışında tutulmasını sağlar.

  • Hayır. ADE20K görüntüleri kullanımı ticari olmayan araştırma ve eğitimle sınırlayan koşullar kapsamında yayımlanmıştır; beraberindeki açıklama yazılımı ayrıca BSD-3 kapsamında lisanslanmıştır. Ticari lisans seçenekleri için MIT CSAIL ile iletişime geçin.

Yorumlar