─░├žeri─če ge├ž

COCO-Seg Veri Seti

COCO (Common Objects in Context) veri setinin bir uzant─▒s─▒ olan COCO-Seg veri seti, nesne ├Ârne─či segmentasyonu ara┼čt─▒rmalar─▒na yard─▒mc─▒ olmak i├žin ├Âzel olarak tasarlanm─▒┼čt─▒r. COCO ile ayn─▒ g├Âr├╝nt├╝leri kullan─▒r ancak daha ayr─▒nt─▒l─▒ segmentasyon ek a├ž─▒klamalar─▒ sunar. Bu veri seti, ├Ârnek segmentasyon g├Ârevleri ├╝zerinde ├žal─▒┼čan ara┼čt─▒rmac─▒lar ve geli┼čtiriciler i├žin, ├Âzellikle de YOLO modellerini e─čitmek i├žin ├žok ├Ânemli bir kaynakt─▒r.

COCO-Seg ├ľnceden E─čitilmi┼č Modeller

Model boyut
(piksel)
mAPbox
50-95
mAPmask
50-95
H─▒z
CPU ONNX
(ms)
H─▒z
A100 TensorRT
(ms)
params
(M)
FLOP'lar
(B)
YOLOv8n-seg 640 36.7 30.5 96.1 1.21 3.4 12.6
YOLOv8s-seg 640 44.6 36.8 155.7 1.47 11.8 42.6
YOLOv8m-seg 640 49.9 40.8 317.0 2.18 27.3 110.2
YOLOv8l-seg 640 52.3 42.6 572.4 2.79 46.0 220.5
YOLOv8x-seg 640 53.4 43.4 712.1 4.02 71.8 344.1

Temel ├ľzellikler

  • COCO-Seg, COCO'daki orijinal 330K g├Âr├╝nt├╝y├╝ korur.
  • Veri k├╝mesi, orijinal COCO veri k├╝mesinde bulunan ayn─▒ 80 nesne kategorisinden olu┼čmaktad─▒r.
  • Ek a├ž─▒klamalar art─▒k g├Âr├╝nt├╝lerdeki her nesne i├žin daha ayr─▒nt─▒l─▒ ├Ârnek segmentasyon maskeleri i├žeriyor.
  • COCO-Seg, nesne alg─▒lama i├žin Ortalama Ortalama Hassasiyet (mAP) ve ├Ârnek segmentasyon g├Ârevleri i├žin Ortalama Ortalama Geri ├ça─č─▒rma (mAR) gibi standartla┼čt─▒r─▒lm─▒┼č de─čerlendirme metrikleri sa─člayarak model performans─▒n─▒n etkili bir ┼čekilde kar┼č─▒la┼čt─▒r─▒lmas─▒na olanak tan─▒r.

Veri K├╝mesi Yap─▒s─▒

COCO-Seg veri k├╝mesi ├╝├ž alt k├╝meye ayr─▒lm─▒┼čt─▒r:

  1. Train2017: Bu alt k├╝me, ├Ârnek segmentasyon modellerinin e─čitimi i├žin 118 bin g├Âr├╝nt├╝ i├žerir.
  2. Val2017: Bu alt k├╝me, model e─čitimi s─▒ras─▒nda do─črulama amac─▒yla kullan─▒lan 5K g├Âr├╝nt├╝y├╝ i├žerir.
  3. Test2017: Bu alt k├╝me, e─čitilmi┼č modelleri test etmek ve k─▒yaslamak i├žin kullan─▒lan 20 bin g├Âr├╝nt├╝y├╝ kapsar. Bu alt k├╝me i├žin temel ger├žek a├ž─▒klamalar─▒ kamuya a├ž─▒k de─čildir ve sonu├žlar performans de─čerlendirmesi i├žin COCO de─čerlendirme sunucusuna g├Ânderilir.

Uygulamalar

COCO-Seg, YOLO modelleri gibi ├Ârnek segmentasyonunda derin ├Â─črenme modellerini e─čitmek ve de─čerlendirmek i├žin yayg─▒n olarak kullan─▒lmaktad─▒r. ├çok say─▒da a├ž─▒klamal─▒ g├Âr├╝nt├╝, nesne kategorilerinin ├že┼čitlili─či ve standartla┼čt─▒r─▒lm─▒┼č de─čerlendirme metrikleri, onu bilgisayarla g├Ârme ara┼čt─▒rmac─▒lar─▒ ve uygulay─▒c─▒lar─▒ i├žin vazge├žilmez bir kaynak haline getirmektedir.

Veri K├╝mesi YAML

Veri k├╝mesi yap─▒land─▒rmas─▒n─▒ tan─▒mlamak i├žin bir YAML (Yet Another Markup Language) dosyas─▒ kullan─▒l─▒r. Veri k├╝mesinin yollar─▒, s─▒n─▒flar─▒ ve di─čer ilgili bilgiler hakk─▒nda bilgi i├žerir. COCO-Seg veri k├╝mesi s├Âz konusu oldu─čunda coco.yaml dosyas─▒ ┼ču adreste tutulur https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco.yaml.

