Безопасность корпоративного уровня: Соответствует ISO 27001 + SOC 2 Type I.

Link to this sectionНабор данных глубины SUN RGB-D#

SUN RGB-D — это бенчмарк для понимания сцен в помещениях из реального мира, снятый с помощью четырех разных RGB-D сенсоров: Intel RealSense, Asus Xtion, а также Microsoft Kinect v1 и v2. Его мультисенсорный дизайн делает его ценным источником реального разнообразия глубины в помещениях для оценки монокулярной глубины.

Link to this sectionКлючевые особенности#

  • Снято с помощью четырех разных RGB-D сенсоров (Intel RealSense, Asus Xtion, Microsoft Kinect v1 и v2), что обеспечивает настоящее мультисенсорное разнообразие.
  • Охватывает широкий спектр реальных интерьерных сцен для исследований в области понимания сцен.
  • Диапазон глубины до примерно 10 м, что типично для потребительской съемки RGB-D в помещениях.
  • Полученная с сенсоров истинная глубина (ground truth), выровненная по RGB-кадрам.
  • Добавляет реальное мультисенсорное разнообразие интерьеров в набор для предобучения глубины Ultralytics.

Link to this sectionСтруктура набора данных#

Набор данных глубины SUN RGB-D разделен на две подвыборки:

  1. Train: 9 245 изображений с парными картами глубины для обучения.
  2. Val: 1 090 изображений с парными картами глубины для валидации во время обучения модели.

Каждый образец состоит из одного RGB-изображения и одной парной .npy карты глубины float32, хранящей расстояния для каждого пикселя в метрах, в соответствии с форматом набора данных глубины Ultralytics.

Link to this sectionРоль в YOLO26-Depth#

SUN RGB-D является источником для обучения в составе набора данных для предобучения Ultralytics YOLO26-Depth, насчитывающего около 2,19 млн пар изображение-глубина. Он добавляет реальное мультисенсорное разнообразие интерьеров, позволяя модели ознакомиться с данными о глубине, полученными с различных потребительских RGB-D устройств. Полученные модели оцениваются на стандартных бенчмарках NYU, KITTI, Make3D, ETH3D и iBims-1.

Link to this sectionYAML набора данных#

YAML-файл (Yet Another Markup Language) используется для определения конфигурации набора данных. Он содержит информацию о путях к данным, классах и другую соответствующую информацию.

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

# SUN RGB-D dataset for monocular depth estimation — real indoor, multi-sensor RGB-D (RealSense/Xtion/Kinect), up to ~10 m
# Documentation: https://docs.ultralytics.com/datasets/depth/sunrgbd
# Example usage: yolo depth train data=depth-sunrgbd.yaml model=yolo26n-depth.pt
# parent
# ├── ultralytics
# └── datasets
#     └── depth-sunrgbd  ← downloads here (6.5 GB archive, ~14 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-sunrgbd dir and re-run to rebuild it.

path: depth-sunrgbd # dataset root dir (relative to Ultralytics settings 'datasets_dir')
train: images/train # train images (relative to 'path') 9245 images
val: images/val # val images (relative to 'path') 1090 images

nc: 1
names:
  0: depth

channels: 3

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

  import cv2
  import numpy as np

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

  # Download and extract the official archive (~6.5 GB), then convert each of the 10335 scenes:
  # refined depth_bfx PNGs decode via the SUN RGB-D bit-rotation (d>>3 | d<<13) to millimeters,
  # clipped at 10 m; a deterministic random 1090-scene subset (seed 0) forms the val split
  dir = Path(yaml["path"])  # dataset root dir
  download(["https://rgbd.cs.princeton.edu/data/SUNRGBD.zip"], dir=dir / "source", delete=True, exist_ok=True)
  for split in ("train", "val"):
      (dir / "images" / split).mkdir(parents=True, exist_ok=True)
      (dir / "depth" / split).mkdir(parents=True, exist_ok=True)
  scenes = sorted(p.parent for p in (dir / "source" / "SUNRGBD").rglob("depth_bfx"))
  names = ["_".join(s.relative_to(dir / "source" / "SUNRGBD").parts) for s in scenes]
  val = set(random.Random(0).sample(names, k=1090))
  for scene, name in TQDM(zip(scenes, names), total=len(scenes), desc="Converting"):
      split = "val" if name in val else "train"
      d = cv2.imread(str(next((scene / "depth_bfx").glob("*.png"))), cv2.IMREAD_ANYDEPTH)
      d = (((d >> 3) | (d << 13)) / 1000.0).clip(max=10).astype(np.float32)  # bit-rotated mm -> m
      np.save(dir / "depth" / split / f"{name}.npy", d)
      next((scene / "image").glob("*.jpg")).replace(dir / "images" / split / f"{name}.jpg")
  shutil.rmtree(dir / "source")

Link to this sectionИспользование#

Чтобы обучить модель YOLO26n-depth на наборе данных SUN RGB-D с размером изображения 640, можешь использовать следующие фрагменты кода. Полный список доступных аргументов см. на странице обучения модели.

Пример обучения
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-sunrgbd.yaml", epochs=100, imgsz=640)

Link to this sectionПредварительно обученные модели#

Семейство моделей глубины YOLO26 обучено на широком наборе данных для предобучения глубины, частью которого является SUN RGB-D. Эти модели автоматически загружаются из последнего релиза Ultralytics, например YOLO26x-depth из версии v8.4.0, и охватывают ряд размеров для различных требований к точности и ресурсам.

Link to this sectionЦитирование и благодарности#

Если ты используешь набор данных SUN RGB-D в своей исследовательской или рабочей деятельности, пожалуйста, процитируй следующую статью:

Цитата
@inproceedings{song2015sunrgbd,
      title={SUN RGB-D: A RGB-D Scene Understanding Benchmark Suite},
      author={Song, Shuran and Lichtenberg, Samuel P. and Xiao, Jianxiong},
      booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
      year={2015}
}

Мы хотели бы поблагодарить авторов за создание и поддержку этого ценного ресурса для сообщества компьютерного зрения.

Участники

Комментарии