مجموعة بيانات COCO
مجموعة بيانات COCO (الكائنات الشائعة في السياق) هي مجموعة بيانات واسعة النطاق للكشف عن الكائنات وتقسيمها وشرحها. وهي مصممة لتشجيع البحث على مجموعة واسعة من فئات الكائنات ويستخدم عادة لقياس نماذج رؤية الكمبيوتر. إنها مجموعة بيانات أساسية للباحثين والمطورين الذين يعملون على مهام اكتشاف الكائنات وتجزئتها وتقدير الطرح.
شاهد: Ultralytics نظرة عامة على مجموعة بيانات COCO
نماذج COCO المدربة مسبقا
نموذج | حجم (بكسل) |
خريطةفال 50-95 |
السرعة CPU ONNX (مللي ثانية) |
سرعة أ 100 TensorRT (مللي ثانية) |
المعلمات (م) |
يتخبط (ب) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 0.99 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 1.20 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 1.83 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 2.39 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 3.53 | 68.2 | 257.8 |
الميزات الرئيسية
- يحتوي COCO على 330 ألف صورة ، مع 200 ألف صورة تحتوي على تعليقات توضيحية لمهام اكتشاف الكائنات والتجزئة والتسميات التوضيحية.
- تتكون مجموعة البيانات من 80 فئة من الكائنات ، بما في ذلك الأشياء الشائعة مثل السيارات والدراجات ، بالإضافة إلى فئات أكثر تحديدا مثل المظلات وحقائب اليد والمعدات الرياضية.
- تتضمن التعليقات التوضيحية مربعات إحاطة الكائن وأقنعة التجزئة والتعليقات التوضيحية لكل صورة.
- يوفر COCO مقاييس تقييم موحدة مثل متوسط الدقة (mAP) لاكتشاف الكائن ، ومتوسط الاستدعاء (mAR) لمهام التجزئة ، مما يجعله مناسبا لمقارنة أداء النموذج.
هيكل مجموعة البيانات
تنقسم مجموعة بيانات COCO إلى ثلاث مجموعات فرعية:
- Train2017: تحتوي هذه المجموعة الفرعية على 118 ألف صورة لنماذج اكتشاف الكائنات التدريبية وتقسيمها وشرحها.
- Val2017: تحتوي هذه المجموعة الفرعية على صور بدقة 5K تستخدم لأغراض التحقق من الصحة أثناء تدريب النموذج.
- Test2017: تتكون هذه المجموعة الفرعية من 20 ألف صورة تستخدم لاختبار النماذج المدربة وقياسها. التعليقات التوضيحية للحقيقة الأساسية لهذه المجموعة الفرعية غير متاحة للجمهور، ويتم إرسال النتائج إلى خادم تقييم COCO لتقييم الأداء.
التطبيقات
تستخدم مجموعة بيانات COCO على نطاق واسع لتدريب وتقييم نماذج التعلم العميق في اكتشاف الكائنات (مثل YOLO، و R-CNN أسرع ، و SSD) ، وتجزئة المثيل (مثل Mask R-CNN) ، واكتشاف النقطة الرئيسية (مثل OpenPose). مجموعة متنوعة من فئات الكائنات في مجموعة البيانات ، وعدد كبير من الصور المشروحة ، ومقاييس التقييم الموحدة تجعلها موردا أساسيا للباحثين والممارسين في مجال رؤية الكمبيوتر.
مجموعة البيانات YAML
يتم استخدام ملف YAML (لغة ترميز أخرى) لتحديد تكوين مجموعة البيانات. يحتوي على معلومات حول مسارات مجموعة البيانات والفئات والمعلومات الأخرى ذات الصلة. في حالة مجموعة بيانات COCO ، فإن coco.yaml
يتم الاحتفاظ بالملف في 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)
استخدام
لتدريب أ YOLOv8n نموذج على مجموعة بيانات COCO ل 100 حقبة بحجم صورة 640 ، يمكنك استخدام مقتطفات التعليمات البرمجية التالية. للحصول على قائمة شاملة بالوسيطات المتاحة، ارجع إلى صفحة نموذج التدريب .
مثال القطار
عينة من الصور والتعليقات التوضيحية
تحتوي مجموعة بيانات COCO على مجموعة متنوعة من الصور مع فئات كائنات مختلفة ومشاهد معقدة. فيما يلي بعض الأمثلة على الصور من مجموعة البيانات، بالإضافة إلى التعليقات التوضيحية المقابلة لها:
- صورة فسيفسائية: توضح هذه الصورة دفعة تدريب مكونة من صور مجموعة بيانات فسيفسائية. الفسيفساء هي تقنية تستخدم أثناء التدريب تجمع بين صور متعددة في صورة واحدة لزيادة تنوع الكائنات والمشاهد داخل كل دفعة تدريب. يساعد هذا في تحسين قدرة النموذج على التعميم على أحجام الكائنات المختلفة ونسب العرض إلى الارتفاع والسياقات.
يعرض المثال تنوع وتعقيد الصور في مجموعة بيانات COCO وفوائد استخدام الفسيفساء أثناء عملية التدريب.
الاستشهادات والشكر
إذا كنت تستخدم مجموعة بيانات COCO في أعمال البحث أو التطوير الخاصة بك ، فيرجى الاستشهاد بالورقة التالية:
@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}
}
نود أن نعرب عن تقديرنا لاتحاد COCO لإنشاء وصيانة هذا المورد القيم لمجتمع رؤية الكمبيوتر. لمزيد من المعلومات حول مجموعة بيانات COCO ومنشئيها، تفضل بزيارة موقع ويب مجموعة بيانات COCO.
الأسئلة المتداولة
ما هي مجموعة بيانات COCO ولماذا هي مهمة للرؤية الحاسوبية؟
مجموعة بيانات COCO (الأجسام الشائعة في السياق) هي مجموعة بيانات واسعة النطاق تُستخدم لاكتشاف الأجسام وتجزئتها وتسميتها. وهي تحتوي على 330 ألف صورة مع شروح مفصلة لـ 80 فئة من فئات الكائنات، مما يجعلها ضرورية لقياس نماذج الرؤية الحاسوبية وتدريبها. يستخدم الباحثون COCO نظرًا لفئاتها المتنوعة ومقاييس التقييم الموحدة مثل متوسط الدقة المتوسطة (mAP).
كيف يمكنني تدريب نموذج YOLO باستخدام مجموعة بيانات COCO؟
لتدريب نموذج YOLOv8 باستخدام مجموعة بيانات COCO، يمكنك استخدام مقتطفات التعليمات البرمجية التالية:
مثال القطار
راجع صفحة التدريب للحصول على مزيد من التفاصيل حول الوسائط المتاحة.
ما هي السمات الرئيسية لمجموعة بيانات COCO؟
تتضمن مجموعة بيانات COCO ما يلي:
- 330 ألف صورة، مع 200 ألف صورة مشروحة لاكتشاف الأجسام وتجزئتها والتعليق عليها.
- 80 فئة عناصر تتراوح من العناصر الشائعة مثل السيارات والحيوانات إلى عناصر محددة مثل حقائب اليد والمعدات الرياضية.
- مقاييس التقييم الموحدة لاكتشاف الكائنات (mAP) والتجزئة (متوسط متوسط الاسترجاع، mAR).
- تقنية الفسيفساء في دفعات التدريب لتعزيز تعميم النموذج عبر مختلف أحجام الأجسام والسياقات.
أين يمكنني العثور على نماذج YOLOv8 المدربة مسبقًا والمدربة على مجموعة بيانات COCO؟
يمكن تنزيل نماذج YOLOv8 المدربة مسبقًا على مجموعة بيانات COCO من الروابط المتوفرة في الوثائق. ومن الأمثلة على ذلك:
تتنوع هذه النماذج من حيث الحجم، و mAP، وسرعة الاستدلال، مما يوفر خيارات لمختلف متطلبات الأداء والموارد.
كيف يتم تنظيم مجموعة بيانات COCO وكيف يمكنني استخدامها؟
تنقسم مجموعة بيانات COCO إلى ثلاث مجموعات فرعية:
- تدريب 2017: 118 ألف صورة للتدريب.
- Val2017: 5 آلاف صورة للتحقق من صحتها أثناء التدريب.
- اختبار 2017: 20 ألف صورة لقياس النماذج المدربة. يجب تقديم النتائج إلى خادم تقييم COCO لتقييم الأداء.
يتوفر ملف تهيئة YAML الخاص بمجموعة البيانات على coco.yaml، والذي يحدد المسارات والفئات وتفاصيل مجموعة البيانات.