Skip to content

filtered Sawyer missing links #44

@yufeiwang63

Description

@yufeiwang63

Hi, Thanks for this great packge!

I am using this for filtering the sawyer robot. However, I found that the filtered results are missing some of the sawyer links -- it only filters the base and the pedestal:
image

However, Rvis can correctly load and render the full urdf:
image

Here is my launch file, modified to be used with RealSense:

<launch>
  <arg name="nodelet" default="false"/>

  <!-- Launch nodelet -->
  <node if="$(arg nodelet)" pkg="nodelet" type="nodelet" name="realtime_urtf_filter_nodelet" args="load realtime_urdf_filter/RealtimeURDFFilterNodelet camera_nodelet_manager" output="screen">
    <remap from="~input_depth" to="/camera/aligned_depth_to_color/image_raw"/>
    <remap from="~output_depth" to="/camera/aligned_depth_to_color_filtered/image_raw" />
    <remap from="~output_mask" to="/urdf_filtered_mask" />

    <rosparam command="load" file="$(find realtime_urdf_filter)/launch/filter_parameters.yaml"/>
  </node>

  <node unless="$(arg nodelet)"
    pkg="realtime_urdf_filter" type="realtime_urdf_filter" name="$(anon realtime_urdf_filter)" output="screen">
    <remap from="~input_depth" to="/camera/aligned_depth_to_color/image_raw"/>
    <remap from="~output_depth" to="/camera/aligned_depth_to_color_filtered/image_raw" />
    <remap from="~output_mask" to="/urdf_filtered_mask" />

    <rosparam command="load" file="$(find realtime_urdf_filter)/launch/filter_parameters.yaml"/>
  </node>

  <!-- Load an example URDF -->  
  <!-- <param name="robot_description_2" command="$(find xacro)/xacro $(find sawyer_description)/urdf/sawyer_gpt.urdf.xacro electric_gripper:=false"/> -->
  <!-- <param name="robot_description_2" textfile="sawyer_description/urdf/sawyer.urdf"/> -->
  <param name="robot_description_2" textfile="sawyer.urdf"/>

  <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher">
    <param name="tf_prefix" value="filter_sawyer"/>
  </node>
</launch>

And here is my filter_parameters.yaml:

fixed_frame: /base
camera_frame: /camera_depth_optical_frame
camera_offset:
  translation: [0.0, 0.0, 0.0]
  rotation:    [0.0, 0.0, 0.0, 1.0]
# There is one entry for each URDF that should be filtered
models:
- model: "robot_description_2"
  tf_prefix: "/filter_sawyer"
  geometry_type: "visual" # "visual" or "collision"
  scale: 1.0
  ignore: []
# how far in front of the robot model is still deleted? (e.g. 0.05 = 5cm)
depth_distance_threshold: 0.05
show_gui: true
filter_replace_value: 0

Any suggestions on why this is happening would be appreciated!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions