[ros-users] object grasping

Kaijen Hsiao kaijenhsiao at gmail.com
Fri Dec 31 00:16:04 UTC 2010


Hi Christian,
You can use the standard PR2 grasping pipeline with your own object
detection by just swapping out the tabletop detection part.  We
currently support either a PointCloud (1, not 2) containing the object
points, or the database model and pose for an object in our household
objects database.  If you have either of those, you can either:

1) Use our tabletop collision map processing service to add the table
and object(s) to the collision environment by filling in a
tabletop_object_detector/TabletopDetectionResult with your own
detection results and then putting it into a
tabletop_collision_map_processing/TabletopCollisionMapProcessing
service request; or

2) Add your object(s) and table to the collision map yourself using
the various collision map services, then fill in an
object_manipulation_msgs/GraspableObject message and send it to the
object_manipulator package's pickup action using an
object_manipulation_msgs/PickupGoal.

For examples of using the tabletop collision map processing or pickup
services and actions, look at
pr2_pick_and_place_demos/nodes/pick_and_place_keyboard_interface.cpp
or the wiki page
http://www.ros.org/wiki/pr2_tabletop_manipulation_apps/Tutorials/Writing%20a%20Simple%20Pick%20and%20Place%20Application
(C++), or pr2_pick_and_place_demos/src/pr2_pick_and_place_demos/pick_and_place_manager.py
(Python).

For examples/helper functions for adding stuff to the collision
environment yourself, look at
tabletop_collision_map_processing/src/collision_map_interface.cpp
(C++) or tabletop_collision_map_processing/src/tabletop_collision_map_processing/collision_map_interface.py
(Python).

Hope that helps!  Feel free to ask for more help if you get stuck/confused.

-Kaijen


On Thu, Dec 30, 2010 at 2:20 PM, Christian Potthast <potthast at usc.edu> wrote:
> Hey all,
> I am looking for an object grasping pipeline in ROS for the PR2. I have
> seen the 'pr2_tabletop_manipulation_apps' which seems to be really
> awesome. Or maybe there is another pipeline I could/should use.
>
> Basically what I need is a simple pick/place task for simple object.
>
> I basically have already extracted all the objects from a laser scanner
> produced point cloud as well as the table top. I have seen the
> 'pr2_tabletop_manipulation_apps' task is using the tabletop_detection
> service. I have not used it yet, but I can image my detection service is
> a little bit more accurate, since I tweaked it quit a lot.
> So I am wondering if there is an easy way to replace this part, but
> still using the pipeline?
>
> Or maybe there is another option object manipulation I'd have already
> implemented in ROS ?
>
> Thanks
> Christian
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>



More information about the ros-users mailing list