Gaussian Splatting高斯溅射代码复现

一、背景前提

1、观察电脑是否存在深度学习项目运行所需的英伟达显卡

在左下侧搜索栏右击,选择任务管理器,在性能一栏查看GPU的类型,此电脑是NVIDIA GeForce RTX 4070 Ti(4080是4070运行速度的四倍,4090和4080之间的关系也是这样)是足够运行高斯溅射模型的。f1523ed6a56e4a93a08aed7045176c95.png

2、下载Anaconda项目运行所需的虚拟环境,网址链接:Download Anaconda Distribution | Anaconda,需要登陆一下自己的邮箱,选择Windows版本,这里只有一个,直接下载就好。b86500eb57b3461b99a87368101164ad.png下载之后直接运行.exe文件,直接下一步下一步就好,那个路径最好默认,不默认的话放自己路径注意要全是英文。
在坐下搜索栏,如果可以找到Anaconda Powershell Promet就说明已经安装成功了,点开之后就可以到Anaconda的命令提示符窗口。6749d76160d84e918a992126112e6551.png

##小补充:
(在Windows系统中,"Win+R"用于快速打开“运行”对话框,这个对话框能够允许用户通过键入特定的命令或程序名称来快速执行各种任务,如打开程序、文件、文件夹、访问网址等,通过这个组合键,可以使用户更迅速地访问和执行各种操作。
Win + R 输入shell:startup:可以设置开机启动的程序;
Win + R 输入cmd:可以打开命令提示符窗口,用于执行各种命令和操作;
Win + R 输入conrol:打开控制面板
Win + R 输入calc:打开计算器
Win + R 输入notepad:打开记事本
......balabala)

3、下载Pycharm

PyCharm是Python的集成开发环境,可以帮助用户在使用Python语言开发时提高其效率,比如调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制,便于代码的调试和修改。Pycharm官方网站网址:PyCharm: the Python IDE for data science and web development (jetbrains.com)
点击Download,下拉,直到看见Pycharm的Community版本,下载的是这个6e011aa36b2a4abca638f0b9442bb8ff.png选中第一个进行下载就可以
8014673fff224a918634a3077230ea68.png
下载完成之后,点击.exe文件进行安装,记得勾选那个.py和桌面快捷方式,其他的可以根据自己的需要来操作。6ba8d0c9e03c4d8a8a5d1db1491ecd6c.png

二、高斯溅射项目获取

1、在Github上获取所需的高斯溅射项目 GitHub - graphdeco-inria/gaussian-splatting: Original reference implementation of "3D Gaussian Splatting for Real-Time Radiance Field Rendering"
dd59b8fd9b894406aa34a4023f5505be.png
这里,直接下载它的zip版本类型就可以,然后再在Pycharm中打开,直接下载项目所需的压缩文件的话,可能会导致项目中的某个文件或文件夹没能成功下载,导致最后的程序运行报错,于是需要重新在github上继续下载对应的缺少的文件。或者也可以是直接克隆这个项目。

git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive

三、阅读README并进行相关环境的配置

1、首先打开高斯溅射的readme文件

基本信息:
(1)Graph:是对这篇文章的间接,包括做出了什么贡献,和nerf隐式渲染相比有什么优势。
(2)BibTex:是文章的基本信息,包括作者、标题、出版日期等
(3)Funding and Acknowledgments:介绍了资助相关信息
(4)Step-by-step Tutorial:告诉我们分教步骤在哪里可以找到。
(5)Colab:一个源代码的地方

项目获取信息:
(1)Cloning the Repository:告诉我们如何克隆这个存储库,有通过本地密钥SSH方法,也可以通过在已经构建的虚拟环境中直接git clone

git clone https://github.com/graphdeco-inria/gaussian-splatting --recursive

(2)Overview(概述):告诉我们代码库有几个方面组成的,一共有四部分。第一部分是基于PyTorch的优化器,经过sfm操作获得目标物体的点云数据之后输入到模型中去,生成3D高斯模型;第二部分是一个网络查看器,用于查看模型运行生成的结果图;第三部分是一个基于openGL的实时查看器,用于实时渲染经过训练的模型;第四部分是脚本文件,能够将自己的图像转化为可以进行优化的sfm数据集的脚本。
(3)New Features(新功能):由于代码库是不断更新的,因此这里给出了更新后的一些新功能。

