moveit / moveit_task_constructor

A hierarchical multi-stage manipulation planner
https://moveit.github.io/moveit_task_constructor
BSD 3-Clause "New" or "Revised" License
178 stars 150 forks source link

Need for a Generator Stage that takes multiple candidate target poses? #623

Open robotics-qc opened 1 day ago

robotics-qc commented 1 day ago

Hello!

I have been working with manipulating objects and noticed that often, we use a different pipeline for pose estimation of target objects (could be an AI model, or some other classical approach etc) and therefore have a collection of candidate pick/target poses for which we then try to plan a path for any of those target poses.

I was wondering if we had a generator stage where we could feed in a series of pre-computed target poses. I did not find anything like that but I did see there is GenerateGraspPose stage which takes in a single target pose. Using that template, I was able to easily create a custom stage which instead takes in a Pose array and generates solutions for all those poses as a starting point for planning.

I feel this is a common requirement for a lot of manipulation pipelines, and was wondering if we could have that as an added stage in the moveit core itself!

(FYI: I use the humble branch)

rhaschke commented 18 hours ago

A PR extending the functionality of the GeneratePose stage is welcome. Did you extend the stage GenerateGraspPose or GeneratePose? The former only considers a single object frame and generates grasps from multiple approach directions, while the latter actually considers manually specified poses.

robotics-qc commented 2 hours ago

My mistake - I meant to say : I extended the GeneratePose stage to take an array of target poses instead of just a single one, thus allowing users to now compute a series of candidate poses to the generator.

Thank you I will send in a PR for that soon.