Ultralytics YOLO27:

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

توفر مجموعة بيانات COCO-Seg أقنعة تجزئة الكائنات الفردية الخاصة بـ COCO (كائنات شائعة في السياق) — 118,287 صورة تدريب و5,000 صورة تحقق، مع أقنعة مضلعية تغطي 80 فئة من الكائنات — بتنسيق تسميات Ultralytics YOLO. وتستخدم الصور الأصلية والتعليقات التوضيحية الأصلية للتجزئة من COCO، بعد تحويلها لتدريب YOLO، ما يجعلها موردًا أساسيًا للباحثين والمطورين العاملين على مهام تجزئة الكائنات الفردية.

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

النموذجالحجم
(بكسل)
mAPالمربعات
50-95(e2e)
mAPالأقنعة
50-95(e2e)
السرعة
CPU ONNX
(مللي ثانية)
السرعة
T4 TensorRT10
(ms)
المعاملات
(M)
FLOPs
(B)
YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.3
YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.5
YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.7
YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0140.1
YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8314.0

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

  • توفر COCO-Seg أقنعة تجزئة الكائنات الفردية لـ 123,287 صورة موسومة من مجموعتي COCO train2017/val2017 (118,287 للتدريب + 5,000 للتحقق)، من إجمالي الإصدار الأوسع من COCO الذي يضم ~330 ألف صورة.
  • تتكون مجموعة البيانات من فئات الكائنات الثمانين نفسها الموجودة في مجموعة بيانات COCO الأصلية.
  • توفر التعليقات التوضيحية أقنعة تجزئة الكائنات الفردية بتنسيق تسميات مضلعات YOLO.
  • توفر COCO-Seg مقاييس mAP وmAR موحدة لتقييم أداء تجزئة الكائنات الفردية، ما يتيح مقارنة أداء النماذج بفاعلية.
  • حجم التنزيل: ~20.3 غيغابايت عند الاستخدام الأول (train2017.zip + val2017.zip + التسميات). لا يُنزّل test2017.zip، حجمه 7 غيغابايت، تلقائيًا، لأن الصور فيه تحجب تسمياتها المرجعية ولا يلزم إلا لإرسال مساهمة test-dev2017.

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

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

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

لإجراء تجارب أصغر نطاقًا، راجع المجموعتين الفرعيتين COCO128-Seg (128 صورة) وCOCO8-Seg (8 صور).

التطبيقات#

تُستخدم COCO-Seg على نطاق واسع لتدريب نماذج التعلم العميق وتقييمها في تجزئة الكائنات، مثل نماذج YOLO. ويجعل العدد الكبير من الصور المشروحة، وتنوع فئات الكائنات، ومقاييس التقييم الموحدة منها موردًا لا غنى عنه لباحثي الرؤية الحاسوبية وممارسيها. كما يمكن استعراض التعليقات التوضيحية الكاملة لـ COCO-Seg وإدارتها على منصة Ultralytics.

ملف YAML لمجموعة البيانات#

يُستخدم ملف YAML لتعريف إعدادات مجموعة البيانات. ويتضمن معلومات عن مسارات مجموعة البيانات وفئاتها وغيرها من المعلومات ذات الصلة. وفي حالة مجموعة بيانات COCO-Seg، يُصان الملف 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)

الاستخدام#

لتدريب نموذج YOLO26n-seg على مجموعة بيانات COCO-Seg لمدة 100 حقبة وبحجم صورة 640، يمكنك استخدام مقتطفات التعليمات البرمجية التالية. للاطلاع على قائمة شاملة بالوسائط المتاحة، راجع صفحة التدريب الخاصة بالنموذج.

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

# ⁨تحميل نموذج⁩
model = YOLO("yolo26n-seg.pt")  # ⁨تحميل نموذج مدرّب مسبقًا (موصى به للتدريب)⁩

# ⁨تدريب النموذج⁩
results = model.train(data="coco.yaml", epochs=100, imgsz=640)

صور وتعليقات توضيحية نموذجية#

