Ultralytics YOLO27:

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

مجموعة بيانات Argoverse من Ultralytics (Argoverse-HD) هي مجموعة بيانات ثنائية الأبعاد لـاكتشاف الكائنات، تضم 54,446 صورة موسومة للقيادة الذاتية — 39,384 للتدريب و15,062 للتحقق — ضمن 8 فئات: شخص ودراجة وهواء وسيارة أجرة وحافلة وشاحنة وإشارة مرور وإشارة توقف. التُقطت الصور بكاميرا أمامية وسطية حلقية مركّبة على مركبة، وتأتي التعليقات التوضيحية من مشروع الإدراك المتدفق في جامعة كارنيغي ميلون، المبني على بيانات القيادة Argoverse 1.1 من Argo AI. وهي معيار كبير من العالم الواقعي لتدريب نماذج الرؤية الحاسوبية على اكتشاف عناصر الطريق في سيناريوهات القيادة الذاتية.

استكشف Argoverse-HD على منصة Ultralytics لمعاينة عينات مشروحة، وفحص إحصاءات مجموعة البيانات، واستنساخها للتدريب.

يلزم التنزيل يدويًا

أُزيل ملف *.zip الخاص بـ Argoverse-HD (~31.5 GB)، اللازم للتدريب، من Amazon S3 بعد إغلاق Ford لشركة Argo AI. وهو متاح للتنزيل اليدوي من Google Drive — لن يعمل التنزيل التلقائي، لذا نزّل الأرشيف واستخرجه إلى مجلد Argoverse في دليل مجموعات البيانات قبل التدريب.

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

  • 8 فئات لاكتشاف الكائنات: شخص ودراجة وسيارة ودراجة نارية وحافلة وشاحنة وإشارة مرور وإشارة توقف.
  • 54,446 صورة موسومة — 39,384 للتدريب و15,062 للتحقق — بالإضافة إلى مجموعة اختبار غير موسومة مخصصة لـتحدي eval.ai.
  • ~31.5 GB من إطارات عالية الدقة ملتقطة بكاميرا أمامية وسطية حلقية في مشاهد قيادة ذاتية حضرية.
  • تُحوّل التعليقات التوضيحية تلقائيًا إلى تنسيق YOLO عند الاستخدام الأول، لذا تُدرّب مجموعة البيانات مباشرةً باستخدام نماذج Ultralytics YOLO لاكتشاف الكائنات.

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

تُقسَّم مجموعة بيانات Argoverse-HD إلى ثلاث مجموعات فرعية محددة مسبقًا، يحددها الإعداد Argoverse.yaml:

المجموعة الفرعيةالصورالتسميات
التدريب39,384نعم
التحقق15,062نعم
الاختبار—بلا تسميات (تحدي eval.ai)

تشترك جميع الصور في فئات الكائنات الثماني نفسها (الفهارس من 0 إلى 7): شخص، دراجة، سيارة، دراجة نارية، حافلة، شاحنة، إشارة مرور، وإشارة قف.

التحويل التلقائي إلى YOLO

بعد التنزيل اليدوي، تحوّل Ultralytics التعليقات التوضيحية الأصلية لمجموعة Argoverse-HD تلقائيًا إلى تسميات كشف YOLO عند التدريب لأول مرة، لذا لا حاجة إلى المعالجة المسبقة اليدوية.

التطبيقات#

تدعم مجموعة بيانات Argoverse-HD مجموعة من تطبيقات كشف الكائنات في القيادة الذاتية:

  • الإدراك في السيارات ذاتية القيادة — اكتشاف المركبات والمشاة وراكبي الدراجات باستخدام كاميرا أمامية لدعم توجيه المركبات ذاتية القيادة.
  • أنظمة مساعدة السائق المتقدمة (ADAS) — التعرّف على إشارات المرور وإشارات قف لإصدار تنبيهات للسائق في الوقت الفعلي.
  • مراقبة حركة المرور — إحصاء مستخدمي الطريق وتتبعهم في المشاهد الحضرية لإجراء تحليلات المدن الذكية.
  • البحث والنمذجة الأولية — معيار مرجعي كبير من العالم الحقيقي لتعلّم تدريب النماذج والتنبؤ باستخدام بيانات القيادة.

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

يحدد ملف YAML إعدادات مجموعة البيانات، بما في ذلك المسارات والفئات والتفاصيل الأخرى ذات الصلة. وبالنسبة إلى مجموعة بيانات Argoverse، تتم صيانة الملف Argoverse.yaml في https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/Argoverse.yaml.

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

