MotionGS: 探索显式运动引导的变形3D高斯泼洒
1. 项目介绍
MotionGS 是一个开源项目,它通过显式运动引导来探索变形3D高斯泼洒。该项目基于多个先进技术,如 Deformable3DGS、GaussianFlow 等,旨在通过优化相机姿态和使用深度与光流信息,提高3D渲染的质量和效率。适用于动态场景的渲染和视觉效果制作。
2. 项目快速启动
环境准备
首先,您需要克隆这个仓库并安装所需的依赖:
git clone git@github.com:RuijieZhu94/MotionGS.git --recursive
cd MotionGS
conda create -n motiongs python=3.7
conda activate motiongs
安装PyTorch
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116
安装依赖
pip install -r requirements.txt
训练模型
以下是训练模型的示例命令:
NeRF-DS 数据集
expname=NeRF-DS
scenename=as_novel_view
mkdir -p output/$expname/$scenename
python train.py -s data/NeRF-DS/$scenename -m output/$expname/$scenename --eval --use_depth_and_flow --optimize_pose
HyperNeRF 数据集
expname=HyperNerf
scenename=broom2
mkdir -p output/$expname/$scenename
python train.py -s data/hypernerf/vrig/$scenename -m output/$expname/$scenename --scene_format nerfies --eval --use_depth_and_flow --optimize_pose
DyNeRF 数据集
expname=dynerf
scenename=flame_steak
mkdir -p output/$expname/$scenename
python train.py -s data/dynerf/$scenename -m output/$expname/$scenename --scene_format plenopticVideo --resolution 4 --dataloader --eval --use_depth_and_flow
3. 应用案例和最佳实践
渲染模式
项目支持多种渲染模式,以下是一些示例:
render
: 渲染所有测试图像time
: 时间插值任务,适用于 D-NeRF 数据集all
: 时间和视图合成任务,适用于 D-NeRF 数据集view
: 视图合成任务,适用于 D-NeRF 数据集original
: 时间和视图合成任务,适用于真实世界数据集
评估
python render.py -m output/exp-name --mode render
python metrics.py -m output/exp-name
4. 典型生态项目
MotionGS 可以与多个开源项目结合使用,例如 Deformable3DGS、GaussianFlow、MonoGS 等,以实现更丰富的功能和效果。通过这些项目的协同工作,可以大大提升动态3D渲染的性能和应用范围。