iGibson is a simulation environment providing fast visual rendering and physics simulation based on Bullet. iGibson is equipped with fifteen fully interactive high quality scenes, hundreds of large 3D scenes reconstructed from real homes and offices, and compatibility with datasets like CubiCasa5K and 3D-Front, providing 8000+ additional interactive scenes. Some of the features of iGibson include domain randomization, integration with motion planners and easy-to-use tools to collect human demonstrations. With these scenes and features, iGibson allows researchers to train and evaluate robotic agents that use visual signals to solve navigation and manipulation tasks such as opening doors, picking up and placing objects, or searching in cabinets.
git clone --recurse-submodules https://github.com/dnandha/iGibson.git
conda env create -f environment.yml
conda activate py2-igibson
pip install -e .
mkdir ~/tmp
python -m gibson2.utils.assets_utils --download_assets
python -m gibson2.utils.assets_utils --download_demo_data
python -m gibson2.utils.assets_utils --download_ig_dataset
cd gibson2/examples/demo
python tiago_dual_ik.py
export PYTHONPATH="$PYTHONPATH:<PATH_TO_IGIBSON>"
(add this line to ".bashrc" for auto export in future)sudo apt install python-catkin-tools ros-melodic-turtlebot3-teleop ros-melodic-depthimage-to-laserscan ros-melodic-hector-mapping
mkdir -p ~/catkin_ws/src
cd <PATH_TO_IGIBSON>/gibson2
ln -s $PWD/examples/ros/gibson2-ros ~/catkin_ws/src/
cd ~/catkin_ws
rosdep install --from-paths src --ignore-src -r -y
catkin build
source ~/catkin_ws/devel/setup.bash
roslaunch gibson2-ros turtlebot_rgbd.launch
[12/1/2020] Major update to iGibson to reach iGibson v1.0, for details please refer to our arxiv preprint.
- Release of iGibson dataset that includes 15 fully interactive scenes and 500+ object models annotated with materials and physical attributes on top of existing 3D articulated models.
- Compatibility to import CubiCasa5K and 3D-Front scene descriptions leading to more than 8000 extra interactive scenes!
- New features in iGibson: Physically based rendering, 1-beam and 16-beam LiDAR, domain randomization, motion planning integration, tools to collect human demos and more!
- Code refactoring, better class structure and cleanup.
[05/14/2020] Added dynamic light support 🔦
[04/28/2020] Added support for Mac OSX 💻
If you use iGibson or its assets and models, consider citing the following publication:
@article{shenigibson,
title={iGibson, a Simulation Environment for Interactive Tasks in Large Realistic Scenes},
author={Shen*, Bokui and Xia*, Fei and Li*, Chengshu and Mart{\'i}n-Mart{\'i}n*, Roberto and Fan, Linxi and Wang, Guanzhi and Buch, Shyamal and D’Arpino, Claudia and Srivastava, Sanjana and Tchapmi, Lyne P and Vainio, Kent and Fei-Fei, Li and Savarese, Silvio},
journal={arXiv preprint arXiv:2012.02924},
year={2020}
}
The documentation for iGibson can be found here: iGibson Documentation. It includes installation guide (including data download instructions), quickstart guide, code examples, and APIs.
If you want to know more about iGibson, you can also check out our webpage, our updated arxiv preprint and our previous RAL+ICRA20 paper.
With iGibson v1.0 release, you will have access to 15 fully interactive scenes (100+ rooms) that can be used in simulation. As a highlight, here are the features we support. We also include 500+ object models.
- Scenes are the result of converting 3D reconstructions of real homes into fully interactive simulatable models.
- Each scene corresponds to one floor of a real-world home. The scenes are annotated with bounding box location and size of different objects, mostly furniture, e.g. cabinets, doors, stoves, tables, chairs, beds, showers, toilets, sinks...
- Scenes include layout information (occupancy, semantics)
- Each scene's lighting effect is designed manually, and the texture of the building elements (walls, floors, ceilings ) is baked offline with high-performant ray-tracing
- Scenes are defined in iGSDF (iGibson Scene Definition Format), an extension of URDF, and shapes are OBJ files with associated materials
For instructions to install iGibson and download dataset, you can visit installation guide.
There are other datasets we link to iGibson. We include support to use CubiCasa5K and 3DFront scenes, adding up more than 8000 extra interactive scenes to use in iGibson! Check our documentation on how to use those.
We also maintain compatibility with datasets of 3D reconstructed large real-world scenes (homes and offices) that you can download and use with iGibson, for example from our previous simulator, Gibson. All of them will be accessible once you fill in this [form].
This is the github repository for iGibson (pip package gibson2
) 1.0 release. Bug reports, suggestions for improvement, as
well as community
developments are encouraged and appreciated. Please, consider creating an issue or sending us an email.
The support for our previous version of the environment, Gibson, can be found in the following repository .