0. 前言
仅使用Ubuntu进行场景编译,场景渲染查看则使用Windows下官方提供的编译好的预编译包打开即可,非常方便(要注意即使是预编译版本,Windows端也应该安装VS和CUDA Toolkit,要注意的是,最新的SIBR预编译版本是由CUDA Toolkit 12.0编译的)。
另外,后面的Colmap 3.10部分应该进行自己编译,官方编译好的Linux预编译包只支持CPU编译,不支持GPU
0.1 教程内软件版本号:
名称 | 版本 |
---|---|
Ubuntu(WSL) | 22.04 |
CUDA ToolKit(WSL) | 11.8 |
ninja(WSL) | 1.10.1 |
cmake(WSL) | 3.22.1 |
colmap(WSL) | 3.8(3.9/3.10都有问题,已经试过了) |
Visual Studio Community(Win) | 2022 |
CUDA ToolKit(Win)(要在VS之后安装) | 12.6.2 |
1. WSL安装
这里不再赘述
2. CUDA Toolkit安装
Ubuntu这里使用CUDA Toolkit 11.8 版本进行安装,安装WSL-Linux版本,这里不再赘述
Windows则安装版本12.6.2,用于SIBR_viewer,安装之前请安装VS2022,并且勾选C++开发平台。
CUDA Toolkit 12.6 Update 2 Downloads
2.1 配置PATH
此步骤非常重要,必须按照下面的顺序来!不然编译3DGS的时候会出各种各样的问题!
在.bashrc
中,最后一行添加如下语句:
export PATH=/usr/local/cuda-11.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
3. 安装anaconda
直接官网找资料,非常简单不再赘述
4. 安装3DGS
3.1 克隆Git仓库
# HTTPS
git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive
3.2 安装ninja
sudo apt install ninja-build
3.3 开始构建
cd gaussian-splatting
conda env create --file environment.yml
conda activate gaussian_splatting
出现这个就说明没有问题了
5. 编译colmap
不要安装3.9/3.10版本,我试过了,都不适用与3DGS,有很大的问题!!!
5.1 安装cmake
sudo apt install cmake # 我这里的版本是3.22.1
5.2 下载项目
下载里面的3.8项目
https://github.com/colmap/colmap/releases
5.3 安装依赖
sudo apt-get install \
git \
cmake \
ninja-build \
build-essential \
libboost-program-options-dev \
libboost-filesystem-dev \
libboost-graph-dev \
libboost-system-dev \
libeigen3-dev \
libflann-dev \
libfreeimage-dev \
libmetis-dev \
libgoogle-glog-dev \
libgtest-dev \
libgmock-dev \
libsqlite3-dev \
libglew-dev \
qtbase5-dev \
libqt5opengl5-dev \
libcgal-dev \
libceres-dev
5.4 设定GPU支持
修改CMakeLists.txt
在这里加入(我是3060 12G,所以填写86):
set(CMAKE_CUDA_ARCHITECTURES "86")
具体的数字可以根据这个来填写
5.5 开始编译
如果编译报错了建议看看下面这两篇文章
https://blog.youkuaiyun.com/m0_63071397/article/details/138454295
先进入到colmap目录(如果已经在了就不用管了)
之后运行如下命令:
mkdir build
cd build
cmake .. -GNinja
ninja
sudo ninja install
编译TIP1:
执行cmake .. -GNinja
的途中,你如果看到这个,说明他检测到你的CUDA了
编译TIP2:
如果你在编译途中出现了任何问题,可以删除build文件夹,再重复上述步骤。(清空缓存,不然你做什么更改都没有用)
编译TIP3:
执行完ninja
的结果:
编译结果
5.8 测试
使用Terminal(Windows)执行
colmap gui
这里说一嘴,如果你用MobaXterm去打开,你会得到这样的问题。
查了一下是opengl版本太低。我们看一下自己的版本号
确实是这样,但是如果我们使用Windows自带的窗口呢?**就可以运行成功了。**看一下OpenGL的版本:
看到没有,这俩的OpenGL版本天差地别。暂时不懂什么原因,如果有知道的大佬,希望可以评论区留言!感谢大佬们!
6. SIBR_viewer
在官方的GitHub界面下载好SIBR_viewer的预编译包。安装好VS2022和CUDA12之后。
在其bin
目录运行:
E:\SIBR_viewers\bin> .\SIBR_gaussianViewer_app.exe -m "<your output path>"
至此,完成整个3DGS的安装!