Skip to content

Latest commit

 

History

History
59 lines (41 loc) · 2.79 KB

File metadata and controls

59 lines (41 loc) · 2.79 KB

Exporting to Robotics Simulators

Exporting Articulated Objects

To export to robotics simulation, install Infinigen using the command:

pip install -e ".[sim]"

To export articulated assets to the MJCF/URDF/USD file formats, we provide the following command.

./scripts/spawn_sim_ready_asset.sh {asset name} {number of instances} {mjcf/urdf/usd}

For instance, to generate 10 instances of all available assets in the MJCF file format, run the following scripts.

./scripts/spawn_sim_ready_asset.sh door 10 mjcf
./scripts/spawn_sim_ready_asset.sh dishwasher 10 mjcf
./scripts/spawn_sim_ready_asset.sh lamp 10 mjcf
./scripts/spawn_sim_ready_asset.sh multifridge 10 mjcf
./scripts/spawn_sim_ready_asset.sh multidoublefridge 10 mjcf
./scripts/spawn_sim_ready_asset.sh toaster 10 mjcf

To view the most updated list of included articulated assets, please see OBJECT_CLASS_MAP in infinigen/assets/sim_objects/mapping.py. Each key in the map corresponds to an articulated asset. Note that singlefridge and doublefridge are used by multifridge and multidoublefridge and are not meant to be used on their own.

Exporting Infinigen-Indoors Scenes

This section details how to run a robotics simulation in an exported Infinigen scene using NVIDIA IsaacSim. For more information on scene generation or export, refer to Hello Room or Exporting to External File Formats.

⚠️ The whole-scene exporter outputs .usd files with no articulation. For whole indoor scense, we have only tested compatibility for Indoor scenes using IsaacSim, not nature scenes or any other simulator.

First, create and export a scene with the commands below:

python -m infinigen_examples.generate_indoors --seed 0 --task coarse --output_folder outputs/indoors/coarse -g overhead_singleroom.gin -p compose_indoors.terrain_enabled=False  restrict_solving.solve_max_rooms=1 
python -m infinigen.tools.export --input_folder outputs/indoors/coarse --output_folder outputs/my_export -f usdc -r 1024 --omniverse

Download IsaacSim from NVIDIA Omniverse and set up an IsaacSim conda environment by running the following commands in your IsaacSim Directory (typically ~/.local/share/ov/pkg/isaac_sim-2023.1.1)

conda env create -f environment.yml
conda activate isaac-sim
source setup_conda_env.sh

Import scene and run a simulation

python {PATH_TO/isaac_sim.py} --scene-path outputs/my_export/export_scene.blend/export_scene.usdc --json-path outputs/my_export/export_scene.blend/solve_state.json 

⚠️ Physical properties are applied based on object relations specified in solve_state.json. Scenes can be imported without a solve_state.json, but all objects will be static colliders.