/RGBD-GS-ICP-SLAM-Comment

RGBD GS-ICP SLAM的中文注释版

Primary LanguageC++MIT LicenseMIT

RGBD GS-ICP SLAM (中文注释版)

github (1)


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

# 安装pcl,zanshibuxuyao
# pip install pcl
# conda config --add channels conda-forge
# conda install -c sirokujira python-pcl  

Also, PCL is needed for fast-gicp submodule.

Install submodules

 cd submodules/
 
git clone https://github.com/Lab-of-AI-and-Robotics/diff-gaussian-rasterization.git
 
git clone https://github.com/Lab-of-AI-and-Robotics/fast_gicp.git
 
git clone https://github.com/camenduru/simple-knn.git


# 然后执行下面代码
conda activate gsicpslam
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn

cd submodules/fast_gicp
mkdir build
cd build
cmake ..
make -j8
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

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

git clone https://github.com/embree/embree.git
mkdir embress/build
cd embree
git checkout v3.1.0
mkdir build
cmake -DCMAKE_INSTALL_PREFIX=/usr \
           -DEMBREE_TUTORIALS=OFF \
			-DEMBREE_ISPC_SUPPORT=OFF \
			-DEMBREE_TASKING_SYSTEM=OFF ..
make -j8
sudo make install


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.

GIFMaker_me

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.