Meet YOLO26: next-gen vision AI.

Link to this sectionArgoverse 데이터셋#

Argoverse 데이터셋은 3D 추적, 동작 예측, 스테레오 깊이 추정과 같은 자율 주행 연구를 지원하기 위해 설계된 데이터 모음입니다. Argo AI가 개발한 이 데이터셋은 고해상도 이미지, LiDAR 포인트 클라우드, 지도 데이터를 포함한 다양한 고품질 센서 데이터를 제공합니다.

참고

학습에 필요한 Argoverse 데이터셋 *.zip 파일은 Ford의 Argo AI 운영 중단 이후 Amazon S3에서 제거되었으나, 현재 Google Drive에서 수동으로 다운로드할 수 있도록 제공하고 있습니다.

Link to this section주요 특징#

  • Argoverse는 1,263개의 서로 다른 장면에서 29만 개 이상의 레이블이 지정된 3D 객체 트랙과 5백만 개의 객체 인스턴스를 포함하고 있습니다.
  • 이 데이터셋에는 고해상도 카메라 이미지, LiDAR 포인트 클라우드, 상세하게 주석이 달린 HD 지도가 포함되어 있습니다.
  • 주석에는 객체에 대한 3D 바운딩 박스, 객체 트랙 및 궤적 정보가 포함됩니다.
  • Argoverse는 3D 추적, 동작 예측, 스테레오 깊이 추정과 같은 다양한 작업을 위한 여러 하위 세트를 제공합니다.

Link to this section데이터셋 구조#

Argoverse 데이터셋은 세 가지 주요 하위 세트로 구성되어 있습니다:

  1. Argoverse 3D Tracking: 이 하위 세트에는 3D 객체 추적 작업에 중점을 둔 113개의 장면과 29만 개 이상의 레이블이 지정된 3D 객체 트랙이 포함되어 있습니다. 여기에는 LiDAR 포인트 클라우드, 카메라 이미지 및 센서 보정 정보가 포함됩니다.
  2. Argoverse Motion Forecasting: 이 하위 세트는 동작 예측 작업에 적합한 60시간의 주행 데이터에서 수집된 32만 4천 개의 차량 궤적으로 구성되어 있습니다.
  3. Argoverse Stereo Depth Estimation: 이 하위 세트는 스테레오 깊이 추적 작업을 위해 설계되었으며, 정답(Ground Truth) 깊이 추정을 위한 대응하는 LiDAR 포인트 클라우드가 포함된 1만 개 이상의 스테레오 이미지 쌍을 제공합니다.

Link to this section응용 분야#

Argoverse 데이터셋은 3D 객체 추적, 동작 예측, 스테레오 깊이 추정과 같은 자율 주행 작업에서 딥러닝 모델을 학습하고 평가하는 데 널리 사용됩니다. 데이터셋의 다양한 센서 데이터, 객체 주석 및 지도 정보는 자율 주행 분야의 연구자와 실무자들에게 귀중한 자산입니다.

Link to this section데이터셋 YAML#

데이터셋 구성을 정의하기 위해 YAML(Yet Another Markup Language) 파일이 사용됩니다. 이 파일에는 데이터셋 경로, 클래스 및 기타 관련 정보가 포함되어 있습니다. 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

Link to this section사용법#

Argoverse 데이터셋에서 640 이미지 크기로 100 에포크 동안 YOLO26n 모델을 학습하려면 다음 코드 조각을 사용할 수 있습니다. 사용 가능한 인수의 전체 목록은 모델 학습 페이지를 참조하십시오.

훈련 예제
from ultralytics import YOLO

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

# Train the model
results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)

Link to this section샘플 데이터 및 주석#

Argoverse 데이터셋에는 카메라 이미지, LiDAR 포인트 클라우드, HD 지도 정보를 포함한 다양한 센서 데이터 세트가 포함되어 있어 자율 주행 작업에 풍부한 컨텍스트를 제공합니다. 다음은 데이터셋에서 제공하는 데이터의 예시와 그에 대응하는 주석입니다:

차량 주석이 포함된 Argoverse 데이터셋 3D 추적 샘플

  • Argoverse 3D Tracking: 이 이미지는 객체에 3D 바운딩 박스가 주석으로 표시된 3D 객체 추적 예시를 보여줍니다. 이 데이터셋은 이 작업을 위한 모델 개발을 원활하게 하기 위해 LiDAR 포인트 클라우드와 카메라 이미지를 제공합니다.

