مجموعة بيانات COCO8#
مقدمة#
مجموعة بيانات COCO8 من Ultralytics هي مجموعة بيانات مدمجة وقوية في الوقت نفسه لـاكتشاف الكائنات، وتتكوّن من أول 8 صور من مجموعة COCO train 2017 — 4 للتدريب و4 للتحقق. صُممت مجموعة البيانات هذه خصيصًا للاختبار السريع وتصحيح الأخطاء وإجراء التجارب على نماذج YOLO وخطوط أنابيب التدريب. ويجعل حجمها الصغير إدارتها سهلة للغاية، بينما يضمن تنوعها أداءها كاختبار فعّال للسلامة قبل التوسع إلى مجموعات بيانات أكبر.
Watch: Ultralytics COCO Dataset Overview
بنية مجموعة البيانات#
تتضمن COCO8 أول 8 صور من مجموعة COCO train 2017 — 4 للتدريب و4 للتحقق — وتغطي المجموعة الكاملة المكوّنة من 80 فئة للكائنات في COCO بتنسيق تسميات YOLO:
coco8/
├── images/
│ ├── train/ # 4 images
│ └── val/ # 4 images
└── labels/
├── train/
└── val/استكشف COCO8 على منصة Ultralytics لتصفح كل صورة مع طبقات التعليقات التوضيحية الخاصة بها، وعرض توزيع الفئات وخرائط الحرارة للمربعات المحيطة في علامة التبويب Charts، واستنساخها لتدريب نموذجك الخاص على السحابة.
YAML مجموعة البيانات#
يُحدَّد إعداد مجموعة بيانات COCO8 في ملف YAML، الذي ي especific مسارات مجموعة البيانات وأسماء الفئات وبيانات وصفية أساسية أخرى. يمكنك مراجعة الملف الرسمي coco8.yaml في مستودع Ultralytics على GitHub.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO8 dataset (first 8 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8
# Example usage: yolo train data=coco8.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco8 ← 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 # 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.zipالاستخدام#
تُنزَّل مجموعة بيانات COCO8 (بحجم 1 ميغابايت) تلقائيًا عند بدء التدريب للمرة الأولى. لتدريب نموذج YOLO26n على COCO8 لمدة 100 حقبة وبحجم صورة قدره 640، استخدم الأمثلة التالية. للحصول على قائمة كاملة بخيارات التدريب، راجع وثائق تدريب YOLO.
from ultralytics import YOLO
# Load a pretrained YOLO26n model
model = YOLO("yolo26n.pt")
# Train the model on COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)الصور والتعليقات التوضيحية النموذجية#
فيما يلي مثال على دفعة تدريب مركبة بالفسيفساء من مجموعة بيانات COCO8:
- صورة مركبة بالفسيفساء: توضح هذه الصورة دفعة تدريب تُدمج فيها صور متعددة من مجموعة البيانات باستخدام زيادة البيانات بالفسيفساء. تزيد زيادة البيانات بالفسيفساء من تنوع الكائنات والمشاهد داخل كل دفعة، مما يساعد النموذج على التعميم بصورة أفضل على مختلف أحجام الكائنات ونسب العرض إلى الارتفاع والخلفيات.
تُعد هذه التقنية مفيدة بصفة خاصة لمجموعات البيانات الصغيرة مثل COCO8، إذ تزيد إلى أقصى حد من الاستفادة من كل صورة أثناء التدريب.
الاقتباسات والشكر والتقدير#
إذا استخدمت مجموعة بيانات 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 على إسهاماته المتواصلة في مجتمع الرؤية الحاسوبية.
الأسئلة الشائعة#
صُممت مجموعة بيانات Ultralytics COCO8 للاختبار السريع وتصحيح أخطاء نماذج اكتشاف الكائنات. وبفضل احتوائها على 8 صور فقط (4 للتدريب و4 للتحقق)، فهي مثالية للتحقق من صحة خطوط أنابيب تدريب YOLO والتأكد من أن كل شيء يعمل كما هو متوقع قبل التوسع إلى مجموعات بيانات أكبر. استكشف إعداد COCO8 بصيغة YAML لمزيد من التفاصيل.
يمكنك تدريب نموذج YOLO26 على COCO8 باستخدام Python أو CLI:
مثال على التدريبfrom ultralytics import YOLO # Load a pretrained YOLO26n model model = YOLO("yolo26n.pt") # Train the model on COCO8 results = model.train(data="coco8.yaml", epochs=100, imgsz=640)للحصول على خيارات تدريب إضافية، راجع وثائق تدريب YOLO.
تجمع زيادة البيانات بالفسيفساء، كما تُستخدم في تدريب COCO8، صورًا متعددة في صورة واحدة أثناء كل دفعة. ويزيد ذلك من تنوع الكائنات والخلفيات، مما يساعد نموذج YOLO على التعميم بصورة أفضل على السيناريوهات الجديدة. وتُعد زيادة البيانات بالفسيفساء مفيدة بصفة خاصة لمجموعات البيانات الصغيرة، إذ تزيد إلى أقصى حد من المعلومات المتاحة في كل خطوة تدريب. لمزيد من المعلومات حول ذلك، راجع دليل التدريب.
للتحقق من صحة نموذج YOLO26 بعد تدريبه على COCO8، استخدم أوامر التحقق من صحة النموذج في Python أو CLI. ويقيّم ذلك أداء النموذج باستخدام مقاييس قياسية. للحصول على إرشادات خطوة بخطوة، تفضل بزيارة وثائق التحقق من صحة YOLO.



