Skip to content

Commit 64a1c7c

Browse files
author
Anh Nguyen
authored
Merge branch 'autowarefoundation:main' into chore/rework_param_map_loader
2 parents da09238 + 0262c68 commit 64a1c7c

File tree

58 files changed

+457
-212
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+457
-212
lines changed

.github/workflows/build-and-test-differential.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
build-and-test-differential:
1717
needs: prevent-no-label-execution
1818
if: ${{ needs.prevent-no-label-execution.outputs.run == 'true' }}
19-
runs-on: [self-hosted, linux, X64]
19+
runs-on: ubuntu-latest
2020
container: ${{ matrix.container }}${{ matrix.container-suffix }}
2121
strategy:
2222
fail-fast: false
@@ -70,7 +70,7 @@ jobs:
7070
flags: differential
7171

7272
clang-tidy-differential:
73-
runs-on: [self-hosted, linux, X64]
73+
runs-on: ubuntu-latest
7474
container: ghcr.io/autowarefoundation/autoware-universe:humble-latest-cuda
7575
needs: build-and-test-differential
7676
steps:

.github/workflows/spell-check-differential.yaml

-16
This file was deleted.

common/autoware_auto_perception_rviz_plugin/package.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
<maintainer email="satoshi.tanaka@tier4.jp">Satoshi Tanaka</maintainer>
99
<maintainer email="taiki.tanaka@tier4.jp">Taiki Tanaka</maintainer>
1010
<maintainer email="takeshi.miura@tier4.jp">Takeshi Miura</maintainer>
11-
11+
<maintainer email="shunsuke.miura@tier4.jp">Shunsuke Miura</maintainer>
12+
<maintainer email="yoshi.ri@tier4.jp">Yoshi Ri</maintainer>
1213
<license>Apache 2.0</license>
1314

1415
<buildtool_depend>ament_cmake</buildtool_depend>

common/object_recognition_utils/package.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<description>The object_recognition_utils package</description>
77
<maintainer email="takayuki.murooka@tier4.jp">Takayuki Murooka</maintainer>
88
<maintainer email="satoshi.tanaka@tier4.jp">Satoshi Tanaka</maintainer>
9-
<maintainer email="yusuke.muramatsu@tier4.jp">Yusuke Muramatsu</maintainer>
109
<maintainer email="shunsuke.miura@tier4.jp">Shunsuke Miura</maintainer>
10+
<maintainer email="yoshi.ri@tier4.jp">Yoshi Ri</maintainer>
1111
<license>Apache License 2.0</license>
1212

1313
<buildtool_depend>ament_cmake_auto</buildtool_depend>

common/perception_utils/package.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
<version>0.1.0</version>
66
<description>The perception_utils package</description>
77
<maintainer email="satoshi.tanaka@tier4.jp">Satoshi Tanaka</maintainer>
8-
<maintainer email="yusuke.muramatsu@tier4.jp">Yusuke Muramatsu</maintainer>
98
<maintainer email="shunsuke.miura@tier4.jp">Shunsuke Miura</maintainer>
9+
<maintainer email="yoshi.ri@tier4.jp">Yoshi Ri</maintainer>
1010
<license>Apache License 2.0</license>
1111

1212
<buildtool_depend>ament_cmake_auto</buildtool_depend>

control/control_validator/package.xml

+3
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77
<maintainer email="kyoichi.sugahara@tier4.jp">Kyoichi Sugahara</maintainer>
88
<maintainer email="takamasa.horibe@tier4.jp">Takamasa Horibe</maintainer>
99
<maintainer email="makoto.kurihara@tier4.jp">Makoto Kurihara</maintainer>
10+
<maintainer email="mamoru.sobue@tier4.jp">Mamoru Sobue</maintainer>
11+
<maintainer email="takayuki.murooka@tier4.jp">Takayuki Murooka</maintainer>
12+
1013
<license>Apache License 2.0</license>
1114

1215
<author email="kyoichi.sugahara@tier4.jp">Kyoichi Sugahara</author>

