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

Spot Mobile Gaze Training Code #1647

Merged
merged 33 commits into from
Nov 2, 2023
Merged

Spot Mobile Gaze Training Code #1647

merged 33 commits into from
Nov 2, 2023

Conversation

jimmytyyang
Copy link
Contributor

@jimmytyyang jimmytyyang commented Oct 23, 2023

Motivation and Context

This PR ensures that Spot's simulation parameters are consistent with the ones in the real Spot. Several noticeable improvement includes
  • Introduce Spot body head stereo cameras (left and right) observation. Test the code using python examples/interactive_play.py --never-end --disable-inverse-kinematics --cfg=benchmark/rearrange/play/play_spot.yaml or you can use the yaml skills/pick_spot.yaml
  • Make interactive_play.py runnable for Spot
  • Get a correct bounding box given a target object
  • Improve image visualization by checking the image stack's width within the same column
  • Introduce auto_grasp function that is used for training real robot skills
  • Introduce count-based collision for rearrange reward, which is useful for kinematic simulation
  • Introduce the custom function class for dealing with robot-specific sensory input
  • Introduce the feature that users can set the limit of the joint angles

Example:
arm RGB + depth sensor + semantic sensor + bounding box target + left/right cameras
Screenshot 2023-10-23 at 3 34 06 PM

How Has This Been Tested

Run `python examples/interactive_play.py --never-end --disable-inverse-kinematics --cfg=benchmark/rearrange/play/play_spot.yaml` and visually inspect the sensors.

Types of changes

  • [Development] A pull request that add new features to the habitat-lab task and environment codebase. Development Pull Requests must be small (less that 500 lines of code change), have unit testing, very extensive documentation and examples. These are typically new tasks, environments, sensors, etc... The review process for these Pull Request is longer because these changes will be maintained by our core team of developers, so make sure your changes are easy to understand!

Checklist

  • My code follows the code style of this project.
  • I have updated the documentation if required.
  • I have read the CONTRIBUTING document.
  • I have completed my CLA (see CONTRIBUTING)
  • I have added tests to cover my changes if required.

@facebook-github-bot facebook-github-bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Oct 23, 2023
@jimmytyyang jimmytyyang changed the title (WIP) mobile gaze Spot Mobile Gaze Training Code Oct 24, 2023
@jimmytyyang jimmytyyang requested review from ASzot and aclegg3 October 30, 2023 14:00
@jimmytyyang jimmytyyang requested review from ASzot and removed request for aclegg3 October 31, 2023 16:19
@jimmytyyang
Copy link
Contributor Author

Hi Andrew! It is nice to have you review this PR! I improved the readability of this PR. @ASzot

@jimmytyyang jimmytyyang merged commit d9e62c0 into main Nov 2, 2023
1 check passed
dannymcy pushed a commit to dannymcy/habitat-lab that referenced this pull request Jul 8, 2024
* add spot head left and right sensors and clean up interactive_play function for spot

* update the arm that can be controlled by users

* clean up Spot's arm joint action space and make it more compact

* make sure the gaze range is correct

* update the bounding box

* add yaml for pick

* get the correct bounding box by ensuring the object index is correct

* fix the issue that the target object id is a list, not being an integer

* move angle computation function to util and update the pick reward for spot

* add type

* fix ci issue about config

* fix CI

* make the robot need not reset the arm after picking up the object

* clean up auto grasp

* make pick spot yaml uses kinematic mode

* make it to be kinematic mode for action control

* introduce collision count-based penality

* update the reward function for the distance

* parameter for the initialo cation of the robot

* tyde CI

* getting a corrcet init location of arm

* tidy CI

* adjust gaze skill init parameters

* update the joint sensor of observation

* add arm_depth_bbox_sensor

* add stereo sensors

* sensor clean up so that the size is the same

* update SpotHeadStereoDepthSensor height and width

* flip the right and left camera

* fix None issue in the joint sensor

* add constaint function

* make the bounding box to be float32 data type

* address Andrew's comment

---------

Co-authored-by: Jimmy Yang <jimmytyyang@meta.com>
HHYHRHY pushed a commit to SgtVincent/EMOS that referenced this pull request Aug 31, 2024
* add spot head left and right sensors and clean up interactive_play function for spot

* update the arm that can be controlled by users

* clean up Spot's arm joint action space and make it more compact

* make sure the gaze range is correct

* update the bounding box

* add yaml for pick

* get the correct bounding box by ensuring the object index is correct

* fix the issue that the target object id is a list, not being an integer

* move angle computation function to util and update the pick reward for spot

* add type

* fix ci issue about config

* fix CI

* make the robot need not reset the arm after picking up the object

* clean up auto grasp

* make pick spot yaml uses kinematic mode

* make it to be kinematic mode for action control

* introduce collision count-based penality

* update the reward function for the distance

* parameter for the initialo cation of the robot

* tyde CI

* getting a corrcet init location of arm

* tidy CI

* adjust gaze skill init parameters

* update the joint sensor of observation

* add arm_depth_bbox_sensor

* add stereo sensors

* sensor clean up so that the size is the same

* update SpotHeadStereoDepthSensor height and width

* flip the right and left camera

* fix None issue in the joint sensor

* add constaint function

* make the bounding box to be float32 data type

* address Andrew's comment

---------

Co-authored-by: Jimmy Yang <jimmytyyang@meta.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed Do not delete this pull request or issue due to inactivity.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants