Skip to content

Commit

Permalink
Version 1.11.7
Browse files Browse the repository at this point in the history
  • Loading branch information
clemense committed Dec 3, 2024
1 parent 857278e commit c292bf8
Show file tree
Hide file tree
Showing 10 changed files with 103 additions and 87 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Check the [documentation](https://scene-synthesizer.github.io/) page for detaile

## Installation

This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use.
This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use (e.g. [OpenUSD license](https://openusd.org/license>)).

### Via pip
```
Expand Down
5 changes: 5 additions & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@
"sphinx.ext.todo",
"sphinx_rtd_theme",
"sphinx.ext.autosummary", # Create neat summary tables
"sphinxcontrib.bibtex",
]
autosummary_generate = True # Turn on sphinx.ext.autosummary

Expand Down Expand Up @@ -152,3 +153,7 @@
# html_theme_options = {"navigation_depth": 1}

autodoc_preserve_defaults = True

# sphinxcontrib-bibtex setting
bibtex_bibfiles = ["../paper/paper.bib"]
bibtex_default_style = 'unsrt'
80 changes: 79 additions & 1 deletion docs/examples/isaaclab_rl.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,85 @@ To do so we need to create an ``InteractiveScene`` and explicitly register all a
We base our example on the `Issac-open-Drawer-Franka-v0 <https://isaac-sim.github.io/IsaacLab/main/source/overview/environments.html>`_.
After copying the environment, make sure that the cabinet scene ``cabinet_env_cfg.py`` looks like this:

.. literalinclude:: /../examples/isaaclab_kitchen_env_cfg.py
.. code-block:: python
@configclass
class CabinetSceneCfg(InteractiveSceneCfg):
"""Configuration for the kitchen scene with a robot and a kitchen.
This is the abstract base implementation, the exact scene is defined in the derived classes
which need to set the robot and end-effector frames
"""
# robots, Will be populated by agent env cfg
robot: ArticulationCfg = MISSING
# End-effector, Will be populated by agent env cfg
ee_frame: FrameTransformerCfg = MISSING
kitchen = AssetBaseCfg(
prim_path="{ENV_REGEX_NS}/Kitchen",
# Make sure to set the correct path to the generated scene
spawn=sim_utils.UsdFileCfg(usd_path="/tmp/kitchen_with_joint.usd"),
)
cabinet = ArticulationCfg(
prim_path="{ENV_REGEX_NS}/Kitchen/base_cabinet",
# By doing spawn=None we're just registering the articulation, in this case one cabinet with a single joint
spawn=None,
init_state=ArticulationCfg.InitialStateCfg(
# Make sure that this is the exact transformation of the base_cabinet
# ie. scene.get_transform('base_cabinet')
pos=(1.0, 0, 0),
rot=(0.70710678, 0., 0., -0.70710678),
joint_pos={
# Make sure that this is the correct joint name
# ie. scene.get_joint_names('base_cabinet')
"corpus_to_drawer_0_0": 0.0,
},
),
actuators={
"drawers": ImplicitActuatorCfg(
# Make sure that this is the correct joint name
# ie. scene.get_joint_names('base_cabinet')
joint_names_expr=["corpus_to_drawer_0_0"],
effort_limit=87.0,
velocity_limit=100.0,
stiffness=10.0,
damping=1.0,
),
},
)
# Frame definitions for the cabinet.
cabinet_frame = FrameTransformerCfg(
prim_path="{ENV_REGEX_NS}/Kitchen/base_cabinet/drawer_0_0",
debug_vis=False,
visualizer_cfg=FRAME_MARKER_SMALL_CFG.replace(prim_path="/Visuals/CabinetFrameTransformer"),
target_frames=[
FrameTransformerCfg.FrameCfg(
prim_path="{ENV_REGEX_NS}/Kitchen/base_cabinet/drawer_0_0",
name="drawer_handle_top",
offset=OffsetCfg(
pos=(0.0, -0.05, 0.01),
# rot=(0.5, 0.5, -0.5, -0.5), # align with end-effector frame
),
),
],
)
# plane
plane = AssetBaseCfg(
prim_path="/World/GroundPlane",
init_state=AssetBaseCfg.InitialStateCfg(),
spawn=sim_utils.GroundPlaneCfg(),
collision_group=-1,
)
# lights
light = AssetBaseCfg(
prim_path="/World/light",
spawn=sim_utils.DomeLightCfg(color=(0.75, 0.75, 0.75), intensity=3000.0),
)
Make sure to also replace the ``joint_names`` in the ``ObsTerm`` defined in ``ObservationsCfg``.

Expand Down
2 changes: 1 addition & 1 deletion docs/getting_started/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Installation
############

This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use.
This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use (e.g. `OpenUSD license <https://openusd.org/license>`_).

There are two ways to install ``scene_synthesizer``: either directly installing from a PyPI server or by cloning the code repository.

Expand Down
12 changes: 12 additions & 0 deletions docs/getting_started/statement_of_need.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#################
Statement of Need
#################

Simulation is an ever increasing data source for training deep learning models.
In robotics, simulations have been successfully used to learn behaviors such as navigation, walking, flying or manipulation.
The value of data generation in simulation mainly depends on the diversity and scale of scene layouts.
Existing datasets :cite:`Mo_2019_CVPR,robotix2019,ehsani2021manipulathor,robocasa2024` are limited in that regard, whereas purely generative models still lack the ability to create scenes that can be used in physics simulator :cite:`schult24controlroom3d,yang2024physcenephysicallyinteractable3d,hoellein2023text2room`.
Other procedural pipelines either focus on learning visual models :cite:`Denninger2023,greff2021kubric,infinigen2023infinite`, address specific use-cases such as autonomous driving :cite:`scenic2020,hess2021procedural`, or make it hard to be extended and customized since they are tightly integrated with a particular simulation platform :cite:`procthor`.
With `scene_synthesizer` we present a library that simplifies the process of writing scene randomizers in Python, with a particular focus on physics simulations for robot manipulation. It is fully simulator-agnostic.

.. bibliography::
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ A Python package to easily create scenes for robot manipulation tasks.
:caption: Getting Started

GitHub Repository <https://github.com/NVlabs/scene_synthesizer>
getting_started/statement_of_need.rst
getting_started/install.rst
getting_started/faq.rst

Expand Down
78 changes: 0 additions & 78 deletions examples/isaaclab_kitchen_env_cfg.py

This file was deleted.

6 changes: 1 addition & 5 deletions examples/stable_poses.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,7 @@

s.label_support("table_surface", min_area=0.3)

mug = synth.Asset(
fname="/home/clemens/code/scene_synthesizer/tests/data/assets/shapenetsem_watertight/Mug/b46a9c35587a38f6e87dab59b7e63362.obj",
height=0.12,
origin=("com", "com", "com"),
)
mug = pa.MugAsset()

num_mugs = 10
for i in range(num_mugs):
Expand Down
2 changes: 1 addition & 1 deletion paper/paper.bib
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ @inproceedings{procthor
year={2022}
}

@article{greff2021kubric,
@inproceedings{greff2021kubric,
title = {Kubric: a scalable dataset generator},
doi = {10.1109/cvpr52688.2022.00373},
author = {Klaus Greff and Francois Belletti and Lucas Beyer and Carl Doersch and
Expand Down
2 changes: 2 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ all =
pyglet<2
usd-core
dm_control
trimesh[all]==3.20.1

recommend =
usd-core
Expand All @@ -91,6 +92,7 @@ ci =
pytest-timeout
sphinx
sphinx_rtd_theme
sphinxcontrib-bibtex
twine

dev =
Expand Down

0 comments on commit c292bf8

Please sign in to comment.