launch/tier4_perception_launch/launch/object_recognition/detection/detection.launch.xml

+9-8
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@
3131

3232
<!-- Radar parameters -->
3333
<arg name="input/radar" default="/sensing/radar/detected_objects"/>
34-
<arg name="radar_lanelet_filtering_range_param" default="$(find-pkg-share detected_object_validation)/config/object_lanelet_filter.param.yaml"/>
35-
<arg name="radar_object_clustering_param_path" default="$(find-pkg-share radar_object_clustering)/config/radar_object_clustering.param.yaml"/>
3634

3735
<!-- Camera-Lidar-Radar fusion based detection -->
3836
<group if="$(eval '&quot;$(var mode)&quot;==&quot;camera_lidar_radar_fusion&quot;')">
@@ -75,11 +73,10 @@
7573
<include file="$(find-pkg-share tier4_perception_launch)/launch/object_recognition/detection/detector/radar_detector.launch.xml">
7674
<arg name="input/radar" value="$(var input/radar)"/>
7775
<arg name="output/objects" value="far_objects"/>
78-
<arg name="filter/angle_threshold" value="1.0472"/>
79-
<arg name="filter/velocity_threshold" value="3.0"/>
80-
<arg name="split/velocity_threshold" value="4.5"/>
76+
<arg name="radar_lanelet_filtering_range_param_path" value="$(var radar_lanelet_filtering_range_param_path)"/>
77+
<arg name="radar_crossing_objects_noise_filter_param_path" value="$(var object_recognition_detection_radar_crossing_objects_noise_filter_param_path)"/>
78+
<arg name="object_velocity_splitter_param_path" value="$(var object_recognition_detection_object_velocity_splitter_radar_fusion_param_path)"/>
8179
<arg name="object_range_splitter_param_path" value="$(var object_recognition_detection_object_range_splitter_radar_fusion_param_path)"/>
82-
<arg name="radar_lanelet_filtering_range_param" value="$(var radar_lanelet_filtering_range_param)"/>
8380
<arg name="radar_object_clustering_param_path" value="$(var radar_object_clustering_param_path)"/>
8481
</include>
8582
</group>
@@ -177,8 +174,10 @@
177174
<include file="$(find-pkg-share tier4_perception_launch)/launch/object_recognition/detection/detector/radar_detector.launch.xml">
178175
<arg name="input/radar" value="$(var input/radar)"/>
179176
<arg name="output/objects" value="far_objects"/>
177+
<arg name="radar_lanelet_filtering_range_param_path" value="$(var radar_lanelet_filtering_range_param_path)"/>
178+
<arg name="radar_crossing_objects_noise_filter_param_path" value="$(var object_recognition_detection_radar_crossing_objects_noise_filter_param_path)"/>
179+
<arg name="object_velocity_splitter_param_path" value="$(var object_recognition_detection_object_velocity_splitter_radar_fusion_param_path)"/>
180180
<arg name="object_range_splitter_param_path" value="$(var object_recognition_detection_object_range_splitter_radar_fusion_param_path)"/>
181-
<arg name="radar_lanelet_filtering_range_param" value="$(var radar_lanelet_filtering_range_param)"/>
182181
<arg name="radar_object_clustering_param_path" value="$(var radar_object_clustering_param_path)"/>
183182
</include>
184183
</group>
@@ -237,8 +236,10 @@
237236
<include file="$(find-pkg-share tier4_perception_launch)/launch/object_recognition/detection/detector/radar_detector.launch.xml">
238237
<arg name="input/radar" value="$(var input/radar)"/>
239238
<arg name="output/objects" value="objects"/>
239+
<arg name="radar_lanelet_filtering_range_param_path" value="$(var radar_lanelet_filtering_range_param_path)"/>
240+
<arg name="radar_crossing_objects_noise_filter_param_path" value="$(var object_recognition_detection_radar_crossing_objects_noise_filter_param_path)"/>
241+
<arg name="object_velocity_splitter_param_path" value="$(var object_recognition_detection_object_velocity_splitter_radar_param_path)"/>
240242
<arg name="object_range_splitter_param_path" value="$(var object_recognition_detection_object_range_splitter_radar_param_path)"/>
241-
<arg name="radar_lanelet_filtering_range_param" value="$(var radar_lanelet_filtering_range_param)"/>
242243
<arg name="radar_object_clustering_param_path" value="$(var radar_object_clustering_param_path)"/>
243244
</include>
244245
</group>

