HY-World 2.0 Gradio交互演示:上传一段视频,秒变可交互3D数字孪生
【免费下载链接】HY-World-2.0HY-World 2.0: A Multi-Modal World Model for Reconstructing, Generating, and Simulating 3D Worlds项目地址: https://gitcode.com/gh_mirrors/hy/HY-World-2.0
HY-World 2.0 是腾讯开源的多模态世界模型,能把随手拍摄的照片和视频重建为可交互的 3D 数字孪生。本文带你用它的 Gradio 交互演示完成一次完整体验:上传视频 → 一键重建 → 得到可漫游、可导出的 3D 高斯泼溅(3DGS)、点云、深度图、法线图和相机参数。
什么是 HY-World 2.0:不止生成视频的 3D 世界模型
与"看一段生成视频就结束"的世界模型不同,HY-World 2.0 直接产出真实、可编辑、永久保存的 3D 资产。它包含两大能力:
- 世界生成:文本或单张图像 → 可导航的 3D 世界(全景生成 → 轨迹规划 → 世界扩展 → 世界组合)
- 世界重建:多视角照片或视频 → 3D。由 WorldMirror 2.0 驱动,一次前向传播同时预测深度、法线、相机参数、点云和 3DGS 属性——这正是本文主角Gradio 交互演示所封装的功能
整个系统的流水线架构如下图所示,Gradio 演示对应其中的"世界重建"(WorldMirror 2.0)部分:
Gradio 演示速览:本地运行最快启动步骤
演示基于 Gradio 构建,源码位于 hyworld2/worldrecon/gradio_app.py,支持上传视频/图片、单卡与多卡推理,并内置示例场景。启动只需三步:
① 获取仓库
git clone https://gitcode.com/gh_mirrors/hy/HY-World-2.0 cd HY-World-2.0② 准备环境(推荐 CUDA 12.8 + Python 3.11+)
conda create -n hyworld2 python=3.11.15 conda activate hyworld2 pip install -r requirements.txt # 安装 gsplat(worldrecon 与 worldgen 共用) cd hyworld2/worldgen/third_party/gsplat_maskgaussian pip install -e . --no-build-isolation cd ../../../../③ 一键启动 Gradio 演示
# 单卡 python -m hyworld2.worldrecon.gradio_app # 多卡(FSDP 分片 + bf16) torchrun --nproc_per_node=2 -m hyworld2.worldrecon.gradio_app \ --use_fsdp --enable_bf16首次运行时模型权重会自动下载。启动后浏览器访问http://localhost:8081即可进入界面。
演示界面三步走:上传视频,一键重建
界面从左到右分为三栏:上传区 | 可视化区 | 示例场景区,核心操作只有三步。
第一步:上传视频或照片
上传控件(hyworld2/worldrecon/gradio_app.py#L775-L779)支持批量上传图片(png/jpg/heic 等)或视频(mp4/mov/mkv/webm 等)。上传视频后,程序会按"视频采样间隔"(默认每 1 秒抽 1 帧,滑块可调 0.1–10 秒)自动抽帧,并在下方"Image Preview"画廊中预览。如果觉得抽帧太密,调大间隔后点击Resample即可重新采样,无需重新上传。
右侧"示例场景"栏同样值得一试:内置 examples/worldrecon/ 下的 Realistic(真实场景)与 Stylistic(风格化场景)两个标签页,点击任意缩略图即可加载,例如"Small_Room"小房间场景:
💡 多卡模式提醒:输入图片数量必须 ≥ GPU 数量,否则会在推理时报错提示。
第二步:点击 Reconstruct 开始重建
点击Reconstruct按钮后,WorldMirror 2.0 会对全部输入帧执行一次前向推理,自动完成天空/低置信度/边缘区域过滤与点云、高斯压缩。界面顶部的渐变日志条会实时显示状态(如Reconstruction Success (32 frames, 12.3s.)),下方"Terminal Output"框还会滚动显示终端日志。
第三步:在浏览器里查看你的数字孪生
重建完成后,中间区域立即呈现 3D 结果,可拖拽旋转、缩放观察。整个过程的效果如下——一段普通视频被还原成带相机轨迹的 3D 世界:
5 个可视化标签页:3DGS、点云、深度、法线与相机
可视化区包含 5 个标签页(hyworld2/worldrecon/gradio_app.py#L790-L814),覆盖从"看效果"到"取数据"的全部需求:
| 标签页 | 内容 | 用途 |
|---|---|---|
| 3D Gaussian Splatting | 3DGS 场景实时渲染 | 查看最真实的照片级重建效果 |
| Point Cloud / Mesh | 彩色点云 / 网格 | 检查几何结构,导出进 Blender/Unity |
| Depth | 逐帧深度图 | 用滑块切换任意一帧查看 |
| Normal | 逐帧法线图 | 分析表面朝向与朝向细节 |
| Camera Parameters | 相机内外参 JSON | 一键下载,供下游建图/渲染使用 |
下方还有一组交互选项(仅作用于点云/网格标签页,实时生效):
- Show Points of a Specific Frame:只显示某一帧的点,便于排查问题
- Show Camera / Show Mesh:叠加显示相机位置、切换网格显示
- Filter low confidence & edges:过滤低置信度与深度边缘区域(默认开启,点云更干净)
- Filter Sky Background:剔除天空区域
重建得到的不是"一段视频",而是可以真正走进去的 3D 世界资产——配合世界生成模块,你可以第一人称漫游、碰撞物理,像游戏一样探索:
进阶:常用启动参数一览
完整参数说明见 DOCUMENTATION.md 的 "Gradio App" 一节,最常用的是这几个:
| 参数 | 默认值 | 说明 |
|---|---|---|
--port | 8081 | 服务端口 |
--share | 关 | 生成公网临时链接,方便手机或远程服务器访问 |
--examples_dir | ./examples/worldrecon | 示例场景目录 |
--use_fsdp/--enable_bf16 | 关 | 多 GPU 参数分片 / bf16 混合精度 |
--fsdp_cpu_offload | 关 | 将参数卸载到 CPU,显存紧张时开启 |
# 例:生成公网链接,把演示分享给同事 python -m hyworld2.worldrecon.gradio_app --share重建产物都有什么?
每次重建的结果保存在gradio_demo_output/input_images_<时间戳>/目录,主要文件:
gaussians.ply—— 标准格式的 3DGS 资产,可导入主流渲染器scene_*.glb—— 浏览器/游戏引擎通用的网格场景文件camera_params.json—— 相机内外参predictions.npz—— 原始预测(点云、深度、法线、掩码),方便二次开发
拿到这些文件,你的数字孪生就已经可以进入 Blender、Unity、Unreal 等引擎做后续编辑了。
小结与延伸阅读
用 HY-World 2.0 的 Gradio 交互演示做 3D 重建,体验可以概括为一句话:上传视频 → 点 Reconstruct → 浏览你的数字孪生。想进一步定制推理参数,可以改用命令行入口 hyworld2/worldrecon/pipeline.py(支持先验相机/深度注入、COLMAP 输出、漫游视频渲染等),全部参数参考 DOCUMENTATION.md;项目介绍与模型下载见 README.md。
【免费下载链接】HY-World-2.0HY-World 2.0: A Multi-Modal World Model for Reconstructing, Generating, and Simulating 3D Worlds项目地址: https://gitcode.com/gh_mirrors/hy/HY-World-2.0
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考