Instant-angelo 项目简介
项目概述
Instant-angelo 是一项创新的项目,旨在快速创建高保真数字孪生体(Digital Twin),并且时间仅需 20 分钟!它能够从常见的移动设备拍摄的 RGB 视频中构建出逼真的 3D 表面。这些 3D 表面不论是小型物体还是大型真实场景,都能展现出卓越的三维地理细节。然而,目前的方法在速度和细节保真度上仍有改进空间。Instant-angelo 正致力于研究如何在短时间内达到高质量的重建效果。
最新进展
项目新增了 UniSDF 的重新实现,这是一种通用微分渲染器,用于反射物体的 3D 重建,表现出了最先进的效果。通过在反射模式下的应用,Instant-angelo 将能够更好地重建反光表面,提升项目的逼真度及重建速度。
项目目标
目前的 Neuralangelo 版本在实际场景重建上需要 40 小时和 40 GB 的显存。为了弥补这一不足,Instant-angelo 计划开发一个改进版的模型,使得在 20 分钟内实现高保真的神经表面重建成为可能,不牺牲质量。
安装说明
项目对安装环境有一定要求。在终端中,用户需要运行如下命令以安装必要的软件包:
pip install torch torchvision
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
pip install -r requirements.txt
有关 COLMAP 的安装说明,请访问其官方网站。
数据准备
在进行重建之前,用户需要准备数据并按照如下结构组织:
-data_001
-images
-mask (optional)
-data_002
-images
-mask (optional)
使用 COLMAP 后,可以用提供的脚本进行预处理和滤波以优化重建效果。
重建开始
项目提供了不同的重建模式,从平滑表面重建到细节表面重建,以及实验性的反射表面重建,用户可以根据具体需求选择不同的模式。
平滑表面重建
这种模式适用于表面光滑、细节较少的物体。执行命令:
bash run_neuralangelo-colmap_sparse.sh ${INPUT_DIR}
细节表面重建
如果需要高保真的细节重建,并有现成的点云数据,可以使用以下命令:
bash run_neuralangelo-colmap_dense.sh ${INPUT_DIR}
实验性反射表面重建
对于反射表面的重建,可以尝试:
bash run_neuralangelo-colmap_sparse_reflection.sh ${INPUT_DIR}
常见问题解答
1. CUDA 内存不足怎么办?
Instant-angelo 需要至少 10GB 的 GPU 内存。可以尝试降低 model.num_samples_per_ray
的数值从 1024 到 512。
2. 我可以在商业项目中使用该项目吗?
项目采用 MIT 许可证,允许商业使用,但需适当归属原作者和项目。
3. 我的自定义数据集重建效果不好怎么办?
如果遇到与数据集不兼容的问题,请联系项目维护者或在项目页面提出问题。
相关项目
- instant-nsr-pl:优秀的 PyTorch-Lightning 实现
- neuralangelo:Neuralangelo 官方实现
- sdfstudio:基于 SDF 的神经重建统一框架
致谢
特别感谢 UniSDF 的作者 Fangjinhua Wang 以及 instant-nsr-pl 的 bennyguo 等人对项目改进的贡献。