模型训练部分:

该模型是要用Python环境中使用PyTorch和CUDA扩展来生成经过训练的模型

(1)硬件需求:GPU中的CUDA要在7.0以上;要有24GB的内存。

(2)软件需求:安装好CUDA;VS2019作为C++编译器;在安装好VS2019之后要安装CUDA SDK,我感觉其实就是CUDA,本模型用到的就是11.8版本的,貌似11.6也可以?同时要保证VS2019和CUDA要配套。

四、根据readme的要求安装相应的软件

1、安装VS2019:这是我的百度网盘的VS2019的链接地址

链接:https://pan.baidu.com/s/1UGUqSAnCLL13M3Bpwx9i0Q 
提取码:85qs

这个VS2019只有1.4MB,是VS2019 Community 简体中文版的一个安装引导程序,启动后勾选需要的组建即可进行在线下载安装。

(1)首先下载这个链接中的可执行程序“vs2019_community”,双击执行。直接继续,安装就好

(2)安装进度条拉满之后会弹出如下界面

2b957de5895b49cb91b9d8c776a0fd85.png记得要选中使用C++的桌面开发,这样才能够对项目中的C++语句进行编译,然后别忘记修改安装路径。VS 2019 除了支持 C/C++ 开发,还支持 C#、F#、Visual Basic 等开发语言,我们没有必要安装所有的组件,只需要安装 “使用C++ 的桌面开发” 即可。

下载相应的安装包应用程序,等待进度条全部为100%,然后弹出以下窗口

e7cff0ac6b55446d9501875f108b00e6.png

按照它的建议重启计算机,在开始的菜单里面就可以看见安装好的VS2019,这表明这个编译器我们就已经安装好了。

8c61713dc3f24bb38f640e30ecbdf768.png

2、CUDA的安装

最开始我们已经看见了自己电脑的配置,所以是可以通过安装CUDA来进行深度学习实现加速的,但还是有一些必要的步骤要去做

(1)首先查看自己电脑驱动的版本,win+r,输入cmd,然后再输入nvidia-smi,就可以出现自己电脑的相关情况,红色框框的区域可以看见自己电脑驱动所能支持的最大运行API版本就是多少,这个是12.2版本的,说明支持这个版本以下的所有CUDA,回顾我们刚刚看论文,他需要的是11.8版本的,那我们就可以安装他所要求的11.8版本的。

6f597fd713b4419c806b05c326b00c9c.png

(2)下载链接:CUDA Toolkit Archive | NVIDIA Developer,我们可以在这个网址里面找到所需要的版本的CUDA,毫无疑问我们就选择它咯!

060e9ba835ad48dbaa38e6db3ae25fe5.png然后按照如下配置进行下载

e7a13d76312f48bdaf7c0552bfc2b0dc.png

下载之后会得到一个exe文件,一定要双击运行以下啊!!!我当时没有运行这个,让师兄帮我找了好长时间路径😥😥😥

b9dcb16983474ba4a9205dc0dfd27c5a.png

(3)安装的时候,第一次会让设置临时解压目录,第二次会让设置安装目录,临时解压目录可以自定义,安装目录建议默认在C盘里面,但是就算不在好像也没关系,就是在后面设置环境变量的时候需要自己输入路径的(我的浅浅理解哈)安装的时候选择自定义就可以。都默认就可以,但是要记住自己安装的具体位置

50ea58d75e674f3a979db53ba8bf63a4.png

也就是这个位置要记住一下,然后基本上就是可以默认,直到安装——结束。

(4)环境变量的设置:右击“我的电脑”—点击高级系统设置—查看环境变量

86ca4879805b47b9a2f66fb92f4b2d8f.png141b22e9a7544927becd8b740fa60889.png

2decf46e462941f6b2ba7755853a44a5.png