# Argoverse-HD dataset (ring-front-center camera) by Argo AI: https://www.cs.cmu.edu/~mengtial/proj/streaming/
# Documentation: https://docs.ultralytics.com/datasets/detect/argoverse
# Example usage: yolo train data=Argoverse.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── Argoverse ← downloads here (31.5 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: Argoverse # dataset root dir
train: Argoverse-1.1/images/train/ # train images (relative to 'path') 39384 images
val: Argoverse-1.1/images/val/ # val images (relative to 'path') 15062 images
test: Argoverse-1.1/images/test/ # test images (optional) https://eval.ai/web/challenges/challenge-page/800/overview

# Classes
names:
  0: person
  1: bicycle
  2: car
  3: motorcycle
  4: bus
  5: truck
  6: traffic_light
  7: stop_sign

# Download script/URL (optional) ---------------------------------------------------------------------------------------
download: |
  import json
  from pathlib import Path

  from ultralytics.utils import TQDM
  from ultralytics.utils.downloads import download

  def argoverse2yolo(annotation_file):
      """Convert Argoverse dataset annotations to YOLO format for object detection tasks."""
      labels = {}
      with open(annotation_file, encoding="utf-8") as f:
          a = json.load(f)
      for annot in TQDM(a["annotations"], desc=f"Converting {annotation_file} to YOLO format..."):
          img_id = annot["image_id"]
          img_name = a["images"][img_id]["name"]
          img_label_name = f"{Path(img_name).stem}.txt"

          cls = annot["category_id"]  # instance class id
          x_center, y_center, width, height = annot["bbox"]
          x_center = (x_center + width / 2) / 1920.0  # offset and scale
          y_center = (y_center + height / 2) / 1200.0  # offset and scale
          width /= 1920.0  # scale
          height /= 1200.0  # scale

          img_dir = annotation_file.parents[2] / "Argoverse-1.1" / "labels" / a["seq_dirs"][a["images"][annot["image_id"]]["sid"]]
          if not img_dir.exists():
              img_dir.mkdir(parents=True, exist_ok=True)

          k = str(img_dir / img_label_name)
          if k not in labels:
              labels[k] = []
          labels[k].append(f"{cls} {x_center} {y_center} {width} {height}\n")

      for k in labels:
          with open(k, "w", encoding="utf-8") as f:
              f.writelines(labels[k])

  # Download 'https://argoverse-hd.s3.amazonaws.com/Argoverse-HD-Full.zip' (deprecated S3 link)
  dir = Path(yaml["path"])  # dataset root dir
  urls = ["https://drive.google.com/file/d/1st9qW3BeIwQsnR0t8mRpvbsSWIo16ACi/view?usp=drive_link"]
  print("\n\nWARNING: Argoverse dataset MUST be downloaded manually, autodownload will NOT work.")
  print(f"WARNING: Manually download Argoverse dataset '{urls[0]}' to '{dir}' and re-run your command.\n\n")
  # download(urls, dir=dir)

  # Convert
  annotations_dir = "Argoverse-HD/annotations/"
  (dir / "Argoverse-1.1" / "tracking").rename(dir / "Argoverse-1.1" / "images")  # rename 'tracking' to 'images'
  for d in "train.json", "val.json":
      argoverse2yolo(dir / annotations_dir / d)  # convert Argoverse annotations to YOLO labels

الاستخدام#

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

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

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

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

بعد التدريب، شغّل الاستدلال باستخدام النموذج المحسّن ضبطه على صور أو مقاطع فيديو جديدة للقيادة:

مثال على الاستدلال
from ultralytics import YOLO

# ⁨تحميل نموذج⁩
model = YOLO("path/to/best.pt")  # ⁨حمّل نموذج Argoverse محسّن الضبط⁩

# ⁨الاستدلال باستخدام النموذج⁩
results = model.predict("path/to/driving-scene.jpg")

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

تحتوي مجموعة بيانات Argoverse-HD على صور قيادة عالية الدقة التُقطت بكاميرا مركزية أمامية حلقية، مع تعليقات توضيحية لمربعات إحاطة ثنائية الأبعاد لفئات الكائنات الثماني. فيما يلي صورة نموذجية من مجموعة البيانات مع التعليقات التوضيحية المقابلة لها:

مشهد قيادة ذاتية من Argoverse-HD مع كائنات الطريق الموضحة

  • مشهد قيادة موضح: تعرض هذه الصورة كائنات على الطريق — مثل المركبات والمشاة — موسومة بمربعات إحاطة ثنائية الأبعاد، وهي التنسيق الذي تتعلم نماذج YOLO التنبؤ به أثناء التدريب.

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

