SplaTAM has been tested on python 3.10, CUDA>=11.6. The simplest way to install all dependences is to use anaconda and pip in the following steps:
conda create -n splatam python=3.10
conda activate splatam
conda install -c "nvidia/label/cuda-11.6.0" cuda-toolkit
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge
pip install -r requirements.txt
scripts/nerfcapture2dataset.py --config configs\iphone\custom_splatam.py
scripts/splatam.py configs\iphone\custom_splatam.py
viz_scripts/final_recon.py configs\iphone\custom_splatam.py
scripts/export_ply.py configs\iphone\custom_splatam.py
scripts/post_splatam.py configs\iphone\custom_splatam.py
scripts/gaussian_splatting.py configs\iphone\custom_splatam.py
bash_scripts\online_demo.bash --config configs\iphone\custom_splatam.py
You can SplaTAM your own environment with an iPhone or LiDAR-equipped Apple device by downloading and using the NeRFCapture app.
Make sure that your iPhone and PC are connected to the same WiFi network, and then run the following command:
bash bash_scripts/online_demo.bash configs/iphone/online_demo.py
On the app, keep clicking send for successive frames. Once the capturing of frames is done, the app will disconnect from the PC and check out SplaTAM's interactive rendering of the reconstruction on your PC! Here are some cool example results:
You can also first capture the dataset and then run SplaTAM offline on the dataset with the following command:
bash bash_scripts/nerfcapture.bash configs/iphone/nerfcapture.py
If you would like to only capture your own iPhone dataset using the NeRFCapture app, please use the following command:
bash bash_scripts/nerfcapture2dataset.bash configs/iphone/dataset.py
We will use the iPhone dataset as an example to show how to use SplaTAM. The following steps are similar for other datasets.
To run SplaTAM, please use the following command:
python scripts/splatam.py configs/iphone/splatam.py
To visualize the final interactive SplaTAM reconstruction, please use the following command:
python viz_scripts/final_recon.py configs/iphone/splatam.py
To visualize the SplaTAM reconstruction in an online fashion, please use the following command:
python viz_scripts/online_recon.py configs/iphone/splatam.py
To export the splats to a .ply file, please use the following command:
python scripts/export_ply.py configs/iphone/splatam.py
PLY
format Splats can be visualized in viewers such as SuperSplat & PolyCam.
To run 3D Gaussian Splatting on the SplaTAM reconstruction, please use the following command:
python scripts/post_splatam_opt.py configs/iphone/post_splatam_opt.py
To run 3D Gaussian Splatting on a dataset using ground truth poses, please use the following command:
python scripts/gaussian_splatting.py configs/iphone/gaussian_splatting.py