COCO Veri Seti
The COCO (Common Objects in Context) dataset is a large-scale object detection, segmentation, and captioning dataset. It is designed to encourage research on a wide variety of object categories and is commonly used for benchmarking computer vision models. It is an essential dataset for researchers and developers working on object detection, segmentation, and pose estimation tasks.
İzle: Ultralytics COCO Veri Setine Genel Bakış
COCO Önceden Eğitilmiş Modeller
Model | boyut (piksel) |
mAPval 50-95 |
Hız CPU ONNX (ms) |
Speed T4 TensorRT10 (ms) |
params (M) |
FLOP'lar (B) |
---|---|---|---|---|---|---|
YOLO11n | 640 | 39.5 | 56.1 ± 0.8 | 1.5 ± 0.0 | 2.6 | 6.5 |
YOLO11s | 640 | 47.0 | 90.0 ± 1.2 | 2.5 ± 0.0 | 9.4 | 21.5 |
YOLO11m | 640 | 51.5 | 183.2 ± 2.0 | 4.7 ± 0.1 | 20.1 | 68.0 |
YOLO11l | 640 | 53.4 | 238.6 ± 1.4 | 6.2 ± 0.1 | 25.3 | 86.9 |
YOLO11x | 640 | 54.7 | 462.8 ± 6.7 | 11.3 ± 0.2 | 56.9 | 194.9 |
Temel Özellikler
- COCO, nesne algılama, segmentasyon ve altyazı görevleri için ek açıklamalara sahip 200K görüntü ile 330K görüntü içerir.
- Veri kümesi, arabalar, bisikletler ve hayvanlar gibi yaygın nesnelerin yanı sıra şemsiyeler, el çantaları ve spor malzemeleri gibi daha spesifik kategoriler de dahil olmak üzere 80 nesne kategorisinden oluşmaktadır.
- Ek açıklamalar, her görüntü için nesne sınırlayıcı kutuları, segmentasyon maskeleri ve başlıkları içerir.
- COCO provides standardized evaluation metrics like mean Average Precision (mAP) for object detection, and mean Average Recall (mAR) for segmentation tasks, making it suitable for comparing model performance.
Veri Kümesi Yapısı
COCO veri seti üç alt kümeye ayrılmıştır:
- Train2017: Bu alt küme, nesne algılama, segmentasyon ve altyazı modellerini eğitmek için 118 bin görüntü içerir.
- Val2017: Bu alt kümede model eğitimi sırasında doğrulama amacıyla kullanılan 5K görüntü bulunmaktadır.
- Test2017: Bu alt küme, eğitilen modellerin test edilmesi ve kıyaslanması için kullanılan 20 bin görüntüden oluşmaktadır. 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
The COCO dataset is widely used for training and evaluating deep learning models in object detection (such as YOLO, Faster R-CNN, and SSD), instance segmentation (such as Mask R-CNN), and keypoint detection (such as OpenPose). The dataset's diverse set of object categories, large number of annotated images, and standardized evaluation metrics make it an essential resource for computer vision researchers and practitioners.
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 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/assets/releases/download/v0.0.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
To train a YOLO11n model on the COCO dataset for 100 epochs with an image size of 640, you can use the following code snippets. For a comprehensive list of available arguments, refer to the model Training page.
Tren Örneği
Örnek Görüntüler ve Açıklamalar
COCO veri kümesi, çeşitli nesne kategorileri ve karmaşık sahneler içeren çok çeşitli görüntüler içermektedir. Aşağıda, ilgili açıklamalarıyla birlikte veri kümesinden bazı görüntü örnekleri yer almaktadır:
- 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ğini geliştirmeye yardımcı olur.
Bu örnek, COCO 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 veri setini kullanıyorsanız, lütfen aşağıdaki makaleye atıfta bulunun:
@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 değerli kaynağı yaratan ve sürdüren COCO Konsorsiyumu'na teşekkür ederiz. COCO veri seti ve yaratıcıları hakkında daha fazla bilgi için COCO veri seti web sitesini ziyaret edin.
SSS
COCO veri seti nedir ve bilgisayarla görme için neden önemlidir?
The COCO dataset (Common Objects in Context) is a large-scale dataset used for object detection, segmentation, and captioning. It contains 330K images with detailed annotations for 80 object categories, making it essential for benchmarking and training computer vision models. Researchers use COCO due to its diverse categories and standardized evaluation metrics like mean Average Precision (mAP).
COCO veri setini kullanarak bir YOLO modelini nasıl eğitebilirim?
To train a YOLO11 model using the COCO dataset, you can use the following code snippets:
Tren Örneği
Mevcut argümanlar hakkında daha fazla bilgi için Eğitim sayfasına bakın.
COCO veri setinin temel özellikleri nelerdir?
COCO veri seti şunları içerir:
- Nesne algılama, segmentasyon ve altyazı ekleme için 200K'sı açıklamalı 330K görüntü.
- Arabalar ve hayvanlar gibi yaygın nesnelerden el çantaları ve spor malzemeleri gibi özel nesnelere kadar 80 nesne kategorisi.
- Nesne algılama (mAP) ve segmentasyon (ortalama Ortalama Geri Çağırma, mAR) için standartlaştırılmış değerlendirme metrikleri.
- Çeşitli nesne boyutları ve bağlamları arasında model genellemesini geliştirmek için eğitim gruplarında mozaikleme tekniği.
Where can I find pretrained YOLO11 models trained on the COCO dataset?
Pretrained YOLO11 models on the COCO dataset can be downloaded from the links provided in the documentation. Examples include:
Bu modeller boyut, mAP ve çıkarım hızı bakımından farklılık göstererek farklı performans ve kaynak gereksinimleri için seçenekler sunar.
COCO veri seti nasıl yapılandırılmıştır ve nasıl kullanabilirim?
COCO veri seti üç alt kümeye ayrılmıştır:
- Train2017: Eğitim için 118K görüntü.
- Val2017: Eğitim sırasında doğrulama için 5K görüntü.
- Test2017: Eğitilmiş modelleri kıyaslamak için 20K görüntü. Sonuçların performans değerlendirmesi için COCO değerlendirme sunucusuna gönderilmesi gerekir.
Veri kümesinin YAML yapılandırma dosyası, yolları, sınıfları ve veri kümesi ayrıntılarını tanımlayan coco.yaml adresinde mevcuttur.