Seguridad lista para empresas: Cumplimiento de ISO 27001 + SOC 2 Tipo I.

Link to this sectionConjunto de datos de profundidad DIODE#

DIODE (Dense Indoor/Outdoor DEpth) es un conjunto de datos del mundo real con una verdad fundamental de profundidad densa de muy alta calidad, capturado mediante un escáner láser de grado topográfico FARO Focus. De forma única, cubre escenas tanto de interior como de exterior con el mismo sensor, lo que lo convierte en un puente de alta precisión entre la profundidad de corto alcance en interiores y la de largo alcance en exteriores para la estimación de profundidad monocular.

Link to this sectionCaracterísticas clave#

  • Verdad fundamental de profundidad densa de muy alta calidad proveniente de un escáner láser de grado topográfico FARO Focus.
  • Cubre escenas tanto de interior como de exterior capturadas con el mismo sensor.
  • El rango de profundidad abarca desde distancias cortas en interiores hasta distancias largas en exteriores, alcanzando hasta aproximadamente 80 m en la mezcla de Ultralytics.
  • Verdad fundamental densa y precisa por píxel alineada con los fotogramas RGB.
  • Proporciona una verdad fundamental densa de alta precisión que conecta los dominios de interior y exterior.

Link to this sectionEstructura del dataset#

El conjunto de datos de profundidad DIODE se divide en dos subconjuntos:

  1. Train: 25.458 imágenes con mapas de profundidad emparejados para el entrenamiento.
  2. Val: 771 imágenes con mapas de profundidad emparejados para la validación durante el entrenamiento del modelo.

Cada muestra consta de una imagen RGB y un mapa de profundidad .npy de tipo float32 emparejado que almacena las distancias por píxel en metros, siguiendo el formato de conjunto de datos de profundidad de Ultralytics.

Link to this sectionRol en YOLO26-Depth#

DIODE es una fuente de entrenamiento en la mezcla de preentrenamiento multidataset de Ultralytics YOLO26-Depth de aproximadamente 2,19 millones de pares de imagen-profundidad. Contribuye con una verdad fundamental densa de alta precisión que conecta los dominios de interior y exterior dentro de un solo sensor, ayudando al modelo a generalizar entre escenas de corto y largo alcance. Los modelos resultantes se evalúan en los benchmarks estándar NYU, KITTI, Make3D, ETH3D y iBims-1.

Link to this sectionYAML del dataset#

Se utiliza un archivo YAML (Yet Another Markup Language) para definir la configuración del conjunto de datos. Contiene información sobre las rutas del conjunto de datos, clases y otra información relevante.

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

# DIODE dataset for monocular depth estimation — real indoor + outdoor, FARO Focus survey-grade laser, depth up to ~80 m
# Documentation: https://docs.ultralytics.com/datasets/depth/diode
# Example usage: yolo depth train data=depth-diode.yaml model=yolo26n-depth.pt
# parent
# ├── ultralytics
# └── datasets
#     └── depth-diode  ← downloads here (84 GB archives, ~90 GB converted)
#         ├── images/{train,val}  # RGB images
#         └── depth/{train,val}   # paired *.npy, float32 meters (images/ -> depth/)
# If an interrupted download leaves a partial dataset, delete the depth-diode dir and re-run to rebuild it.

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

nc: 1
names:
  0: depth

channels: 3

# Download script/URL (optional)
download: |
  import shutil
  from pathlib import Path

  import numpy as np

  from ultralytics.utils import TQDM
  from ultralytics.utils.downloads import download

  # Download and extract the official archives (train ~81 GB, val ~2.6 GB), then convert:
  # flatten <split>/<scene>/<scan>/*.png into images/<split>/ and save the paired *_depth.npy
  # (masked invalid -> 0, clipped at 80 m) as depth/<split>/*.npy
  dir = Path(yaml["path"])  # dataset root dir
  download([f"https://diode-dataset.s3.amazonaws.com/{s}.tar.gz" for s in ("train", "val")], dir=dir / "source", delete=True)
  for split in ("train", "val"):
      (dir / "images" / split).mkdir(parents=True, exist_ok=True)
      (dir / "depth" / split).mkdir(parents=True, exist_ok=True)
      for im in TQDM(sorted((dir / "source" / split).rglob("*.png")), desc=f"Converting {split}"):
          name = "_".join(im.relative_to(dir / "source").parts)  # train/indoors/scene/scan/x.png -> train_indoors_scene_scan_x.png
          depth = np.load(im.with_name(f"{im.stem}_depth.npy")).squeeze().astype(np.float32)
          depth[np.load(im.with_name(f"{im.stem}_depth_mask.npy")) == 0] = 0.0  # zero out invalid pixels
          np.save(dir / "depth" / split / f"{name[:-4]}.npy", depth.clip(max=80))
          im.replace(dir / "images" / split / name)
  shutil.rmtree(dir / "source")

Link to this sectionUso#

Para entrenar un modelo YOLO26n-depth en el conjunto de datos DIODE con un tamaño de imagen de 640, puedes usar los siguientes fragmentos de código. Para obtener una lista completa de los argumentos disponibles, consulta la página de Entrenamiento del modelo.

Ejemplo de entrenamiento
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-diode.yaml", epochs=100, imgsz=640)

Link to this sectionModelos preentrenados#

La familia de profundidad YOLO26 está entrenada en la amplia mezcla de preentrenamiento de profundidad de múltiples datasets de la que forma parte DIODE. Estos modelos se descargan automáticamente desde la última versión de Ultralytics, por ejemplo YOLO26x-depth desde la v8.4.0, y abarcan una gama de tamaños para diferentes requisitos de precisión y recursos.

Link to this sectionCitas y agradecimientos#

Si utilizas el conjunto de datos DIODE en tu trabajo de investigación o desarrollo, por favor cita el siguiente artículo:

Cita
@article{vasiljevic2019diode,
      title={DIODE: A Dense Indoor and Outdoor DEpth Dataset},
      author={Vasiljevic, Igor and Kolkin, Nick and Zhang, Shanyi and Luo, Ruotian and Wang, Haochen and Dai, Falcon Z. and Daniele, Andrea F. and Mostajabi, Mohammadreza and Basart, Steven and Walter, Matthew R. and Shakhnarovich, Gregory},
      journal={arXiv preprint arXiv:1908.00463},
      year={2019}
}

Nos gustaría agradecer a los autores por crear y mantener este valioso recurso para la comunidad de visión artificial.

Colaboradores

Comentarios