Ultralytics YOLO27:

مجموعة بيانات COCO8-Multispectral#

مقدمة#

مجموعة بيانات COCO8-Multispectral من Ultralytics هي إصدار متقدم من مجموعة COCO8 الأصلية، صُمم لتسهيل التجارب على نماذج اكتشاف الكائنات متعددة الأطياف. تتألف من الصور الثماني نفسها من مجموعة تدريب COCO لعام 2017—4 صور للتدريب و4 للتحقق—لكن كل صورة محوّلة إلى تنسيق متعدد الأطياف ذي 10 قنوات. ومن خلال تجاوز قنوات RGB القياسية، تتيح COCO8-Multispectral تطوير نماذج قادرة على الاستفادة من معلومات طيفية أغنى وتقييمها.

Multispectral imaging for object detection

تتوافق COCO8-Multispectral بالكامل مع منصة Ultralytics وYOLO26، مما يضمن تكاملاً سلساً مع مسارات عمل الرؤية الحاسوبية.



شاهد: كيفية تدريب Ultralytics YOLO على مجموعات بيانات بتدرج الرمادي ومتعددة الأطياف | رؤية متعددة القنوات 🚀

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

تضم COCO8-Multispectral الصور الثماني نفسها الموجودة في COCO8—4 صور للتدريب و4 للتحقق، موسومة بأسماء فئات COCO الثمانين—لكن كل صورة مخزنة كملف .tiff متعدد الأطياف ذي 10 قنوات، وبتنسيق تسميات YOLO:

coco8-multispectral/
├── images/
│   ├── train/   # 4 images (10-channel .tiff)
│   └── val/     # 4 images (10-channel .tiff)
└── labels/
    ├── train/
    └── val/

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

أُنشئت الصور متعددة الأطياف في COCO8-Multispectral باستيفاء صور RGB الأصلية عبر 10 قنوات طيفية موزعة بالتساوي ضمن الطيف المرئي. وتتضمن العملية ما يلي:

  • تعيين الأطوال الموجية: تعيين أطوال موجية اسمية لقنوات RGB—الأحمر: 650 nm، والأخضر: 510 nm، والأزرق: 475 nm.
  • الاستيفاء: استخدام الاستيفاء الخطي لتقدير قيم البكسلات عند الأطوال الموجية الوسيطة بين 450 nm و700 nm، لينتج عن ذلك 10 قنوات طيفية.
  • الاستقراء: تطبيق الاستقراء الخطي لتقدير القيم خارج نطاق الأطوال الموجية الأصلية لقنوات RGB، بما يضمن تمثيلاً طيفياً كاملاً.

تحاكي هذه الطريقة عملية التصوير متعدد الأطياف، وتوفر مجموعة بيانات أكثر تنوعاً لتدريب النماذج وتقييمها. لمزيد من القراءة عن التصوير متعدد الأطياف، راجع مقالة التصوير متعدد الأطياف في ويكيبيديا.

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

يُضبط إعداد مجموعة بيانات COCO8-Multispectral باستخدام ملف YAML، الذي يحدد مسارات مجموعة البيانات وأسماء الفئات والبيانات الوصفية الأساسية. يمكنك مراجعة الملف الرسمي coco8-multispectral.yaml في مستودع Ultralytics على GitHub.

ultralytics/cfg/datasets/coco8-multispectral.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO8-Multispectral dataset (COCO8 images interpolated across 10 channels in the visual spectrum) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8-multispectral
# Example usage: yolo train data=coco8-multispectral.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-multispectral ← downloads here (20.2 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-multispectral # 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)

# Number of multispectral image channels
channels: 10

# 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-multispectral.zip
ملاحظة

جهّز صور TIFF بترتيب (channel, height, width)، واحفظها بامتداد .tiff أو .tif، وتأكد من أنها uint8 لاستخدامها مع Ultralytics:

import cv2
import numpy as np

# ⁨أنشئ ملف TIFF ذا 10 قنوات واكتبه⁩
image = np.ones((10, 640, 640), dtype=np.uint8)  # ⁨ترتيب CHW⁩
cv2.imwritemulti("example.tiff", image)

