RGBD GS-ICP SLAM (100FPS Gaussian Splatting SLAM)
September 26, 2024 ยท View on GitHub
This repository is intended to substantiate the results reported in the paper. Additional features including visualization tools will be updated soon!
Environments
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
Datasets
-
Replica
-
Download
bash download_replica.sh -
Configure
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
- Download
bash download_tum.sh
- Download
Run
-
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
Installing SIBR Viewer
cd SIBR_viewers
cmake -Bbuild . -DCMAKE_BUILD_TYPE=Release
cmake --build build -j24 --target install
Real-time demo
Using rerun.io viewer
Rerun viewer shows the means of trackable Gaussians, and rendered image from reconstructed 3dgs map.
python -W ignore gs_icp_slam.py --rerun_viewer
Using SIBR 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
Docker
Please see the README.md in the docker_files folder.