Sécurité prête pour l'entreprise : Conforme ISO 27001 + SOC 2 Type I.

Link to this sectionJeu de données de profondeur DIODE#

DIODE (Dense Indoor/Outdoor DEpth) est un jeu de données réel avec une vérité terrain de profondeur dense de très haute qualité, capturée par un scanner laser de qualité topographique FARO Focus. Il est unique en ce qu'il couvre à la fois des scènes intérieures et extérieures avec le même capteur, ce qui en fait un pont de haute précision entre la profondeur intérieure à courte portée et extérieure à longue portée pour l'estimation de profondeur monoculaire.

Link to this sectionFonctionnalités clés#

  • Vérité terrain de profondeur dense de très haute qualité issue d'un scanner laser de qualité topographique FARO Focus.
  • Couvre à la fois des scènes intérieures et extérieures capturées avec le même capteur.
  • La plage de profondeur s'étend des courtes distances intérieures aux longues distances extérieures, jusqu'à environ 80 m dans le mélange Ultralytics.
  • Vérité terrain dense et précise par pixel, alignée sur les cadres RGB.
  • Fournit une vérité terrain dense de haute précision qui relie les domaines intérieur et extérieur.

Link to this sectionStructure du jeu de données#

Le jeu de données de profondeur DIODE est divisé en deux sous-ensembles :

  1. Train : 25 458 images avec des cartes de profondeur appariées pour l'entraînement.
  2. Val : 771 images avec des cartes de profondeur appariées pour la validation pendant l'entraînement du modèle.

Chaque échantillon se compose d'une image RGB et d'une carte de profondeur .npy float32 appariée stockant les distances par pixel en mètres, en suivant le format de jeu de données de profondeur Ultralytics.

Link to this sectionRôle dans YOLO26-Depth#

DIODE est une source d'entraînement dans le mélange de pré-entraînement multi-jeu de données Ultralytics YOLO26-Depth d'environ 2,19 millions de paires image-profondeur. Il apporte une vérité terrain dense de haute précision qui relie les domaines intérieur et extérieur au sein d'un seul capteur, aidant le modèle à se généraliser aux scènes à courte et longue portée. Les modèles résultants sont évalués sur les benchmarks standard NYU, KITTI, Make3D, ETH3D et iBims-1.

Link to this sectionYAML du jeu de données#

Un fichier YAML (Yet Another Markup Language) est utilisé pour définir la configuration du jeu de données. Il contient des informations sur les chemins, les classes et d'autres informations pertinentes du jeu de données.

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

Pour entraîner un modèle YOLO26n-depth sur le jeu de données DIODE avec une taille d'image de 640, tu peux utiliser les extraits de code suivants. Pour une liste complète des arguments disponibles, réfère-toi à la page Entraînement du modèle.

Exemple d'entraînement
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 sectionModèles pré-entraînés#

La famille YOLO26 depth est entraînée sur le vaste mélange de pré-entraînement de profondeur multi-jeu de données dont fait partie DIODE. Ces modèles se téléchargent automatiquement à partir de la dernière version Ultralytics, par exemple YOLO26x-depth depuis la v8.4.0, et couvrent une gamme de tailles pour différentes exigences de précision et de ressources.

Link to this sectionCitations et remerciements#

Si tu utilises le jeu de données DIODE dans tes travaux de recherche ou de développement, merci de citer l'article suivant :

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

Nous tenons à remercier les auteurs pour la création et la maintenance de cette ressource précieuse pour la communauté de la vision par ordinateur.

Contributeurs

Commentaires