当前位置:首页 > 系统教程 > 正文

3DGS环境配置和初步复现记录 (实验室远程训练——Ubuntu20.04)

3DGS环境配置和初步复现记录 (实验室远程训练——Ubuntu20.04)

3D Gaussian Splatting(简称3DGS)是一种基于3D高斯的实时辐射场渲染技术,在计算机视觉与图形学领域引起广泛关注。本文面向初学者,详细记录在Ubuntu20.04系统上配置3DGS环境并进行初步复现的全过程,特别针对实验室远程训练场景给出实用建议。关键词:3DGS环境配置Ubuntu20.04 3DGS3D Gaussian Splatting 复现远程训练 3DGS

3DGS环境配置和初步复现记录 (实验室远程训练——Ubuntu20.04) 3DGS环境配置  Ubuntu20.04 3DGS 3D Gaussian Splatting 复现 远程训练 第1张

1. 准备工作

确保你的机器满足以下条件:

  • 操作系统:Ubuntu 20.04 LTS
  • NVIDIA显卡,驱动版本≥470,CUDA能力≥7.0
  • SSH远程访问权限(实验室服务器场景)
  • 已安装Anaconda/Miniconda

2. 安装CUDA与conda环境

推荐使用conda隔离环境,避免依赖冲突。执行以下命令:

    conda create -n 3dgs python=3.8conda activate 3dgsconda install cudatoolkit=11.6 -c nvidia  

验证CUDA:nvcc --version

3. 克隆3DGS源码并安装依赖

    git clone https://github.com/graphdeco-inria/gaussian-splatting.git --recursivecd gaussian-splattingconda env create -f environment.yml  # 会自动创建名为gaussian_splatting的conda环境  

如果遇到网络问题,可使用代理或手动下载依赖。

4. 编译子模块

进入子模块目录编译:

    conda activate gaussian_splattingpip install submodules/simple-knnpip install submodules/diff-gaussian-rasterization  

若编译失败,检查CUDA路径是否正确,或安装gcc/g++(sudo apt install build-essential)。

5. 准备训练数据

官方推荐使用Tanks&TemplesMip-NeRF360数据集。也可以用自己的COLMAP结果。下面以下载小样本Truck为例:

    wget https://storage.googleapis.com/gresearch/refraw360/360_extra_scenes.zipunzip 360_extra_scenes.zip -d data/  

或者使用项目提供的脚本将COLMAP输出转换为3DGS格式:

    python convert.py -s   

6. 开始训练

在远程服务器上,建议使用tmuxscreen保持会话。训练命令:

    python train.py -s data/360_extra_scenes/truck -m output/truck --eval  

训练过程会保存点云和模型文件,可用TensorBoard监控损失:

    tensorboard --logdir output/truck  

7. 可视化结果

官方提供了基于SIBR的交互式查看器,需要额外编译。也可以直接渲染视频:

    python render.py -m output/truck  

生成的图片和视频位于output/truck/renders目录。

8. 远程训练技巧

  • 使用nohuptmux防止会话断开。
  • 定期同步输出文件到本地:rsync -avz user@server:~/gaussian-splatting/output/ ./local_output/
  • 监控GPU状态:watch -n 1 nvidia-smi
  • 如果内存不足,可减少--data_device或使用CPU预处理数据。

常见问题

编译diff-gaussian-rasterization失败:安装libopenexr-dev、libboost-all-dev,或检查CUDA版本兼容性。❌训练时报显存不足:降低批量大小(--batch_size)或使用更小的图像分辨率。❌远程训练无法渲染:设置--disable_viewer,仅训练不启动GUI。

至此,你已经完成了3DGS环境配置与初步复现! 后续可以尝试自定义数据集或调整参数进一步探索。