目录
前言
论文链接:Recovering Fine Details for Neural Implicit Surface Reconstruction(恢复神经隐式表面重建的精细细节)
代码链接:D-NeuS
一、系统配置
1. 操作系统:ubuntu20.04
2. GPU:Nvidia RTX3090
3. CUDA:11.3
4. python3.8.0
5.torch==1.8.0(下文对cuda11.3适配的torch进行更换)
6. opencv_python==4.5.2.52
7. trimesh==3.9.8
8. numpy==1.19.2
9. pyhocon==0.3.57
10. icecream==2.1.0
二、依赖项安装
git clone https://github.com/fraunhoferhhi/D-NeuS
cd D-NeuS
pip install -r requirements.txt
按照以上代码在终端中运行就可以下载此项目的软件包并且完成conda环境的配置。
可能会遇到的问题:
1、pytorch安装报错
我电脑安装的cuda是11.3的,但是配置文件里面的pytorch是1.8版本的,我在pytorch官网上没有找到cuda11.3对应的pytoch==1.8版本的,如果直接安装pytorch1.8版本的话训练时会报错使用不了GPU加速,因此我安装cuda11.1版本的pytorch,可以进行训练,以下是安装指令。解决torch安装出现的问题
pip install torch==1.8.0+cu111 -f https://download.pytorch.org/whl/cu111/torch_stable.html
2、全少安装依赖项
在安装tensorboard的时候可能会出现依赖项版本不匹配,安装报错的提示进行固定版本的安装就可以了。
三、数据集设置
1、数据集链接
预处理DTU数据集链接(引用自MVSDF)
2、数据集组织(以DTU_scan24为例)
Data
|DTU
| | <case_name>
| | |-- cameras_xxx.npz # camera parameters
| |
| | |-- image
| | |-- 000.png # target image for each view
| | |-- 001.png
| | ...
| |
| | |-- mask
| | |-- 000.png
| | |-- 001.png
| | |...
| |
| | |-- cam4fea
| | |--cam_00000000_flow3.txt
| | |--cam_00000001_flow3.txt
| | |...
四、模型训练
1、训练(以DTU_scan24为例)
python exp_runner.py --mode train --case scan24
训练终止时继续训练(断点训练)
python exp_runner.py --conf ./conf --mode train --is_continue --gpu 0 --case scan24
2、从训练的模型中提取表面
python exp_runner.py --mode validate_mesh --case scan24 --is_continue
3、视图插值
python exp_runner.py --mode interpolate_<img_idx_0>_<img_idx_1> --case <e.g., scan24> --is_continue