-
Notifications
You must be signed in to change notification settings - Fork 857
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
Fixes the image feature extractor in observations #1340
base: main
Are you sure you want to change the base?
Conversation
Hi, this is fixed by this earlier open PR: #1323 |
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.
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
Signed-off-by: Mayank Mittal <12863862+Mayankm96@users.noreply.github.com>
…b into fix/image_dependencies
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.
LGTM, thanks for fixing @Mayankm96 @Dhoeller19!
Sorry again for not noticing the test breakage
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Show resolved
Hide resolved
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.
Overall looks good would just update to support more resnet model sizes than just ResNet50
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
source/extensions/omni.isaac.lab/omni/isaac/lab/envs/mdp/observations.py
Outdated
Show resolved
Hide resolved
Overall looks good, I am able to train resnet and theia. One note; it may be good to change the feature extraction yaml for RL games cartpole to use 512 or 1024 envs by default, as well as to have a max epoch length of 200 instead of 5k. Can also take care of this in a separate PR but I find these defaults lead to better convergence and less overcomputation respectively; currently the default env count is a little low with a max epoch length of 5k |
LGTM! 👈 🤠 👉 |
I suggest that we delete the ground plane for the cartpole environments, or at least the feature extraction ones. It's not needed, and it leads to behavior where it seems like the feature extraction based cartpole doesn't work when you open up the viewport. Feature extraction cartpole works where the ground plane is not visible. Alternatively, we could extend the ground plane to cover the whole field (from 100 by 100 to 10k by 10k), but this slows down convergence, leads to worse performance, and I believe this suffers from rendering issues. When looking at the ground plane, the lines seem to shift around a lot like in the issues reported in #1074 , which I argue is likely introducing a lot of high frequency noise This makes sense as most of the environments do not see the ground plane, and it is a pretty visually distinct feature. As the encoders are frozen, they can not adapt, and I guess the MLP agent doesn't adapt either, as most of the gradient information it is using is originating from environments that do not seee the ground plane. All of the following I trained with the default settings in this PR (1024 envs, 200 epochs) with Theia TIny. Limited Ground Plane (current, most work when ground plane is not visible): Screencast.from.10-30-2024.04.37.37.PM.webmNo Ground Plane (What I recommend): Screencast.from.10-30-2024.05.13.15.PM.webmExtended Ground Plane (Poor performance): Screencast.from.10-30-2024.04.59.34.PM.webm |
Description
Type of change
Checklist
pre-commit
checks with./isaaclab.sh --format
config/extension.toml
fileCONTRIBUTORS.md
or my name already exists there