-
Notifications
You must be signed in to change notification settings - Fork 94
Added get_pixel support in mujoco_env and proprioception in all envs #2
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
base: old-master
Are you sure you want to change the base?
Changes from 4 commits
d7cdbdd
48c2355
cd01107
0767ac6
8957c3b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -81,7 +81,15 @@ def viewer_setup(self): | |
| """ | ||
| pass | ||
|
|
||
| def get_proprioception(self, use_tactile): | ||
| """ | ||
| For the VIL paper | ||
| """ | ||
| pass | ||
|
|
||
| # ----------------------------- | ||
| def get_body_com(self, body_name): | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. These are environment specific utilities that you can just add to the env definition. Im not sure if there is any benefit of adding this to the mujoco_env base class. @aravindr93 - what do you think?
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I am not sure if this function is correct in the first place. This is returning the xpos of the body, which is the root position of the body in global coordinates, but need not be center of mass. @vikashplus, is this correct? Ideally, you would have to look at all the members of this body, and do a weighted average of their xpos. If this function is critical, and we are actually using it (meaning you need the COM and not just the root position), then it makes sense to have it in mujoco_env.py, since it might be useful for many envs and future applications.
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Here is how you can get the COM Seems like get_body_xpos is giving you the location of the root of the body, not necessarily the body_com
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think we can remove this function for now. |
||
| return self.sim.data.get_body_xpos(body_name) | ||
|
|
||
| def _reset(self): | ||
| self.sim.reset() | ||
|
|
@@ -129,6 +137,12 @@ def state_vector(self): | |
| state.qpos.flat, state.qvel.flat]) | ||
|
|
||
| # ----------------------------- | ||
| def get_pixels(self, frame_size=(128, 128), camera_name=None, device_id=0): | ||
| pixels = self.sim.render(width=frame_size[0], height=frame_size[1], | ||
| mode='offscreen', camera_name=camera_name, device_id=device_id) | ||
|
|
||
| pixels = pixels[::-1, :, :] | ||
| return pixels | ||
|
|
||
| def visualize_policy(self, policy, horizon=1000, num_episodes=1, mode='exploration'): | ||
| self.mujoco_render_frames = True | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.