1. 介绍
GaussianPro: 3D Gaussian Splatting with Progressive Propagation
3D高斯分布(3DGS)最近以其高保真度和效率彻底改变了神经渲染领域。然而,3DGS在很大程度上依赖于运动结构(SfM)技术生成的初始化点云。当处理不可避免地包含无纹理表面的大型场景时,SfM技术无法在这些表面中产生足够的点,并且无法为3DGS提供良好的初始化。因此,3DGS面临优化困难和渲染质量低的问题。在本文中,受经典多视图立体 (MVS) 技术的启发,我们提出了GaussianPro,这是一种应用渐进传播策略来指导3D高斯的致密化的新颖方法。与简单的分割和克隆策略相比与3DGS中使用的方法一样,我们的方法利用场景现有重建几何形状的先验,并利用面片匹配来生成具有准确位置和方向的新高斯函数。大规模和大规模的实验小规模场景验证有效性我们的方法。我们的方法在 Waymo 数据集上显着优于3DGS,在PSNR方面表现出1.15dB的改进。
2. 代码下载
git clone https://github.com/kcheng1021/GaussianPro.git --recursive3. 环境配置
conda create --name gaussian_pro python=3.73.1. 安装普通依赖库
pip install plyfile==0.8.1pip install tqdm matplotlib3.2. 安装pytorch
查看cuda版本
ll /usr/local/cuda
根据cuda的版本找到对应版本的torch, torchvision, torchaudio
Previous PyTorch Versions | PyTorch
安装 torch, torchvision, torchaudio
pip install torch==1.13.0+cu117 torchvision==0.14.0+cu117 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu1173.3. 安装子模块
pip install submodules/diff-gaussian-rasterization/pip install submodules/simple-knn/pip install submodules/Propagation/4. 问题记录
现象
Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.
解决方法
pip uninstall numpy
pip install numpy5. 数据下载
https://drive.google.com/file/d/1DXQRBcUIrnIC33WNq8pVLKZ_W1VwON3k/view?usp=sharing
6. 运行
6.1. 训练
python train.py -s [data_path] -m [output_path] --eval --position_lr_init 0.000016 --scaling_lr 0.001 --percent_dense 0.0005 --port 1021 --dataset waymo6.2. 渲染
python render.py -m [data_path]参考文献
GitHub - kcheng1021/GaussianPro: [ICML2024] Official code for GaussianPro: 3D Gaussian Splatting with Progressive Propagation