Meet YOLO26: next-gen vision AI.

Link to this sectionمجموعة بيانات Roboflow 100#

تعد Roboflow 100، برعاية Intel، مجموعة بيانات قياسية رائدة لـ اكتشاف الكائنات. وهي تتضمن 100 مجموعة بيانات متنوعة. صُمم هذا المعيار خصيصاً لاختبار مدى قدرة نماذج الرؤية الحاسوبية على التكيف، مثل نماذج Ultralytics YOLO، مع مجالات مختلفة، بما في ذلك الرعاية الصحية، والصور الجوية، وألعاب الفيديو.

الترخيص

تقدم Ultralytics خيارين للترخيص لتلبية حالات الاستخدام المختلفة:

  • ترخيص AGPL-3.0: يُعد هذا الترخيص مفتوح المصدر المعتمد من OSI مثالياً للطلاب والمتحمسين، حيث يعزز التعاون المفتوح وتبادل المعرفة. راجع ملف LICENSE لمزيد من التفاصيل، وتفضل بزيارة صفحة ترخيص AGPL-3.0.
  • ترخيص المؤسسات (Enterprise License): للاستخدام في التطوير والإنتاج، يتيح هذا الترخيص التكامل السلس لبرمجيات Ultralytics ونماذج AI في منتجات وخدمات الأعمال، بما في ذلك الأدوات الداخلية، وسير العمل المؤتمت، وعمليات النشر في الإنتاج، متجاوزاً متطلبات المصدر المفتوح لـ AGPL-3.0. للبدء، يرجى الاتصال بنا عبر ترخيص Ultralytics.

Roboflow 100 diverse object detection benchmark

Link to this sectionالميزات الرئيسية#

  • مجالات متنوعة: تتضمن 100 مجموعة بيانات عبر سبعة مجالات متميزة: الجوية، وألعاب الفيديو، والمجهرية، وتحت الماء، والمستندات، والكهرومغناطيسية، والعالم الحقيقي.
  • الحجم: يضم المعيار 224,714 صورة عبر 805 فئات، وهو ما يمثل أكثر من 11,170 ساعة من الجهد في تسمية البيانات.
  • التوحيد القياسي: يتم معالجة جميع الصور وتغيير حجمها إلى 640x640 بكسل لضمان تقييم متسق.
  • تقييم نظيف: يركز على إزالة غموض الفئات وتصفية الفئات غير الممثلة بشكل كافٍ لضمان تقييم نموذج أكثر دقة.
  • التعليقات التوضيحية: تتضمن مربعات الإحاطة للكائنات، وهي مناسبة لـ تدريب وتقييم نماذج اكتشاف الكائنات باستخدام مقاييس مثل mAP.

Link to this sectionهيكل مجموعة البيانات#

تم تنظيم مجموعة بيانات Roboflow 100 في سبع فئات، يحتوي كل منها على مجموعة فريدة من مجموعات البيانات والصور والفئات:

  • الجوية: 7 مجموعات بيانات، 9,683 صورة، 24 فئة.
  • ألعاب الفيديو: 7 مجموعات بيانات، 11,579 صورة، 88 فئة.
  • المجهرية: 11 مجموعة بيانات، 13,378 صورة، 28 فئة.
  • تحت الماء: 5 مجموعات بيانات، 18,003 صورة، 39 فئة.
  • المستندات: 8 مجموعات بيانات، 24,813 صورة، 90 فئة.
  • الكهرومغناطيسية: 12 مجموعة بيانات، 36,381 صورة، 41 فئة.
  • العالم الحقيقي: 50 مجموعة بيانات، 110,615 صورة، 495 فئة.

يوفر هذا الهيكل أرضية اختبار متنوعة وشاملة لنماذج اكتشاف الكائنات، مما يعكس مجموعة واسعة من سيناريوهات التطبيقات الواقعية الموجودة في مختلف حلول Ultralytics.

Link to this sectionقياس الأداء#

Dataset benchmarking involves evaluating the performance of machine learning models on specific datasets using standardized metrics. Common metrics include accuracy, mean Average Precision (mAP), and F1-score. You can learn more about these in our YOLO Performance Metrics guide.

نتائج قياس الأداء

يتم تجميع كل مخرج تحت دليل runs/<task>/multitrain/ واحد: يتم ضبط كل مجموعة بيانات بدقة في دليلها الفرعي الخاص (مع ملف results.png الخاص بها)، وتتم كتابة مقاييس كل مجموعة بيانات والمتوسطات في ملف multitrain_results.json إلى جانب مخطط شريطي multitrain_results.png. كما يعيد استدعاء model.train() قاموس {dataset: metrics} للوصول البرمجي.

