SUN RGB-D Derinlik Veri Kümesi#
SUN RGB-D, dört farklı RGB-D sensörüyle (Intel RealSense, Asus Xtion ve Microsoft Kinect v1 ile v2) yakalanmış, gerçek dünya iç mekân sahnelerini anlama için kullanılan bir kıyaslama veri kümesidir. Çoklu sensör tasarımı, tek görüntülü derinlik tahmini için gerçek iç mekân derinlik çeşitliliği sunan değerli bir kaynak olmasını sağlar.
RGB-derinlik çiftlerini önizlemek, veri kümesi istatistiklerini incelemek ve eğitim için klonlamak üzere Ultralytics Platform'da SUN RGB-D'yi keşfet.
Temel Özellikler#
- Dört farklı RGB-D sensörüyle (Intel RealSense, Asus Xtion, Microsoft Kinect v1 ve v2) yakalanarak gerçek çoklu sensör çeşitliliği sağlar.
- Sahne anlama araştırmaları için çok çeşitli gerçek iç mekân sahnelerini kapsar.
- Tüketici tipi iç mekân RGB-D yakalamalarında tipik olan, yaklaşık 10 m'ye kadar derinlik aralığı sunar.
- RGB kareleriyle hizalanmış, sensörlerden elde edilen derinlik yer gerçeği verisi.
- Ultralytics derinlik ön eğitim karışımına gerçek çoklu sensörlü iç mekân çeşitliliği katar.
Veri Kümesi Yapısı#
SUN RGB-D derinlik veri kümesi iki alt kümeye ayrılır:
- Train: Eğitim için eşleştirilmiş derinlik haritalarına sahip 9.245 görüntü.
- Val: Model eğitimi sırasında doğrulama için eşleştirilmiş derinlik haritalarına sahip 1.090 görüntü.
Her örnek, Ultralytics derinlik veri kümesi biçimini izleyen bir RGB görüntüsü ve eşleştirilmiş, ölçeklendirilmiş bir uint16 derinlik PNG'sinden oluşur. Yerleşik dönüştürme milimetre cinsinden yazar; bu nedenle varsayılan depth_scale: 1000 uygulanır.
YOLO26-Depth İçindeki Rolü#
SUN RGB-D, yaklaşık 2,19 milyon görüntü–derinlik çiftinden oluşan Ultralytics YOLO26-Depth çoklu veri kümesi ön eğitim karışımında bir eğitim kaynağıdır. Gerçek çoklu sensörlü iç mekân çeşitliliği katarak modeli farklı tüketici RGB-D cihazlarıyla yakalanmış derinlik verilerine maruz bırakır. Ortaya çıkan modeller standart NYU, KITTI, Make3D, ETH3D ve iBims-1 kıyaslamalarında değerlendirilir.
Veri Kümesi YAML'i#
Veri kümesi yapılandırmasını tanımlamak için bir YAML dosyası kullanılır. Dosya, veri kümesinin yolları, sınıfları ve diğer ilgili bilgiler hakkında bilgi içerir.
# 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 16-bit *.png depth maps (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.data.utils import save_depth_png
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
save_depth_png(dir / "depth" / split / f"{name}.png", d)
next((scene / "image").glob("*.jpg")).replace(dir / "images" / split / f"{name}.jpg")
shutil.rmtree(dir / "source")Kullanım#
SUN RGB-D veri kümesi üzerinde 640 görüntü boyutuyla bir YOLO26n-depth modeli eğitmek için aşağıdaki kod parçacıklarını kullanabilirsin. Kullanılabilir bağımsız değişkenlerin kapsamlı listesi için modelin Training sayfasına bak.
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)Önceden Eğitilmiş Modeller#
YOLO26 derinlik ailesi, SUN RGB-D'nin parçası olduğu geniş çoklu veri kümesi derinlik ön eğitim karışımı üzerinde eğitilir. Bu modeller en yeni Ultralytics sürümünden otomatik olarak indirilir; örneğin v8.4.0 sürümündeki YOLO26x-depth ve farklı doğruluk ile kaynak gereksinimleri için çeşitli boyutları kapsar.
Atıflar ve Teşekkürler#
SUN RGB-D veri setini araştırma veya geliştirme çalışmalarında kullanırsan lütfen aşağıdaki makaleyi kaynak göster:
@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}
}Bilgisayarlı görü topluluğu için bu değerli kaynağı oluşturup sürdürdükleri için yazarlara teşekkür ederiz.
SSS#
SUN RGB-D, dört RGB-D sensörüyle (Intel RealSense, Asus Xtion ve Microsoft Kinect v1 ve v2) yakalanmış gerçek dünya iç mekan sahne anlama kıyaslamasıdır. Ultralytics yapılandırması, yaklaşık 10 m'ye kadar derinliklere sahip 9.245 eğitim ve 1.090 doğrulama görüntü-derinlik çifti sağlar.
Her RGB görüntüsü, milimetre cinsinden uint16 PNG ile eşleştirilir; bu nedenle varsayılan
depth_scale: 1000, Ultralytics derinlik veri kümesi formatını takip ederek uygulanır. Kompakt Depth8 test veri kümesi SUN RGB-D'den örneklenir ve aynı formatı kullanır.yolo depth train data=depth-sunrgbd.yaml model=yolo26n-depth.pt epochs=100 imgsz=640komutunu çalıştır veya Kullanım bölümündeki Python örneğini kullan. Ayrıca veri kümesine Ultralytics Platform üzerinden göz atabilir ve klonlayabilirsin.



