Skip to content

Commit

Permalink
Merge pull request #658 from StanfordVL/doc-update
Browse files Browse the repository at this point in the history
Doc update
  • Loading branch information
cgokmen authored Mar 18, 2024
2 parents 40e2ad8 + 2f9d7c6 commit b360ab8
Show file tree
Hide file tree
Showing 179 changed files with 2,177 additions and 117 deletions.
Binary file added docs/assets/architecture_overview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/AABB.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Adjacency.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/AttachedTo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Burnt.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/ContactBodies.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Contains.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Cooked.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Covered.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Draped.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Filled.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Folded.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Frozen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/HeatSourceOrSink.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Heated.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Inside.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/IsGrasping.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/MaxTemperature.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/NextTo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/OnFire.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/OnTop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Open.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/Overlaid.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/ParticleApplier.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/object_states/ParticleRemover.png
Binary file added docs/assets/object_states/ParticleSink.png
Binary file added docs/assets/object_states/ParticleSource.png
Binary file added docs/assets/object_states/Pose.png
Binary file added docs/assets/object_states/Saturated.png
Binary file added docs/assets/object_states/Temperature.png
Binary file added docs/assets/object_states/ToggledOn.png
Binary file added docs/assets/object_states/Touching.png
Binary file added docs/assets/object_states/Under.png
Binary file added docs/assets/object_states/Unfolded.png
Binary file added docs/assets/robots/BehaviorRobot.png
Binary file added docs/assets/robots/Fetch.png
Binary file added docs/assets/robots/FrankaAllegro.png
Binary file added docs/assets/robots/FrankaLeap.png
Binary file added docs/assets/robots/FrankaPanda.png
Binary file added docs/assets/robots/Freight.png
Binary file added docs/assets/robots/Husky.png
Binary file added docs/assets/robots/Locobot.png
Binary file added docs/assets/robots/Tiago.png
Binary file added docs/assets/robots/Turtlebot.png
Binary file added docs/assets/robots/VX300S.png
Binary file added docs/assets/scenes/birds-eye-views/Rs_garden.png
Binary file added docs/assets/scenes/birds-eye-views/Rs_int.png
Binary file added docs/assets/scenes/scene-views/Ihlen_0_int.png
Binary file added docs/assets/scenes/scene-views/Ihlen_1_int.png
Binary file added docs/assets/scenes/scene-views/Merom_0_garden.png
Binary file added docs/assets/scenes/scene-views/Merom_0_int.png
Binary file added docs/assets/scenes/scene-views/Merom_1_int.png
Binary file added docs/assets/scenes/scene-views/Pomaria_0_int.png
Binary file added docs/assets/scenes/scene-views/Pomaria_1_int.png
Binary file added docs/assets/scenes/scene-views/Rs_garden.png
Binary file added docs/assets/scenes/scene-views/Rs_int.png
Binary file added docs/assets/scenes/scene-views/hall_arch_wood.png
Binary file added docs/assets/scenes/scene-views/hotel_gym_spa.png
Binary file added docs/assets/scenes/scene-views/office_bike.png
Binary file added docs/assets/scenes/scene-views/office_large.png
Binary file added docs/assets/scenes/scene-views/school_biology.png
Binary file added docs/assets/scenes/scene-views/school_gym.png
Binary file added docs/assets/sensor_asset/bbox_2d_loose.png
Binary file added docs/assets/sensor_asset/bbox_2d_tight.png
Binary file added docs/assets/sensor_asset/bbox_3d.png
Binary file added docs/assets/sensor_asset/depth.png
Binary file added docs/assets/sensor_asset/depth_linear.png
Binary file added docs/assets/sensor_asset/lidar.png
Binary file added docs/assets/sensor_asset/normal.png
Binary file added docs/assets/sensor_asset/occupancy_grid.png
Binary file added docs/assets/sensor_asset/optical_flow.png
Binary file added docs/assets/sensor_asset/rgb.png
Binary file added docs/assets/sensor_asset/seg_instance.png
Binary file added docs/assets/sensor_asset/seg_instance_id.png
Binary file added docs/assets/sensor_asset/seg_semantic.png

Large diffs are not rendered by default.

12 changes: 4 additions & 8 deletions docs/getting_started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ There are two ways to setup **`OmniGibson`**:
??? note "Nightly build"

The main branch contains the stable version of **`OmniGibson`**. If you want to be up-to-date with our latest developed (yet not fully tested) features and bug fixes, you can clone from the `og-develop` branch.
The main branch contains the stable version of **`OmniGibson`**. For our latest developed (yet not fully tested) features and bug fixes, please clone from the `og-develop` branch.

3. Setup a virtual conda environment to run **`OmniGibson`**:

Expand All @@ -114,7 +114,7 @@ There are two ways to setup **`OmniGibson`**:

