zju3dv/ENeRF
SIGGRAPH Asia 2022: Code for "Efficient Neural Radiance Fields for Interactive Free-viewpoint Video"
ENeRF – 用于交互式自由视角视频的高效神经辐射场
是什么
- 高效神经辐射场(ENeRF)的研究实现,一种加速基于NeRF的视图合成的方法,使交互式(≈20–50 FPS)自由视角视频成为可能。
- 适用于静态场景(DTU、NeRF合成/LLFF)和动态人体捕获(ZJU-MoCap),甚至作者发布的室外数据集。
核心功能
- 在DTU多视角数据集上训练通用的ENeRF模型。
- 在特定场景(如DTU扫描、ZJU-MoCap序列或ENeRF-Outdoor“actor1”数据)上进行微调。
- 使用标准指标(PSNR、SSIM、LPIPS、深度误差)进行评估,并报告实时渲染速度。
- 可选GUI,用于人体捕获的交互式渲染。
安装(来自README)
- 创建conda环境
conda create -n enerf python=3.8 conda activate enerf - 安装PyTorch 1.9.0(CUDA 11.1)及相关包:
pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 \ -f https://download.pytorch.org/whl/torch_stable.html - 安装其余Python依赖项
pip install -r requirements.txt - 设置工作区目录(数据集、检查点和结果将存放于此):
export workspace=$PATH_TO_YOUR_WORKSPACE
数据集与预训练模型
- DTU(预处理的多视角数据)——用于基线模型和微调的必需项。
- NeRF合成与LLFF——用于标准NeRF基准测试的评估。
- ZJU-MoCap——用于交互式GUI的人体捕获数据。
- ENeRF-Outdoor——作者发布的全新室外数据集。
- 预训练DTU模型可下载并放置于
$workspace/trained_model/enerf/dtu_pretrain/latest.pth。
典型工作流程
- 训练(在DTU上训练通用模型):
支持通过python train_net.py --cfg_file configs/enerf/dtu_pretrain.yamltorch.distributed进行多GPU训练。 - 微调(在特定扫描上,例如DTU扫描114):
README指出,在i9-12900K + RTX 3090上,3k和11k次迭代分别耗时约11分钟和40分钟。cd $workspace/trained_model/enerf mkdir dtu_ft_scan114 cp dtu_pretrain/138.pth dtu_ft_scan114 cd $codespace # 包含ENeRF代码的目录 python train_net.py --cfg_file configs/enerf/dtu/scan114.yaml - 评估——例如在DTU上:
示例输出显示PSNR ≈ 27.6,SSIM ≈ 0.957,LPIPS ≈ 0.089,512×640分辨率下约21.8 FPS。python run.py --type evaluate \ --cfg_file configs/enerf/dtu_pretrain.yaml \ enerf.cas_config.render_if False,True \ enerf.cas_config.volume_planes 48,8 \ enerf.eval_depth True - 交互式渲染(人体捕获):
鼠标/键盘控制在README中有说明。python gui_human.py --cfg_file configs/enerf/interactive/zjumocap.yaml
来自README的性能亮点
- DTU评估:27.6 dB PSNR,0.957 SSIM,0.089 LPIPS,21.8 FPS。
- ZJU-MoCap:31.48 dB PSNR,0.971 SSIM,0.042 LPIPS,49.2 FPS。
- 在高端桌面(i9-12900K + RTX 3090)上实现实时渲染。
引用 如果在研究中使用该代码,请引用SIGGRAPH Asia 2022论文:
@inproceedings{lin2022enerf,
title={Efficient Neural Radiance Fields for Interactive Free-viewpoint Video},
author={Lin, Haotong and Peng, Sida and Xu, Zhen and Yan, Yunzhi and Shuai, Qing and Bao, Hujun and Zhou, Xiaowei},
booktitle={SIGGRAPH Asia Conference Proceedings},
year={2022}
}
总结:ENeRF是一个完整的开源实现,支持训练、微调、评估和交互式渲染神经辐射场,重点在于适用于自由视角视频应用的高速推理。
相关
- 项目
- 项目
- 项目
- 项目