rsasaki0109/lidar_localization_ros2
3D LIDAR Localization using pointcloud map in ROS 2 (Not SLAM)
What it solves
This project provides a map-based 3D LiDAR localization system for robots using ROS 2 and Nav2. It allows a robot to determine its precise position and orientation within a pre-existing 3D point cloud map (in .pcd or .ply formats), ensuring the robot doesn't get lost while navigating an environment.
How it works
The system uses scan-matching algorithms—specifically NDT (Normal Distributions Transform) and GICP (Generalized Iterative Closest Point)—to align current LiDAR scans with a stored 3D map. To improve accuracy and stability, it incorporates odometry and IMU prediction, continuous-time scan deskewing to correct for motion distortion, and a guarded global initialization process that prevents the robot from guessing its starting position incorrectly.
Who it’s for
It is designed for robotics developers and engineers working with ROS 2 (specifically Jazzy and Humble) who need reliable 3D localization for autonomous mobile robots, including those using Livox MID-360 sensors.
Highlights
- Map-based Localization: Supports
.pcdand.ply3D maps. - Algorithm Support: Implements NDT/GICP for high-precision alignment.
- Integration: Fully compatible with Nav2 and standalone operation.
- Robustness: Includes scan deskewing, IMU/odometry prediction, and guarded recovery mechanisms.
- Easy Setup: Provides a
quickstart.pytool for automatic sensor topic detection and configuration.
Related
- Project
- Project
- Project
- Project
- Project