-
Notifications
You must be signed in to change notification settings - Fork 0
Made detection filtering less conservative and added recovery action … #10
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
Conversation
…if detection is not found
…lass to be 'bag'; We can now execute a pick & place command in simulation with a prior WP scene graph
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good, just take a quick look at my comments.
|
||
detector = YOLODetector( | ||
self.spot_interface, | ||
yolo_world_path="/home/rrg/data/models/yolov8s-world.pt", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't want to hard-code the path here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the best way to deal with paths?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Paths should be passed as a parameter when an object is initialized. If you always do that, then at the "top level" of the code (e.g., when the node is launched, or if you run a script with some cli arguments), can set the paths, and then they will get passed down to wherever they are needed. In this case, we probably want the path to get set from the rosparams that spot_executor_ros reads. Then specifying a specific path happens as part of the config file writing process, and is fully separated from the code.
It might also make sense to initialize the detector once in the init, instead of every time we execute the pick skill (unless this is intentional to work around VRAM issues?). If it makes sense to move the detector initialization to the init function, then another alternative would be to have spot_executor_ros initialze the YOLODetector and just pass it to spot executor (and then spot_executor would accept a Detector instead of a path).
…if detection is not found