이 예시는 Argoverse 데이터셋에 포함된 데이터의 다양성과 복잡성을 보여주며, 자율 주행 작업을 위한 고품질 센서 데이터의 중요성을 강조합니다.

Link to this section인용 및 감사의 글#

연구 또는 개발 작업에 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}
}

자율 주행 연구 커뮤니티를 위한 귀중한 자원으로서 Argoverse 데이터셋을 생성하고 유지 관리해 준 Argo AI에 감사를 표합니다. Argoverse 데이터셋과 제작자에 대한 자세한 내용은 Argoverse 데이터셋 웹사이트를 방문하십시오.

Link to this sectionFAQ#

Link to this sectionArgoverse 데이터셋이란 무엇이며 주요 특징은 무엇입니까?#

Argo AI가 개발한 Argoverse 데이터셋은 자율 주행 연구를 지원합니다. 이 데이터셋은 1,263개의 서로 다른 장면에서 29만 개 이상의 레이블이 지정된 3D 객체 트랙과 5백만 개의 객체 인스턴스를 포함합니다. 이 데이터셋은 고해상도 카메라 이미지, LiDAR 포인트 클라우드, 주석이 달린 HD 지도를 제공하여 3D 추적, 동작 예측 및 스테레오 깊이 추정과 같은 작업에 매우 유용합니다.

Link to this sectionArgoverse 데이터셋을 사용하여 Ultralytics YOLO 모델을 어떻게 학습할 수 있습니까?#

Argoverse 데이터셋으로 YOLO26 모델을 학습하려면 제공된 YAML 구성 파일과 다음 코드를 사용하십시오:

훈련 예제
from ultralytics import YOLO

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

# Train the model
results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)

인수에 대한 자세한 설명은 모델 학습 페이지를 참조하십시오.

Link to this sectionArgoverse 데이터셋에서는 어떤 유형의 데이터와 주석을 사용할 수 있습니까?#

Argoverse 데이터셋에는 고해상도 카메라 이미지, LiDAR 포인트 클라우드, HD 지도 데이터와 같은 다양한 센서 데이터 유형이 포함되어 있습니다. 주석에는 3D 바운딩 박스, 객체 트랙 및 궤적 정보가 포함됩니다. 이러한 포괄적인 주석은 3D 객체 추적, 동작 예측 및 스테레오 깊이 추정과 같은 작업에서 정확한 모델 학습을 위해 필수적입니다.

Link to this sectionArgoverse 데이터셋은 어떻게 구성되어 있습니까?#

데이터셋은 세 가지 주요 하위 세트로 나뉩니다:

  1. Argoverse 3D Tracking: 3D 객체 추적 작업에 중점을 둔 113개의 장면과 29만 개 이상의 레이블이 지정된 3D 객체 트랙을 포함합니다. 여기에는 LiDAR 포인트 클라우드, 카메라 이미지 및 센서 보정 정보가 포함됩니다.
  2. Argoverse Motion Forecasting: 동작 예측 작업에 적합한 60시간의 주행 데이터에서 수집된 32만 4천 개의 차량 궤적으로 구성되어 있습니다.
  3. Argoverse Stereo Depth Estimation: 정답(Ground Truth) 깊이 추정을 위한 대응하는 LiDAR 포인트 클라우드가 포함된 1만 개 이상의 스테레오 이미지 쌍을 포함합니다.

Link to this sectionAmazon S3에서 제거된 Argoverse 데이터셋은 현재 어디에서 다운로드할 수 있습니까?#

이전에 Amazon S3에서 제공되었던 Argoverse 데이터셋 *.zip 파일은 이제 Google Drive에서 수동으로 다운로드할 수 있습니다.

Link to this sectionArgoverse 데이터셋에서 YAML 구성 파일은 어떤 용도로 사용됩니까?#

YAML 파일에는 데이터셋 경로, 클래스 및 기타 필수 정보가 포함되어 있습니다. Argoverse 데이터셋의 구성 파일인 Argoverse.yaml은 다음 링크에서 찾을 수 있습니다: Argoverse.yaml.

YAML 구성에 대한 자세한 내용은 데이터셋 가이드를 참조하십시오.

댓글