launch/tier4_perception_launch/launch/object_recognition/detection/detector/radar_detector.launch.xml

+6-8
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22
<launch>
33
<arg name="input/radar" default="/sensing/radar/detected_objects"/>
44
<arg name="output/objects" default="far_objects"/>
5-
<arg name="filter/angle_threshold" default="1.221"/>
6-
<arg name="filter/velocity_threshold" default="1.5"/>
7-
<arg name="split/velocity_threshold" default="5.5"/>
5+
<arg name="radar_crossing_objects_noise_filter_param_path"/>
6+
<arg name="object_velocity_splitter_param_path" default="$(var object_recognition_detection_object_velocity_splitter_radar_param_path)"/>
87
<arg name="object_range_splitter_param_path" default="$(var object_recognition_detection_object_range_splitter_radar_param_path)"/>
98
<arg name="radar_lanelet_filtering_range_param" default="$(find-pkg-share detected_object_validation)/config/object_lanelet_filter.param.yaml"/>
109
<arg name="radar_object_clustering_param_path" default="$(find-pkg-share radar_object_clustering)/config/radar_object_clustering.param.yaml"/>
@@ -14,15 +13,14 @@
1413
<arg name="input/objects" value="$(var input/radar)"/>
1514
<arg name="output/noise_objects" value="noise_objects"/>
1615
<arg name="output/filtered_objects" value="noise_filtered_objects"/>
17-
<arg name="angle_threshold" value="$(var filter/angle_threshold)"/>
18-
<arg name="velocity_threshold" value="$(var filter/velocity_threshold)"/>
16+
<arg name="param_path" value="$(var radar_crossing_objects_noise_filter_param_path)"/>
1917
</include>
2018

2119
<include file="$(find-pkg-share object_velocity_splitter)/launch/object_velocity_splitter.launch.xml">
2220
<arg name="input/objects" value="noise_filtered_objects"/>
2321
<arg name="output/low_speed_objects" value="low_speed_objects"/>
2422
<arg name="output/high_speed_objects" value="high_speed_objects"/>
25-
<arg name="velocity_threshold" value="$(var split/velocity_threshold)"/>
23+
<arg name="param_path" value="$(var object_velocity_splitter_param_path)"/>
2624
</include>
2725

2826
<include file="$(find-pkg-share object_range_splitter)/launch/object_range_splitter.launch.xml">
@@ -35,12 +33,12 @@
3533
<include file="$(find-pkg-share detected_object_validation)/launch/object_lanelet_filter.launch.xml">
3634
<arg name="input/object" value="far_high_speed_objects"/>
3735
<arg name="output/object" value="lanelet_filtered_objects"/>
38-
<arg name="filtering_range_param" value="$(var radar_lanelet_filtering_range_param)"/>
36+
<arg name="filtering_range_param_path" value="$(var radar_lanelet_filtering_range_param_path)"/>
3937
</include>
4038

4139
<include file="$(find-pkg-share radar_object_clustering)/launch/radar_object_clustering.launch.xml">
4240
<arg name="input/objects" value="lanelet_filtered_objects"/>
4341
<arg name="output/objects" value="$(var output/objects)"/>
44-
<arg name="radar_object_clustering_param_path" value="$(var radar_object_clustering_param_path)"/>
42+
<arg name="param_path" value="$(var radar_object_clustering_param_path)"/>
4543
</include>
4644
</launch>

launch/tier4_perception_launch/launch/perception.launch.xml

