3DGS代码复现 windows系统操作流程(3D Guassian Splatting)_3dgs复现
3DGS代码复现
- 0 最终的可视化效果
- 1 参考资料
- 2 提前需要配置的环境
- 3 将文件下载到本地
- 4 在pycharm配置环境
- 5 训练点云
- 6 可视化结果
- 7 可视化界面简介
0 最终的可视化效果
1 参考资料
本博客依据的b站视频:3D Gaussian Splatting本地部署(中恩实验室)
论文连接:https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/3d_gaussian_splatting_low.pdf
原始资料:gaussian-splatting-Windows(GitHub)
可视化界面参考原文:SIBR详细介绍:基于图像的渲染系统及3DGS实例展示
2 提前需要配置的环境
有pytorch、conda、cuda、pycharm/visual studio(我使用的是pycharm)
因为这些我很早之前就配好了,过程也忘记的差不多了,所以就不赘述了
我之前在学校服务器配过:学校服务器安装anaconda并配置pytorch环境
3 将文件下载到本地
注意文件名全部到用英文,不然代码运行时会报错
将envs
文件夹复制到Anaconda
的envs
中
4 在pycharm配置环境
在设置里面选择guassian_splatting
环境
5 训练点云
提前准备好视频
将路径拷贝到train_video.py
中
运行train_video.py
代码
这里,我们保存了训练7000步的点云文件
接下来继续训练,到30000步
已运行完毕
30000步训练的点云结果也出来了
6 可视化结果
更改output
里面的文件名
打开SIBR_viewer.py
,填入路径刚刚修改的ggbond
路径
运行SIBR_viewer.py
,出现下面界面
7 可视化界面简介
- Camera Point View 窗口:用于控制相机的视角、路径和参数。你可以保存和加载相机视角,设置关键帧,调整相机的 FOV(视场角),并控制相机的运动速度和加速度。
- Snap to closest:捕捉最近的物体,快速对准焦点。
- FOV Y:控制垂直视场角,值越小,视角越窄。
- Record 和 Play:记录相机路径并播放已记录的运动轨迹。
Mode(模式选择) 来控制摄像机的操作。
SIBR 支持多种相机模式,允许用户根据不同的需求进行调节。常见的模式有:
-
Trackball(轨迹球模式):自由旋转相机,适合观察 3D 模型。我一般选择这个模式,用鼠标操作很方便,可以鼠标左键长按出来绿色的椭圆轨迹,然后可以自由切换视角
-
FPS(第一人称射击模式):类似射击游戏的相机控制。
-
Orbit(轨道模式):围绕目标旋转,适合展示物体。
-
Interp.(插值模式):自动在多个关键帧之间平滑过渡和切换视角,适合展示过程中让相机移动更加流畅自然的场景。这个会自动移动视角。
-
None(无模式):相机视角不响应用户输入,适合观察当前视角。
3D Gaussians 窗口:控制 3D Gaussian Splatting 的渲染参数。
- Splats:控制高斯点云的数量和大小,影响渲染的细节度。
- Render Mode:选择不同的渲染模式,比如全屏渲染、点云渲染等。
- Fast Culling:启用后,加快渲染速度,自动裁剪不在视野范围内的物体。
参考原文链接:SIBR详细介绍:基于图像的渲染系统及3DGS实例展示