3D Gaussian Splatting学习记录11.1

3D Gaussian Splatting是一种用一组2D图像/视频创建高质量3D场景,从而可以从任意角度渲染的方法。类似NeRF但效果更好。

3D Gaussian Splatting学习记录11.1_第1张图片

在本地复现

参考A beginner friendly introduction to 3D Gaussian Splats and tutorial on how to train them.和3D Gaussian Splatting入门指南 - 哔哩哔哩

  1. 下载环境,安装python、git、CUDA
  2. 在想安装的目录地址栏输入cmd,再输入git clone [email protected]:graphdeco-inria/gaussian-splatting.git --recursive
  3. 拍摄各个角度的照片,放入项目新建的data/input文件夹
  4. 下载安装COLMAP(对应CUDA版本的),解压后添加到电脑系统的环境变量中
  5. 在项目地址栏键入cmd,再输入python convert.py -s data,运行可获取相机位姿
  6. 打开COLMAP.bat可看到可视化相机位姿,File>Import model,选择文件data/sparse/0,可看到可视化点云
  7. python train.py -s data/output,训练
  8. 下载可视化工具,运行.\viewers\bin\SIBR_gaussianViewer_app -m data/output

在服务器复现

  • 在目录hufei/code/gaussian-spaltting,激活虚拟环境conda activate gaussian
  • python train.py -s ./dataset/db/playroom
  • 更新pip,安装numpy

3D Gaussian Splatting学习记录11.1_第2张图片

  • NameError: name 's' is not defined - 解决: 将gaussian_renderer/__init__.py, line 88 的代码注释掉

3D Gaussian Splatting学习记录11.1_第3张图片

  • 开始训练了,但是训练完不成就结束了

3D Gaussian Splatting学习记录11.1_第4张图片

  • 解决:应是和其他程序公用显卡的问题,在train.py的26行os.environ['CUDA_VISIBLE_DEVICES'] = '1',训练完成

3D Gaussian Splatting学习记录11.1_第5张图片

你可能感兴趣的:(学习)