其实3Dgaussiansplatting的配置并不难,关键问题就在cuda和torch,以及是否成功安装MVSC上。我就是因为cuda环境11.6而走了很多弯路,最后即使submodole安装成功后续也出现问题,最后查了很多资料还是重新安装了cuda11.7后解决了。
1.安装colmap
windows安装cuda版本的colmap: https://blog.youkuaiyun.com/zhingzt/article/details/127960418
2.安装MSVC
安装 Diff-gaussian-rasterization 要用到 MSVC,我直接安装了 Visual Studio2019,安装时在installer里勾选C++桌面开发。记得配置环境变量(根据自己的实际路径更改):
在命令行输入:cl ,出现以下内容才算安装成功。否则就去检查环境变量是否添加正确。
3.下载源码
git clone GitHub - graphdeco-inria/gaussian-splatting: Original reference implementation of "3D Gaussian Splatting for Real-Time Radiance Field Rendering" --recursive
4.开始配置环境
使用nvcc -V 查看本机cuda版本号。
我使用python3.7+cuda11.7(我电脑本身的cuda是11.6,但尝试多次都出现submodules/diff-gaussian-rasterization与submodules/simple-knn无法完成配置! 后来下了cuda11.7才配置成功,保险起见还是建议安装cuda11.7) 若有多个版本cuda,可以在系统环境变量中移动顺序设置优先级。安装cuda后确保环境变量正确,一般安装好会自动添加,不用管。
据说如果CUDA版本是11.8,要选择Python3.8版本,CUDA11.8+Python3.7版本后续的一些配置不上,版本不支持。
正式开始配置:
conda create -n gaussian python=3.7.13
conda activate gaussian
#听说在这里使用conda安装容易出问题,建议使用pip安装,所以我就没试,不信的可以自己试试看:
#conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
#或pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
#重点! 在安装两个cuda写的子模块前安装下 vs2019_win-64 这个包,可确保 Visual Studio 2019 构建工具可用并设置必要的环境变量
conda install -c conda-forge vs2019_win-64
# 切换到gaussian-splatting所在目录
cd D:\PycharmProjects\gaussian-splatting-v0
# 安装两个子模块,以及其他包
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn
pip install plyfile tqdm
参考链接:https://blog.youkuaiyun.com/qwertyudfghj/article/details/135120326
配置完成,开始使用:
python convert.py -s data/yourname
python train.py -s data/yourname -m data/yourname/output
cd viewers\bin
SIBR_gaussianViewer_app -m data/output
5.报错处理
1.from . import _c ImportError:DLL load failed:找不到指定的程序。
解决:我同学是重新安装了环境,使用以下指令安装torch torchvision torchaudio:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
而我是本地下载cuda11.7后解决。
2.两个子模块安装失败,无法编译
解决办法:检查第二步环境变量是否设置正确。