ml-hypersim

用苹果合成室内数据,低成本训出强场景理解模型

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 数据集 🍴 复刻 151 👀 关注 42
GitHub ↗
GitHub 星标 ★ 2070
维护状态 维护中
是否开源 开源
定价模式 🏷️完全免费 开源数据集,免费使用

项目预览

ml-hypersim 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类数据集
开发团队apple-aiml-research
定价模式🏷️完全免费
价格说明开源数据集,免费使用
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议NOASSERTION
主要语言Python
GitHub 星标★ 2070
上线时间2020-11-16 00:00:00
代码更新2026-09-11
仓库体积24.4 MB
本站数据更新2026-11-05
维护状态维护中
收录时间2026-09-21
浏览次数1

项目介绍

ml-hypersim 是苹果发布的 Hypersim 数据集配套工具库,用于室内场景理解研究。它提供约 7.7 万张高逼真合成室内图像,每张图都带有像素级语义分割、实例分割、深度图、表面法线、光照与材质等密集标注,覆盖 461 个室内场景和 4 万多张渲染图。项目解决真实室内数据标注成本高、隐私敏感、难以获得完整几何与光照真值的问题,让研究者能在可控条件下训练和评测单目深度估计、语义分割、法线估计、室内布局理解等任务。核心能力包括数据下载与组织脚本、Python 读取接口、相机参数与场景元数据访问,以及与 PyTorch 等框架配合的示例代码。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-21 · 当前星标 ★ 2070

使用教程

难度:进阶 约 45 分钟 部署方式:本地安装 8 步

环境要求

  • Anaconda Python 环境(README 用 Anaconda 作为快速上手方式)
  • 仓库自带的 requirements.txt 文件
  • V-Ray Standalone 与 V-Ray AppSDK(渲染管线必需)
  • 同时可用的 Windows 与 macOS/Linux 环境(部分步骤限定系统)
  • 大容量存储,建议每批约 4TB 的便携硬盘

安装与启动步骤

  1. 1创建并激活环境

    在仓库根目录执行,用 requirements.txt 一次性安装全部必需 Python 库,并激活新建的 hypersim-env 环境。

    conda create --name hypersim-env --file requirements.txt
    conda activate hypersim-env
  2. 2安装可选库

    mayavi、opencv、pillow 属于可选依赖,可按需单独安装,缺失它们不影响核心管线。

    pip install mayavi
    conda install -c conda-forge opencv
    conda install -c anaconda pillow
  3. 3配置 V-Ray 路径

    把 V-Ray Standalone 的 bin 加入 PATH,把 AppSDK 的 bin 加入 DYLD_LIBRARY_PATH,示例路径需改成你自己的安装位置。

    export PATH=$PATH:/Applications/ChaosGroup/V-Ray/Standalone_for_mavericks_x64/bin
    export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/Applications/ChaosGroup/V-Ray/AppSDK/bin
  4. 4复制 AppSDK 库

    把 AppSDK bin 下的动态库与 plugins 目录手动复制到 ml-hypersim/code/python/tools,示例路径需替换为实际路径。

    cp /Applications/ChaosGroup/V-Ray/AppSDK/bin/libcgauth.dylib          /Users/mike/code/github/ml-hypersim/code/python/tools
    cp /Applications/ChaosGroup/V-Ray/AppSDK/bin/libvray.dylib            /Users/mike/code/github/ml-hypersim/code/python/tools
    cp /Applications/ChaosGroup/V-Ray/AppSDK/bin/libvrayopenimageio.dylib /Users/mike/code/github/ml-hypersim/code/python/tools
    cp /Applications/ChaosGroup/V-Ray/AppSDK/bin/libvrayosl.dylib         /Users/mike/code/github/ml-hypersim/code/python/tools
    cp /Applications/ChaosGroup/V-Ray/AppSDK/bin/libVRaySDKLibrary.dylib  /Users/mike/code/github/ml-hypersim/code/python/tools
    cp -a /Applications/ChaosGroup/V-Ray/AppSDK/bin/plugins               /Users/mike/code/github/ml-hypersim/code/python/tools
  5. 5验证 AppSDK 安装

    运行官方检查脚本,若输出配置正确的提示信息说明环境就绪,否则需回头检查环境变量和复制的库文件。

    python code/python/tools/check_vray_appsdk_install.py
  6. 6生成占据图

    必须在 macOS 或 Linux 上执行,处理 Volume 1-9 的场景;要等上一步渲染与下载全部完成后才能开始。

    python code/python/tools/dataset_generate_octomaps.py --dataset_dir /Volumes/portable_hard_drive/evermotion_dataset --scene_names "ai_00*"
  7. 7生成相机轨迹

    同样限定在 macOS 或 Linux 执行,输入与输出目录沿用上一步,继续处理同一批场景。

    python code/python/tools/dataset_generate_camera_trajectories.py --dataset_dir /Volumes/portable_hard_drive/evermotion_dataset --scene_names "ai_00*"
  8. 8生成 3D 边界框

    在 macOS 或 Linux 上执行,bounding_box_type 取 object_aligned_2d,场景范围保持与前几步一致。

    python code/python/tools/dataset_generate_bounding_boxes.py --dataset_dir /Volumes/portable_hard_drive/evermotion_dataset --bounding_box_type object_aligned_2d --scene_names "ai_00*"

