تخطي إلى المحتوى

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

مجموعة بيانات Argoverse عبارة عن مجموعة من البيانات المصممة لدعم البحث في مهام القيادة الذاتية، مثل التتبع ثلاثي الأبعاد والتنبؤ بالحركة وتقدير العمق المجسم. توفر مجموعة البيانات، التي طورتها Argo AI، مجموعة واسعة من بيانات الاستشعار عالية الجودة، بما في ذلك الصور عالية الدقة وسحب نقاط LiDAR وبيانات الخرائط.

ملاحظة

مجموعة بيانات Argoverse *.zip تمت إزالة الملف المطلوب للتدريب من Amazon S3 بعد إغلاق Argo AI بواسطة Ford، لكننا أتحناه للتنزيل اليدوي على Google Drive.

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

  • تحتوي Argoverse على أكثر من 290 ألف مسار كائن ثلاثي الأبعاد مُصنف و 5 ملايين مثيل للكائنات عبر 1263 مشهدًا متميزًا.
  • تتضمن مجموعة البيانات صورًا عالية الدقة من الكاميرا، وسحب نقاط LiDAR، وخرائط HD مشروحة بشكل غني.
  • تتضمن التعليقات التوضيحية مربعات إحاطة ثلاثية الأبعاد للكائنات ومسارات الكائنات ومعلومات المسار.
  • توفر Argoverse مجموعات فرعية متعددة لمهام مختلفة، مثل التتبع ثلاثي الأبعاد والتنبؤ بالحركة وتقدير العمق المجسم.

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

تم تنظيم مجموعة بيانات Argoverse في ثلاث مجموعات فرعية رئيسية:

  1. تتبع Argoverse ثلاثي الأبعاد: تحتوي هذه المجموعة الفرعية على 113 مشهدًا مع أكثر من 290 ألف مسار كائن ثلاثي الأبعاد مُصنف، مع التركيز على مهام تتبع الكائنات ثلاثية الأبعاد. وهي تتضمن سحب نقاط LiDAR وصور الكاميرا ومعلومات معايرة المستشعر.
  2. توقع حركة Argoverse: تتكون هذه المجموعة الفرعية من 324 ألف مسار لمركبة تم جمعها من 60 ساعة من بيانات القيادة، وهي مناسبة لمهام توقع الحركة.
  3. تقدير عمق Argoverse Stereo: تم تصميم هذه المجموعة الفرعية لمهام تقدير العمق المجسم وتتضمن أكثر من 10 آلاف زوج من الصور المجسمة مع سحب نقاط LiDAR المقابلة لتقدير العمق الحقيقي.

التطبيقات

تُستخدم مجموعة بيانات Argoverse على نطاق واسع لتدريب وتقييم نماذج التعلم العميق في مهام القيادة الذاتية مثل تتبع الكائنات ثلاثية الأبعاد، والتنبؤ بالحركة، وتقدير العمق المجسم. إن مجموعة البيانات المتنوعة من بيانات الاستشعار، وتعليقات الكائنات، ومعلومات الخريطة تجعلها مورداً قيماً للباحثين والممارسين في مجال القيادة الذاتية.

ملف 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) https://www.cs.cmu.edu/~mengtial/proj/streaming/ by Argo AI
# 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 tqdm import tqdm
  from ultralytics.utils.downloads import download

  def argoverse2yolo(set):
      """Convert Argoverse dataset annotations to YOLO format for object detection tasks."""
      labels = {}
      a = json.load(open(set, "rb"))
      for annot in tqdm(a["annotations"], desc=f"Converting {set} to YOLOv5 format..."):
          img_id = annot["image_id"]
          img_name = a["images"][img_id]["name"]
          img_label_name = f"{img_name[:-3]}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 = set.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.us-east-2.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

الاستخدام

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

مثال على التدريب

from ultralytics import YOLO

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

# Train the model
results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=Argoverse.yaml model=yolo11n.pt epochs=100 imgsz=640

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

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

نموذج صورة من مجموعة البيانات

  • تتبع Argoverse ثلاثي الأبعاد: تُظهر هذه الصورة مثالاً لتتبع الأجسام ثلاثية الأبعاد، حيث يتم وضع علامات على الأجسام بصناديق محيطة ثلاثية الأبعاد. توفر مجموعة البيانات سحب نقاط LiDAR وصور الكاميرا لتسهيل تطوير نماذج لهذه المهمة.

