Sicurezza pronta per le aziende: Conformità ISO 27001 + SOC 2 Type I.

Link to this sectionDataset di profondità ARKitScenes#

ARKitScenes è un dataset RGB-D per interni reale su larga scala, acquisito con ARKit di Apple su dispositivi iPad Pro dotati di scanner LiDAR. È il più grande dataset RGB-D per interni reale nel suo genere, che fornisce scene interne diversificate e catturate naturalmente con una ground truth di profondità accurata per la stima della profondità monoculare.

Link to this sectionCaratteristiche principali#

  • Acquisito con lo scanner LiDAR e la fotocamera RGB di ARKit di Apple su iPad Pro, producendo dati sensoriali reali (non sintetici).
  • Copre diverse scene interne per la comprensione di scene 3D al chiuso.
  • Breve intervallo di profondità, circa 0,5–6 m (profondità massima mediana intorno a 2,4 m), tipico dell'acquisizione manuale di interni.
  • Ground truth di profondità densa derivata da LiDAR allineata ai frame RGB.
  • La singola fonte reale più grande nel mix di preaddestramento della profondità di Ultralytics.

Link to this sectionStruttura del dataset#

Il dataset di profondità ARKitScenes è suddiviso in due sottoinsiemi:

  1. Train: 676.080 immagini con mappe di profondità accoppiate per l'addestramento.
  2. Val: 21.559 immagini con mappe di profondità accoppiate per la validazione durante l'addestramento del modello.

Ogni campione consiste in un'immagine RGB e una mappa di profondità .npy float32 accoppiata che memorizza le distanze per pixel in metri, seguendo il formato del dataset di profondità Ultralytics.

Link to this sectionOttieni i dati#

ARKitScenes non prevede il download automatico: i dati sono distribuiti da Apple e il download richiede l'accettazione dei termini di licenza nel repository di ARKitScenes. Clona il repository e scarica il sottoinsieme depth-upsampling, che accoppia i frame RGB con la profondità registrata:

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

I frame di profondità sono file PNG uint16 in millimetri (0 = non valido), e i nomi dei file RGB/profondità sono timestamp di acquisizione che non corrispondono esattamente — abbina ogni frame di profondità al frame RGB con il timestamp più vicino. Riferimento per la conversione nel formato del dataset di profondità 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 sectionRuolo in YOLO26-Depth#

ARKitScenes è una fonte di addestramento nel mix di preaddestramento multi-dataset YOLO26-Depth di Ultralytics di circa 2,19 milioni di coppie immagine-profondità. Essendo la singola fonte reale più grande in questo mix, fornisce abbondante profondità LiDAR per interni reale che ancora l'accuratezza del modello per interni a breve distanza. I modelli risultanti vengono valutati sui benchmark standard NYU, KITTI, Make3D, ETH3D e iBims-1.

Link to this sectionDataset YAML#

Viene utilizzato un file YAML (Yet Another Markup Language) per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, le classi e altre informazioni rilevanti.

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 sectionUtilizzo#

Per addestrare un modello YOLO26n-depth sul dataset ARKitScenes con una dimensione dell'immagine di 640, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, fai riferimento alla pagina di Addestramento del modello.

Esempio di Addestramento
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 sectionModelli pre-addestrati#

La famiglia YOLO26 depth è addestrata sull'ampio mix di preaddestramento della profondità multi-dataset di cui ARKitScenes fa parte. Questi modelli vengono scaricati automaticamente dall'ultima release di Ultralytics, ad esempio YOLO26x-depth dalla v8.4.0, e coprono una gamma di dimensioni per diverse esigenze di accuratezza e risorse.

Link to this sectionCitazioni e riconoscimenti#

Se utilizzi il dataset ARKitScenes nel tuo lavoro di ricerca o sviluppo, ti preghiamo di citare il seguente documento:

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

Desideriamo ringraziare gli autori per aver creato e mantenuto questa risorsa preziosa per la comunità della visione artificiale.

Contributori

Commenti