+5-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,11 @@
1414
<arg name="object_recognition_detection_roi_pointcloud_fusion_param_path"/>
1515
<arg name="object_recognition_detection_roi_detected_object_fusion_param_path"/>
1616
<arg name="object_recognition_detection_lidar_model_param_path"/>
17-
<arg name="object_recognition_detection_radar_lanelet_filtering_range_param"/>
17+
<arg name="object_recognition_detection_radar_lanelet_filtering_range_param_path"/>
18+
<arg name="object_recognition_detection_radar_crossing_objects_noise_filter_param_path"/>
1819
<arg name="object_recognition_detection_radar_object_clustering_param_path"/>
20+
<arg name="object_recognition_detection_object_velocity_splitter_radar_param_path"/>
21+
<arg name="object_recognition_detection_object_velocity_splitter_radar_fusion_param_path"/>
1922
<arg name="object_recognition_detection_object_range_splitter_radar_param_path"/>
2023
<arg name="object_recognition_detection_object_range_splitter_radar_fusion_param_path"/>
2124
<arg name="object_recognition_tracking_multi_object_tracker_data_association_matrix_param_path"/>
@@ -187,7 +190,7 @@
187190
<arg name="euclidean_param_path" value="$(var object_recognition_detection_euclidean_cluster_param_path)"/>
188191
<arg name="outlier_param_path" value="$(var object_recognition_detection_outlier_param_path)"/>
189192
<arg name="voxel_grid_based_euclidean_param_path" value="$(var object_recognition_detection_voxel_grid_based_euclidean_cluster_param_path)"/>
190-
<arg name="radar_lanelet_filtering_range_param" value="$(var object_recognition_detection_radar_lanelet_filtering_range_param)"/>
193+
<arg name="radar_lanelet_filtering_range_param_path" value="$(var object_recognition_detection_radar_lanelet_filtering_range_param_path)"/>
191194
<arg name="radar_object_clustering_param_path" value="$(var object_recognition_detection_radar_object_clustering_param_path)"/>
192195
<arg name="detection_by_tracker_param_path" value="$(var object_recognition_detection_detection_by_tracker_param)"/>
193196

mkdocs_macros.py

+2
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ def format_param_range(param):
4242
def extract_parameter_info(parameters, namespace=""):
4343
params = []
4444
for k, v in parameters.items():
45+
if "$ref" in v.keys():
46+
continue
4547
if v["type"] != "object":
4648
param = {}
4749
param["Name"] = namespace + k

perception/ground_segmentation/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ if(BUILD_TESTING)
8989

9090
target_link_libraries(test_ray_ground_filter
9191
ground_segmentation
92+
${YAML_CPP_LIBRARIES}
9293
)
9394

