YOLO Vision 2026:

مجموعة بيانات COCO#

مجموعة بيانات COCO (الأشياء الشائعة في السياق) هي مجموعة بيانات واسعة النطاق لاكتشاف الكائنات، وتجزئتها، وتوليد التسميات التوضيحية. وهي مصممة لتشجيع الأبحاث على مجموعة واسعة من فئات الكائنات، وغالباً ما تُستخدَم لتقييم نماذج الرؤية الحاسوبية. وتعد مجموعة بيانات أساسية للباحثين والمطورين الذين يعملون على مهام اكتشاف الكائنات، والتجزئة، وتقدير الوضعيات.



Watch: Ultralytics COCO Dataset Overview

نماذج COCO المدربة مسبقاً#

النموذجالحجم
(بكسل)
mAPval
50-95
mAPval
50-95(e2e)
السرعة
CPU ONNX
(ms)
السرعة
T4 TensorRT10
(ms)
المعلمات
(M)
FLOPs
(B)
YOLO26n64040.940.138.9 ± 0.71.7 ± 0.02.45.4
YOLO26s64048.647.887.2 ± 0.92.5 ± 0.09.520.7
YOLO26m64053.152.5220.0 ± 1.44.7 ± 0.120.468.2
YOLO26l64055.054.4286.2 ± 2.06.2 ± 0.224.886.4
YOLO26x64057.556.9525.8 ± 4.011.8 ± 0.255.7193.9

الميزات الرئيسية#

  • تحتوي COCO على 330 ألف صورة، منها 200 ألف صورة تحتوي على تعليقات توضيحية لمهام الكشف عن الأشياء والتقسيم والتعليق التوضيحي.
  • تتكون مجموعة البيانات من 80 فئة من الأشياء، بما في ذلك الأشياء الشائعة مثل السيارات والدراجات والحيوانات، بالإضافة إلى فئات أكثر تحديداً مثل المظلات وحقائب اليد والمعدات الرياضية.
  • تتضمن التعليقات التوضيحية صناديق الإحاطة للأشياء وأقنعة التقسيم والتعليقات التوضيحية لكل صورة.
  • توفر COCO مقاييس تقييم قياسية مثل متوسط الدقة (mAP) لمهام اكتشاف الكائنات، ومتوسط الاسترجاع (mAR) لمهام التجزئة، مما يجعلها مناسبة لمقارنة أداء النماذج.

هيكل مجموعة البيانات#

يتم تقسيم مجموعة بيانات COCO إلى ثلاث مجموعات فرعية:

  1. Train2017: 118,287 صورة لتدريب نماذج اكتشاف الكائنات، والتجزئة، وشرح الصور.
  2. Val2017: 5,000 صورة تُستخدم للتحقق من الصحة أثناء تدريب النموذج.
  3. Test2017: 20,288 صورة مخصصة لاختبار المطورين وتُستخدم لتقييم النماذج المدربة. تعليقات الحقيقة الأرضية لهذا الجزء الفرعي غير متاحة للعامة، ويتم إرسال النتائج إلى خادم تقييم COCO لتقييم الأداء.

التطبيقات#