يعرض المثال تنوع وتعقيد البيانات في مجموعة بيانات Argoverse ويسلط الضوء على أهمية بيانات المستشعر عالية الجودة لمهام القيادة الذاتية.

الاقتباسات والإقرارات

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

@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}
}

نود أن نعرب عن تقديرنا لـ Argo AI لإنشاء وصيانة مجموعة بيانات Argoverse كمورد قيم لمجتمع أبحاث القيادة الذاتية. لمزيد من المعلومات حول مجموعة بيانات Argoverse ومنشئيها، تفضل بزيارة موقع مجموعة بيانات Argoverse.

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

ما هي مجموعة بيانات Argoverse وما هي ميزاتها الرئيسية؟

تدعم مجموعة بيانات Argoverse، التي طورتها Argo AI، أبحاث القيادة الذاتية. وهي تتضمن أكثر من 290 ألف مسار كائن ثلاثي الأبعاد مُصنف و 5 ملايين مثيل كائن عبر 1263 مشهدًا متميزًا. توفر مجموعة البيانات صورًا عالية الدقة للكاميرا وسحب نقاط LiDAR وخرائط HD مشروحة، مما يجعلها ذات قيمة لمهام مثل التتبع ثلاثي الأبعاد والتنبؤ بالحركة وتقدير العمق المجسم.

كيف يمكنني تدريب نموذج Ultralytics YOLO باستخدام مجموعة بيانات Argoverse؟

لتدريب نموذج YOLO11 باستخدام مجموعة بيانات Argoverse، استخدم ملف تكوين YAML المتوفر والكود التالي:

مثال على التدريب

from ultralytics import YOLO

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

# Train the model
results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=Argoverse.yaml model=yolo11n.pt epochs=100 imgsz=640

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

ما هي أنواع البيانات والتعليقات التوضيحية المتوفرة في مجموعة بيانات Argoverse؟

تتضمن مجموعة بيانات Argoverse أنواعًا مختلفة من بيانات المستشعر مثل صور كاميرا عالية الدقة وسحب نقاط LiDAR وبيانات خرائط HD. تتضمن التعليقات التوضيحية مربعات إحاطة ثلاثية الأبعاد ومسارات الكائنات ومعلومات المسار. هذه التعليقات التوضيحية الشاملة ضرورية لتدريب النموذج بدقة في مهام مثل تتبع الكائنات ثلاثية الأبعاد والتنبؤ بالحركة وتقدير العمق المجسم.

كيف يتم تنظيم مجموعة بيانات Argoverse؟

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

  1. Argoverse 3D Tracking: تحتوي على 113 مشهدًا مع أكثر من 290 ألف مسار كائن ثلاثي الأبعاد مُصنَّف، مع التركيز على مهام تتبع الكائنات ثلاثية الأبعاد. وهي تتضمن سحب نقاط LiDAR وصور الكاميرا ومعلومات معايرة المستشعر.
  2. Argoverse Motion Forecasting (توقع حركة Argoverse): تتكون من 324 ألف مسار للمركبات تم جمعها من 60 ساعة من بيانات القيادة، وهي مناسبة لمهام توقع الحركة.
  3. Argoverse Stereo Depth Estimation (تقدير عمق Argoverse المجسم): تتضمن أكثر من 10 آلاف زوج من الصور المجسمة مع سحب نقاط LiDAR المقابلة لتقدير العمق الحقيقي.

أين يمكنني تنزيل مجموعة بيانات Argoverse الآن بعد إزالتها من Amazon S3؟

مجموعة بيانات Argoverse *.zip ، الذي كان متاحًا سابقًا على Amazon S3، يمكن الآن تنزيله يدويًا من Google Drive.

ما هو ملف تكوين YAML المستخدم مع مجموعة بيانات Argoverse؟

يحتوي ملف YAML على مسارات مجموعة البيانات وفئاتها ومعلومات أساسية أخرى. بالنسبة لمجموعة بيانات Argoverse، ملف التكوين، Argoverse.yaml، يمكن العثور عليه على الرابط التالي: Argoverse.yaml.

لمزيد من المعلومات حول تكوينات YAML، راجع دليل مجموعات البيانات الخاص بنا.



📅 تم إنشاؤه منذ عام واحد ✏️ تم التحديث منذ 9 أشهر

تعليقات