تأتي تعليقات الكشف ثنائية الأبعاد التوضيحية لمجموعة Argoverse-HD المستخدمة في مجموعة البيانات هذه من أعمال الإدراك المتدفق في جامعة كارنيغي ميلون. يُرجى الاستشهاد بما يلي عند استخدام مجموعة البيانات في أبحاثكم أو أعمال التطوير:

اقتباس
@inproceedings{li2020towards,
  title={Towards Streaming Perception},
  author={Li, Mengtian and Wang, Yu-Xiong and Ramanan, Deva},
  booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
  pages={473--488},
  year={2020}
}

@inproceedings{chang2019argoverse,
  title={Argoverse: 3D Tracking and Forecasting with Rich Maps},
  author={Chang, Ming-Fang and Lambert, John and Sangkloy, Patsorn and Singh, Jagjeet and Bak, Slawomir and Hartnett, Andrew and Wang, Dequan and Carr, Peter and Lucey, Simon and Ramanan, Deva and others},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  pages={8748--8757},
  year={2019}
}

نتوجه بالشكر إلى جامعة كارنيغي ميلون على تعليقات الكشف التوضيحية لمجموعة Argoverse-HD، وإلى Argo AI لإنشاء مجموعة بيانات Argoverse الأصلية بوصفها موردًا قيّمًا لمجتمع أبحاث القيادة الذاتية.

الأسئلة الشائعة#

  • مجموعة بيانات Argoverse من Ultralytics (Argoverse-HD) هي مجموعة كشف كائنات ثنائية الأبعاد تضم 54,446 صورة للقيادة الذاتية موزعة على 8 فئات — شخص، دراجة، سيارة، دراجة نارية، حافلة، شاحنة، إشارة مرور، وإشارة قف. وتُستخدم لتدريب النماذج وتقييمها في اكتشاف كائنات الطريق من كاميرا أمامية في المركبة، مما يدعم أبحاث الإدراك في السيارات ذاتية القيادة وأنظمة ADAS ومراقبة حركة المرور.

  • تضم مجموعة بيانات Argoverse-HD 8 فئات (شخص، دراجة، سيارة، دراجة نارية، حافلة، شاحنة، إشارة مرور، وإشارة قف) و54,446 صورة موسومة — 39,384 صورة للتدريب و15,062 صورة للتحقق — بالإضافة إلى مجموعة اختبار بلا تسميات مخصصة لتحدي eval.ai.

  • في Ultralytics، هي مجموعة بيانات لكشف الكائنات ثنائي الأبعاد (إطارات كاميرا Argoverse-HD مع مربعات إحاطة ثنائية الأبعاد)، وليست مجموعة أبحاث التتبع ثلاثي الأبعاد أو التنبؤ بالحركة أو LiDAR ضمن برنامج Argoverse الأوسع. ويمكنك تدريبها باستخدام نموذج كشف قياسي مثل yolo26n.pt.

  • نزّل مجموعة البيانات يدويًا أولًا (انظر أدناه)، ثم ابدأ التدريب باستخدام ملف الإعداد Argoverse.yaml:

    مثال
    from ultralytics import YOLO
    
    # ⁨تحميل نموذج⁩
    model = YOLO("yolo26n.pt")  # ⁨تحميل نموذج مدرّب مسبقًا (موصى به للتدريب)⁩
    
    # ⁨تدريب النموذج⁩
    results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)

    للاطلاع على شرح مفصل للوسائط، راجع صفحة التدريب الخاصة بالنموذج.

  • يمكن الآن تنزيل ملف *.zip الخاص بمجموعة Argoverse-HD (~31.5 GB)، الذي كان مستضافًا سابقًا على Amazon S3، يدويًا من Google Drive. لن يعمل التنزيل التلقائي، لذا نزّل الأرشيف واستخرجه في مجلد Argoverse ضمن دليل مجموعات البيانات قبل تشغيل أمر التدريب.

  • نعم. تتيح لك منصة Ultralytics تحميل مجموعات بيانات كبيرة مثل Argoverse-HD وإصدار نسخ منها، ثم تدريب نماذج كشف الكائنات ونشرها سحابيًا دون الحاجة إلى إعداد محلي مكثف. ويمكنك أيضًا استعراض مجموعات البيانات ذات الصلة في نظرة عامة على مجموعات بيانات الكشف.

التعليقات