تُستخدم مجموعة بيانات COCO على نطاق واسع لتدريب وتقييم نماذج التعلم العميق في اكتشاف الكائنات (مثل Ultralytics YOLO و Faster 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 🚀 AGPL-3.0 License - https://ultralytics.com/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.3 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: 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 via https://cocodataset.org/#detection-eval

# 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 pathlib import Path

  from ultralytics.utils import ASSETS_URL
  from ultralytics.utils.downloads import download

  # Download labels
  segments = True  # segment or box labels
  dir = Path(yaml["path"])  # dataset root dir
  urls = [ASSETS_URL + ("/coco2017labels-segments.zip" if segments else "/coco2017labels.zip")]  # labels
  download(urls, dir=dir.parent)

  # Download data (test2017.zip excluded: ground truth is withheld, only used for the eval-server test-dev split)
  urls = [
      "http://images.cocodataset.org/zips/train2017.zip",  # 19G, 118k images
      "http://images.cocodataset.org/zips/val2017.zip",  # 1G, 5k images
  ]
  download(urls, dir=dir / "images", threads=3)

الاستخدام#

يتم تنزيل بيانات التدريب والتحقق لـ COCO2017 (20.3 غيغابايت) تلقائياً في أول مرة تبدأ فيها التدريب. لتدريب نموذج YOLO26n على COCO لمدة 100 حقبة بحجم صورة يبلغ 640، يمكنك استخدام مقتطفات التعليمات البرمجية التالية. للحصول على قائمة شاملة بالوسائط المتاحة، راجع صفحة التدريب الخاصة بالنموذج. يمكنك أيضاً تشغيل تدريب COCO في السحابة باستخدام Ultralytics Platform.

مثال على التدريب
from ultralytics import YOLO

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

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

صور وشروحات توضيحية عينة#

تحتوي مجموعة بيانات COCO على مجموعة متنوعة من الصور مع فئات مختلفة من الأشياء ومشاهد معقدة. فيما يلي بعض الأمثلة للصور من مجموعة البيانات، جنباً إلى جنب مع تعليقاتها التوضيحية المقابلة:

دفعة تدريب الفسيفساء لمجموعة بيانات COCO مع اكتشاف الكائنات

  • صورة مجمعة (Mosaiced Image): توضح هذه الصورة دفعة تدريب تتكون من صور مجموعة بيانات مجمعة. الفسيفساء (Mosaicing) هي تقنية تُستخدم أثناء التدريب تدمج صورًا متعددة في صورة واحدة لزيادة تنوع الكائنات والمشاهد داخل كل دفعة تدريب. يساعد هذا في تحسين قدرة النموذج على التعميم على أحجام كائنات ونسب عرض إلى ارتفاع وسياقات مختلفة.

يعرض المثال تنوع وتعقيد الصور في مجموعة بيانات 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 (الأشياء الشائعة في السياق) هي مجموعة بيانات واسعة النطاق تُستخدم لـ اكتشاف الكائنات، والتجزئة، وتوليد التسميات التوضيحية. وهي تحتوي على 330 ألف صورة مع تعليقات تفصيلية لـ 80 فئة من الكائنات، مما يجعلها ضرورية لتقييم وتدريب نماذج الرؤية الحاسوبية. يستخدم الباحثون COCO نظراً لفئاتها المتنوعة ومقاييس التقييم القياسية مثل متوسط الدقة (mAP).

  • لتدريب نموذج YOLO26 باستخدام مجموعة بيانات COCO، يمكنك استخدام مقتطفات الكود التالية:

    مثال على التدريب
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="coco.yaml", epochs=100, imgsz=640)

    راجع صفحة التدريب لمزيد من التفاصيل حول الوسائط المتاحة.

  • تتضمن مجموعة بيانات COCO:

    • 330 ألف صورة، منها 200 ألف مشروحة للكشف عن الأشياء والتقسيم والتعليق التوضيحي.
    • 80 فئة من الأشياء تتراوح من العناصر الشائعة مثل السيارات والحيوانات إلى عناصر محددة مثل حقائب اليد والمعدات الرياضية.
    • مقاييس تقييم موحدة للكشف عن الأشياء (mAP) والتقسيم (متوسط الاستدعاء، mAR).
    • تقنية الموزاييك في دفعات التدريب لتعزيز تعميم النموذج عبر مختلف أحجام الأشياء والسياقات.
  • يمكن تنزيل نماذج YOLO26 المدربة مسبقاً على مجموعة بيانات COCO من الروابط المقدمة في الوثائق. تشمل الأمثلة:

    تختلف هذه النماذج في الحجم وmAP وسرعة الاستدلال، مما يوفر خيارات لمتطلبات أداء وموارد مختلفة.

  • يتم تقسيم مجموعة بيانات COCO إلى ثلاث مجموعات فرعية:

    1. Train2017: 118,287 صورة للتدريب.
    2. Val2017: 5,000 صورة للتحقق من الصحة أثناء التدريب.
    3. Test2017: 20,288 صورة مخصصة لاختبار المطورين لتقييم النماذج المدربة. يجب إرسال النتائج إلى خادم تقييم COCO لتقييم الأداء.

    ملف تكوين YAML الخاص بمجموعة البيانات متاح على coco.yaml، والذي يحدد المسارات، والفئات، وتفاصيل مجموعة البيانات.

التعليقات