关键配置

配置项必填说明示例
dataset_dir是数据集的输出目录,用于管线各步骤读写/Volumes/portable_hard_drive/evermotion_dataset
dataset_dir_when_rendering是渲染时的数据集绝对路径,Windows 盘符必须始终一致D:/hypersim_dataset
downloads_dir是存放从云端下载数据的目录,可用相对路径downloads
scene_names是指定要处理的场景,支持通配符匹配ai_00*
bounding_box_type是生成 3D 边界框时使用的类型object_aligned_2d

如何确认成功

执行 python code/python/tools/check_vray_appsdk_install.py,若打印 [HYPERSIM: CHECK_VRAY_APPSDK_INSTALL] The V-Ray AppSDK is c

常见问题

Q:只装 Python 环境就能用吗?

A:requirements.txt 只装 Python 库;渲染依赖 V-Ray Standalone 和 V-Ray AppSDK,需另行安装并配置 PATH 与 DYLD_LIBRARY_PATH。

Q:为什么有的步骤只能在某个系统执行?

A:管线部分步骤必须 Windows,部分必须 macOS 或 Linux,因此输出目录要在两个系统都可见,建议放在便携硬盘上。

Q:一次应该处理多少场景?

A:README 建议每批 10 个 volume(约 100 个场景),每批单独存到一个 4TB 硬盘,批太大会因中间数据过多而撑爆磁盘。

Q:scene_names 参数怎么写?

A:支持通配符:ai_001_001 指 Volume 1 Scene 1,ai_001_* 指整个 Volume 1,ai_00* 指 Volume 1-9。

Q:每一步可以连续执行吗?

A:不可以,必须等待每次渲染通过完成、且数据全部从云端下载结束后,才能进行下一步。

注意事项

  • 数据集采用 Creative Commons Attribution-ShareAlike 3.0 Unported 许可。
  • dataset_dir_when_rendering 必须是绝对路径,且 Windows 下的盘符要始终保持一致。
  • 管线会产生大量中间数据,磁盘 I/O 往往是瓶颈,建议使用高速盘或便携硬盘。
  • 引用该数据集或工具包时请按 README 指出论文引用。

核心亮点

  • 提供像素级语义、实例、深度、法线、光照等多模态密集标注,真值完整
  • 7.7 万张图像覆盖 461 个场景,规模大且场景多样,适合预训练与评测
  • 由苹果发布并持续维护,数据下载、读取脚本和文档齐全,开箱可用

不足之处

  • 数据集体积巨大,下载和存储对磁盘与带宽要求高
  • 合成数据与真实室内图像存在域差异,直接迁移可能需额外域适应

适用场景

  • 训练单目室内深度估计与表面法线预测模型
  • 评测语义/实例分割算法在复杂室内场景的表现
  • 研究光照、材质与几何联合理解的室内场景分析任务

替代项目

ScanNet、SUN RGB-D

同类项目推荐

VeriInk 开源

可验证手写合成数据,让模型改进有据可查

Verifiable handwriting synthesis for feedback-driven model improvement and RSI resea···

★ 290 2026-10-30
Nepali-Datasets 开源

尼泊尔语数据资源一页汇总,省去到处翻找的麻烦

A list of Nepali Dataset sources. (Hoping that it will encourage everyone to researc···

★ 120 2026-09-21
apd-core 开源

公开数据集清单的元数据底座,统一收录与贡献

Core meta for awesome-public-datasets. Contribute new data here!

★ 414 2026-11-02
SocialED 开源

用统一接口跑通社交事件检测,快速复现对比模型

A python library for social event detection

★ 592 2026-10-04
dataset-serialize 开源

Pascal 数据集与 JSON 互转,一键搞定数据交换

JSON to DataSet and DataSet to JSON converter for Delphi and Lazarus (FPC)

★ 746 2026-08-10
datalad 开源

用Git方式管理大型数据和代码,实现可复现科研

Keep code, data, containers under control with git and git-annex

★ 673 2026-08-13
datasette 开源

把 CSV/SQLite 变成可搜索网站和 API,零代码

An open source multi-tool for exploring and publishing data

★ 11542 2026-09-21
simulate 开源

快速搭仿真环境,批量产合成数据

Creating and sharing simulation environments for embodied and synthetic data researc···

★ 197 2026-09-22
civitai-mirror-list 开源

Civitai 下架模型一键找备份,不再怕资源丢失

A suggestion list and archive tools for models that civitai may have removed.

★ 57 2026-08-09