如下图所示,如果我们的CUDA在安装的时候是默认位置安装的,那么这里就会自动把环境变量给配置成CUDA11.8的,如果不是的话,我们就需要把那个变量值输入为刚刚我们安装的具体位置的。就是如果没有自动生成环境变量的话要把这四个给加进去,保证这四个都存在在环境变量里面,而且路径也对就行。

81dcbe7c8d8140acb46e27afe797b9fb.png

e84c097f11834ea5928bae79922d0724.png

46efd16003284df990fdfa54f88515f2.png

22bf1cfdebec41cda03202109c4df836.png

(5)验证CUDA是否安装成功

在命令行窗口,输入set cuda 就可以查看自己是否安装成功,可以看见我这里是有11.8的,因此安装成功了

d982d24e16a848d69cb85eddc3fec22d.png

3、其他的东西在readme里面没有直接让装,就可以先不用管他比如cudnn,toolkit,因为这些个东西可能会在项目的environment文件里面自动安装好。

五、程序运行

1、环境创建:

程序在运行之前需要新建一个虚拟环境,这个虚拟环境可以通过两种方式来创建

(1)在开始菜单栏下面的Anaconda Powershell命令行窗口下

0df4a32be5ac4002a7055bd9b8157436.png

输入conda env list可以查看当前有多少虚拟环境

创建名为gs的虚拟环境:

conda create -n gs python=3.8

然后根据environment.yml要求安装相应的库

eb840d1ecf1e46339e0752b1b41d3fd9.png

创建完新的环境之后,还需要进行相应的配置,就是保证这个项目是在这个环境中运行的,在pycharm中打开这个项目,然后在文件—设置里面有个python解释器,选择你所创建的那个环境就是envs下的这个虚拟环境下的python.exe(这里除了可以保证这个项目可以在我们所创建的虚拟环境下面运行以外,还有另一个原因,就是和刚刚vs2019很像,用于为python语言的执行找到一个相应的编译环境)

4ab7aff9dda34e96b0007c17ebf8719e.png

一看这个就比较麻烦,而且还很容易出现版本的错误。那么我们就可以采用第二种方法

(2)直接运行项目中的environment.yml文件来创建一个新的环境,这个在readme文件中的setup部分也写到了

SET DISTUTILS_USE_SDK=1 # Windows only
conda env create --file environment.yml
conda activate gaussian_splatting

首先设置一个什么SDK,这个我也不懂,先设置着(但好像不设置也成);然后第二步就是根据environment.yml创建一个新的环境,创建的同时会把里面需要的包给安装好了,好像这个时候连python编译器那一步都不用设置了,反正就是自己可以查看一下,如果不行的话就可以再去设置一下。最后一部是启动这个环境。

tip:有时候在刚使用pycharm打开一个项目的时候发现terminal里面的文件路径不对,这个时候可以cd一下该项目所在的具体文件位置。

2、这个时候我们认为已经配置好环境了,然后就可以按照readme文件中的描述运行这个模型了,在Running部分有写着如何去训练这个模型:

python train.py -s <path to COLMAP or NeRF Synthetic dataset>

这行代码的主要意思就是告诉我们运行train.py这个py文件,然后我们的训练数据集要是经过colmap得到的或者是nerf synthetic数据集的路径。

一般情况下直接这样就是可以运行了的,但是总是会出现一些大大小小的问题。

(1)×××包找不到:我遇到的首先是environment.yml中的这两个包竟然没有装上,然后就需要继续在github上面下载这两个,在当前项目的路径下创建一个名为“submodules”的文件夹,把这两个拷贝到这里面去。

6f066fcc49ce4e8bb54c6e0188e7a77a.png

4b7ad6ac39644fc19f902e4e591a560f.png

(2)程序运行到一半显示IDE内存不足,让我们改变堆大小上限的设置:

帮助--更改内存设置,可以将堆大小上限设置的更大一些,这里设置为6060,貌似就可以了?

1cbfcce0714a484f86dd8a4cff9196e6.png

哈哈哈哈哈哈 不!!还是不可以

仍然是运行结束,显示successful,但是其中一个进度条只有23%呜呜呜,哎...

参考:

CUDA安装教程(超详细)-CSDN博客

2023最新pytorch安装(超详细版)-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值