مثال على قياس الأداء

يقوم البرنامج النصي أدناه بتنزيل مجموعات بيانات Roboflow 100 المدرجة في datasets_links.txt من Roboflow، ثم يقوم بضبط نموذج أساسي واحد (على سبيل المثال، YOLO26n) عبر المجموعة بأكملها في استدعاء واحد لـ model.train(). تمرير قائمة مجموعات البيانات يقوم بضبط النموذج الأساسي على كل منها على التوالي ويقوم تلقائياً بتصور النتائج عبر مجموعات البيانات. يلزم وجود مفتاح واجهة برمجة تطبيقات Roboflow مجاني لتنزيل مجموعات البيانات.

import re
from pathlib import Path

from ultralytics import YOLO
from ultralytics.utils import ASSETS_URL, YAML
from ultralytics.utils.checks import check_requirements
from ultralytics.utils.downloads import safe_download

# Download the RF100 datasets from Roboflow (requires a free Roboflow API key)
check_requirements("roboflow")
from roboflow import Roboflow

rf = Roboflow(api_key="YOUR_ROBOFLOW_API_KEY")
safe_download(f"{ASSETS_URL}/datasets_links.txt")  # list of RF100 dataset links

datasets = []
for line in Path("datasets_links.txt").read_text().splitlines():
    try:
        _, _url, workspace, project, version = re.split("/+", line.strip())
        location = f"rf-100/{project}-{version}"
        rf.workspace(workspace).project(project).version(version).download("yolov8", location=location)
        yaml = Path(location) / "data.yaml"
        cfg = YAML.load(yaml)  # point train/val at the downloaded image folders
        cfg["train"], cfg["val"] = "train/images", "valid/images"
        YAML.save(yaml, cfg)
        datasets.append(str(yaml))
    except Exception:
        continue

# Fine-tune one base model across all RF100 datasets and visualize the cross-dataset results
model = YOLO("yolo26n.pt")
results = model.train(data=datasets, epochs=100, imgsz=640)  # {dataset: metrics}

# Per-dataset runs, multitrain_results.json (per-dataset + mean), and multitrain_results.png are saved
# together under runs/detect/multitrain. Read results in-memory or from the JSON for custom post-processing.
for dataset, metrics in results.items():
    if metrics:  # None if that dataset failed to train
        print(f"{dataset}: mAP50-95 = {metrics['metrics/mAP50-95(B)']:.4f}")

Link to this sectionالتطبيقات#

تعد Roboflow 100 لا تقدر بثمن لمختلف التطبيقات المتعلقة بـ الرؤية الحاسوبية و التعلم العميق. يمكن للباحثين والمهندسين الاستفادة من هذا المعيار لـ:

  • تقييم أداء نماذج اكتشاف الكائنات في سياق متعدد المجالات.
  • اختبار قابلية التكيف و المتانة للنماذج مع سيناريوهات العالم الحقيقي بعيداً عن مجموعات بيانات القياس الشائعة مثل COCO أو PASCAL VOC.
  • قياس قدرات نماذج اكتشاف الكائنات عبر مجموعات بيانات متنوعة، بما في ذلك المجالات المتخصصة مثل الرعاية الصحية، والصور الجوية، وألعاب الفيديو.
  • مقارنة أداء النموذج عبر بنيات الشبكات العصبية المختلفة وتقنيات التحسين.
  • Identify domain-specific challenges that may require specialized model training tips or fine-tuning approaches like transfer learning.

لمزيد من الأفكار والإلهام حول التطبيقات الواقعية، استكشف أدلتنا حول المشاريع العملية أو تحقق من منصة Ultralytics لـ تدريب النماذج و النشر المبسط.

Link to this sectionالاستخدام#

تتوفر مجموعة بيانات Roboflow 100، بما في ذلك البيانات الوصفية وروابط التنزيل، على مستودع GitHub الرسمي لـ Roboflow 100. يمكنك الوصول إلى مجموعة البيانات واستخدامها مباشرة من هناك لتلبية احتياجات قياس الأداء الخاصة بك. بمجرد تنزيل مجموعات البيانات وإعدادها كما هو موضح أعلاه، يمكن ضبط نماذج Ultralytics بدقة عبر المجموعة بأكملها في استدعاء واحد لـ model.train() عن طريق تمرير قائمة ملفات YAML الخاصة بمجموعات البيانات.

Link to this sectionعينة من البيانات والتعليقات#

تتكون Roboflow 100 من مجموعات بيانات ذات صور متنوعة ملتقطة من زوايا ومجالات مختلفة. أدناه أمثلة على الصور المعلقة المدرجة في معيار RF100، والتي تعرض تنوع الكائنات والمشاهد. يمكن لتقنيات مثل تعزيز البيانات أن تعزز التنوع بشكل أكبر أثناء التدريب.

