GithubHelp home page GithubHelp logo

qhtxj / i2ekf-lo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ywl0720/i2ekf-lo

0.0 0.0 0.0 569 KB

I2EKF-LO: A Dual-Iteration Extended Kalman Filter based LiDAR Odometry

License: GNU General Public License v2.0

C++ 98.81% C 0.36% CMake 0.83%

i2ekf-lo's Introduction

I2EKF-LO

A Dual-Iteration Extended Kalman Filter Based LiDAR Odometry

Pipeline Image

Introduction

LiDAR odometry is a pivotal technology in the fields of autonomous driving and autonomous mobile robotics. However, most of the current works focuse on nonlinear optimization methods, and there are still many challenges in using the traditional Iterative Extended Kalman Filter (IEKF) framework to tackle the problem: IEKF only iterates over the observation equation, relying on a rough estimate of the initial state, which is insufficient to fully eliminate motion distortion in the input point cloud; the system process noise is difficult to be determined during state estimation of the complex motions; and the varying motion models across different sensor carriers. To address these issues, we propose the Dual-Iteration Extended Kalman Filter (I2EKF) and the LiDAR odometry based on I2EKF (I2EKF-LO). This approach not only iterates over the observation equation but also leverages state updates to iteratively mitigate motion distortion in LiDAR point clouds. Moreover, it dynamically adjusts process noise based on the confidence level of prior predictions during state estimation and establishes motion models for different sensor carriers to achieve accurate and efficient state estimation. Comprehensive experiments demonstrate that I2EKF-LO achieves outstanding levels of accuracy and computational efficiency in the realm of LiDAR odometry.

Developers: The codes of this repo are contributed by Wenlu Yu (于文录), Jie Xu (徐杰), Chengwei Zhao (赵成伟)

Related Paper

  • TODO

Related Video:

  • TODO

1. Prerequisites

1.1 Ubuntu and ROS

Ubuntu >= 18.04.

ROS >= Melodic. ROS Installation

1.2. PCL && Eigen

PCL >= 1.8, Follow PCL Installation.

Eigen >= 3.3.4, Follow Eigen Installation.

1.3. livox_ros_driver

Follow livox_ros_driver Installation.

2. Build

Clone the repository and catkin_make:

cd ~/catkin_ws/src
git clone https://github.com/YWL0720/I2EKF-LO
cd ..
catkin_make -j
source devel/setup.bash

3. Directly run

cd ~/$I2EKF_LO_ROS_DIR$
source devel/setup.bash
roslaunch i2ekf_lo xxx.launch

4. Rosbag Example

Download our test bags here: HIT-TIB Datasets.

5. Acknowledgments

Thanks for Fast-LIO2 (Fast Direct LiDAR-inertial Odometry) and LI-INIT(Robust Real-time LiDAR-inertial Initialization).

6. License

The source code is released under GPLv2 license.

7. TODO(s)

  • Updated video link
  • Upload a preprint of our paper

i2ekf-lo's People

Contributors

ywl0720 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.