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

urdf edges not filtered #29

Open
tianshiz opened this issue May 19, 2020 · 6 comments
Open

urdf edges not filtered #29

tianshiz opened this issue May 19, 2020 · 6 comments

Comments

@tianshiz
Copy link

I'm running on melodic with my robotic arm, the majority of the arm is filtered, but when converted to pointcloud, sliver remains. The sliver is a good 10% of the urdf so it's very noticeable.

Does this mean that there is some misalignment with the urdf? Or alternatively is there a way to inflate the mask a bit more to make up for this?

@blodow
Copy link
Owner

blodow commented May 19, 2020

Hey, that's hard to tell without further info. Do you have an image?

I suspect something is not 100% calibrated to explain why the virtual view is not fitting the real view better, ooor maybe you're using the wrong urdf link when configuring the filter?

@tianshiz
Copy link
Author

Hi,

You can see the sliver on the arm here. I'm feeding the filtered depth image
image
the sliver appears a bit after the robot stops moving.
debug window here:
image

here's my filter parameter:

#used for urdf realtime filter
fixed_frame: /map
#camera_frame: /zed_left_camera_optical_frame_3
camera_offset:
translation: [0.0, 0.0, 0.0]
rotation: [0.0, 0.0, 0.0, 1.0]
models:

  • model: "robot_description"
    tf_prefix: ""
    depth_distance_threshold: 0.05
    show_gui: true
    filter_replace_value: 0.0

Maybe it's a TF freq thing? I had to add TF.waitforTransform infront of all the lookupTransform calls in the code
image

@liderbo123
Copy link

You can deal with this problem by adding another filter type such as 'StatisticOutlierRemoval' or 'RadiusOutlierRemoval' after converting depth image to point clouds.

@lucarossini-iit
Copy link

Hi all,

Sorry to jump into this conversation with an off-topic question but I cannot convert the output of this package in a PointCloud msg. Can anyone help me with this procedure?

Thanks in advance

@JimmyDaSilva
Copy link
Contributor

JimmyDaSilva commented Dec 16, 2021

Hi @lucarossini-iit.

This place is supposed to be used to talk about issues related to the realtime_urd_filter package.
Next time, please go ask questions at https://answers.ros.org/questions/.

I have a piece of launchfile that could be helpful for your problem:
https://github.com/kuka-isir/kinects_human_tracking/blob/master/launch/create_pc.launch#L1-L16

More information here: http://wiki.ros.org/depth_image_proc

@liderbo123
Copy link

You can deal with this problem by adding another filter type such as 'StatisticOutlierRemoval' or 'RadiusOutlierRemoval' after converting depth image to point clouds.

The above method can only solve the redundant point cloud of the manipulator in the static environment. The fundamental solution is to use the dilate operation of image morphology from OpenCV for the manipulator in the urdf_filter.cpp files,and I made it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants