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

Link to this sectionDataset di profondità TartanAir#

TartanAir è un dataset sintetico su larga scala generato nel simulatore AirSim. È stato creato per spingere i limiti dello SLAM visivo e copre un'ampia varietà di ambienti — interni, esterni, scene urbane e naturali — insieme a variazioni stagionali, meteorologiche e di illuminazione, oltre a condizioni complesse.

Poiché TartanAir è renderizzato in simulazione, fornisce una ground truth di profondità densa in questo set eterogeneo di scene, rendendolo una fonte solida di diversità ambientale e geometria a lungo raggio per l'addestramento di modelli di depth estimation monoculare.

Link to this sectionCaratteristiche principali#

  • Dati sintetici generati nel simulatore AirSim.
  • Diversi ambienti interni ed esterni (urbani, naturali) con variazioni stagionali, meteorologiche e di illuminazione, oltre a condizioni complesse.
  • Ground truth di profondità densa in tutte le scene.
  • Intervallo di profondità fino a ~80 m.
  • Contribuisce con 61.470 immagini (55.660 train / 5.810 val) al mix di addestramento sulla profondità di Ultralytics.

Link to this sectionStruttura del dataset#

Il dataset di profondità TartanAir è suddiviso in due subset:

  1. Train: 55.660 immagini con mappe di profondità densa accoppiate per l'addestramento.
  2. Val: 5.810 immagini con mappe di profondità densa accoppiate per la validazione durante l'addestramento.

Ogni immagine RGB è abbinata a una mappa di profondità .npy in formato float32 che memorizza le distanze per-pixel in metri, seguendo il formato del dataset di profondità Ultralytics.

Link to this sectionOttieni i dati#

TartanAir non dispone di download automatico: i dati sono distribuiti dall'AirLab della CMU (consulta la pagina del dataset per i termini) e scaricati con gli script tartanair_tools:

git clone https://github.com/castacks/tartanair_tools && cd tartanair_tools
python download_training.py --output-dir ./data --rgb --depth --only-left --unzip

La profondità è già memorizzata come float32 .npy in metri (depth_left/*_left_depth.npy accanto a image_left/*_left.png), quindi la conversione consiste solo nel riordinare e invalidare il cielo (renderizzato come distanze estreme; il mix rilasciato tronca a 80 m per corrispondere al dataset YAML). TartanAir non fornisce uno split di validazione ufficiale: tieni da parte uno o più ambienti. Conversione di riferimento al formato del dataset di profondità di Ultralytics:

import shutil
from pathlib import Path

import numpy as np

VAL_ENVS = {"neighborhood"}  # environments held out for validation
src, dst = Path("data"), Path("datasets/depth-tartanair")
for depth_file in sorted(src.rglob("depth_left/*_left_depth.npy")):
    env, traj = depth_file.parts[-5], depth_file.parts[-3]
    out = "val" if env.lower() in VAL_ENVS else "train"
    (dst / f"images/{out}").mkdir(parents=True, exist_ok=True)
    (dst / f"depth/{out}").mkdir(parents=True, exist_ok=True)
    depth = np.load(depth_file)
    depth[depth > 80.0] = 0.0  # sky/extreme range → 0 = invalid
    frame = depth_file.name.replace("_depth.npy", "")  # e.g. 000000_left
    name = f"{env}_{traj}_{frame}"
    np.save(dst / f"depth/{out}/{name}.npy", depth)
    shutil.copy(depth_file.parents[1] / "image_left" / f"{frame}.png", dst / f"images/{out}/{name}.png")

Link to this sectionRuolo in YOLO26-Depth#

TartanAir è una delle fonti di addestramento nell'ampio mix multi-dataset (~2,19M di immagini) utilizzato per pre-addestrare i modelli Ultralytics YOLO26-Depth. All'interno di questo mix, TartanAir contribuisce con diversità ambientale sintetica e geometria esterna a lungo raggio che completano le fonti interne e del mondo reale.

Non esiste un benchmark TartanAir indipendente in questa configurazione. Invece, i modelli risultanti vengono valutati sui benchmark standard di profondità monoculare: NYU Depth V2, KITTI, Make3D, ETH3D e iBims-1.

Link to this sectionDataset YAML#

Un file YAML (Yet Another Markup Language) viene utilizzato per definire la configurazione del dataset. Contiene informazioni sui percorsi del dataset, le classi e altre informazioni rilevanti. Per TartanAir, il file depth-tartanair.yaml definisce i percorsi e la singola classe depth.

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

# TartanAir dataset for monocular depth estimation — synthetic indoor + outdoor (AirSim), dense depth up to ~80 m
# Documentation: https://docs.ultralytics.com/datasets/depth/tartanair
# Example usage: yolo depth train data=depth-tartanair.yaml model=yolo26n-depth.pt
# No autodownload — obtain the source data (see docs) and arrange it as below.
# parent
# ├── ultralytics
# └── datasets
#     └── depth-tartanair
#         ├── images/{train,val}  # RGB images
#         └── depth/{train,val}   # paired *.npy, float32 meters (images/ -> depth/)

path: depth-tartanair # dataset root dir (relative to Ultralytics settings 'datasets_dir')
train: images/train # train images (relative to 'path') 55660 images
val: images/val # val images (relative to 'path') 5810 images
max_depth: 80 # (m) maximum valid depth; GT beyond this is excluded from val metrics

nc: 1
names:
  0: depth

channels: 3

Link to this sectionUtilizzo#

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

Esempio di Addestramento
from ultralytics import YOLO

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

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

Link to this sectionModelli pre-addestrati#

La famiglia di profondità YOLO26 (yolo26n-depth.pt, yolo26s-depth.pt, yolo26m-depth.pt, yolo26l-depth.pt, yolo26x-depth.pt) viene scaricata automaticamente dalla release v8.4.0 ed è addestrata sull'ampio mix multi-dataset di cui TartanAir fa parte.

Link to this sectionCitazioni e riconoscimenti#

Se utilizzi il dataset TartanAir nel tuo lavoro di ricerca o sviluppo, cita il seguente documento:

Citazione
@inproceedings{wang2020tartanair,
      title={TartanAir: A Dataset to Push the Limits of Visual SLAM},
      author={Wenshan Wang and Delong Zhu and Xiangwei Wang and Yaoyu Hu and Yuheng Qiu and Chen Wang and Yafei Hu and Ashish Kapoor and Sebastian Scherer},
      booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
      year={2020}
}

Desideriamo ringraziare i creatori di TartanAir per aver messo questo dataset sintetico eterogeneo a disposizione della comunità della computer vision.

Contributori

Commenti