ultralytics/cfg/datasets/coco.yaml

# Ultralytics YOLO ­čÜÇ, AGPL-3.0 license
# COCO 2017 dataset https://cocodataset.org by Microsoft
# Documentation: https://docs.ultralytics.com/datasets/detect/coco/
# Example usage: yolo train data=coco.yaml
# parent
# ÔöťÔöÇÔöÇ ultralytics
# ÔööÔöÇÔöÇ datasets
#     ÔööÔöÇÔöÇ coco  ÔćÉ downloads here (20.1 GB)

# 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: ../datasets/coco # dataset root dir
train: train2017.txt # train images (relative to 'path') 118287 images
val: val2017.txt # val images (relative to 'path') 5000 images
test: test-dev2017.txt # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794

# 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: |
  from ultralytics.utils.downloads import download
  from pathlib import Path

  # Download labels
  segments = True  # segment or box labels
  dir = Path(yaml['path'])  # dataset root dir
  url = 'https://github.com/ultralytics/yolov5/releases/download/v1.0/'
  urls = [url + ('coco2017labels-segments.zip' if segments else 'coco2017labels.zip')]  # labels
  download(urls, dir=dir.parent)
  # Download data
  urls = ['http://images.cocodataset.org/zips/train2017.zip',  # 19G, 118k images
          'http://images.cocodataset.org/zips/val2017.zip',  # 1G, 5k images
          'http://images.cocodataset.org/zips/test2017.zip']  # 7G, 41k images (optional)
  download(urls, dir=dir / 'images', threads=3)

Kullan─▒m

Bir YOLOv8n-seg modelini 640 g├Âr├╝nt├╝ boyutuyla 100 epok i├žin COCO-Seg veri k├╝mesi ├╝zerinde e─čitmek i├žin a┼ča─č─▒daki kod par├žac─▒klar─▒n─▒ kullanabilirsiniz. Kullan─▒labilir ba─č─▒ms─▒z de─či┼čkenlerin kapsaml─▒ bir listesi i├žin Model E─čitimi sayfas─▒na bak─▒n.

Tren ├ľrne─či

from ultralytics import YOLO

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

# Train the model
results = model.train(data="coco-seg.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco-seg.yaml model=yolov8n.pt epochs=100 imgsz=640

├ľrnek G├Âr├╝nt├╝ler ve A├ž─▒klamalar

COCO-Seg, selefi COCO gibi, ├že┼čitli nesne kategorileri ve karma┼č─▒k sahneler i├žeren ├žok ├že┼čitli g├Âr├╝nt├╝ler i├žerir. Bununla birlikte, COCO-Seg g├Âr├╝nt├╝lerdeki her nesne i├žin daha ayr─▒nt─▒l─▒ ├Ârnek segmentasyon maskeleri sunar. Veri k├╝mesinden baz─▒ g├Âr├╝nt├╝ ├Ârnekleri ve bunlara kar┼č─▒l─▒k gelen ├Ârnek segmentasyon maskeleri a┼ča─č─▒da verilmi┼čtir:

Veri k├╝mesi ├Ârnek g├Âr├╝nt├╝s├╝

  • Mozaiklenmi┼č G├Âr├╝nt├╝: Bu g├Âr├╝nt├╝, mozaiklenmi┼č veri k├╝mesi g├Âr├╝nt├╝lerinden olu┼čan bir e─čitim grubunu g├Âstermektedir. Mozaikleme, e─čitim s─▒ras─▒nda kullan─▒lan ve her bir 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 tekniktir. Bu, modelin farkl─▒ nesne boyutlar─▒na, en boy oranlar─▒na ve ba─člamlara genelleme yetene─čine yard─▒mc─▒ olur.

Bu ├Ârnek, COCO-Seg veri setindeki g├Âr├╝nt├╝lerin ├že┼čitlili─čini ve karma┼č─▒kl─▒─č─▒n─▒ ve e─čitim s├╝recinde mozaikleme kullanman─▒n faydalar─▒n─▒ g├Âstermektedir.

At─▒flar ve Te┼čekk├╝r

Ara┼čt─▒rma veya geli┼čtirme ├žal─▒┼čmalar─▒n─▒zda COCO-Seg veri setini kullan─▒rsan─▒z, l├╝tfen orijinal COCO makalesine at─▒fta bulunun ve COCO-Seg uzant─▒s─▒n─▒ kabul edin:

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

Bilgisayarla g├Ârme toplulu─ču i├žin bu paha bi├žilmez kayna─č─▒ yaratan ve s├╝rd├╝ren COCO Konsorsiyumuna te┼čekk├╝rlerimizi sunar─▒z. COCO veri seti ve yarat─▒c─▒lar─▒ hakk─▒nda daha fazla bilgi i├žin COCO veri seti web sitesini ziyaret edin.



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (6), RizwanMunawar (1), Laughing-q (1)

Yorumlar