1、准备工作
代码下载:
可以从GitHub直接下载,也可以使用提供的git链接下载。
数据下载:
作者提供了几种数据下载链接,也可以直接使用NeRF中的LLFF数据集,这里就不提供链接。
2、环境安装
代码中提供了envrioment.txt,但直接pip进行安装不太能安装成功。在安装环境之前需先检查cuda版本,在后面安装pytorch3d的时候用的上。
(1) 创建并激活新环境:
conda create -n SAGA python==3.8
conda activate SAGA
(2)pytorch、torchvision、torchaudio安装
这个需要对着pytorch官网,找到自己电脑对应的torch版本进行安装即可。安装完成检查torch、cuda是否可用。
检查torch:
import python
import torch (如果import之后不出现报错就说明torch可用
torch.cuda.is_availble (如果输出为True则说明cuda可用
(3)pytorch3d安装
在安装完pytorch之后直接进行pytroch3d的安装,pytorch3d的安装算是整个过程最棘手的,但找对链接就还好。(感谢某位群友大佬提供的链接
PyTorch3D 安装记录_pytorch3d官网-CSDN博客
pytorch3d安装:Files :: Anaconda.org
根据前面查到的cuda版本和torch版本选择适合的pytorch3d版本
(4)submodules和thirty_party安装
submodules中作者有提供代码,则直接进入submodules文件夹下进行安装。
cd submodules/diff-gaussian-rasterization
pip install -e .
cd ..
cd diff-gaussian-rasterization_contrastive_f
pip install -e .
cd ..
cd simple-knn
pip install -e .
cd ../..
thirty_party的安装和上述一致
注:
在submodules中的文件,需要将每个文件中setup.py的下面那句代码修改,不然会报错
(5)其他安装
安装完上述内容其他部分直接对着envrioment.txt进行pip就行。
3、运行代码
运行直接按照作者提供的代码进行运行即可。(在第一次运行中出现了训练过程中出现“已杀死”的问题,后面检查很久才发现是运存不够,后面换成64g的运存才能成功跑起来。
4、其他问题:
(1)RuntimeError: Tensors of type TensorImpl do not have sizes
解决办法:找到对应的文件,将其删除,然后重新pip install -e . ,比如说我的报错是从diff-gaussian-rasterization中import的文件出现问题,就将diff-gaussian-rasterization文件夹删除,然后重新安装就行。
(2)出现一大段的符号
解决办法:在终端输入:export CUDA_HOME=/usr/home/cuda