Giter Site home page Giter Site logo

lunarpulse / loam_livox Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hku-mars/loam_livox

0.0 1.0 0.0 38.32 MB

A robust LiDAR Odometry and Mapping (LOAM) package for Livox-LiDAR

License: GNU General Public License v2.0

CMake 0.60% C 1.38% C++ 94.82% Shell 3.20%

loam_livox's Introduction

LOAM-Livox

A robust LiDAR Odometry and Mapping (LOAM) package for Livox-LiDAR

Loam-Livox is a robust, low drift, and real time odometry and mapping package for Livox LiDARs, significant low cost and high performance LiDARs that are designed for massive industrials uses. Our package address many key issues: feature extraction and selection in a very limited FOV, robust outliers rejection, moving objects filtering, and motion distortion compensation. We use Ceres-Solver for scan matching to avoid complicated differential geometry derivation. The codes are well structured and streamlined to improve readability and extendability.

In the development of our package, we reference to LOAM, LOAM_NOTED, and A-LOAM.

Developer: Jiarong Lin

Coming update: In the following one and half months (before 15/11/2019), we will continuously add the following features to our current project, including optimized system design, parallelable pipeline, point cloud management using cells and maps, loop closure, utilities for maps saving and reload, etc. To know more about the details, please refer to our related paper:)

Related paper: our related paper are now available on arxiv:

  1. Loam_livox: A fast, robust, high-precision LiDAR odometry and mapping package for LiDARs of small FoV
  2. A fast, complete, point cloud based loop closure for LiDAR odometry and mapping

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

Clone the repository and catkin_make:

    cd ~/catkin_ws/src
    git clone https://github.com/hku-mars/loam_livox.git
    cd ../
    catkin_make
    source ~/catkin_ws/devel/setup.bash

3. Directly run

Connect to your PC to Livox LiDAR (mid-40) by following Livox-ros-driver installation, then

    roslaunch loam_livox livox.launch

4. Rosbag Example

4.1. Common rosbag

Download Our recorded rosbag and then

roslaunch loam_livox rosbag.launch
rosbag play YOUR_DOWNLOADED.bag

4.1. Large-scale rosbag

For large scale rosbag (For example HKUST_01.bag ), we recommand you launch with bigger line and plane resolution (using rosbag_largescale.launch)

roslaunch loam_livox rosbag_largescale.launch
rosbag play YOUR_DOWNLOADED.bag

5. Our 3D-printable handheld device

To get our following handheld device, please go to another one of our open source reposity, all of the 3D parts are all designed of FDM printable. We also release our solidwork files so that you can freely make your own adjustments.

6.Acknowledgments

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

7. License

The source code is released under GPLv2 license.

We are still working on improving the performance and reliability of our codes. For any technical issues, please contact me via email Jiarong Lin < [email protected] >.

loam_livox's People

Contributors

ziv-lin avatar

Watchers

James Cloos avatar

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.