تتضمن COCO-Seg الصور المتنوعة وفئات الكائنات والمشاهد المعقدة نفسها الموجودة في COCO، مع توفير أقنعة تجزئة الكائنات بتنسيق تسميات YOLO. فيما يلي بعض الأمثلة على صور من مجموعة البيانات، إلى جانب أقنعة تجزئة الكائنات المقابلة لها:

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

  • الصورة المُركّبة بالفسيفساء: توضح هذه الصورة دفعة تدريب مكوّنة من صور مجموعة البيانات المركّبة بالفسيفساء. يُستخدم التركيب بالفسيفساء أثناء التدريب لدمج عدة صور في صورة واحدة، مما يزيد تنوع الكائنات والمشاهد في كل دفعة تدريب. ويساعد ذلك النموذج على التعميم على أحجام الكائنات ونسب الأبعاد والسياقات المختلفة.

الاستشهادات والشكر والتقدير#

إذا استخدمت مجموعة بيانات COCO-Seg في أبحاثك أو أعمالك التطويرية، فيُرجى الاستشهاد بورقة COCO الأصلية والإشارة إلى امتداد COCO-Seg:

اقتباس
@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-Seg هي حزمة أقنعة تجزئة الكائنات الأصلية لمجموعة COCO (الأجسام الشائعة في السياق) بتنسيق Ultralytics YOLO، للصور نفسها وعددها 118,287 من train2017 و5,000 من val2017. تتضمن التعليقات التوضيحية الأصلية لـ COCO هذه الأقنعة متعددة الأضلاع بالفعل لجميع فئات الكائنات البالغ عددها 80؛ وتحولها COCO-Seg إلى تنسيق تسميات YOLO المستخدم في تدريب تجزئة الكائنات.

  • لتدريب نموذج YOLO26n-seg على مجموعة بيانات COCO-Seg لمدة 100 حقبة وبحجم صورة 640، يمكنك استخدام مقتطفات التعليمات البرمجية التالية. للاطلاع على قائمة مفصلة بوسائط التدريب المتاحة، راجع صفحة التدريب الخاصة بالنموذج.

    مثال على التدريب
    from ultralytics import YOLO
    
    # ⁨تحميل نموذج⁩
    model = YOLO("yolo26n-seg.pt")  # ⁨تحميل نموذج مدرّب مسبقًا (موصى به للتدريب)⁩
    
    # ⁨تدريب النموذج⁩
    results = model.train(data="coco.yaml", epochs=100, imgsz=640)
  • تتضمن مجموعة بيانات COCO-Seg عدة ميزات أساسية:

    • توفر أقنعة تجزئة الكائنات لـ 123,287 صورة معنونة من مجموعتي COCO train2017/val2017 (118,287 للتدريب + 5,000 للتحقق).
    • تُعنون فئات الكائنات الثمانين نفسها الموجودة في COCO الأصلية.
    • توفر أقنعة تجزئة الكائنات بتنسيق تسميات YOLO متعدد الأضلاع.
    • تستخدم مقاييس تقييم موحدة، مثل متوسط الدقة (mAP) ومتوسط الاستدعاء (mAR)، لمهام تجزئة الكائنات.
  • تدعم مجموعة بيانات COCO-Seg عدة نماذج YOLO26 لتجزئة الصور مدرّبة مسبقًا، وتختلف مقاييس أدائها. إليك ملخصًا للنماذج المتاحة وأبرز مقاييسها:

    النموذجالحجم
    (بكسل)
    mAPالمربعات
    50-95(e2e)
    mAPالأقنعة
    50-95(e2e)
    السرعة
    CPU ONNX
    (مللي ثانية)
    السرعة
    T4 TensorRT10
    (ms)
    المعاملات
    (M)
    FLOPs
    (B)
    YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.3
    YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.5
    YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.7
    YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0140.1
    YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8314.0

    تتراوح هذه النماذج من YOLO26n-seg خفيف الوزن إلى YOLO26x-seg الأقوى، وتوفر مفاضلات مختلفة بين السرعة والدقة لتلبية متطلبات التطبيقات المتنوعة. لمزيد من المعلومات حول اختيار النموذج، تفضل بزيارة صفحة نماذج Ultralytics.

  • تُقسَّم مجموعة بيانات COCO-Seg إلى ثلاث مجموعات فرعية لتلبية احتياجات التدريب والتقييم المحددة:

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

    لإجراء تجارب أصغر نطاقًا، يمكنك أيضًا استخدام مجموعة بيانات COCO128-Seg (128 صورة) أو مجموعة بيانات COCO8-Seg، وهي نسخة مصغرة لا تضم سوى 8 صور من مجموعة COCO train 2017.

التعليقات