Giter Club home page Giter Club logo

a-loam's Introduction

Hello

This is a forked repository of A-LOAM.

In this we add extra script and configuration files to quickly run the experiments on NTU VIRAL dataset.

Instructions

  1. After you have cloned and compiled the package, please cd to the launch folder by running roscd aloam/launch.

  2. Modify the script runall_ntuviral.sh to declare the output directory via the variable EPOC_DIR, and the path to the dataset via the DATASET_LOCATION variable. Note that the bag files should be organized like in the figure below:

  1. Run bash runall_ntuviral.sh to automatically launch the algorithm with the bag files one by one.

  2. The log files will be created in .csv format and you can use matlab or python to calculate the localization error against the ground truth on these logs. An example of the analysis can be found in the A-LOAM/analysis/ntuviral_aloam folder. Just run the MATLAB script checkall_parallel.m and the results will be printed out.

If you use the NTU VIRAL dataset in your work, please cite our work using the BibTex code at the dataset's website. Please also cite A-LOAM's publication below.

A-LOAM

Advanced implementation of LOAM

A-LOAM is an Advanced implementation of LOAM (J. Zhang and S. Singh. LOAM: Lidar Odometry and Mapping in Real-time), which uses Eigen and Ceres Solver to simplify code structure. This code is modified from LOAM and LOAM_NOTED. This code is clean and simple without complicated mathematical derivation and redundant operations. It is a good learning material for SLAM beginners.

Modifier: Tong Qin, Shaozu Cao

1. Prerequisites

1.1 Ubuntu and ROS

Ubuntu 64-bit 16.04 or 18.04. ROS Kinetic or Melodic. ROS Installation

1.2. Ceres Solver

Follow Ceres Installation.

1.3. PCL

Follow PCL Installation.

2. Build A-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

3. Velodyne VLP-16 Example

Download NSH indoor outdoor to YOUR_DATASET_FOLDER.

    roslaunch aloam aloam_VLP_16.launch
    rosbag play YOUR_DATASET_FOLDER/nsh_indoor_outdoor.bag

4. KITTI Example (Velodyne HDL-64)

Download KITTI Odometry dataset to YOUR_DATASET_FOLDER and set the dataset_folder and sequence_number parameters in kitti_helper.launch file. Note you also convert KITTI dataset to bag file for easy use by setting proper parameters in kitti_helper.launch.

    roslaunch aloam aloam_HDL_64.launch
    roslaunch aloam kitti_helper.launch

5. Docker Support

To further facilitate the building process, we add docker in our code. Docker environment is like a sandbox, thus makes our code environment-independent. To run with docker, first make sure ros and docker are installed on your machine. Then add your account to docker group by sudo usermod -aG docker $YOUR_USER_NAME. Relaunch the terminal or logout and re-login if you get Permission denied error, type:

cd ~/catkin_ws/src/A-LOAM/docker
make build

The build process may take a while depends on your machine. After that, run ./run.sh 16 or ./run.sh 64 to launch A-LOAM, then you should be able to see the result.

6.Acknowledgements

Thanks for LOAM(J. Zhang and S. Singh. LOAM: Lidar Odometry and Mapping in Real-time) and LOAM_NOTED.

a-loam's People

Contributors

qintonguav avatar cuitaixiang avatar brytsknguyen avatar shaozu avatar

Stargazers

Kenta Itakura avatar Liu Yang avatar Harinaath avatar Awab Syed avatar Haitao Xiao avatar  avatar  avatar

Watchers

 avatar

a-loam's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.