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

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

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

النموذجالحجم
(بكسل)
mAPbox
50-95(e2e)
mAPmask
50-95(e2e)
السرعة
CPU ONNX
(ملي ثانية)
السرعة
T4 TensorRT10
(ملي ثانية)
المعلمات
(مليون)
FLOPs
(مليار)
YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.1
YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.2
YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.5
YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0139.8
YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8313.5

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

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

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

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

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

التطبيقات

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

ملف 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.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: 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 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
  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)

الاستخدام

To train a YOLO26n-seg model on the COCO-Seg dataset for 100 epochs with an image size of 640, you can use the following code snippets. For a comprehensive list of available arguments, refer to the model Training page.

مثال على التدريب
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، على مجموعة متنوعة من الصور مع فئات كائنات مختلفة ومشاهد معقدة. ومع ذلك، تقدم COCO-Seg أقنعة تجزئة مثيلات أكثر تفصيلاً لكل كائن في الصور. فيما يلي بعض الأمثلة للصور من مجموعة البيانات، إلى جانب أقنعة تجزئة المثيلات المقابلة لها:

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

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

يعرض المثال تنوع وتعقيد الصور في مجموعة بيانات COCO-Seg وفوائد استخدام التفسيفس أثناء عملية التدريب.

الاقتباسات والشكر

إذا كنت تستخدم مجموعة بيانات 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 الأصلية؟

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

كيف يمكنني تدريب نموذج YOLO26 باستخدام مجموعة بيانات COCO-Seg؟

To train a YOLO26n-seg model on the COCO-Seg dataset for 100 epochs with an image size of 640, you can use the following code snippets. For a detailed list of available arguments, refer to the model Training page.

مثال على التدريب
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-Seg العديد من الميزات الرئيسية:

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

ما هي النماذج المدربة مسبقاً المتاحة لـ COCO-Seg، وما هي مقاييس أدائها؟

تدعم مجموعة بيانات COCO-Seg نماذج تجزئة YOLO26 متعددة مدربة مسبقاً بمقاييس أداء متفاوتة. فيما يلي ملخص للنماذج المتاحة ومقاييسها الرئيسية:

النموذجالحجم
(بكسل)
mAPbox
50-95(e2e)
mAPmask
50-95(e2e)
السرعة
CPU ONNX
(ملي ثانية)
السرعة
T4 TensorRT10
(ملي ثانية)
المعلمات
(مليون)
FLOPs
(مليار)
YOLO26n-seg64039.633.953.3 ± 0.52.1 ± 0.02.79.1
YOLO26s-seg64047.340.0118.4 ± 0.93.3 ± 0.010.434.2
YOLO26m-seg64052.544.1328.2 ± 2.46.7 ± 0.123.6121.5
YOLO26l-seg64054.445.5387.0 ± 3.78.0 ± 0.128.0139.8
YOLO26x-seg64056.547.0787.0 ± 6.816.4 ± 0.162.8313.5

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

كيف يتم هيكلة مجموعة بيانات COCO-Seg وما هي المجموعات الفرعية التي تحتوي عليها؟

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

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

لاحتياجات التجريب الأصغر، قد ترغب أيضاً في استخدام مجموعة بيانات COCO8-seg، وهي نسخة مضغوطة تحتوي على 8 صور فقط من مجموعة COCO train 2017.

التعليقات