Clarification for GraspableObject interface
I'm working with simplegrasping package for grasping, and using Python API to implement grasping for a 7 DOF arm. After perception, their definition of an object detection includes many, many things like the pose of the object, grasp points, dense point cloud points, dimension of the object and I'm having to figure out these things by doing, dir(object). I tried digging through the source code at graspingmsgs.msg but it's too complicated.
Has anyone worked with the same GraspableObject type before? Can you explain how this object is defined and what are the various methods it consists of?
Type of the object:
The documentation here - http://docs.ros.org/jade/api/grasping_msgs/html/msg/Object.html offers very little explanation.
Asked by shura04 on 2017-06-29 05:08:53 UTC
Answers
I agree grasping_msgs
is underrated, undocumented and could use more explanation. That said, it offers a good flexible interface utilizing existing I/F types.
API doc on ROS Noetic (still supported until 2025, while the link in OP is EoLed Jade).
The msg package was presumably made with (but is not limited to be coupled with) simple_grasping package initially. With a proper configuration with the following command in ROS2, you can obtain the pose of detected objects. I added some basic usage in a PR simple_grasping!13 that is unmerged at the time of writing (Note I did so with ROS2 as it's 2023 now). Feel free to review and leave a review comments there. If your application uses MoveIt
for the motion planning, using primitive_poses
attribute may work well.
Btw I removed "Python" from the title of this question. ROS Action is programming language agnostic (in Python and C++). While yes it may be a bit tricky to access generated msg/action interfaces from each language, I assume that's not what troubled the OP.
Asked by 130s on 2023-04-24 05:10:28 UTC
Comments