Hypersim Derinlik Veri Kümesi#
Hypersim, bütünsel iç mekân sahnesi anlayışı için tasarlanmış, iç mekân sahnelerinden oluşan fotogerçekçi sentetik bir veri kümesidir. Görüntüleri, profesyonelce oluşturulmuş Evermotion 3D iç mekânlarından ışın izleme yöntemiyle oluşturulur ve son derece gerçekçi görüntülemeler ile kusursuz, yoğun piksel başına derinlik temel gerçeği sunar.
Hypersim tamamen sentetik olduğundan her pikselde sensör gürültüsü, eksik dönüş veya ölçüm artefaktı olmadan kesin bir derinlik değeri bulunur. Bu da onu monoküler derinlik tahmini modellerini eğitmek için temiz ve yoğun iç mekân geometrisinin mükemmel bir kaynağı hâline getirir.
Temel Özellikler#
- Profesyonel Evermotion 3D iç mekânlarından ışın izleme yöntemiyle oluşturulmuş fotogerçekçi sentetik iç mekân sahneleri.
- Yalnızca iç mekân ortamları.
- Sensör gürültüsü veya eksik değerler içermeyen yoğun ve kusursuz piksel başına derinlik temel gerçeği.
- Derinlik aralığı çoğunlukla ≤10 m (bazı daha büyük mesafelerle birlikte).
- Ultralytics derinlik eğitim karışımına 74.619 görüntü (68.242 eğitim / 6.377 doğrulama) katkısı sağlar.
Veri Kümesi Yapısı#
Hypersim derinlik veri kümesi iki alt kümeye ayrılır:
- Eğitim: Eğitim için eşleştirilmiş yoğun derinlik haritalarına sahip 68.242 görüntü.
- Doğrulama: Eğitim sırasında doğrulama için eşleştirilmiş yoğun derinlik haritalarına sahip 6.377 görüntü.
Her RGB görüntüsü, Ultralytics derinlik veri kümesi biçimini izleyen ölçeklendirilmiş bir uint16 derinlik PNG'si ile eşleştirilmiştir.
Verileri Edinme#
Hypersim otomatik indirmeyi desteklemez — veri kümesi (sahne başına ZIP'lerden oluşan ~1.9 TB) Apple tarafından CC BY-SA 3.0 lisansı altında dağıtılır ve ml-hypersim deposundaki resmî betik kullanılarak indirilir (contrib/99991 içinde seçmeli bir indirici mevcuttur):
git clone https://github.com/apple/ml-hypersim && cd ml-hypersim
python code/python/tools/dataset_download_images.py --downloads_dir ./downloads --decompress_dir ./scenesRGB kareleri frame.*.tonemap.jpg önizlemeleridir ve derinlik frame.*.depth_meters.hdf5 içinde bulunur. Depolanan değerler düzlemsel derinlik değil, kamera merkezine olan ışın mesafeleridir — kaydetmeden önce dönüştürün ve NaN piksellerini (pencereler, gökyüzü) 0'a (geçersiz) eşleyin. Eğitim/doğrulama ataması için resmî metadata_images_split_scene_v1.csv sahne bölmesini kullanın. Ultralytics derinlik veri kümesi biçimine dönüştürme için başvuru:
import shutil
from pathlib import Path
import h5py
import numpy as np
from ultralytics.data.utils import save_depth_png
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}"
save_depth_png(dst / f"depth/{out}/{name}.png", depth)
shutil.copy(rgb, dst / f"images/{out}/{name}.jpg")YOLO26-Depth İçindeki Rolü#
Hypersim, Ultralytics YOLO26-Depth modellerini önceden eğitmek için kullanılan geniş çoklu veri kümesi karışımındaki (~2,19 milyon görüntü) eğitim kaynaklarından biridir. Bu karışım içinde Hypersim, daha gürültülü gerçek dünya sensör verilerini tamamlayan temiz ve yoğun iç mekân geometrisi sağlar.
Bu kurulumda bağımsız bir ayrılmış Hypersim kıyaslaması yoktur. Bunun yerine ortaya çıkan modeller standart monoküler derinlik kıyaslamalarında değerlendirilir: NYU Depth V2, KITTI, Make3D, ETH3D ve iBims-1.
Veri Kümesi YAML'i#
Veri seti yapılandırmasını tanımlamak için bir YAML dosyası kullanılır. Dosya, veri setinin yolları, sınıfları ve diğer ilgili bilgileri hakkında bilgi içerir. Hypersim için depth-hypersim.yaml dosyası, yolları ve tek depth sınıfını tanımlar.
# 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 16-bit *.png depth maps (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: 3Kullanım#
Hypersim 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 Eğitim sayfasına başvurabilirsin.
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)Önceden Eğitilmiş Modeller#
YOLO26 derinlik ailesi (yolo26n-depth.pt, yolo26s-depth.pt, yolo26m-depth.pt, yolo26l-depth.pt, yolo26x-depth.pt) Ultralytics sürümlerinden otomatik olarak indirilir ve Hypersim'in parçası olduğu geniş çoklu veri kümesi karışımı üzerinde eğitilir. Ultralytics Platform'da YOLO26x-depth modelini keşfet.
Atıflar ve Teşekkürler#
Araştırma veya geliştirme çalışmalarında Hypersim veri kümesini kullanıyorsan lütfen aşağıdaki makaleye atıfta bulun:
@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}
}Bu fotogerçekçi sentetik iç mekân veri kümesini bilgisayarlı görü topluluğunun kullanımına sundukları için Hypersim'in oluşturucularına teşekkür etmek isteriz.
SSS#
Hypersim, profesyonel Evermotion 3D iç mekanlarından ışın izleme (ray-tracing) ile elde edilen Apple markasına ait fotogerçekçi bir sentetik iç mekan veri setidir. Her piksel sensör gürültüsü veya eksik dönüşler olmaksızın tam bir derinlik değerine sahip olduğundan; 74.619 görüntüsü (68.242 eğitim, 6.377 doğrulama), YOLO26-Depth eğitim karışımındaki daha gürültülü gerçek dünya sensör verilerini tamamlayan temiz, yoğun iç mekan geometrisi sağlar.
Hypersim'in otomatik indirmesi yoktur. ml-hypersim repository içindeki resmi betik ile sahneleri (~1.9 TB) getir, ardından
depth_meters.hdf5ışın mesafelerini düzlemsel derinliğe dönüştür ve Obtain the Data içindeki betik ile milimetre cinsinden PNG'ler yaz. Pencereler ve gökyüzü gibi NaN piksellerini, geçersiz olarak değerlendirilmeleri için0ile eşle.