[Gaussian process|incremental|GTSAM 3.2|SLAM]
Here is the code repository for the paper
Incremental Sparse GP Regression for Continuous-time Trajectory Estimation and Mapping
By Xinyan Yan, Vadim Indelman, and Byron Boots
The code is dependent on GTSAM 3.2, which implements smoothing and mapping (SAM) in robotics and vision, using factor graphs and Bayes networks as the underlying computing paradigm rather than sparse matrices.
The code consists of two parts:
- cpp :c++ code that implements the factors used in the paper, including:
- 2D Gaussian process prior factor (GaussianProcessPriorPose2.h)
- BearingRange factor for LieVector (BearingRangeFactorLV.h)
- Range factor for LieVector (RangeFactorLV.h)
- Interpolated Range factor (InterpolatedRangeFactor.h)
- Projected velocity factor (VFactor.h)
- Interpolated velocity factor (InterpolatedVFactor.h)
- matlab: matlab scripts that produce the experimental results in the paper. We conducted experiments on one synthetic and two real-world datasets:
In particular, matlab scripts in names like XXX_periodic
correspond to the experiments using the periodic batch update (PB) approach, and scrips in names like XXX_isam2
correspond to the experiments using the Bayes tree with Gaussian process (BTGP) approach.
The code relies on GTSAM 3.2. After installing GTSAM 3.2 and cloning the repository, just execute the following commands in a shell:
cd [repo_folder] # go to the repo folder
mkdir build
cd build
cmake .. # configure
make # build
sudo make install # install
Please reach me at voidpointer@gatech.edu if there's any problem. Thanks!