Bỏ qua nội dung

Bộ dữ liệu Argoverse

Bộ dữ liệu Argoverse là tập hợp dữ liệu được thiết kế để hỗ trợ nghiên cứu về các nhiệm vụ lái xe tự động, chẳng hạn như theo dõi 3D, dự báo chuyển động và ước tính độ sâu âm thanh nổi. Được phát triển bởi Argo AI, bộ dữ liệu cung cấp nhiều loại dữ liệu cảm biến chất lượng cao, bao gồm hình ảnh có độ phân giải cao, đám mây điểm LiDAR và dữ liệu bản đồ.

Ghi chú

Bộ dữ liệu Argoverse *.zip tệp cần thiết để đào tạo đã bị xóa khỏi Amazon S3 sau khi Argo AI của Ford ngừng hoạt động, nhưng chúng tôi đã cung cấp tệp này để tải xuống thủ công trên Google Lái xe.

Các tính năng chính

  • Argoverse chứa hơn 290.000 đường dẫn vật thể 3D được gắn nhãn và 5 triệu trường hợp vật thể trên 1.263 cảnh riêng biệt.
  • Bộ dữ liệu bao gồm hình ảnh camera có độ phân giải cao, đám mây điểm LiDAR và bản đồ HD có chú thích phong phú.
  • Chú thích bao gồm các hộp giới hạn 3D cho các đối tượng, đường đi của đối tượng và thông tin quỹ đạo.
  • Argoverse cung cấp nhiều tập hợp con cho các tác vụ khác nhau, chẳng hạn như theo dõi 3D, dự báo chuyển động và ước tính độ sâu lập thể.

Cấu trúc tập dữ liệu

Bộ dữ liệu Argoverse được tổ chức thành ba tập hợp con chính:

  1. Argoverse 3D Tracking : Tập hợp con này chứa 113 cảnh với hơn 290K đường theo dõi đối tượng 3D được gắn nhãn, tập trung vào các tác vụ theo dõi đối tượng 3D. Nó bao gồm các đám mây điểm LiDAR, hình ảnh camera và thông tin hiệu chuẩn cảm biến.
  2. Dự báo chuyển động Argoverse : Tập hợp con này bao gồm 324K quỹ đạo xe được thu thập từ 60 giờ dữ liệu lái xe, phù hợp cho các nhiệm vụ dự báo chuyển động.
  3. Ước tính độ sâu lập thể Argoverse : Tập hợp con này được thiết kế cho các tác vụ ước tính độ sâu lập thể và bao gồm hơn 10K cặp ảnh lập thể với các đám mây điểm LiDAR tương ứng để ước tính độ sâu thực tế.

Ứng dụng

Bộ dữ liệu Argoverse được sử dụng rộng rãi để đào tạo và đánh giá các mô hình học sâu trong các nhiệm vụ lái xe tự động như theo dõi vật thể 3D, dự báo chuyển động và ước tính độ sâu lập thể. Bộ dữ liệu đa dạng về dữ liệu cảm biến, chú thích đối tượng và thông tin bản đồ của bộ dữ liệu khiến nó trở thành một nguồn tài nguyên có giá trị cho các nhà nghiên cứu và học viên trong lĩnh vực lái xe tự động.

Bộ dữ liệu YAML

Tệp YAML (Yet Another Markup Language) được sử dụng để xác định cấu hình tập dữ liệu. Tệp này chứa thông tin về đường dẫn, lớp và các thông tin liên quan khác của tập dữ liệu. Đối với trường hợp tập dữ liệu Argoverse, Argoverse.yaml tập tin được duy trì tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/Argoverse.yaml.

ultralytics /cfg/datasets/Argoverse.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 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: ../datasets/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 tqdm import tqdm
  from ultralytics.utils.downloads import download
  from pathlib import Path

  def argoverse2yolo(set):
      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") 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

Cách sử dụng

Để đào tạo mô hình YOLO11n trên tập dữ liệu Argoverse trong 100 kỷ nguyên với kích thước hình ảnh là 640, bạn có thể sử dụng các đoạn mã sau. Để biết danh sách đầy đủ các đối số khả dụng, hãy tham khảo trang Đào tạo mô hình.

Ví dụ về tàu hỏa

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

Dữ liệu mẫu và chú thích

Bộ dữ liệu Argoverse chứa một tập hợp dữ liệu cảm biến đa dạng, bao gồm hình ảnh camera, đám mây điểm LiDAR và thông tin bản đồ HD, cung cấp bối cảnh phong phú cho các nhiệm vụ lái xe tự động. Sau đây là một số ví dụ về dữ liệu từ bộ dữ liệu, cùng với chú thích tương ứng của chúng:

