Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(tier4_perception_launch): downsample perception input pointcloud #6886

Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 26 additions & 3 deletions launch/tier4_perception_launch/launch/perception.launch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -121,9 +121,32 @@
description="if use_radar_tracking_fusion:=true, radar information is merged in tracking launch. Otherwise, radar information is merged in detection launch."
/>

<!-- Downsample pointcloud for perception usage -->
<arg name="downsample_perception_common_pointcloud" default="false"/>
<arg name="common_downsample_voxel_size_x" default="0.05"/>
<arg name="common_downsample_voxel_size_y" default="0.05"/>
<arg name="common_downsample_voxel_size_z" default="0.05"/>

<!-- Perception module -->
<group>
<push-ros-namespace namespace="perception"/>
<!-- Perception common preprocess -->
<let name="downsampled_pointcloud" value="/perception/common/pointcloud"/>
<let name="perception_pointcloud" value="$(var input/pointcloud)" unless="$(var downsample_input_pointcloud)"/>
<let name="perception_pointcloud" value="$(var downsampled_pointcloud)" if="$(var downsample_input_pointcloud)"/>
<group if="$(var downsample_input_pointcloud)">
<push-ros-namespace namespace="common"/>
<load_composable_node target="$(var pointcloud_container_name)">
<composable_node pkg="pointcloud_preprocessor" plugin="pointcloud_preprocessor::PickupBasedVoxelGridDownsampleFilterComponent" name="pointcloud_downsample_node" namespace="">
<remap from="input" to="$(var input/pointcloud)"/>
<remap from="output" to="$(var downsampled_pointcloud)"/>
<param name="voxel_size_x" value="$(var common_downsample_voxel_size_x)"/>
<param name="voxel_size_y" value="$(var common_downsample_voxel_size_y)"/>
<param name="voxel_size_z" value="$(var common_downsample_voxel_size_z)"/>
<extra_arg name="use_intra_process_comms" value="true"/>
</composable_node>
</load_composable_node>
</group>

<!-- Object segmentation module -->
<group>
Expand All @@ -133,7 +156,7 @@
<arg name="use_intra_process" value="true"/>
<arg name="use_multithread" value="true"/>
<arg name="pointcloud_container_name" value="$(var pointcloud_container_name)"/>
<arg name="input/pointcloud" value="$(var input/pointcloud)"/>
<arg name="input/pointcloud" value="$(var perception_pointcloud)"/>
</include>
</group>

Expand All @@ -142,7 +165,7 @@
<push-ros-namespace namespace="occupancy_grid_map"/>
<include file="$(find-pkg-share tier4_perception_launch)/launch/occupancy_grid_map/probabilistic_occupancy_grid_map.launch.xml">
<arg name="input/obstacle_pointcloud" value="/perception/obstacle_segmentation/single_frame/pointcloud"/>
<arg name="input/raw_pointcloud" value="$(var input/pointcloud)"/>
<arg name="input/raw_pointcloud" value="$(var perception_pointcloud)"/>
<arg name="output" value="/perception/occupancy_grid_map/map"/>
<arg name="use_intra_process" value="true"/>
<arg name="use_multithread" value="true"/>
Expand All @@ -162,7 +185,7 @@
<push-ros-namespace namespace="detection"/>
<include file="$(find-pkg-share tier4_perception_launch)/launch/object_recognition/detection/detection.launch.xml">
<arg name="mode" value="$(var mode)"/>
<arg name="input/pointcloud" value="$(var input/pointcloud)"/>
<arg name="input/pointcloud" value="$(var perception_pointcloud)"/>
<arg name="lidar_detection_model" value="$(var lidar_detection_model)"/>
<arg name="image_raw0" value="$(var image_raw0)"/>
<arg name="camera_info0" value="$(var camera_info0)"/>
Expand Down
Loading