Mip-Splatting: 无混叠的3D高斯喷溅
余泽昊 · 陈安培 · 黄斌斌 · Torsten Sattler · Andreas Geiger
CVPR 2024 最佳学生论文
论文 | arXiv | 项目页面 | 在线查看器
我们为3D高斯喷溅(3DGS)引入了一个3D平滑滤波器和一个2D Mip滤波器,消除了多种伪影并实现了无混叠的渲染。
更新
我们集成了高斯不透明度场中提出的改进密集化指标,显著提高了新视角合成结果,详情请查看论文。请下载最新代码并重新安装diff-gaussian-rasterization
以尝试。
安装
克隆仓库并使用以下命令创建Anaconda环境
git clone git@github.com:autonomousvision/mip-splatting.git
cd mip-splatting
conda create -y -n mip-splatting python=3.8
conda activate mip-splatting
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 -f https://download.pytorch.org/whl/torch_stable.html
conda install cudatoolkit-dev=11.3 -c conda-forge
pip install -r requirements.txt
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn/
数据集
Blender数据集
请从NeRF官方Google Drive下载并解压nerf_synthetic.zip。然后使用以下命令生成多尺度Blender数据集
python convert_blender_data.py --blender_dir nerf_synthetic/ --out_dir multi-scale
Mip-NeRF 360数据集
请从Mip-NeRF 360下载数据,并向作者请求treehill和flowers场景。
训练和评估
# 在NeRF-synthetic数据集上进行单尺度训练和单尺度测试
python scripts/run_nerf_synthetic_stmt.py
# 在NeRF-synthetic数据集上进行多尺度训练和多尺度测试
python scripts/run_nerf_synthetic_mtmt.py
# 在mip-nerf 360数据集上进行单尺度训练和单尺度测试
python scripts/run_mipnerf360.py
# 在mip-nerf 360数据集上进行单尺度训练和多尺度测试
python scripts/run_mipnerf360_stmt.py
在线查看器
训练后,您可以使用以下命令将3D平滑滤波器融合到高斯参数中
python create_fused_ply.py -m {model_dir}/{scene} --output_ply fused/{scene}_fused.ply"
然后使用我们的在线查看器来可视化训练好的模型。
致谢
本项目基于3DGS构建。请遵循3DGS的许可证。我们感谢所有作者的出色工作和代码库。
引用
如果您发现我们的代码或论文有用,请引用
@InProceedings{Yu2024MipSplatting,
author = {Yu, Zehao and Chen, Anpei and Huang, Binbin and Sattler, Torsten and Geiger, Andreas},
title = {Mip-Splatting: Alias-free 3D Gaussian Splatting},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2024},
pages = {19447-19456}
}
如果您发现我们改进的密集化指标有用,请引用
@article{Yu2024GOF,
author = {Yu, Zehao and Sattler, Torsten and Geiger, Andreas},
title = {Gaussian Opacity Fields: Efficient High-quality Compact Surface Reconstruction in Unbounded Scenes},
journal = {arXiv:2404.10772},
year = {2024},
}