Skip to content

Commit b6bd750

Browse files
YoshiRiyukkysaito
andauthored
feat(tier4_perception_launch): downsample perception input pointcloud (#6886)
* feat: downsample perception input pointcloud Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com> * fix: add group if to switch downsample node Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com> * fix: add test and exec depend Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com> * Update launch/tier4_perception_launch/launch/perception.launch.xml Co-authored-by: Yukihiro Saito <yukky.saito@gmail.com> * chore: refactor perception.launch.xml Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com> --------- Signed-off-by: yoshiri <yoshiyoshidetteiu@gmail.com> Co-authored-by: Yukihiro Saito <yukky.saito@gmail.com>
1 parent d9b3df7 commit b6bd750

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

launch/tier4_perception_launch/launch/perception.launch.xml

+26-3
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,32 @@
121121
description="if use_radar_tracking_fusion:=true, radar information is merged in tracking launch. Otherwise, radar information is merged in detection launch."
122122
/>
123123

124+
<!-- Downsample pointcloud for perception usage -->
125+
<arg name="downsample_perception_common_pointcloud" default="false"/>
126+
<arg name="common_downsample_voxel_size_x" default="0.05"/>
127+
<arg name="common_downsample_voxel_size_y" default="0.05"/>
128+
<arg name="common_downsample_voxel_size_z" default="0.05"/>
129+
124130
<!-- Perception module -->
125131
<group>
126132
<push-ros-namespace namespace="perception"/>
133+
<!-- Perception common preprocess -->
134+
<let name="downsampled_pointcloud" value="/perception/common/pointcloud"/>
135+
<let name="perception_pointcloud" value="$(var input/pointcloud)" unless="$(var downsample_input_pointcloud)"/>
136+
<let name="perception_pointcloud" value="$(var downsampled_pointcloud)" if="$(var downsample_input_pointcloud)"/>
137+
<group if="$(var downsample_input_pointcloud)">
138+
<push-ros-namespace namespace="common"/>
139+
<load_composable_node target="$(var pointcloud_container_name)">
140+
<composable_node pkg="pointcloud_preprocessor" plugin="pointcloud_preprocessor::PickupBasedVoxelGridDownsampleFilterComponent" name="pointcloud_downsample_node" namespace="">
141+
<remap from="input" to="$(var input/pointcloud)"/>
142+
<remap from="output" to="$(var downsampled_pointcloud)"/>
143+
<param name="voxel_size_x" value="$(var common_downsample_voxel_size_x)"/>
144+
<param name="voxel_size_y" value="$(var common_downsample_voxel_size_y)"/>
145+
<param name="voxel_size_z" value="$(var common_downsample_voxel_size_z)"/>
146+
<extra_arg name="use_intra_process_comms" value="true"/>
147+
</composable_node>
148+
</load_composable_node>
149+
</group>
127150

128151
<!-- Object segmentation module -->
129152
<group>
@@ -133,7 +156,7 @@
133156
<arg name="use_intra_process" value="true"/>
134157
<arg name="use_multithread" value="true"/>
135158
<arg name="pointcloud_container_name" value="$(var pointcloud_container_name)"/>
136-
<arg name="input/pointcloud" value="$(var input/pointcloud)"/>
159+
<arg name="input/pointcloud" value="$(var perception_pointcloud)"/>
137160
</include>
138161
</group>
139162

@@ -142,7 +165,7 @@
142165
<push-ros-namespace namespace="occupancy_grid_map"/>
143166
<include file="$(find-pkg-share tier4_perception_launch)/launch/occupancy_grid_map/probabilistic_occupancy_grid_map.launch.xml">
144167
<arg name="input/obstacle_pointcloud" value="/perception/obstacle_segmentation/single_frame/pointcloud"/>
145-
<arg name="input/raw_pointcloud" value="$(var input/pointcloud)"/>
168+
<arg name="input/raw_pointcloud" value="$(var perception_pointcloud)"/>
146169
<arg name="output" value="/perception/occupancy_grid_map/map"/>
147170
<arg name="use_intra_process" value="true"/>
148171
<arg name="use_multithread" value="true"/>
@@ -162,7 +185,7 @@
162185
<push-ros-namespace namespace="detection"/>
163186
<include file="$(find-pkg-share tier4_perception_launch)/launch/object_recognition/detection/detection.launch.xml">
164187
<arg name="mode" value="$(var mode)"/>
165-
<arg name="input/pointcloud" value="$(var input/pointcloud)"/>
188+
<arg name="input/pointcloud" value="$(var perception_pointcloud)"/>
166189
<arg name="lidar_detection_model" value="$(var lidar_detection_model)"/>
167190
<arg name="image_raw0" value="$(var image_raw0)"/>
168191
<arg name="camera_info0" value="$(var camera_info0)"/>

0 commit comments

Comments
 (0)