Ultralytics YOLO27:
Get Started
No license

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) kaydedilmiş gerçek dünya iç mekân sahnelerini anlama kıyaslama veri kümesidir. Çoklu sensör tasarımı, monoküler derinlik tahmini için gerçek iç mekân derinlik çeşitliliği bakımından 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'daki 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) kaydedilerek gerçek dünyada çoklu sensör çeşitliliği sunar.
  • Sahne anlama araştırmaları için çok çeşitli gerçek iç mekân sahnelerini kapsar.
  • Derinlik aralığı yaklaşık 10 m'ye kadar çıkar; tüketici tipi iç mekân RGB-D çekimleri için tipiktir.
  • RGB kareleriyle hizalanmış, sensörlerden elde edilen derinlik yer gerçeği.
  • Ultralytics derinlik ön eğitim karışımına gerçek iç mekân çoklu sensör çeşitliliği katar.

Veri Kümesi Yapısı#

SUN RGB-D derinlik veri kümesi iki alt kümeye ayrılır:

  1. Eğitim: Eğitim için eşleştirilmiş derinlik haritaları içeren 9.245 görüntü.
  2. Doğrulama: Model eğitimi sırasında doğrulama için eşleştirilmiş derinlik haritaları içeren 1.090 görüntü.

Her örnek, Ultralytics derinlik veri kümesi biçimini izleyerek bir RGB görüntüden ve eşleştirilmiş, ölçeklenmiş bir uint16 derinlik PNG'sinden oluşur. Veri kümesi YAML dosyası kaynak arşivi (~6.5 GB) indirir ve ilk kullanımda otomatik olarak dönüştürüp milimetre cinsinden yazar; bu nedenle varsayılan depth_scale: 1000 geçerlidir.

YOLO26-Depth'teki rolü#

SUN RGB-D, yaklaşık 2.19M 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. Modele, farklı tüketici RGB-D cihazlarıyla yakalanmış derinlikleri sunarak gerçek iç mekânlarda çoklu sensör çeşitliliği katar. Ortaya çıkan modeller standart NYU, KITTI, Make3D, ETH3D ve iBims-1 kıyaslama veri kümelerinde değerlendirilir.

Veri Kümesi YAML Dosyası#

Veri kümesi yapılandırmasını tanımlamak için bir YAML dosyası kullanılır. Dosyada veri kümesinin yolları, sınıfları ve diğer ilgili bilgiler bulunur.

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 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ümesinde 640 görüntü boyutuyla YOLO26n-depth modelini 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 Eğitim sayfasına bak.

Eğitim Örneği
from ultralytics import YOLO

# Bir model yükle
model = YOLO("yolo26n-depth.pt")  # Önceden eğitilmiş bir derinlik modeli yükle (eğitim için önerilir)

# Modeli eğit
results = model.train(data="depth-sunrgbd.yaml", epochs=100, imgsz=640)

Önceden Eğitilmiş Modeller#

YOLO26 derinlik ailesi, SUN RGB-D'nin de parçası olduğu geniş çoklu veri kümesi derinlik ön eğitim karışımıyla eğitilir. Bu modeller ilk kullanımda Ultralytics v8.4.0 varlık sürümünden otomatik indirilir; örneğin YOLO26x-depth modeli farklı doğruluk ve kaynak gereksinimlerine yönelik çeşitli boyutlarda sunulur.

Atıflar ve Teşekkürler#

SUN RGB-D veri kümesini araştırma veya geliştirme çalışmalarında kullanıyorsan lütfen aşağıdaki makaleye atıfta bulun:

Alıntı
@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üren yazarlara teşekkür ederiz.

Sık Sorulan Sorular#

  • SUN RGB-D, dört RGB-D sensörüyle (Intel RealSense, Asus Xtion ve Microsoft Kinect v1 ile v2) kaydedilmiş gerçek dünya iç mekân sahnelerini anlama kıyaslama veri kümesidir. Ultralytics yapılandırması, yaklaşık 10 m'ye kadar derinliklerle 9.245 eğitim ve 1.090 doğrulama görüntü-derinlik çifti sağlar.

  • Her RGB görüntü, milimetre cinsinden uint16 PNG ile eşleştirilir; bu nedenle Ultralytics derinlik veri kümesi biçimini izleyen varsayılan depth_scale: 1000 geçerlidir. Kompakt Depth8 test veri kümesi SUN RGB-D'den örneklenmiştir ve aynı biçimi kullanır.

  • yolo depth train data=depth-sunrgbd.yaml model=yolo26n-depth.pt epochs=100 imgsz=640 komutunu çalıştır veya Kullanım bölümündeki Python örneğini kullan. Veri kümesine Ultralytics Platform üzerinden de göz atıp veri kümesini klonlayabilirsin.

Katkıda Bulunanlar

Yorumlar