# ElasticFusion **Repository Path**: BigCalr/ElasticFusion ## Basic Information - **Project Name**: ElasticFusion - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-02 - **Last Updated**: 2023-11-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ElasticFusion # Real-time dense visual SLAM system capable of capturing comprehensive dense globally consistent surfel-based maps of room scale environments explored using an RGB-D camera. # Related Publications # Please cite this work if you make use of our system in any of your own endeavors: * **[ElasticFusion: Real-Time Dense SLAM and Light Source Estimation](http://www.thomaswhelan.ie/Whelan16ijrr.pdf)**, *T. Whelan, R. F. Salas-Moreno, B. Glocker, A. J. Davison and S. Leutenegger*, IJRR '16 * **[ElasticFusion: Dense SLAM Without A Pose Graph](http://thomaswhelan.ie/Whelan15rss.pdf)**, *T. Whelan, S. Leutenegger, R. F. Salas-Moreno, B. Glocker and A. J. Davison*, RSS '15 # 1. What do I need to build it? # ## 1.1. Ubuntu ## Ubuntu 22.04 on Xorg, NVIDIA drivers 510.73.05, CUDA driver 11.6, CUDA toolkit 11.5 (essentially whatever is in the Ubuntu repos). ```bash sudo apt install -y cmake-qt-gui git build-essential libusb-1.0-0-dev libudev-dev openjdk-11-jdk freeglut3-dev libglew-dev libsuitesparse-dev zlib1g-dev libjpeg-dev ``` ```bash git clone https://github.com/mp3guy/ElasticFusion.git cd ElasticFusion/ git submodule update --init cd third-party/OpenNI2/ make -j8 cd ../Pangolin/ mkdir build cd build cmake .. -DEIGEN_INCLUDE_DIR=$HOME/ElasticFusion/third-party/Eigen/ -DBUILD_PANGOLIN_PYTHON=false make -j8 cd ../../.. mkdir build cd build/ cmake .. ``` # 2. How do I use it? # There are two subprojects in the repo: * The *Core* is the main engine which builds into a shared library that you can link into other projects and treat like an API. * The *Tools* where the graphical interface used to run the system on either live sensor data or a logged data file lives. The executable (*ElasticFusion*) can take a bunch of parameters when launching it from the command line. They are as follows: * *-cal * : Loads a camera calibration file specified as *fx fy cx cy*. * *-l * : Processes the specified .klg log file. * *-p * : Loads ground truth poses to use instead of estimated pose. * *-c * : Surfel confidence threshold (default *10*). * *-d * : Cutoff distance for depth processing (default *3*m). * *-i * : Relative ICP/RGB tracking weight (default *10*). * *-ie * : Local loop closure residual threshold (default *5e-05*). * *-ic * : Local loop closure inlier threshold (default *35000*). * *-cv * : Local loop closure covariance threshold (default *1e-05*). * *-pt * : Global loop closure photometric threshold (default *115*). * *-ft * : Fern encoding threshold (default *0.3095*). * *-t