No version for distro humble showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

lidar_localization_ros2 package from lidar_localization_ros2 repo

lidar_localization_ros2

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.0.1
License BSD2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description 3D LIDAR Localization using NDT/GICP and pointcloud map in ROS 2 (Not SLAM)
Checkout URI https://github.com/rsasaki0109/lidar_localization_ros2.git
VCS Type git
VCS Version main
Last Updated 2025-07-16
Dev Status UNKNOWN
Released UNRELEASED
Tags localization lidar pcl ndt ros2 gicp
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

lidar_localization_ros2

Additional Links

No additional links.

Maintainers

  • ryohei sasaki

Authors

No additional authors.

lidar_localization_ros2

A ROS2 package of 3D LIDAR-based Localization.

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

Requirements

IO

  • input
    /cloud (sensor_msgs/PointCloud2)
    /map (sensor_msgs/PointCloud2)
    /initialpose (geometry_msgs/PoseStamed)(when set_initial_pose is false)
    /odom (nav_msgs/Odometry)(optional)
    /imu (sensor_msgs/Imu)(optional)

  • output
    /pcl_pose (geometry_msgs/PoseStamped)
    /path (nav_msgs/Path)
    /initial_map (sensor_msgs/PointCloud2)(when use_pcd_map is true)

params

Name Type Default value Description
registration_method string “NDT_OMP” “NDT” or “GICP” or “NDT_OMP” or “GICP_OMP”
score_threshold double 2.0 registration score threshold
ndt_resolution double 2.0 resolution size of voxels[m]
ndt_step_size double 0.1 step_size maximum step length[m]
ndt_num_threads int 4 threads using NDT_OMP(if 0 is set, maximum alloawble threads are used.)
transform_epsilon double 0.01 transform epsilon to stop iteration in registration
voxel_leaf_size double 0.2 down sample size of input cloud[m]
scan_max_range double 100.0 max range of input cloud[m]
scan_min_range double 1.0 min range of input cloud[m]
scan_periad double 0.1 scan period of input cloud[sec]
use_pcd_map bool false whether pcd_map is used or not
map_path string “/map/map.pcd” pcd_map or ply_map file path
set_initial_pose bool false whether or not to set the default value in the param file
initial_pose_x double 0.0 x-coordinate of the initial pose value[m]
initial_pose_y double 0.0 y-coordinate of the initial pose value[m]
initial_pose_z double 0.0 z-coordinate of the initial pose value[m]
initial_pose_qx double 0.0 Quaternion x of the initial pose value
initial_pose_qy double 0.0 Quaternion y of the initial pose value
initial_pose_qz double 0.0 Quaternion z of the initial pose value
initial_pose_qw double 1.0 Quaternion w of the initial pose value
use_odom bool false whether odom is used or not for initial attitude in point cloud registration
use_imu bool false whether 9-axis imu is used or not for point cloud distortion correction
enable_debug bool false whether debug is done or not

demo

demo data(ROS1) by Tier IV(The link has changed and is now broken.)
https://data.tier4.jp/rosbag_details/?id=212
To use ros1 rosbag , use rosbags.
The Velodyne VLP-16 was used in this data.

Before running, put bin_tc-2017-10-15-ndmap.pcd into your map directory and
edit the map_path parameter of localization.yaml in the param directory accordingly.

rviz2 -d src/lidar_localization_ros2/rviz/localization.rviz
ros2 launch lidar_localization_ros2 lidar_localization.launch.py
ros2 bag play tc_2017-10-15-15-34-02_free_download/

Green: path, Red: map
(the 5x5 grids in size of 50m × 50m)

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged lidar_localization_ros2 at Robotics Stack Exchange