-
Notifications
You must be signed in to change notification settings - Fork 505
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
HITL: rearrange_v2 example app and other features/fixes for Feb 12 de…
…mo (#1810) * nicer instructions for installing Magnum on Mac * add MVP rearrange_v2 HITL app * add GuiPlacementHelper * add ClientHelper * changes to GuiPickHelper. * add config habitat_hitl.debug_line_width * changes to how connection_record/connection_params are handled * add config habitat_hitl.networking.wait_for_app_ready_signal * support for tracking client latency * add color and billboard-versus-up-facing options for highlight messages * minor bugfix to unity_dataset_processing.py * add hydra-core to requirements.txt
- Loading branch information
1 parent
5e2c0bb
commit 03de61e
Showing
26 changed files
with
1,283 additions
and
249 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
# Rearrange_v2 HITL application | ||
|
||
SIRo's 2024H1 data-collection app. Work in progress. | ||
|
||
## Installation | ||
See [habitat-hitl/README.md](../../../habitat-hitl/README.md). | ||
|
||
In addition to the core HITL data above, you need the private [fphab](https://huggingface.co/datasets/fpss/fphab) repo. Reach out to the SIRo team for access. | ||
``` | ||
cd path/to/habitat-lab/data | ||
git clone --branch articulated-scenes --single-branch --depth 1 https://huggingface.co/datasets/fpss/fphab | ||
mv fphab fpss | ||
``` | ||
|
||
## Data directory | ||
|
||
Run `rearrange_v2` from the Habitat-lab root directory. It will expect `data/` for Habitat-lab data, and it will also look for `examples/hitl/rearrange_v2/app_data/demo.json.gz` (included alongside source files in our git repo). | ||
|
||
## Example launch commands | ||
|
||
Local testing (local display and keyboard control): | ||
```bash | ||
python examples/hitl/rearrange_v2/rearrange_v2.py | ||
``` | ||
|
||
Headed server (includes local display and keyboard control): | ||
```bash | ||
python examples/hitl/rearrange_v2/rearrange_v2.py habitat_hitl.networking.enable=True | ||
``` | ||
|
||
Headless server: | ||
```bash | ||
python examples/hitl/rearrange_v2/rearrange_v2.py +experiment=headless_server | ||
``` | ||
|
||
## Controls | ||
See on-screen help text. In addition, press `1` or `2` to select an episode. | ||
|
||
## Configuration | ||
See `config/rearrange_v2.yaml` and `config/experiment/headless_server.yaml`. | ||
|
||
## Browser client | ||
|
||
`rearrange_v2` has additional requirements for the [Unity VR client](../pick_throw_vr/README.md#vr). | ||
* Beware these instructions are a work in progress! | ||
* It is designed for use with a desktop browser-based (not VR) version of the Unity client. | ||
* Use the [`webgl-demo`](https://github.com/eundersander/siro_hitl_unity_client/tree/webgl-demo) branch. | ||
* Download Unity data folder (`data.zip`) from: https://drive.google.com/drive/folders/12VLJGf5_ntr5nztZn1KjzyzBG_UKDPme | ||
* Extract `data.zip` to Unity client's `Assets/Resources/data`. | ||
* Open and run the `PlayerMouseKeyboard` scene. |
Binary file not shown.
24 changes: 24 additions & 0 deletions
24
examples/hitl/rearrange_v2/config/disable_spot_pick_and_move_backward.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# @package _global_ | ||
|
||
habitat: | ||
task: | ||
actions: | ||
agent_0_arm_action: | ||
disable_grip: true | ||
|
||
habitat_baselines: | ||
rl: | ||
policy: | ||
agent_0: | ||
hierarchical_policy: | ||
high_level_policy: | ||
allowed_actions: | ||
- nav_to_goal | ||
- nav_to_obj | ||
# - pick | ||
# - place | ||
- nav_to_receptacle_by_name | ||
- turn_left | ||
- turn_right | ||
- move_forward | ||
# - move_backward |
12 changes: 12 additions & 0 deletions
12
examples/hitl/rearrange_v2/config/experiment/headless_server.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# @package _global_ | ||
|
||
habitat_hitl: | ||
window: ~ | ||
networking: | ||
enable: True | ||
http_availability_server: | ||
enable: True | ||
client_max_idle_duration: 30.0 | ||
experimental: | ||
headless: | ||
do_headless: True |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# @package _global_ | ||
|
||
defaults: | ||
- social_rearrange: pop_play | ||
- hitl_defaults | ||
- disable_spot_pick_and_move_backward | ||
- _self_ | ||
|
||
habitat: | ||
# various config args to ensure the episode never ends | ||
environment: | ||
max_episode_steps: 0 | ||
iterator_options: | ||
# For the demo, we want to showcase the episodes in the specified order | ||
shuffle: False | ||
task: | ||
measurements: | ||
rearrange_cooperate_reward: | ||
end_on_collide: False | ||
pddl_success: | ||
must_call_stop: False | ||
dataset: | ||
data_path: examples/hitl/rearrange_v2/app_data/demo.json.gz | ||
|
||
habitat_baselines: | ||
# todo: document these choices | ||
eval: | ||
should_load_ckpt: False | ||
rl: | ||
agent: | ||
num_pool_agents_per_type: [1,1] | ||
|
||
habitat_hitl: | ||
window: | ||
title: "Rearrange" | ||
width: 1300 | ||
height: 1000 | ||
gui_controlled_agent: | ||
agent_index: 1 | ||
ang_speed: 300 | ||
hide_humanoid_in_gui: True | ||
camera: | ||
first_person_mode: True |
Oops, something went wrong.