M3DSS-dataset

A-LOAM

Introduction

LOAM is a real-time method for odometry and mapping using range measurements from a 2-axis lidar moving in 6-DOF. It achieves both low-drift and low-computational complexity with- out the need for high accuracy ranging or inertial measurements. The key idea in obtaining this level of performance is the division of the complex problem of simultaneous localization and mapping, which seeks to optimize a large number of variables simultaneously, by two algorithms. One algorithm performs odometry at a high frequency but low fidelity to estimate velocity of the lidar. Another algorithm runs at a frequency of an order of magnitude lower for fine matching and registration of the point cloud. Combination of the two algorithms allows the method to map in real-time. The method has been evaluated by a large set of experiments as well as on the KITTI odometry benchmark. Here are some reference links: code link. paper link.

Image description
Fig. 1. Workflow diagram of LOAM

2 Compilation Process

2.1 Requirement

ubuntu20.04 、ros-noetic、cmake、gcc、g++、opencv、cv-bridge、eigen、pcl1.10、ceres-solver-1.14.0、aloam code、bag。
During the installation of third-party libraries, there may be many version mismatch issues.
Below are just examples of installation.
Please make sure to match the versions, otherwise compilation will have significant problems.
If there are any issues during the appeal process, please search online to resolve them.

install dependence

sudo apt-get update
sudo apt-get install git gcc g++ vim make cmake

install Eigen3

download Eigen3
cd eigen3
mkdir build && cd build
cmake ..
make
sudo make install

install Ceres

sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libatlas-base-dev
download Ceres
mkdir ceres-bin
cd ceres-bin
cmake ../ceres-solver-1.14.0
make
sudo make install

2.2 Build LOAM

Clone the repository and catkin_make:

cd ~/catkin_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash

if you fail in this step, try to find another computer with clean system or reinstall Ubuntu and ROS

2.3 Run LOAM

roslaunch aloam_velodyne xxxxx.launch

Evaluation

Platforms Sequences Length(m) ATE
A Handheld Device Escalator 77.460 3.235
MCR normal dark 76.499 0.042
MCR aggressive 6dof light 100.871 0.425
Parkway loop night 461.049 25.818
Forest 130.937 0.357
A UGV Elevator 39.336 X
Indoor loop 270.674 0.090
MCR hdr 193.918 0.049
Street day 2064.475 27.454
Parkway loop night 461.051 12.501
A QR Underground 98.312 0.052
MCR hdr 85.08 0.086
Forest 108.037 0.129
A UAV MCR loop light 104.989 LiDARs not supported
A Car Urban night loop 1807.884 33.893