# ⁨اقرأ TIFF⁩
success, frames_list = cv2.imreadmulti("example.tiff")
image = np.stack(frames_list, axis=2)
print(image.shape)  # ⁨(640, 640, 10)  ترتيب HWC للتدريب والاستدلال⁩

الاستخدام#

تُنزَّل مجموعة بيانات COCO8-Multispectral (20.2 MB) تلقائيًا عند بدء التدريب للمرة الأولى. لتدريب نموذج YOLO26n على COCO8-Multispectral لمدة 100 حقبة بحجم صورة يبلغ 640، استخدم الأمثلة التالية. للاطلاع على قائمة شاملة بخيارات التدريب، راجع وثائق التدريب في YOLO.

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

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

# ⁨درّب النموذج على COCO8-Multispectral⁩
results = model.train(data="coco8-multispectral.yaml", epochs=100, imgsz=640)

لمزيد من التفاصيل حول اختيار النماذج وأفضل الممارسات، اطّلع على وثائق نماذج Ultralytics YOLO ودليل نصائح تدريب نماذج YOLO.

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

فيما يلي مثال على دفعة تدريب مركّبة باستخدام الفسيفساء من مجموعة بيانات COCO8-Multispectral:

COCO8 multispectral dataset mosaic training batch
  • صورة مركبة بالفسيفساء: تعرض هذه الصورة دفعة تدريبية تُدمج فيها صور متعددة من مجموعة البيانات باستخدام تعزيز البيانات بتقنية الفسيفساء. ويزيد تعزيز البيانات بتقنية الفسيفساء من تنوع الأجسام والمشاهد في كل دفعة، مما يساعد النموذج على التعميم بصورة أفضل على مختلف أحجام الأجسام ونسب العرض إلى الارتفاع والخلفيات.

تكتسب هذه التقنية أهمية خاصة مع مجموعات البيانات الصغيرة مثل COCO8-Multispectral، إذ تزيد إلى أقصى حد من الاستفادة من كل صورة أثناء التدريب.

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

إذا استخدمت مجموعة بيانات 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-Multispectral للاختبار السريع وتصحيح أخطاء نماذج اكتشاف الأجسام متعدد الأطياف. وبما أنها لا تضم سوى 8 صور (4 للتدريب و4 للتحقق)، فهي مثالية للتحقق من مسارات التدريب باستخدام YOLO26 وضمان عمل كل شيء كما هو متوقع قبل التوسع إلى مجموعات بيانات أكبر. للاطلاع على مزيد من مجموعات البيانات لتجربتها، تفضل بزيارة فهرس مجموعات بيانات Ultralytics.

  • توفر البيانات متعددة الأطياف معلومات طيفية إضافية تتجاوز ما توفره صور RGB القياسية، مما يتيح للنماذج التمييز بين الأجسام استنادًا إلى اختلافات طفيفة في الانعكاسية عبر الأطوال الموجية. وقد يعزز ذلك دقة الاكتشاف، لا سيما في السيناريوهات الصعبة. تعرّف على المزيد حول التصوير متعدد الأطياف وتطبيقاته في الرؤية الحاسوبية المتقدمة.

  • نعم، تتوافق COCO8-Multispectral بالكامل مع منصة Ultralytics وجميع نماذج YOLO، بما فيها أحدث إصدار من YOLO26. وهذا يتيح لك دمج مجموعة البيانات بسهولة في مسارات عمل التدريب والتحقق.

  • لفهم أعمق لأساليب تعزيز البيانات، مثل الفسيفساء، وتأثيرها في أداء النموذج، راجع دليل تعزيز البيانات في YOLO ومدونة Ultralytics حول تعزيز البيانات.

  • بالتأكيد! إن صغر حجم COCO8-Multispectral وطبيعتها متعددة الأطياف يجعلانها مثالية لقياس الأداء، وتقديم العروض التعليمية، وإنشاء نماذج أولية لبنى معمارية جديدة للنماذج. لمزيد من مجموعات البيانات المخصصة لقياس الأداء، راجع مجموعة Ultralytics لمجموعات بيانات قياس الأداء.

التعليقات