YOLO Vision 2026:

Tập dữ liệu ARKitScenes Depth#

ARKitScenes là một tập dữ liệu RGB-D trong nhà quy mô lớn trong thế giới thực được thu thập bằng ARKit của Apple trên các thiết bị iPad Pro được trang bị máy quét LiDAR. Đây là tập dữ liệu RGB-D trong nhà lớn nhất trong thế giới thực cùng loại, cung cấp các cảnh trong nhà đa dạng, được thu thập tự nhiên với độ sâu chuẩn xác thực tế cho ước tính độ sâu đơn mắt.

Tính năng chính#

  • Được ghi lại bằng máy quét LiDAR và camera RGB của ARKit trên iPad Pro, tạo ra dữ liệu cảm biến thực (không phải tổng hợp).
  • Bao phủ các cảnh trong nhà đa dạng để phục vụ việc hiểu ngữ cảnh 3D trong nhà.
  • Phạm vi độ sâu ngắn, khoảng 0,5–6 m (độ sâu tối đa trung bình khoảng 2,4 m), đặc trưng của việc ghi lại hình ảnh trong nhà bằng thiết bị cầm tay.
  • Dữ liệu độ sâu ground truth dày đặc từ LiDAR được căn chỉnh với các khung hình RGB.
  • Nguồn dữ liệu thế giới thực đơn lẻ lớn nhất trong tập hợp tiền huấn luyện độ sâu của Ultralytics.

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

Tập dữ liệu độ sâu ARKitScenes được chia thành hai tập hợp con:

  1. Train: 676.080 ảnh với các bản đồ độ sâu đi kèm để huấn luyện.
  2. Val: 21.559 ảnh với các bản đồ độ sâu đi kèm để xác thực trong quá trình huấn luyện model.

Mỗi mẫu bao gồm một ảnh RGB và một bản đồ độ sâu float32 .npy có cặp lưu khoảng cách trên mỗi pixel tính bằng mét, tuân theo định dạng tập dữ liệu độ sâu Ultralytics.

Nhận dữ liệu#

ARKitScenes không có tính năng tự động tải xuống — dữ liệu do Apple phân phối và việc tải xuống yêu cầu chấp nhận các điều khoản cấp phép trong kho lưu trữ ARKitScenes. Hãy nhân bản kho lưu trữ và tải xuống tập con nâng cao độ sâu, kết hợp các khung RGB với độ sâu đã đăng ký:

git clone https://github.com/apple/ARKitScenes && cd ARKitScenes
python3 download_data.py upsampling --split Training --download_dir ./data
python3 download_data.py upsampling --split Validation --download_dir ./data

Các khung độ sâu là các tệp PNG uint16 tính bằng milimét (0 = không hợp lệ) và tên tệp RGB/độ sâu là dấu thời gian chụp không khớp chính xác — hãy ghép nối từng khung độ sâu với khung RGB có dấu thời gian gần nhất. Chuyển đổi tham chiếu sang định dạng tập dữ liệu độ sâu Ultralytics:

from pathlib import Path

import cv2
import numpy as np

src, dst = Path("data/upsampling"), Path("datasets/depth-arkitscenes")
for split, out in (("Training", "train"), ("Validation", "val")):
    (dst / f"images/{out}").mkdir(parents=True, exist_ok=True)
    (dst / f"depth/{out}").mkdir(parents=True, exist_ok=True)
    for video in sorted((src / split).iterdir()):
        rgbs = {float(p.stem.split("_")[-1]): p for p in (video / "lowres_wide").glob("*.png")}
        if not rgbs:
            continue
        for depth_png in sorted((video / "lowres_depth").glob("*.png")):
            t = float(depth_png.stem.split("_")[-1])
            rgb = rgbs[min(rgbs, key=lambda k: abs(k - t))]  # nearest-timestamp RGB frame
            name = f"{video.name}_{depth_png.stem}"
            depth = cv2.imread(str(depth_png), cv2.IMREAD_UNCHANGED).astype(np.float32) / 1000.0  # mm → m
            np.save(dst / f"depth/{out}/{name}.npy", depth)
            cv2.imwrite(str(dst / f"images/{out}/{name}.png"), cv2.imread(str(rgb)))

