PGSR: 计划基于高斯散点的高效和高保真表面重建
1. 项目介绍
PGSR(Planar-based Gaussian Splatting Reconstruction)是一个用于从多视角RGB图像中进行高效和高保真表面重建的开源项目。该技术不需要任何几何先验(如预训练模型的深度或法线),通过基于平面的高斯散点表示,实现对物体表面的精确重构。
2. 项目快速启动
环境准备
首先,确保安装了以下环境:
- Python 3.8
- Conda
- Git
克隆项目
使用Git克隆项目仓库:
git clone git@github.com:zju3dv/PGSR.git
cd PGSR
创建虚拟环境并安装依赖
创建并激活虚拟环境,安装必要的依赖:
conda create -n pgsr python=3.8
conda activate pgsr
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
pip install submodules/diff-plane-rasterization
pip install submodules/simple-knn
数据预处理
请从以下链接下载预处理后的数据集:
按照以下目录结构组织数据:
data/
├── dtu_dataset/
│ ├── dtu/
│ │ ├── scan24/
│ │ │ ├── images/
│ │ │ ├── mask/
│ │ │ ├── sparse/
│ │ │ ├── cameras_sphere.npz
│ │ │ └── cameras.npz
│ ├── dtu_eval/
│ │ ├── Points/
│ │ │ └── stl/
│ │ └── ObsMask/
├── tnt_dataset/
│ ├── tnt/
│ │ ├── Ignatius/
│ │ │ ├── images_raw/
│ │ │ ├── Ignatius_COLMAP_SfM.log
│ │ │ ├── Ignatius_trans.txt
│ │ │ ├── Ignatius.json
│ │ │ ├── Ignatius_mapping_reference.txt
│ │ │ └── Ignatius.ply
└── MipNeRF360/
├── bicycle/
└── ...
训练与评估
根据具体数据集,运行相应的预处理、训练和评估脚本。以下是DTU数据集的示例:
python scripts/run_dtu.py
3. 应用案例和最佳实践
- 调整参数:根据实际数据集,调整阈值、最大深度、体素大小等参数,以获得最佳性能。
- 降采样:对于弱纹理场景,可以通过降采样图像来加速训练速度。
- 深度过滤:对于包含浮点或不充分视角的场景,启用深度过滤功能可以提高重建质量。
4. 典型生态项目
目前,PGSR基于以下开源项目构建:
- 3DGS
- AbsGau
- GOF
- Neuralangelo scripts
- DTUeval-python
- TanksAndTemples
以上是PGSR项目的概述、快速启动指南、应用案例以及相关生态项目介绍。希望这对您使用和贡献该项目有所帮助。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