1. The script will ask you which Isaac Sim to use. If you installed it in the default location, it should be `~/.local/share/ov/pkg/isaac_sim-2023.1.1`

This will create a conda environment with `omnigibson` installed. Simply call `conda activate` to activate it.
This will create a conda env with `omnigibson` installed. Simply call `conda activate` to activate it.

4. Download **`OmniGibson`** dataset (within the conda env):

Expand All @@ -132,7 +132,7 @@ There are two ways to setup **`OmniGibson`**:

1. Install [Conda](https://conda.io/projects/conda/en/latest/user-guide/install/index.html) and NVIDIA's [Omniverse Isaac Sim](https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_workstation.html)

!! warning "Please make sure you have the latest version of Isaac Sim (2023.1.1) installed."
!!! warning "Please make sure you have the latest version of Isaac Sim (2023.1.1) installed."

2. Clone [**`OmniGibson`**](/~https://github.com/StanfordVL/OmniGibson) and move into the directory:

Expand All @@ -143,7 +143,7 @@ There are two ways to setup **`OmniGibson`**:

??? note "Nightly build"

The main branch contains the stable version of **`OmniGibson`**. If you want to be up-to-date with our latest developed (yet not fully tested) features and bug fixes, you can clone from the `og-develop` branch.
The main branch contains the stable version of **`OmniGibson`**. For our latest developed (yet not fully tested) features and bug fixes, please clone from the `og-develop` branch.

3. Setup a virtual conda environment to run **`OmniGibson`**:

Expand Down Expand Up @@ -199,10 +199,6 @@ python -m omnigibson.examples.robots.robot_control_example # (1)!

You probably need to [install FUSE](/~https://github.com/AppImage/AppImageKit/wiki/FUSE) to run the Omniverse Launcher AppImage.

??? question "OmniGibson is stuck upon first startup"

The process could take up to 5 minutes. This is expected behavior, and should only occur once when you import OmniGibson for the first time.

??? question "OmniGibson is stuck at `HydraEngine rtx failed creating scene renderer.`"

`OmniGibson` is likely using an unsupported GPU (default is id 0). Run `nvidia-smi` to see the active list of GPUs, and select an NVIDIA-supported GPU and set its corresponding ID when running `OmniGibson` with `export OMNIGIBSON_GPU_ID=<ID NUMBER>`.
10 changes: 6 additions & 4 deletions docs/getting_started/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ cfg["objects"] = [ # (1)!
"usd_path": f"{gm.ASSET_PATH}/models/stain/stain.usd",
"category": "stain", # (4)!
"visual_only": True, # (5)!
"scale": [2.0, 1.0, 2.0], # (6)!
"position": [3.0, 0, 2.0], # (7)!
"scale": [1.0, 1.0, 1.0], # (6)!
"position": [1.0, 2.0, 0.001], # (7)!
"orientation": [0, 0, 0, 1.0], # (8)!
},
{
Expand Down Expand Up @@ -166,8 +166,8 @@ obs, rew, done, info = env.step(env.action_space.sample())
"usd_path": f"{gm.ASSET_PATH}/models/stain/stain.usd",
"category": "stain",
"visual_only": True,
"scale": [2.0, 1.0, 2.0],
"position": [3.0, 0, 2.0],
"scale": [1.0, 1.0, 1.0],
"position": [1.0, 2.0, 0.001],
"orientation": [0, 0, 0, 1.0],
},
{
Expand Down Expand Up @@ -222,6 +222,8 @@ obs, rew, done, info = env.step(env.action_space.sample())
# Step!
for _ in range(10000):
obs, rew, done, info = env.step(env.action_space.sample())

og.shutdown()
```


Expand Down
5 changes: 5 additions & 0 deletions docs/miscellaneous/contact.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# **Contact**

If you have any questions, comments, or concerns, please feel free to reach out to use by joining our Discord server:

<a href="https://discord.gg/bccR5vGFEx"><img src="https://discordapp.com/api/guilds/1166422812160966707/widget.png?style=banner3"></a>
19 changes: 19 additions & 0 deletions docs/miscellaneous/contributing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# **Contribution Guidelines**

We sincerely welcome contributions of any form to OmniGibson, as our aim is to make it a more robust and useful resource for the community. We have always held the belief that a collective effort from the community is essential to tailor BEHAVIOR/OmniGibson to meet diverse needs and unlock its full potential.

## **Bug Reports & Feature Requests**

If you encounter any bugs or have feature requests that could enhance the platform, please feel free to open an issue on our GitHub repository. Before creating a new issue, we recommend checking the existing issues to see if your problem or request has already been reported or discussed.

When reporting a bug, please kindly provide detailed information about the issue, including steps to reproduce it, any error messages, and relevant system details. For feature requests, we appreciate a clear description of the desired functionality and its potential benefits for the OmniGibson community.

## **Pull Requests**

We are always open to pull requests that address bugs, add new features, or improve the platform in any way. If you are considering submitting a pull request, we recommend opening an issue first to discuss the changes you would like to make. This will help us ensure that your proposed changes align with the goals of the project and that we can provide guidance on the best way to implement them.

When submitting a pull request, please ensure that your code adheres to the following guidelines:

- **Code Style**: We follow the [PEP 8](https://www.python.org/dev/peps/pep-0008/) style guide for Python code. Please ensure that your code is formatted according to these guidelines.
- **Documentation**: If your changes affect the public API or introduce new features, please update the relevant documentation to reflect these changes.
- **Testing**: If your changes affect the behavior of the platform, please include tests to ensure that the new functionality works as expected and that existing functionality remains unaffected.
29 changes: 29 additions & 0 deletions docs/miscellaneous/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# **Frequently Asked Questions**

## **What is the relationship between BEHAVIOR-1K and OmniGibson?**

[BEHAVIOR-1K](https://behavior.stanford.edu/behavior-1k) is the high-level project that proposes an embodied AI benchmark of 1,000 tasks. To measure agents' performance accurately and reproducibly on these tasks, a simulation platform with comprehensive features and capabilities is necessary. This necessitates the need for a simulation platform that can support all the semantics required in the BEHAVIOR-1K tasks. OmniGibson meets this need as a feature-complete simulation platform, allowing us to instantiate and evaluate these tasks fully in a simulated environment.

## **How is OmniGibson connected to Nvidia's Omniverse?**

OmniGibson is built upon NVIDIA's Isaac Sim/Omniverse physics backend, leveraging its robust physics simulation capabilities. On top of this powerful engine, OmniGibson provides modular and user-friendly APIs, along with additional features such as controllers, robots, object states, and more. These added functionalities enable OmniGibson to facilitate the necessary physical interactions and simulations required by the diverse range of tasks included in the BEHAVIOR-1K task suite.

## **Why should I use OmniGibson?**
The core strengths of OmniGibson lie in its exceptional physical and visual realism, two critical factors in the development of embodied AI agents.

- `Physical Realism`: to our knowledge, OmniGibson is the only simulation platform that supports large-scale scene interaction with
- cloth
- fluids
- semantic object states (e.g. temperature, particle interactions)
- complex physical interactions (transition rules).
- `Visual Realism`: OmniGibson is built on NVIDIA's Isaac Sim/Omniverse physics backend, which provides industry-leading real-time ray tracing capabilities, resulting in highly realistic visual simulations.

While OmniGibson may not currently be the fastest simulation platform available, we are actively working to enhance its performance. Our efforts include optimizing speeds and leveraging NVIDIA's cloning features to enable large-scale parallelization.

## **What is the relationship between Gibson, iGibson, and OmniGibson?**

[Gibson](http://gibsonenv.stanford.edu/) is a collection of high-fidelity, large-scale scene scans, primarily designed for navigation tasks within static environments.

[iGibson](https://svl.stanford.edu/igibson/), building upon this foundation, introduced interactivity by creating 15 fully interactive scenes. However, iGibson's implementation in PyBullet limited its capabilities, lacking support for high-fidelity rendering, cloth simulation, and fluid dynamics.

[OmniGibson](https://behavior.stanford.edu/omnigibson/) aims to provide a comprehensive and feature-complete simulation platform. It includes 50 much larger-scale, fully interactive scenes with thousands of curated objects. Leveraging real-time ray tracing and NVIDIA's Omniverse backend, OmniGibson offers exceptional visual realism while supporting advanced simulations involving cloth, fluids, and various other complex physical interactions.
17 changes: 17 additions & 0 deletions docs/miscellaneous/known_issues.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# **Known Issues & Troubleshooting**

## 🤔 **Known Issues**

??? question "How can I parallelize running multiple scenes in OmniGibson?"

Currently, to run multiple scenes in parallel, you will need to launch separate instances of the OmniGibson environment. While this introduces some overhead due to running multiple instances of IsaacSim, we are actively working on implementing parallelization capabilities. Our goal is to enable running multiple scenes within a single instance, streamlining the process and reducing the associated overhead.

## 🧯 **Troubleshooting**

??? question "I cannot open Omniverse Launcher AppImage on Linux"

You probably need to [install FUSE](/~https://github.com/AppImage/AppImageKit/wiki/FUSE) to run the Omniverse Launcher AppImage.

??? question "OmniGibson is stuck at `HydraEngine rtx failed creating scene renderer.`"

`OmniGibson` is likely using an unsupported GPU (default is id 0). Run `nvidia-smi` to see the active list of GPUs, and select an NVIDIA-supported GPU and set its corresponding ID when running `OmniGibson` with `export OMNIGIBSON_GPU_ID=<ID NUMBER>`.
Loading

0 comments on commit b360ab8

Please sign in to comment.