Bộ dữ liệu độ sâu ARKitScenes#
ARKitScenes là một bộ dữ liệu RGB-D trong nhà quy mô lớn, được thu thập trong thế giới thực 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à bộ dữ liệu RGB-D trong nhà lớn nhất trong thế giới thực thuộc loại này, cung cấp các cảnh trong nhà đa dạng được thu thập tự nhiên cùng ground truth độ sâu chính xác cho ước lượng độ sâu đơn nhãn.
Tính năng chính#
- Được thu thập bằng máy quét LiDAR và camera RGB của ARKit của Apple trên iPad Pro, tạo ra dữ liệu cảm biến thực (không tổng hợp).
- Bao phủ các cảnh trong nhà đa dạng để nhận thức cảnh trong nhà 3D.
- Phạm vi độ sâu ngắn, xấp xỉ 0,5–6 m (độ sâu tối đa trung vị khoảng 2,4 m), điển hình cho việc thu thập dữ liệu trong nhà bằng thiết bị cầm tay.
- Ground truth độ sâu dày đặc được suy ra từ LiDAR và 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 hỗn hợp pretraining độ sâu của Ultralytics.
Cấu trúc bộ dữ liệu#
Bộ dữ liệu độ sâu ARKitScenes được chia thành hai tập con:
- Train: 676.080 hình ảnh kèm các depth map tương ứng để huấn luyện.
- Val: 21.559 hình ảnh kèm các depth map tương ứng để validation trong quá trình huấn luyện model.
Mỗi sample gồm một hình ảnh RGB và một PNG độ sâu uint16 đi kèm, tính bằng milimét (depth_scale: 1000), tuân theo định dạng bộ dữ liệu độ sâu của Ultralytics.
Nhận dữ liệu#
ARKitScenes không hỗ trợ tự động tải xuống — dữ liệu được 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 repository ARKitScenes. Clone repository và tải xuống tập con depth-upsampling, trong đó ghép các khung hình RGB với depth đã đă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 ./dataCác khung hình depth là các tệp PNG uint16 tính bằng milimét (0 = không hợp lệ), còn tên tệp RGB/depth là các timestamp thu thập không khớp hoàn toàn — ghép mỗi khung hình depth với khung hình RGB có timestamp gần nhất. Tham khảo cách chuyển đổi sang định dạng bộ dữ liệu độ sâu của Ultralytics:
import shutil
from pathlib import Path
import cv2
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}"
shutil.copy2(depth_png, dst / f"depth/{out}/{name}.png")
cv2.imwrite(str(dst / f"images/{out}/{name}.png"), cv2.imread(str(rgb)))Vai trò trong YOLO26-Depth#
ARKitScenes là một nguồn training trong hỗn hợp pretraining đa bộ dữ liệu YOLO26-Depth của Ultralytics, gồm khoảng 2,19 triệu cặp image–depth. Là nguồn dữ liệu thực đơn lẻ lớn nhất trong hỗn hợp này, bộ dữ liệu cung cấp lượng lớn depth LiDAR trong nhà từ thế giới thực, làm nền tảng cho độ chính xác trong nhà ở phạm vi ngắn của model. Các model thu được được đánh giá trên các benchmark NYU, KITTI, Make3D, ETH3D và iBims-1 tiêu chuẩn.
YAML của bộ dữ liệu#
Tệp YAML được sử dụng để định nghĩa cấu hình tập dữ liệu. Tệp chứa thông tin về các đường dẫn, lớp và các thông tin liên quan khác của tập dữ liệu.
# 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 16-bit *.png depth maps (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: 3Cách sử dụng#
Để huấn luyện model YOLO26n-depth trên bộ dữ liệu ARKitScenes với kích thước hình ảnh 640, bạn có thể sử dụng các đoạn code sau. Để xem danh sách đầy đủ các tham số khả dụng, hãy tham khảo trang Training của model.
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 đã tiền huấn luyện#
Họ model depth YOLO26 được huấn luyện trên hỗn hợp pretraining depth đa bộ dữ liệu mở rộng mà ARKitScenes là một phần trong đó. Các model này được tự động tải xuống từ bản phát hành Ultralytics mới nhất, chẳng hạn YOLO26x-depth từ v8.4.0, và bao phủ nhiều kích thước để đáp ứng các yêu cầu khác nhau về độ chính xác và tài nguyên.
Trích dẫn và ghi nhận đóng góp#
Nếu bạn sử dụng bộ dữ liệu ARKitScenes trong công việc nghiên cứu hoặc phát triển, vui lòng trích dẫn bài báo sau:
@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 và duy trì tài nguyên có giá trị này cho cộng đồng computer vision.
FAQ#
ARKitScenes là nguồn dữ liệu thực tế lớn nhất đơn lẻ trong tập huấn luyện trước YOLO26-Depth với khoảng 2,19 triệu ảnh, đóng góp 676.080 ảnh huấn luyện và 21.559 ảnh xác thực được chụp bằng máy quét LiDAR của các thiết bị Apple iPad Pro. Độ sâu nội thất dày đặc của ARKitScenes làm mỏ neo cho độ chính xác cự ly ngắn của các model đã phát hành, sau đó các model này được đánh giá trên NYU Depth V2, KITTI, ETH3D, Make3D, và iBims-1.
ARKitScenes không có tính năng tải xuống tự động. Hãy chấp nhận các điều khoản giấy phép trong kho lưu trữ ARKitScenes, tải xuống tập con nâng cấp độ sâu bằng script chính thức
download_data.py, và ghép nối từng khung hình độ sâu với khung hình RGB có dấu thời gian gần nhất bằng script chuyển đổi trong Nhận Dữ liệu. Kết quả tuân theo bố cục độ sâu Ultralytics tiêu chuẩn với các tệp PNG uint16 tính bằng milimét.