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

Link to this sectionDataset de profundidad Hypersim#

Hypersim es un dataset sintético fotorrealista de escenas interiores diseñado para la comprensión holística de interiores. Sus imágenes se generan mediante trazado de rayos a partir de interiores 3D de Evermotion creados profesionalmente, lo que produce renders altamente realistas junto con una verdad fundamental de profundidad por píxel densa y perfecta.

Debido a que Hypersim es totalmente sintético, cada píxel tiene un valor de profundidad exacto sin ruido de sensor, retornos faltantes ni artefactos de medición. Esto lo convierte en una excelente fuente de geometría interior densa y limpia para entrenar modelos de estimación de profundidad monocular.

Link to this sectionCaracterísticas clave#

  • Escenas interiores sintéticas fotorrealistas, renderizadas mediante trazado de rayos a partir de interiores 3D profesionales de Evermotion.
  • Solo entornos interiores.
  • Verdad fundamental de profundidad por píxel densa y perfecta sin ruido de sensor ni valores faltantes.
  • Rango de profundidad principalmente ≤10 m (con algunas distancias mayores).
  • Aporta 74,619 imágenes (68,242 de entrenamiento / 6,377 de validación) a la mezcla de entrenamiento de profundidad de Ultralytics.

Link to this sectionEstructura del dataset#

El dataset de profundidad Hypersim se divide en dos subconjuntos:

  1. Train: 68,242 imágenes con mapas de profundidad densos emparejados para el entrenamiento.
  2. Val: 6,377 imágenes con mapas de profundidad densos emparejados para la validación durante el entrenamiento.

Cada imagen RGB está emparejada con un mapa de profundidad .npy float32 que almacena distancias por píxel en metros, siguiendo el formato de dataset de profundidad de Ultralytics.

Link to this sectionObtén los datos#

Hypersim no tiene descarga automática: el dataset (~1.9 TB de archivos ZIP por escena) es distribuido por Apple bajo la licencia CC BY-SA 3.0 y se descarga con el script oficial del repositorio ml-hypersim (hay un descargador selectivo disponible en contrib/99991):

git clone https://github.com/apple/ml-hypersim && cd ml-hypersim
python code/python/tools/dataset_download_images.py --downloads_dir ./downloads --decompress_dir ./scenes

Los fotogramas RGB son las vistas previas frame.*.tonemap.jpg y la profundidad reside en frame.*.depth_meters.hdf5. Los valores almacenados son distancias de rayo al centro de la cámara, no profundidad planar; convierte antes de guardar y asigna a 0 los píxeles NaN (ventanas, cielo) (inválidos). Utiliza la división de escenas oficial metadata_images_split_scene_v1.csv para la asignación de entrenamiento/validación. Referencia de conversión al formato de dataset de profundidad de Ultralytics:

import shutil
from pathlib import Path

import h5py
import numpy as np

W, H, FOCAL = 1024, 768, 886.81  # Hypersim camera intrinsics
x, y = np.meshgrid(np.linspace(-W / 2, W / 2, W), np.linspace(-H / 2, H / 2, H))
ray2plane = (FOCAL / np.sqrt(x**2 + y**2 + FOCAL**2)).astype(np.float32)  # distance → planar depth

src, dst = Path("scenes"), Path("datasets/depth-hypersim")
out = "train"  # assign per scene from metadata_images_split_scene_v1.csv
(dst / f"images/{out}").mkdir(parents=True, exist_ok=True)
(dst / f"depth/{out}").mkdir(parents=True, exist_ok=True)
for h5 in sorted(src.rglob("*.depth_meters.hdf5")):
    scene, cam, frame = h5.parts[-4], h5.parent.name.split("_geometry")[0], h5.name.split(".")[1]
    rgb = h5.parents[1] / f"{cam}_final_preview" / f"frame.{frame}.tonemap.jpg"
    dist = np.asarray(h5py.File(h5)["dataset"], np.float32)
    depth = np.nan_to_num(dist * ray2plane, nan=0.0)  # NaN (sky, glass) → 0 = invalid
    name = f"{scene}_{cam}_{frame}"
    np.save(dst / f"depth/{out}/{name}.npy", depth)
    shutil.copy(rgb, dst / f"images/{out}/{name}.jpg")

Link to this sectionRol en YOLO26-Depth#

Hypersim es una de las fuentes de entrenamiento en la amplia mezcla de múltiples datasets (~2.19 millones de imágenes) utilizada para preentrenar los modelos YOLO26-Depth de Ultralytics. Dentro de esta mezcla, Hypersim aporta geometría interior densa y limpia que complementa los datos de sensores del mundo real con mayor ruido.

No existe un benchmark de Hypersim independiente y reservado en esta configuración. En su lugar, los modelos resultantes se evalúan en los benchmarks estándar de profundidad monocular: NYU Depth V2, 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 dataset. Contiene información sobre las rutas del dataset, las clases y otra información relevante. Para Hypersim, el archivo depth-hypersim.yaml define las rutas y la única clase depth.

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

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

path: depth-hypersim # dataset root dir (relative to Ultralytics settings 'datasets_dir')
train: images/train # train images (relative to 'path') 68242 images
val: images/val # val images (relative to 'path') 6377 images

nc: 1
names:
  0: depth

channels: 3

Link to this sectionUso#

Para entrenar un modelo YOLO26n-Depth en el dataset Hypersim 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 model (recommended for training)

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

Link to this sectionModelos preentrenados#

La familia de profundidad YOLO26 (yolo26n-depth.pt, yolo26s-depth.pt, yolo26m-depth.pt, yolo26l-depth.pt, yolo26x-depth.pt) se descarga automáticamente desde el lanzamiento v8.4.0 y está entrenada en la amplia mezcla de múltiples datasets de la que forma parte Hypersim.

Link to this sectionCitas y agradecimientos#

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

Cita
@inproceedings{roberts2021hypersim,
      title={Hypersim: A Photorealistic Synthetic Dataset for Holistic Indoor Scene Understanding},
      author={Mike Roberts and Jason Ramapuram and Anurag Ranjan and Atulit Kumar and Miguel Angel Bautista and Nathan Paczan and Russ Webb and Joshua M. Susskind},
      booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
      year={2021}
}

Nos gustaría agradecer a los creadores de Hypersim por poner este dataset sintético fotorrealista de interiores a disposición de la comunidad de visión artificial.

Colaboradores

Comentarios