Skip to content

Commit 341bda9

Browse files
add ndt_max_iterations parameter (#45)
* add ndt_max_iterations parameter * add default value to parameter file --------- Co-authored-by: Ryohei Sasaki <rsasaki0109@gmail.com>
1 parent fe958ae commit 341bda9

File tree

3 files changed

+5
-0
lines changed

3 files changed

+5
-0
lines changed

include/lidar_localization/lidar_localization_component.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ class PCLLocalization : public rclcpp_lifecycle::LifecycleNode
123123
bool enable_debug_{false};
124124

125125
int ndt_num_threads_;
126+
int ndt_max_iterations_;
126127

127128
// imu
128129
LidarUndistortion lidar_undistortion_;

param/localization.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
ndt_resolution: 1.0
66
ndt_step_size: 0.1
77
ndt_num_threads: 4
8+
ndt_max_iterations: 35
89
transform_epsilon: 0.01
910
voxel_leaf_size: 0.2
1011
scan_max_range: 100.0

src/lidar_localization_component.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ PCLLocalization::PCLLocalization(const rclcpp::NodeOptions & options)
1313
declare_parameter("score_threshold", 2.0);
1414
declare_parameter("ndt_resolution", 1.0);
1515
declare_parameter("ndt_step_size", 0.1);
16+
declare_parameter("ndt_max_iterations", 35);
1617
declare_parameter("ndt_num_threads", 4);
1718
declare_parameter("transform_epsilon", 0.01);
1819
declare_parameter("voxel_leaf_size", 0.2);
@@ -160,6 +161,7 @@ void PCLLocalization::initializeParameters()
160161
get_parameter("ndt_resolution", ndt_resolution_);
161162
get_parameter("ndt_step_size", ndt_step_size_);
162163
get_parameter("ndt_num_threads", ndt_num_threads_);
164+
get_parameter("ndt_max_iterations", ndt_max_iterations_);
163165
get_parameter("transform_epsilon", transform_epsilon_);
164166
get_parameter("voxel_leaf_size", voxel_leaf_size_);
165167
get_parameter("scan_max_range", scan_max_range_);
@@ -279,6 +281,7 @@ void PCLLocalization::initializeRegistration()
279281
RCLCPP_ERROR(get_logger(), "Invalid registration method.");
280282
exit(EXIT_FAILURE);
281283
}
284+
registration_->setMaximumIterations(ndt_max_iterations_);
282285

283286

284287
voxel_grid_filter_.setLeafSize(voxel_leaf_size_, voxel_leaf_size_, voxel_leaf_size_);

0 commit comments

Comments
 (0)