Ultralytics YOLO27:

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

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

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

النموذجالحجم
(بكسل)
mAPbox
50-95(e2e)
mAPmask
50-95(e2e)
السرعة
CPU ONNX
(مللي ثانية)
السرعة
T4 TensorRT10
(مللي ثانية)
المعاملات
(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 GB عند الاستخدام الأول (train2017.zip + val2017.zip + التسميات). ولا يتم جلب test2017.zip بحجم 7 GB تلقائيًا، لأن الصور المقابلة تحجب الحقيقة المرجعية ولا تكون مطلوبة إلا لإرسال test-dev2017.

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

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

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

للاحتياجات التجريبية الأصغر، راجع مجموعتي COCO128-Seg الفرعية (128 صورة) وCOCO8-Seg (8 صور).

التطبيقات#

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

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

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

# Train the model
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 الأصلية هذه الأقنعة المضلعة بالفعل لجميع فئات الكائنات الثمانين؛ وتحول COCO-Seg هذه الأقنعة إلى تنسيق تسميات YOLO المستخدم لتدريب تجزئة مثيلات الكائنات.

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

    مثال على التدريب
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-seg.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    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 مُدرَّبة مسبقًا، مع مقاييس أداء متفاوتة. فيما يلي ملخص بالنماذج المتاحة ومقاييسها الرئيسية:

    النموذجالحجم
    (بكسل)
    mAPbox
    50-95(e2e)
    mAPmask
    50-95(e2e)
    السرعة
    CPU ONNX
    (مللي ثانية)
    السرعة
    T4 TensorRT10
    (مللي ثانية)
    المعاملات
    (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 صورة من أصل 40,670 صورة في test2017، مخصصة لاختبار النماذج المدرَّبة وقياس أدائها. تجدر الإشارة إلى أن التعليقات المرجعية لهذه المجموعة الفرعية غير متاحة للعامة، وأن نتائج الأداء تُرسل إلى خادم تقييم COCO لتقييمها.

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

التعليقات