Windows本地部署3DGS
参考资料:
https://www.bilibili.com/video/BV1TC4y1M7EU/?spm_id_from=333.880.my_history.page.click&vd_source=c3cf57c8e78115d1eabc81099f74595c
https://blog.csdn.net/weixin_44574971/article/details/144111828
Windows下3D Gaussian Splatting从0开始安装配置环境及训练教程_3d gaussian splatting system下载-CSDN博客
第三个链接的博客已经写的非常清楚了,唯一需要注意的点就是安装visual studio安装2019版本的。我这里写的不清楚的地方可以参考第三个链接。然后需要安装的各种包的链接在那一篇博客中也提供了。
配置说明:
博主之前也测试了很多遍,但多数因为各个包的版本冲突导致安装失败。这里展示安装成功的版本推荐:
visual studio 2019 //不要安装2022版本的,因为3DFS要使用到CUDA编程,且其中的子模块下载下来需要先编译,需要使用到C++的一些工具
python ==3.10.6
numpy ==1.26.4 // 3DGS的源码使用的是1.x版本的Numpy,不要下载2.x的
cv2 ==4.8.0.76 //不要下载最新版的,这个版本可以和上面的Numpy兼容
pytorch //使用的是这个版本的安装包,torch2.1.2 ,CUDA11.8(就是CUDA Toolkit11.8.0)
torch-2.1.2+cu118-cp310-cp310-win_amd64.whl
下载2019版本的vs链接:https://zhuanlan.zhihu.com/p/740245143
下载源码:
3DGS的源码有很多子模块submodels->下的这三个文件都需要下载,特别需要注意的是,这里的simple-knn并不会点击链接然后跳转进去,这里可以自己在网页搜索simple-knn这个项目,下载好后然后解压放到对应的文件夹即可。此外,需要注意的是,在submodules\diff-gaussian-rasterization\third_party的目录下,还需要下载一个项目glm,同样的你需要在github中搜索下载好这个项目然后放到对应的文件夹。


当然,你也可以采用“子模块递归下载”的方式下载,不过可能想快速下载的话需要配置一下代理设置。这里采用的是简单的方式直接下载压缩包的。
项目文件的编译:
到了这一步,是假设前面推荐的前面那些各种版本包的安装已经完成。(备注:到此处,需要安装的环境有,visual studio 2019,python3.10.6,anaconda(如果喜欢用这个的话),pytorch2.1.2,CUDA11.8,该配置的环境变量都已经配置好了)。

安装好visual studio2019后,可以在创建一个空白项目的时候,搜索一个叫做“CUDA Runtime ”的程序后,这个程序是用来检验CUDA编程是否正常的,运行结果是输出一个矩阵一样二挡东西就说明没问题。
对于diff-gaussian-rasterization的编译,采用下图所示方法。

simple-knn的编译采用类似的方法,先进入目标文件夹,然后执行编译指令。
显示结果大致这样的,就是编译成功了:
|

运行代码:

放入生成的视频在data文件夹里面,视频文件名命名为input,并在data文件夹中创建一个input文件夹,如图所示:其他文件夹暂时不用管,那是运行脚本后生成的文件。

安装Colmap,安装viewer(3DGS的可视化工具),安装ffmpeg。如何安装的可以参考文章:
Windows下3D Gaussian Splatting从0开始安装配置环境及训练教程_3d gaussian splatting system下载-CSDN博客
注意安装好记得配置环境变量,测试一下能不能使用。
整个3DGS的工作流程是:先对视频抽帧,获得图片数据集,这些图片数据集会保存在刚才创建的input文件夹中。然后使用colmap,根据获得的图片建模,得到初始点云。
将视频处理成图片的指令是:
ffmpeg -i input.mp4 -vf "setpts=0.2*PTS" input\input_%%4d.jpg
这个指令需要再data文件夹下执行。
使用colmap根据图片得到点云,指令是:
python convert.py -s data
这个指令需要在gaussian-splatting文件夹下执行。执行后,就会在data文件夹里面出现很多文件啦。
最后就是训练模型了:
训练的指令是:
python train.py -s data -m data/output

这个指令也是再gaussian-splatting文件夹下执行。训练完成 后,就可以使用前面安装的viewer来查看重建的效果了,执行的指令是:
.\viewers\bin\SIBR_gaussianViewer_app -m data/output
直接通过这一条指令运行会发生一个报错:因为缺少一个动态链接库,也就是少了这个下图的这个文件:
![]()
解决方案可以参考这个链接,这个链接提供了下载这个文件的方式,将这个文件下载后移动到如下图所示的文件位置即可:

至此,大概的3DGS部署流程就结束了。
最后给大家展示一下总的环境情况吧,大家要是配置失败了可以参考一下。大多数原因都是包的版本文件,然后导致各种缺文件,编译错误等。visual studio一定要安装2019版本的。