Vai trò trong YOLO26-Depth#

ARKitScenes là một nguồn huấn luyện trong tập hợp tiền huấn luyện đa tập dữ liệu YOLO26-Depth của Ultralytics với khoảng 2,19 triệu cặp ảnh-độ sâu. Là nguồn dữ liệu thực đơn lẻ lớn nhất trong tập hợp này, nó cung cấp lượng dữ liệu độ sâu LiDAR trong nhà phong phú, giúp củng cố độ chính xác cho model trong môi trường trong nhà ở phạm vi ngắn. Các model kết quả được đánh giá trên các tiêu chuẩn NYU, KITTI, Make3D, ETH3D và iBims-1.

YAML tập dữ liệu#

Một tệp YAML (Yet Another Markup Language) được sử dụng để xác định cấu hình tập dữ liệu. Nó chứa thông tin về đường dẫn, các lớp và các thông tin liên quan khác của tập dữ liệu.

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

# ARKitScenes dataset for monocular depth estimation — real indoor RGB-D from Apple ARKit (iPad Pro LiDAR), depth ~0.5-6 m
# Documentation: https://docs.ultralytics.com/datasets/depth/arkitscenes
# Example usage: yolo depth train data=depth-arkitscenes.yaml model=yolo26n-depth.pt
# No autodownload — obtain the source data (see docs) and arrange it as below.
# parent
# ├── ultralytics
# └── datasets
#     └── depth-arkitscenes
#         ├── images/{train,val}  # RGB images
#         └── depth/{train,val}   # paired *.npy, float32 meters (images/ -> depth/)

path: depth-arkitscenes # dataset root dir (relative to Ultralytics settings 'datasets_dir')
train: images/train # train images (relative to 'path') 676080 images
val: images/val # val images (relative to 'path') 21559 images

nc: 1
names:
  0: depth

channels: 3

Cách sử dụng#

Để huấn luyện mô hình YOLO26n-depth trên tập dữ liệu ARKitScenes với kích thước ảnh là 640, bạn có thể sử dụng các đoạn mã sau. Để có danh sách toàn diện các đối số có sẵn, hãy tham khảo trang Huấn luyện mô hình.

Ví dụ về Training
from ultralytics import YOLO

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

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

Các model đã được tiền huấn luyện#

Họ độ sâu YOLO26 được huấn luyện trên hỗn hợp tiền huấn luyện độ sâu đa tập dữ liệu rộng lớn mà ARKitScenes là một phần trong đó. Các mô hình này tự động tải xuống từ bản phát hành Ultralytics mới nhất, ví dụ YOLO26x-depth từ v8.4.0, và trải rộng trên nhiều kích thước cho các yêu cầu tài nguyên và độ chính xác khác nhau.

Trích dẫn và Ghi nhận#

Nếu bạn sử dụng tập dữ liệu ARKitScenes trong công việ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:

Trích dẫn
@inproceedings{baruch2021arkitscenes,
      title={ARKitScenes: A Diverse Real-World Dataset for 3D Indoor Scene Understanding Using Mobile RGB-D Data},
      author={Baruch, Gilad and Chen, Zhuoyuan and Dehghan, Afshin and Dimry, Tal and Feigin, Yuri and Fu, Peter and Gebauer, Thomas and Joffe, Brandon and Kurz, Daniel and Schwartz, Arik and Shulman, Elad},
      booktitle={Thirty-fifth Conference on Neural Information Processing Systems Datasets and Benchmarks Track},
      year={2021}
}

Chúng tôi xin ghi nhận các tác giả đã tạo ra và duy trì tài nguyên giá trị này cho cộng đồng computer vision.

Những người đóng góp

Bình luận