9495
ament_add_ros_isolated_gtest(test_scan_ground_filter

perception/ground_segmentation/config/ground_segmentation.param.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,7 @@
2929
gnd_grid_buffer_size: 4
3030
detection_range_z_max: 2.5
3131
elevation_grid_mode: true
32+
low_priority_region_x: -20.0
33+
center_pcl_shift: 0.0
34+
radial_divider_angle_deg: 1.0
35+
use_recheck_ground_cluster: true
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**:
2+
ros__parameters:
3+
base_frame: "base_link"
4+
unit_axis: "z"
5+
max_iterations: 1000
6+
min_trial: 5000
7+
min_points: 1000
8+
outlier_threshold: 0.01
9+
plane_slope_threshold: 10.0
10+
voxel_size_x: 0.04
11+
voxel_size_y: 0.04
12+
voxel_size_z: 0.04
13+
height_threshold: 0.01
14+
debug: false
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**:
2+
ros__parameters:
3+
min_x: -0.01
4+
max_x: 0.01
5+
min_y: -0.01
6+
max_y: 0.01
7+
use_vehicle_footprint: false
8+
general_max_slope: 8.0
9+
local_max_slope: 6.0
10+
initial_max_slope: 3.0
11+
radial_divider_angle: 1.0
12+
min_height_threshold: 0.15
13+
concentric_divider_distance: 0.0
14+
reclass_distance_threshold: 0.1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/**:
2+
ros__parameters:
3+
global_slope_max_angle_deg: 10.0
4+
local_slope_max_angle_deg: 13.0 # recommended 30.0 for non elevation_grid_mode
5+
split_points_distance_tolerance: 0.2
6+
use_virtual_ground_point: True
7+
split_height_distance: 0.2
8+
non_ground_height_threshold: 0.20
9+
grid_size_m: 0.1
10+
grid_mode_switch_radius: 20.0
11+
gnd_grid_buffer_size: 4
12+
detection_range_z_max: 2.5
13+
elevation_grid_mode: true
14+
low_priority_region_x: -20.0
15+
center_pcl_shift: 0.0
16+
radial_divider_angle_deg: 1.0
17+
use_recheck_ground_cluster: true
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0"?>
2+
<launch>
3+
<arg name="ground_segmentation_param_file" default="$(find-pkg-share ground_segmentation)/config/ransac_ground_filter.param.yaml"/>
4+
<arg name="input/pointcloud" default="/sensing/lidar/concatenated/pointcloud"/>
5+
<arg name="output/pointcloud" default="/perception/obstacle_segmentation/pointcloud"/>
6+
<node pkg="ground_segmentation" exec="ransac_ground_filter_node" name="ransac_ground_filter_node" output="screen">
7+
<remap from="input" to="$(var input/pointcloud)"/>
8+
<remap from="output" to="$(var output/pointcloud)"/>
9+
<param from="$(var ground_segmentation_param_file)"/>
10+
</node>
11+
</launch>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0"?>
2+
<launch>
3+
<arg name="ground_segmentation_param_file" default="$(find-pkg-share ground_segmentation)/config/ray_ground_filter.param.yaml"/>
4+
<arg name="input/pointcloud" default="/sensing/lidar/concatenated/pointcloud"/>
5+
<arg name="output/pointcloud" default="/perception/obstacle_segmentation/pointcloud"/>
6+
<node pkg="ground_segmentation" exec="ray_ground_filter_node" name="ray_ground_filter_node" output="screen">
7+
<remap from="input" to="$(var input/pointcloud)"/>
8+
<remap from="output" to="$(var output/pointcloud)"/>
9+
<param from="$(var ground_segmentation_param_file)"/>
10+
</node>
11+
</launch>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?xml version="1.0"?>
2+
<launch>
3+
<arg name="ground_segmentation_param_file" default="$(find-pkg-share ground_segmentation)/config/scan_ground_filter.param.yaml"/>
4+
5+
<!-- vehicle info -->
6+
<arg name="vehicle_info_param_file" default="$(find-pkg-share vehicle_info_util)/config/vehicle_info.param.yaml"/>
7+
<arg name="input/pointcloud" default="/sensing/lidar/concatenated/pointcloud"/>
8+
<arg name="output/pointcloud" default="/perception/obstacle_segmentation/pointcloud"/>
9+
<node pkg="ground_segmentation" exec="scan_ground_filter_node" name="scan_ground_filter_node" output="screen">
10+
<remap from="input" to="$(var input/pointcloud)"/>
11+
<remap from="output" to="$(var output/pointcloud)"/>
12+
<param from="$(var ground_segmentation_param_file)"/>
13+
<param from="$(var vehicle_info_param_file)"/>
14+
</node>
15+
</launch>

perception/ground_segmentation/src/ransac_ground_filter_nodelet.cpp

+12-12
Original file line numberDiff line numberDiff line change
@@ -85,18 +85,18 @@ using pointcloud_preprocessor::get_param;
8585
RANSACGroundFilterComponent::RANSACGroundFilterComponent(const rclcpp::NodeOptions & options)
8686
: Filter("RANSACGroundFilter", options)
8787
{
88-
base_frame_ = declare_parameter("base_frame", "base_link");
89-
unit_axis_ = declare_parameter("unit_axis", "z");
90-
max_iterations_ = declare_parameter("max_iterations", 1000);
91-
min_inliers_ = declare_parameter("min_trial", 5000);
92-
min_points_ = declare_parameter("min_points", 1000);
93-
outlier_threshold_ = declare_parameter("outlier_threshold", 0.01);
94-
plane_slope_threshold_ = declare_parameter("plane_slope_threshold", 10.0);
95-
voxel_size_x_ = declare_parameter("voxel_size_x", 0.04);
96-
voxel_size_y_ = declare_parameter("voxel_size_y", 0.04);
97-
voxel_size_z_ = declare_parameter("voxel_size_z", 0.04);
98-
height_threshold_ = declare_parameter("height_threshold", 0.01);
99-
debug_ = declare_parameter("debug", false);
88+
base_frame_ = declare_parameter<std::string>("base_frame", "base_link");
89+
unit_axis_ = declare_parameter<std::string>("unit_axis");
90+
max_iterations_ = declare_parameter<int>("max_iterations");
91+
min_inliers_ = declare_parameter<int>("min_trial");
92+
min_points_ = declare_parameter<int>("min_points");
93+
outlier_threshold_ = declare_parameter<double>("outlier_threshold");
94+
plane_slope_threshold_ = declare_parameter<double>("plane_slope_threshold");
95+
voxel_size_x_ = declare_parameter<double>("voxel_size_x");
96+
voxel_size_y_ = declare_parameter<double>("voxel_size_y");
97+
voxel_size_z_ = declare_parameter<double>("voxel_size_z");
98+
height_threshold_ = declare_parameter<double>("height_threshold");
99+
debug_ = declare_parameter<bool>("debug");
100100

101101
if (unit_axis_ == "x") {
102102
unit_vec_ = Eigen::Vector3d::UnitX();

perception/ground_segmentation/src/ray_ground_filter_nodelet.cpp

+12-12
Original file line numberDiff line numberDiff line change
@@ -48,22 +48,22 @@ RayGroundFilterComponent::RayGroundFilterComponent(const rclcpp::NodeOptions & o
4848
grid_precision_ = 0.2;
4949
ray_ground_filter::generateColors(colors_, color_num_);
5050

51-
min_x_ = declare_parameter("min_x", -0.01);
52-
max_x_ = declare_parameter("max_x", 0.01);
53-
min_y_ = declare_parameter("min_y", -0.01);
54-
max_y_ = declare_parameter("max_y", 0.01);
51+
min_x_ = declare_parameter<double>("min_x");
52+
max_x_ = declare_parameter<double>("max_x");
53+
min_y_ = declare_parameter<double>("min_y");
54+
max_y_ = declare_parameter<double>("max_y");
5555

5656
setVehicleFootprint(min_x_, max_x_, min_y_, max_y_);
5757

58-
use_vehicle_footprint_ = declare_parameter("use_vehicle_footprint", false);
58+
use_vehicle_footprint_ = declare_parameter<bool>("use_vehicle_footprint", false);
5959

60-
general_max_slope_ = declare_parameter("general_max_slope", 8.0);
61-
local_max_slope_ = declare_parameter("local_max_slope", 6.0);
62-
initial_max_slope_ = declare_parameter("initial_max_slope", 3.0);
63-
radial_divider_angle_ = declare_parameter("radial_divider_angle", 1.0);
64-
min_height_threshold_ = declare_parameter("min_height_threshold", 0.15);
65-
concentric_divider_distance_ = declare_parameter("concentric_divider_distance", 0.0);
66-
reclass_distance_threshold_ = declare_parameter("reclass_distance_threshold", 0.1);
60+
general_max_slope_ = declare_parameter<double>("general_max_slope");
61+
local_max_slope_ = declare_parameter<double>("local_max_slope");
62+
initial_max_slope_ = declare_parameter<double>("initial_max_slope");
63+
radial_divider_angle_ = declare_parameter<double>("radial_divider_angle");
64+
min_height_threshold_ = declare_parameter<double>("min_height_threshold");
65+
concentric_divider_distance_ = declare_parameter<double>("concentric_divider_distance");
66+
reclass_distance_threshold_ = declare_parameter<double>("reclass_distance_threshold");
6767
}
6868

6969
using std::placeholders::_1;

0 commit comments

Comments
 (0)