Skip to content

SC-LeGO-LOAM#

What is SC-LeGO-LOAM?#

  • SC-LeGO-LOAM integrated LeGO-LOAM for lidar odometry and 2 different loop closure methods: ScanContext and Radius search based loop closure. While ScanContext is correcting large drifts, radius search based method is good for fine-stitching.

Repository Information#

https://github.com/irapkaist/SC-LeGO-LOAM

Required Sensors#

  • LIDAR [VLP-16, HDL-32E, VLS-128, Ouster OS1-16, Ouster OS1-64]
  • IMU [9-AXIS]

ROS Compatibility#

  • ROS 1

Dependencies#

  • ROS
  • PCL
  • GTSAM
wget -O ~/Downloads/gtsam.zip https://github.com/borglab/gtsam/archive/4.0.0-alpha2.zip
cd ~/Downloads/ && unzip gtsam.zip -d ~/Downloads/
cd ~/Downloads/gtsam-4.0.0-alpha2/
mkdir build && cd build
cmake ..
sudo make install

Build & Run#

1) Build#

cd ~/catkin_ws/src
git clone https://github.com/irapkaist/SC-LeGO-LOAM.git
cd ..
catkin_make

2) Set parameters#

  • Set imu and lidar topic on include/utility.h
  • Set lidar properties on include/utility.h
  • Set scan context settings on include/Scancontext.h

(Do not forget to rebuild after setting parameters.)

3) Run#

source devel/setup.bash
roslaunch lego_loam run.launch

Example Result#

Other Examples#

MulRan dataset#

Cite SC-LeGO-LOAM#

@INPROCEEDINGS { gkim-2018-iros,
  author = {Kim, Giseop and Kim, Ayoung},
  title = { Scan Context: Egocentric Spatial Descriptor for Place Recognition within {3D} Point Cloud Map },
  booktitle = { Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems },
  year = { 2018 },
  month = { Oct. },
  address = { Madrid }
}

and

@inproceedings{legoloam2018,
  title={LeGO-LOAM: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain},
  author={Shan, Tixiao and Englot, Brendan},
  booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  pages={4758-4765},
  year={2018},
  organization={IEEE}
}

Contact#

  • Maintainer: Giseop Kim (paulgkim@kaist.ac.kr)