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

Unavailable param file prevents individual preprocessor nodes from starting #9524

Closed
3 tasks done
mbharatheesha opened this issue Nov 29, 2024 · 1 comment · Fixed by #9525
Closed
3 tasks done

Unavailable param file prevents individual preprocessor nodes from starting #9524

mbharatheesha opened this issue Nov 29, 2024 · 1 comment · Fixed by #9525
Assignees
Labels
component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned)

Comments

@mbharatheesha
Copy link
Contributor

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I'm convinced that this is not my fault but a bug.

Description

I have setup the use of crop_box_filter node from autoware_pointcloud_preprocessor package using the individual filter launch file as follows:

<include file="$(find-pkg-share autoware_pointcloud_preprocessor)/launch/crop_box_filter_node.launch.xml" >
    <arg name="input_topic_name" value="pointcloud" />
    <arg name="output_topic_name" value="cropbox/filtered" />
    <arg name="cropbox_filter_param_file" value="$(find-pkg-share my_pkg)/param/crop_box_filter.yaml" />
</include>

Expected behavior

The topic cropbox/filtered contains cropbox filtered points and I can use it further down the perception stack to do clustering and object detection.

Actual behavior

The launch file setup above, doesn't start the filter node properly and I see the following warning on launch:

[WARNING] [launch_ros.actions.node]: Parameter file path is not a file: /opt/ros/jazzy/share/autoware_pointcloud_preprocessor/config/filter.param.yaml

And the topic cropbox/filtered is empty. Since I feed this topic to an instance of the euclidean clustering node, this is confirmed by the following message by the euclidean clustering node:

[component_container-6] [WARN] [1732860045.511208848] [euclidean_cluster]: Empty sensor points!

Steps to reproduce

  • Use the launch file as in the description
  • ros2 launch <path_to_launch_file>

Versions

  • OS: Ubuntu 24.04
  • ROS2: Jazzy
  • Autoware: main

Possible causes

The crop_box_filter_node.launch.xml sets a parameter filter_param_file here. However, that file doesn't exist in the config directory and in the code, I only see parameters from crop_box_filter_node.param.yaml being consumed.

The filter node does work correctly when the filter_param_file is initialized to point to any file that exists in the config folder. For example, if the above launch file is changed as follows:

<include file="$(find-pkg-share autoware_pointcloud_preprocessor)/launch/crop_box_filter_node.launch.xml" >
    <arg name="input_topic_name" value="pointcloud" />
    <arg name="output_topic_name" value="cropbox/filtered" />
    <arg name="cropbox_filter_param_file" value="$(find-pkg-share my_pkg)/config/crop_box_filter.yaml" />
    <arg name="filter_param_file" value="$(find-pkg-share autoware_pointcloud_preprocessor)/config/crop_box_filter_node.param.yaml" />
</include>

However, I think the argument filter_param_file should just be removed as that seems to be redundant.

Additional context

No response

@vividf
Copy link
Contributor

vividf commented Dec 2, 2024

Thanks for your contribution, the issue is solved by #9525

@vividf vividf moved this from Todo to Done in Software Working Group Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned)
Projects
Archived in project
3 participants