Hình ảnh mẫu của bộ dữ liệu

  • Argoverse 3D Tracking : Hình ảnh này minh họa một ví dụ về theo dõi đối tượng 3D, trong đó các đối tượng được chú thích bằng hộp giới hạn 3D. Bộ dữ liệu cung cấp đám mây điểm LiDAR và hình ảnh camera để tạo điều kiện thuận lợi cho việc phát triển các mô hình cho nhiệm vụ này.

Ví dụ này cho thấy sự đa dạng và phức tạp của dữ liệu trong tập dữ liệu Argoverse và nhấn mạnh tầm quan trọng của dữ liệu cảm biến chất lượng cao đối với các nhiệm vụ lái xe tự động.

Trích dẫn và Lời cảm ơn

Nếu bạn sử dụng bộ dữ liệu Argoverse trong công tác nghiên cứu hoặc phát triển của mình, vui lòng trích dẫn bài báo sau:

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

Chúng tôi muốn cảm ơn Argo AI vì đã tạo ra và duy trì tập dữ liệu Argoverse như một nguồn tài nguyên có giá trị cho cộng đồng nghiên cứu lái xe tự động. Để biết thêm thông tin về tập dữ liệu Argoverse và những người tạo ra nó, hãy truy cập trang web tập dữ liệu Argoverse .

CÂU HỎI THƯỜNG GẶP

Bộ dữ liệu Argoverse là gì và các tính năng chính của nó?

Bộ dữ liệu Argoverse , do Argo AI phát triển, hỗ trợ nghiên cứu lái xe tự động. Nó bao gồm hơn 290K đường đi của vật thể 3D được gắn nhãn và 5 triệu trường hợp vật thể trên 1.263 cảnh riêng biệt. Bộ dữ liệu cung cấp hình ảnh camera có độ phân giải cao, đám mây điểm LiDAR và bản đồ HD có chú thích, khiến nó trở nên có giá trị đối với các tác vụ như theo dõi 3D, dự báo chuyển động và ước tính độ sâu lập thể.

Làm thế nào tôi có thể đào tạo một Ultralytics YOLO mô hình sử dụng tập dữ liệu Argoverse?

Để đào tạo một YOLO11 mô hình với tập dữ liệu Argoverse, hãy sử dụng tệp cấu hình YAML được cung cấp và mã sau:

Ví dụ về tàu hỏa

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

Để biết giải thích chi tiết về các đối số, hãy tham khảo trang Đào tạo mô hình.

Những loại dữ liệu và chú thích nào có sẵn trong tập dữ liệu Argoverse?

Bộ dữ liệu Argoverse bao gồm nhiều loại dữ liệu cảm biến như hình ảnh camera có độ phân giải cao, đám mây điểm LiDAR và dữ liệu bản đồ HD. Chú thích bao gồm hộp giới hạn 3D, đường đi của vật thể và thông tin quỹ đạo. Những chú thích toàn diện này rất cần thiết cho việc đào tạo mô hình chính xác trong các tác vụ như theo dõi vật thể 3D, dự báo chuyển động và ước tính độ sâu lập thể.

Bộ dữ liệu Argoverse được cấu trúc như thế nào?

Bộ dữ liệu được chia thành ba tập hợp con chính:

  1. Argoverse 3D Tracking : Bao gồm 113 cảnh với hơn 290K đường theo dõi đối tượng 3D được gắn nhãn, tập trung vào các tác vụ theo dõi đối tượng 3D. Nó bao gồm các đám mây điểm LiDAR, hình ảnh camera và thông tin hiệu chuẩn cảm biến.
  2. Dự báo chuyển động Argoverse : Bao gồm 324K quỹ đạo xe được thu thập từ 60 giờ dữ liệu lái xe, phù hợp cho các nhiệm vụ dự báo chuyển động.
  3. Ước tính độ sâu hình ảnh lập thể Argoverse : Bao gồm hơn 10.000 cặp ảnh lập thể với các đám mây điểm LiDAR tương ứng để ước tính độ sâu thực tế.

Tôi có thể tải xuống bộ dữ liệu Argoverse ở đâu khi nó đã bị xóa khỏi Amazon S3?

Bộ dữ liệu Argoverse *.zip tập tin, trước đây có sẵn trên Amazon S3, giờ đây có thể được tải xuống thủ công từ Google Lái xe.

Tệp cấu hình YAML được sử dụng để làm gì với tập dữ liệu Argoverse?

Tệp YAML chứa các đường dẫn, lớp và thông tin cần thiết khác của tập dữ liệu. Đối với tập dữ liệu Argoverse, tệp cấu hình, Argoverse.yaml, có thể được tìm thấy tại liên kết sau: Argoverse.yaml.

Để biết thêm thông tin về cấu hình YAML, hãy xem hướng dẫn về tập dữ liệu của chúng tôi.

📅 Được tạo ra cách đây 1 năm ✏️ Đã cập nhật cách đây 2 tháng

Bình luận