Segurança pronta para empresas: Em conformidade com ISO 27001 + SOC 2 Tipo I.

Link to this sectionDataset de Profundidade ARKitScenes#

ARKitScenes é um dataset RGB-D interior do mundo real de grande escala, capturado com o ARKit da Apple em dispositivos iPad Pro equipados com scanner LiDAR. É o maior dataset RGB-D interior do mundo real do seu género, fornecendo cenas interiores diversas e capturadas naturalmente, com ground truth de profundidade precisa para estimativa de profundidade monocular.

Link to this sectionPrincipais recursos#

  • Capturado com o scanner LiDAR e a câmara RGB do ARKit da Apple no iPad Pro, produzindo dados de sensor reais (não sintéticos).
  • Cobre diversas cenas interiores para a compreensão de cenas 3D interiores.
  • Curto alcance de profundidade, aproximadamente 0,5–6 m (mediana da profundidade máxima em torno de 2,4 m), típico de captura manual em interiores.
  • Ground truth de profundidade densa derivada de LiDAR alinhada com os frames RGB.
  • A maior fonte única do mundo real na combinação de pré-treino de profundidade da Ultralytics.

Link to this sectionEstrutura do Dataset#

O dataset de profundidade ARKitScenes está dividido em dois subconjuntos:

  1. Train: 676.080 imagens com mapas de profundidade emparelhados para treino.
  2. Val: 21.559 imagens com mapas de profundidade emparelhados para validação durante o treino do modelo.

Cada amostra consiste numa imagem RGB e um mapa de profundidade .npy float32 emparelhado, armazenando distâncias por pixel em metros, seguindo o formato de dataset de profundidade Ultralytics.

Link to this sectionObter os Dados#

O ARKitScenes não possui autodownload — os dados são distribuídos pela Apple e o download requer a aceitação dos termos de licença no repositório ARKitScenes. Clona o repositório e descarrega o subconjunto depth-upsampling, que emparelha frames RGB com profundidade registada:

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

Os frames de profundidade são PNGs uint16 em milímetros (0 = inválido), e os nomes dos ficheiros RGB/profundidade são carimbos de tempo de captura que não coincidem exatamente — emparelha cada frame de profundidade com o frame RGB de carimbo de tempo mais próximo. Consulta a conversão para o formato de dataset de profundidade 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)))

Link to this sectionPapel no YOLO26-Depth#

O ARKitScenes é uma fonte de treino na mistura de pré-treino multi-dataset do Ultralytics YOLO26-Depth de aproximadamente 2,19 milhões de pares imagem-profundidade. Como a maior fonte real única nesta mistura, fornece abundante profundidade LiDAR interior do mundo real que ancora a precisão interior de curto alcance do modelo. Os modelos resultantes são avaliados nos benchmarks padrão NYU, KITTI, Make3D, ETH3D e iBims-1.

Link to this sectionYAML do Dataset#

Um ficheiro YAML (Yet Another Markup Language) é usado para definir a configuração do dataset. Contém informações sobre os caminhos, classes e outras informações relevantes do dataset.

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

Link to this sectionUso#

Para treinar um modelo YOLO26n-depth no dataset ARKitScenes com um tamanho de imagem de 640, podes usar os seguintes snippets de código. Para uma lista abrangente de argumentos disponíveis, consulta a página de Treino do modelo.

Exemplo de Treinamento
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)

Link to this sectionModelos pré-treinados#

A família YOLO26 depth é treinada na ampla mistura de pré-treino de profundidade multi-dataset da qual o ARKitScenes faz parte. Estes modelos descarregam automaticamente do último lançamento da Ultralytics, por exemplo YOLO26x-depth da v8.4.0, e abrangem uma gama de tamanhos para diferentes requisitos de precisão e recursos.

Link to this sectionCitações e Agradecimentos#

Se usares o dataset ARKitScenes na tua investigação ou trabalho de desenvolvimento, por favor cita o seguinte artigo:

Citação
@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}
}

Gostaríamos de agradecer aos autores pela criação e manutenção deste recurso valioso para a comunidade de visão computacional.

Contribuidores

Comentários