This repository is intended to substantiate the results reported in the paper. Additional features including visualization tools will be updated soon!
Install requirements
conda create -n gsicpslam python==3.9
conda activate gsicpslam
conda install pytorch==2.0.0 torchvision==0.15.0 torchaudio==2.0.0 pytorch-cuda=11.8 -c pytorch -c nvidia
pip install -r requirements.txt
Also, PCL is needed for fast-gicp submodule.
Install submodules
conda activate gsicpslam
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn
cd submodules/fast_gicp
mkdir build
cd build
cmake ..
make
cd ..
python setup.py install --user
Replica
bash download_replica.sh
Please modify the directory structure to ours.
The original structure
Replica
- room0
- results (contain rgbd images)
- frame000000.jpg
- depth000000.jpg
...
- traj.txt
...
Our structure
Replica
- room0
- images (contain rgb images)
- frame000000.jpg
...
- depth_images (contain depth images)
- depth000000.jpg
...
- traj.txt
...
TUM-RGBD
bash download_tum.sh
Limited to 30 FPS
# Replica
bash replica.sh
# TUM
bash tum.sh
Unlimited tracking speed
# Replica
bash replica_unlimit.sh
# TUM
bash tum_unlimit.sh
cd SIBR_viewers
cmake -Bbuild . -DCMAKE_BUILD_TYPE=Release
cmake --build build -j24 --target install
Rerun viewer shows the means of trackable Gaussians, and rendered image from reconstructed 3dgs map.
python -W ignore gs_icp_slam.py --rerun_viewer
python -W ignore gs_icp_slam.py --dataset_path dataset/Replica/office0 --verbose
# In other terminal
cd SIBR_viewers
./install/bin/SIBR_remoteGaussian_app --rendering-size 1280 720
Please see the README.md in the docker_files folder.