-
Notifications
You must be signed in to change notification settings - Fork 488
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
Gibson large generation #387
Gibson large generation #387
Conversation
Adding this to examples did not seem like a good idea, but I could not think of any other places for adding the script. Please let me know if there's a better organization for this. |
Codecov Report
@@ Coverage Diff @@
## master #387 +/- ##
=======================================
Coverage 76.32% 76.32%
=======================================
Files 108 108
Lines 7640 7640
=======================================
Hits 5831 5831
Misses 1809 1809 Continue to review full report at Codecov.
|
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.
In terms of location, let's put this under a habitat_baselines/rl/ddppo/data_generation
folder.
generate_pointnav_episode, | ||
) | ||
|
||
num_episodes_per_scene = int(1e2) |
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.
num_episodes_per_scene = int(1e2) | |
num_episodes_per_scene = int(1e4) |
Should probably generate more episodes by default.
- Use jest-image-snapshot to generate and compare snapshots - Use puppeteer to launch chromium browser in headless mode - Use finalhandler and static-serve to finalize requests and serve static content easily - Update package.json with required packages
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.
Should be good to go after correcting the filepath for the annotations file
|
||
# Load train / val statistics | ||
dataset_statistics = json.load( | ||
open("./examples/gibson_large_generation/gibson_dset_with_qual.json") |
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.
open("./examples/gibson_large_generation/gibson_dset_with_qual.json") | |
open(osp.join(osp.dirname(__file__), "gibson_dset_with_qual.json"), "r") |
@@ -0,0 +1,87 @@ | |||
"""This script is used to generate customized Gibson training splits for the |
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.
We need to add header:
more
#!/usr/bin/env python3
# Copyright (c) Facebook, Inc. and its affiliates.
# This source code is licensed under the MIT license found in the
# LICENSE file in the root directory of this source tree.
generate_pointnav_episode, | ||
) | ||
|
||
num_episodes_per_scene = int(1e4) |
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.
Const are upper case per code guidelines:
num_episodes_per_scene = int(1e4) | |
NUM_EPISODES_PER_SCENE = int(1e4) |
|
||
path = "./data/datasets/pointnav/gibson/v2/train_large/train_large.json.gz" | ||
with gzip.open(path, "wt") as f: | ||
json.dump(dict(episodes=[]), f) |
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.
gibson_dset_with_qual.json
should be mentioned in License part of readme as Gibson based task datasets and trained models
=> Gibson based task datasets and code generating it, trained models
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.
Thank you for the contribution, several more changes left. Other than that looks good to go!
habitat_baselines/rl/ddppo/data_generation/create_gibson_large_dataset.py
Outdated
Show resolved
Hide resolved
Co-authored-by: dhruvbatra <dhruvbatra@users.noreply.github.com>
Apologies for the slowness on landing this! |
Thank you for the contribution! |
Glad to be of help! |
* added gibson large generation script * ran black for formatting * updated number of episodes, moved to ddppo directory * updated license to include data generation * added header * changed const to upper case * added separate function call * Update README.md Co-authored-by: dhruvbatra <dhruvbatra@users.noreply.github.com> Co-authored-by: Santhosh K. Ramakrishnan <sramarki@fb.com> Co-authored-by: dhruvbatra <dhruvbatra@users.noreply.github.com>
* added gibson large generation script * ran black for formatting * updated number of episodes, moved to ddppo directory * updated license to include data generation * added header * changed const to upper case * added separate function call * Update README.md Co-authored-by: dhruvbatra <dhruvbatra@users.noreply.github.com> Co-authored-by: Santhosh K. Ramakrishnan <sramarki@fb.com> Co-authored-by: dhruvbatra <dhruvbatra@users.noreply.github.com>
Motivation and Context
This PR adds a script to generate customized Gibson training datasets for the PointNav task. Specifically, the Gibson-2+ and Gibson-0+ training splits used in the DD-PPO paper (https://arxiv.org/abs/1911.00357) can be generated by setting the appropriate quality threshold.
How Has This Been Tested
Tested bug-free execution and the resulting data splits.
Types of changes
Checklist