Roboflow 100 sample images with annotations

يمثل التنوع الذي يظهر في معيار Roboflow 100 تقدماً كبيراً عن المعايير التقليدية، التي غالباً ما تركز على تحسين مقياس واحد ضمن مجال محدود. يساعد هذا النهج الشامل في تطوير نماذج رؤية حاسوبية أكثر متانة وتنوعاً وقادرة على الأداء الجيد عبر مجموعة واسعة من السيناريوهات المختلفة.

Link to this sectionالاقتباسات والشكر#

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

اقتباس
@misc{rf100benchmark,
    Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
    Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
    Year = {2022},
    Eprint = {arXiv:2211.13523},
    url = {https://arxiv.org/abs/2211.13523}
}

نعرب عن امتناننا لفريق Roboflow وجميع المساهمين على جهودهم الكبيرة في إنشاء وصيانة مجموعة بيانات Roboflow 100 كمورد قيم لمجتمع الرؤية الحاسوبية.

إذا كنت مهتماً باستكشاف المزيد من مجموعات البيانات لتعزيز مشاريع اكتشاف الكائنات وتعلم الآلة الخاصة بك، فلا تتردد في زيارة مجموعتنا الشاملة لمجموعات البيانات، والتي تتضمن مجموعة متنوعة من مجموعات بيانات الاكتشاف الأخرى.

Link to this sectionالأسئلة الشائعة#

Link to this sectionما هي مجموعة بيانات Roboflow 100، ولماذا تعتبر مهمة لاكتشاف الكائنات؟#

تعد مجموعة بيانات Roboflow 100 معياراً لنماذج اكتشاف الكائنات. وهي تتألف من 100 مجموعة بيانات متنوعة تغطي مجالات مثل الرعاية الصحية، والصور الجوية، وألعاب الفيديو. تكمن أهميتها في توفير طريقة موحدة لاختبار قابلية تكيف النماذج ومتانتها عبر مجموعة واسعة من سيناريوهات العالم الحقيقي، متجاوزة المعايير التقليدية التي غالباً ما تكون محدودة النطاق.

Link to this sectionما هي المجالات التي تغطيها مجموعة بيانات Roboflow 100؟#

تغطي مجموعة بيانات Roboflow 100 سبعة مجالات متنوعة، مما يوفر تحديات فريدة لنماذج اكتشاف الكائنات:

  1. الجوية: 7 مجموعات بيانات (على سبيل المثال، صور الأقمار الصناعية، مناظر الطائرات بدون طيار).
  2. ألعاب الفيديو: 7 مجموعات بيانات (على سبيل المثال، كائنات من بيئات ألعاب مختلفة).
  3. المجهرية: 11 مجموعة بيانات (على سبيل المثال، خلايا، جسيمات).
  4. تحت الماء: 5 مجموعات بيانات (على سبيل المثال، الحياة البحرية، الكائنات المغمورة).
  5. المستندات: 8 مجموعات بيانات (على سبيل المثال، مناطق النص، عناصر النماذج).
  6. الكهرومغناطيسية: 12 مجموعة بيانات (على سبيل المثال، توقيعات الرادار، تصورات البيانات الطيفية).
  7. العالم الحقيقي: 50 مجموعة بيانات (فئة واسعة تشمل الكائنات اليومية، المشاهد، التجزئة، إلخ).

يجعل هذا التنوع من RF100 مورداً ممتازاً لتقييم قابلية التعميم لنماذج الرؤية الحاسوبية.

Link to this sectionما الذي يجب أن أضمنه عند الاستشهاد بمجموعة بيانات Roboflow 100 في بحثي؟#

عند استخدام مجموعة بيانات Roboflow 100، يرجى الاستشهاد بالورقة البحثية الأصلية لإعطاء الفضل للمبدعين. إليك صيغة الاستشهاد BibTeX الموصى بها:

اقتباس
@misc{rf100benchmark,
    Author = {Floriana Ciaglia and Francesco Saverio Zuppichini and Paul Guerrie and Mark McQuade and Jacob Solawetz},
    Title = {Roboflow 100: A Rich, Multi-Domain Object Detection Benchmark},
    Year = {2022},
    Eprint = {arXiv:2211.13523},
    url = {https://arxiv.org/abs/2211.13523}
}

لمزيد من الاستكشاف، فكر في زيارة مجموعتنا الشاملة لمجموعات البيانات أو تصفح مجموعات بيانات الاكتشاف الأخرى المتوافقة مع نماذج Ultralytics.

التعليقات