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

[robokudo] new interface queries for robokudo #178

Closed
wants to merge 2 commits into from

Conversation

sunava
Copy link
Collaborator

@sunava sunava commented Aug 7, 2024

query_empty(): Sends a query to RoboKudo to look for all objects.
query_region(region: str): Sends a query to RoboKudo to look for objects in a specific region.
query_human(): Sends a query to RoboKudo to locate a human and returns a PointStamped object with the detected human's pose.
stop_query_human(): Sends a query to RoboKudo to stop human detection.
seat_query_human(seat: str): Sends a query to RoboKudo to check if a specific seat or region is free to sit.
faces_query_human(): Sends a query to RoboKudo to look for a human, focusing on face recognition.

@sunava sunava requested a review from Tigul August 7, 2024 11:27
is_init = False


def init_robokudo_interface():
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please make this a decorator that can be directly attached to the respective methods that call RoboKudo, you can look in the dev branch for reference.

:param obj_desc: The PyCRAM object designator description that should be converted.
:return: The RoboKudo QueryGoal for the given object designator description.
"""
from robokudo_msgs.msg import QueryGoal
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate from the init_robotkudo method

"""
init_robokudo_interface()
from robokudo_msgs.msg import QueryAction, QueryResult
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate

client.wait_for_server()
object_goal = QueryGoal()
object_goal.obj.type = 'human'
client.send_goal(object_goal, active_cb=active_callback, done_cb=done_callback, feedback_cb=feedback_callback)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code for the action client is in every method, it would be nice to move this to a seperate function which handles the action client.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code is wip freezing this PR for time being till its done

@sunava sunava closed this Aug 16, 2024
hawkina pushed a commit to hawkina/pycram that referenced this pull request Nov 6, 2024
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

Successfully merging this pull request may close these issues.

2 participants