Ultralytics YOLO27:

COCO8-Seg Veri Seti#

Giriş#

Ultralytics COCO8-Seg, COCO train 2017 kümesindeki ilk 8 görüntüden (4'ü eğitim, 4'ü doğrulama için) oluşan küçük ama çok yönlü bir örnek segmentasyonu veri setidir. Bu veri seti, segmentasyon modellerini test etmek ve hatalarını ayıklamak ya da yeni algılama yaklaşımlarını denemek için idealdir. 8 görüntüden oluştuğu için kolayca yönetilebilecek kadar küçüktür; ancak eğitim işlem hatlarını hatalara karşı test etmek ve daha büyük veri setleriyle eğitime başlamadan önce bir sağlama kontrolü yapmak için yeterince çeşitlidir.

Veri Kümesi Yapısı#

  • Görüntüler: Toplam 8 (4 eğitim / 4 doğrulama).
  • Sınıflar: 80 COCO kategorisi.
  • Etiketler: Her görüntü dosyasına karşılık gelecek şekilde labels/{train,val} altında depolanan YOLO biçimli poligonlar.
  • İndirme boyutu: ~1 MB.

Her görüntüyü poligon maskeleriyle birlikte incelemek, Charts sekmesinde sınıf dağılımını ve anotasyon ısı haritalarını görüntülemek ve kendi modelini bulutta eğitmek üzere klonlamak için COCO8-Seg on Ultralytics Platform sayfasını keşfet.

Veri Kümesi YAML'i#

Veri seti yapılandırmasını tanımlamak için bir YAML dosyası kullanılır. Bu dosya, veri setinin yolları, sınıfları ve diğer ilgili bilgileri hakkında bilgi içerir. COCO8-Seg veri seti için coco8-seg.yaml dosyası https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml konumunda tutulur.

ultralytics/cfg/datasets/coco8-seg.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO8-seg dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/segment/coco8-seg
# Example usage: yolo train data=coco8-seg.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-seg ← downloads here (1 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: coco8-seg # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 images
test: # test images (optional)

# Classes
names:
  0: person
  1: bicycle
  2: car
  3: motorcycle
  4: airplane
  5: bus
  6: train
  7: truck
  8: boat
  9: traffic light
  10: fire hydrant
  11: stop sign
  12: parking meter
  13: bench
  14: bird
  15: cat
  16: dog
  17: horse
  18: sheep
  19: cow
  20: elephant
  21: bear
  22: zebra
  23: giraffe
  24: backpack
  25: umbrella
  26: handbag
  27: tie
  28: suitcase
  29: frisbee
  30: skis
  31: snowboard
  32: sports ball
  33: kite
  34: baseball bat
  35: baseball glove
  36: skateboard
  37: surfboard
  38: tennis racket
  39: bottle
  40: wine glass
  41: cup
  42: fork
  43: knife
  44: spoon
  45: bowl
  46: banana
  47: apple
  48: sandwich
  49: orange
  50: broccoli
  51: carrot
  52: hot dog
  53: pizza
  54: donut
  55: cake
  56: chair
  57: couch
  58: potted plant
  59: bed
  60: dining table
  61: toilet
  62: tv
  63: laptop
  64: mouse
  65: remote
  66: keyboard
  67: cell phone
  68: microwave
  69: oven
  70: toaster
  71: sink
  72: refrigerator
  73: book
  74: clock
  75: vase
  76: scissors
  77: teddy bear
  78: hair drier
  79: toothbrush

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8-seg.zip

Kullanım#

COCO8-Seg veri seti üzerinde, 640 görüntü boyutuyla 100 epoch boyunca bir YOLO26n-seg modelini 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 Training sayfasına bak.

Eğitim Örneği
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-seg.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)

Örnek Görüntüler ve Açıklamalar#

Aşağıda COCO8-Seg veri setindeki bazı görüntü örnekleri ve bunlara karşılık gelen anotasyonlar yer alıyor:

