Skip to content

EPVelasco/dualquat_LOAM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LiDAR Odometry with Dual Quaternion Optimization

This repository contains an approach for LiDAR odometry based on edge and surface features, as well as Stable Triangle Descriptors (STD). These features are optimized using Dual Quaternion (DQ) optimization.

This method introduces a novel approach for LiDAR odometry estimation, fully parameterized with dual quaternions. The features derived from the point cloud, including edges, surfaces, and Stable Triangle Descriptors (STD), along with the optimization process, are all expressed in the dual quaternion space. This enables a direct combination of translation and orientation errors using dual quaternion operations, significantly improving pose estimation accuracy. Comparative experiments against other state-of-the-art methods show that this approach achieves enhanced performance.

An overview of our LiDAR-Only odometry method can be found in DualQuat_LOAM of AUROVA PROJECTS

Requirements

  • ROS 1 (tested in ROS-Noetic)
  • PCL (Point Cloud Library)
  • Eigen for linear algebra operations
  • Ceres Solver (tested with 2.2.0 library version)
  • Point cloud preprocessing node (aurova_preprocessed). More specifically pc_feature node.

Installation

1. Clone the repository

cd ~/catkin_ws/src
git clone 

2. Build the package

Navigate to your catkin workspace and build the package:

cd ~/catkin_ws
catkin_make --only-pkg-with-deps dualquat_loam

Usage

1. Launch the pc_feature node

We have separated the point cloud preprocessing for edge and surface feature extraction, allowing the user to implement this package with their own code or use the one provided in pc_feature node.

roslaunch pc_feature_extraction Kitti_extraction.launch

2. Launch the odometry node

The package has been tested with the KITTI (00 - 010 sequences), HeliPR (Roundabout02, Bridge02, Town03), conSLAM (sequence02) and NTU-VIRAL(eee03) datasets.

roslaunch dualquat_loam odomEstimation_KITTI_dataset.launch

Make sure the parameters and topics are correctly set according to your LiDAR sensor and point cloud input.

Acknowledgements

We would like to acknowledge the following repositories for their contributions to this project:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published