Link to this sectionمجموعة بيانات العمق Hypersim#
Hypersim هي مجموعة بيانات اصطناعية واقعية للمشاهد الداخلية، صُممت لفهم المشاهد الداخلية بشكل كلي. يتم تتبع أشعتها ضوئيًا من تصميمات داخلية ثلاثية الأبعاد احترافية من Evermotion، مما ينتج عنه عروض واقعية للغاية مقترنة بحقيقة أرضية دقيقة وكثيفة للعمق لكل بكسل.
نظرًا لأن Hypersim اصطناعية بالكامل، فإن كل بكسل له قيمة عمق دقيقة دون ضوضاء مستشعر، أو فقدان في البيانات، أو عيوب قياس. وهذا يجعلها مصدراً ممتازاً لهندسة داخلية نظيفة وكثيفة لتدريب نماذج تقدير العمق أحادية العين.
Link to this sectionالميزات الرئيسية#
- مشاهد داخلية اصطناعية واقعية، يتم تتبع أشعتها ضوئيًا من تصميمات داخلية احترافية ثلاثية الأبعاد من Evermotion.
- بيئات داخلية فقط.
- حقيقة أرضية كثيفة ومثالية لـ العمق لكل بكسل بدون ضوضاء مستشعر أو قيم مفقودة.
- نطاق العمق غالباً ≤10 أمتار (مع بعض المسافات الأكبر).
- تساهم بـ 74,619 صورة (68,242 للتدريب / 6,377 للتحقق) في مجموعة تدريب العمق الخاصة بـ Ultralytics.
Link to this sectionهيكل مجموعة البيانات#
تم تقسيم مجموعة بيانات العمق Hypersim إلى مجموعتين فرعيتين:
- التدريب (Train): 68,242 صورة مع خرائط عمق كثيفة مقترنة للتدريب.
- التحقق (Val): 6,377 صورة مع خرائط عمق كثيفة مقترنة للتحقق أثناء التدريب.
كل صورة RGB مقترنة بخريطة عمق .npy بصيغة float32 تخزن المسافات لكل بكسل بالأمتار، وذلك باتباع تنسيق مجموعة بيانات العمق Ultralytics.
Link to this sectionالحصول على البيانات#
لا تدعم Hypersim التنزيل التلقائي - يتم توزيع مجموعة البيانات (~1.9 تيرابايت من ملفات ZIP لكل مشهد) بواسطة Apple بموجب ترخيص CC BY-SA 3.0 ويتم تنزيلها باستخدام البرنامج النصي الرسمي من مستودع ml-hypersim (يتوفر برنامج تنزيل انتقائي في contrib/99991):
git clone https://github.com/apple/ml-hypersim && cd ml-hypersim
python code/python/tools/dataset_download_images.py --downloads_dir ./downloads --decompress_dir ./scenesإطارات RGB هي معاينات frame.*.tonemap.jpg ويوجد العمق في frame.*.depth_meters.hdf5. القيم المخزنة هي مسافات الشعاع إلى مركز الكاميرا، وليست العمق المستوي - قم بالتحويل قبل الحفظ، وقم بتعيين بكسلات NaN (النوافذ، السماء) إلى 0 (غير صالحة). استخدم تقسيم المشهد الرسمي metadata_images_split_scene_v1.csv لتخصيص التدريب/التحقق. ارجع إلى التحويل إلى تنسيق مجموعة بيانات العمق Ultralytics:
import shutil
from pathlib import Path
import h5py
import numpy as np
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}"
np.save(dst / f"depth/{out}/{name}.npy", depth)
shutil.copy(rgb, dst / f"images/{out}/{name}.jpg")Link to this sectionدورها في YOLO26-Depth#
تعد Hypersim واحدة من مصادر التدريب في خليط المجموعات المتعددة الضخم (~2.19 مليون صورة) المستخدم لتدريب نماذج Ultralytics YOLO26-Depth مسبقاً. ضمن هذا المزيج، تساهم Hypersim بهندسة داخلية نظيفة وكثيفة تكمل بيانات العالم الحقيقي الأكثر ضجيجاً.
لا يوجد معيار قياس مستقل لـ Hypersim في هذا الإعداد. بدلاً من ذلك، يتم تقييم النماذج الناتجة وفقاً لمعايير تقدير العمق أحادية العين القياسية: NYU Depth V2 و KITTI و Make3D و ETH3D و iBims-1.
Link to this sectionYAML مجموعة البيانات#
يتم استخدام ملف YAML (Yet Another Markup Language) لتحديد تكوين مجموعة البيانات. وهو يحتوي على معلومات حول مسارات مجموعة البيانات، والفئات، وغيرها من المعلومات ذات الصلة. بالنسبة لـ Hypersim، يحدد ملف depth-hypersim.yaml المسارات وفئة depth الواحدة.
# 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 *.npy, float32 meters (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: 3Link to this sectionالاستخدام#
لتدريب نموذج YOLO26n-Depth على مجموعة بيانات Hypersim بحجم صورة 640، يمكنك استخدام مقتطفات التعليمات البرمجية التالية. للحصول على قائمة شاملة بالوسيطات المتاحة، ارجع إلى صفحة التدريب الخاصة بالنموذج.
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)Link to this sectionالنماذج المدربة مسبقاً#
تنزلق عائلة عمق YOLO26 (yolo26n-depth.pt, yolo26s-depth.pt, yolo26m-depth.pt, yolo26l-depth.pt, yolo26x-depth.pt) تلقائياً من إصدار v8.4.0 وهي مدربة على خليط المجموعات المتعددة الضخم الذي تعد Hypersim جزءاً منه.
Link to this sectionالاقتباسات والشكر#
إذا كنت تستخدم مجموعة بيانات Hypersim في أبحاثك أو عملك التطويري، يرجى الاستشهاد بالورقة البحثية التالية:
@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}
}نود أن نعرب عن تقديرنا لمبدعي Hypersim لإتاحة مجموعة البيانات الداخلية الاصطناعية الواقعية هذه لمجتمع رؤية الكمبيوتر.