COCO8-seg instance segmentation dataset mosaic
  • Mozaiklenmiş Görüntü: Bu görüntü, mozaiklenmiş veri kümesi görüntülerinden oluşan bir eğitim grubunu gösterir. Mozaikleme, her eğitim grubundaki nesne ve sahne çeşitliliğini artırmak için birden fazla görüntüyü tek bir görüntüde birleştiren bir eğitim tekniğidir. Bu, modelin farklı nesne boyutlarına, en-boy oranlarına ve bağlamlara genelleme yeteneğini geliştirmeye yardımcı olur.

Atıflar ve Teşekkürler#

COCO veri kümesini araştırma veya geliştirme çalışmalarında kullanıyorsan lütfen aşağıdaki makaleye atıfta bulun:

Alıntı
@misc{lin2015microsoft,
      title={Microsoft COCO: Common Objects in Context},
      author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
      year={2015},
      eprint={1405.0312},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Bu değerli kaynağı bilgisayarlı görü topluluğu için oluşturan ve sürdüren COCO Consortium'a teşekkür ederiz. COCO veri kümesi ve oluşturucuları hakkında daha fazla bilgi için COCO veri kümesi web sitesini ziyaret edebilirsin.

SSS#

  • COCO8-Seg veri seti, Ultralytics tarafından oluşturulmuş, COCO train 2017 kümesindeki ilk 8 görüntüden (4 eğitim, 4 doğrulama için) oluşan kompakt bir örnek segmentasyonu veri setidir. Bu veri seti, segmentasyon modellerini test etmek ve hatalarını ayıklamak veya yeni algılama yöntemlerini denemek için tasarlanmıştır. Daha büyük veri setlerine ölçeklendirmeden önce hızlı yineleme yapmak ve işlem hattındaki hataları kontrol etmek için özellikle Ultralytics YOLO26 ile kullanışlıdır. Ayrıntılı kullanım için modelin Training sayfasına bak.

  • COCO8-Seg veri seti üzerinde 640 görüntü boyutuyla 100 epoch boyunca bir YOLO26n-seg modelini eğitmek için Python veya CLI komutlarını kullanabilirsin. İşte kısa bir örnek:

    Eğitim Örneği
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-seg.pt")  # Load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="coco8-seg.yaml", epochs=100, imgsz=640)

    Kullanılabilir bağımsız değişkenlerin ve yapılandırma seçeneklerinin kapsamlı açıklaması için Training belgelerine bakabilirsin.

  • İndirme ve eğitim/doğrulama döngüsü tam COCO'ya göre çok daha küçük olduğundan COCO8-Seg, daha büyük bir veri setine geçmeden önce işlem hattı hatalarını (bozuk bir veri yükleyici, yanlış yapılandırılmış bir kayıp veya hatalı bir veri artırma) yakalamak için bir eğitim ve doğrulama geçişi çalıştırmanı sağlar. Desteklenen veri seti biçimleri hakkında daha fazla bilgi edinmek için Ultralytics segmentasyon veri seti kılavuzuna göz at.

  • COCO8-Seg veri setinin YAML yapılandırma dosyası Ultralytics deposunda bulunur. Dosyaya doğrudan https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco8-seg.yaml adresinden erişebilirsin. YAML dosyası, model eğitimi ve doğrulaması için gereken veri seti yolları, sınıflar ve yapılandırma ayarları hakkında temel bilgileri içerir.

  • COCO8-Seg (8 görüntü), boyut açısından COCO128-Seg (128 görüntü) ile tam COCO-Seg veri setinin (118.287 eğitim görüntüsü) altında yer alır:

    • COCO8-Seg: 8 görüntü (4 eğitim, 4 doğrulama) — CI ve hızlı hata ayıklama için ideal, en hızlı sağlama kontrolü.
    • COCO128-Seg: 128 görüntü — boyut ve çeşitlilik arasında dengelidir; eğitim ve doğrulama aynı dizini paylaşır.
    • Tam COCO-Seg: 118.287 eğitim görüntüsü — kapsamlı ancak kaynak yoğundur ve ilk indirmede ~20 GB alan gerektirir.

    Mümkün olan en hızlı işlem hattı kontrolü için COCO8-Seg'i kullan, ardından güvenin arttıkça COCO128-Seg'e veya tam COCO-Seg veri setine ölçeklendir.

Yorumlar