Generating Data with MimicGen

Given a modest number of source demonstrations, we offer the ability to syntehsize new trajectories with MimicGen.

Installation

  1. Clone and setup MimicGen under the experimental/robocasa branch:

    git clone https://github.com/NVlabs/mimicgen -b experimental/robocasa
    cd mimicgen
    pip install -e .
    
  2. Setup the robomimic dependency:

    cd ..
    git clone https://github.com/ARISE-Initiative/robomimic -b robocasa
    cd robomimic
    pip install -e .
    

Generate data for existing tasks

We have set up MimicGen for 24/25 existing atomic tasks. Generating demonstration datasets for these tasks is a 3 step process, which we illustrate for the PnPCounterToSink task:

(Note: these commands assume that datasets are stored under ~/robocasa/datasets)

  1. Extract subtask meta data:

    python mimicgen/scripts/prepare_src_dataset.py --dataset ~/robocasa/datasets/v0.1/single_stage/kitchen_pnp/PnPCounterToSink/2024-04-25/demo.hdf5
    
  2. Generate demonstartions:

    python mimicgen/scripts/generate_dataset.py --config mimicgen/exps/templates/robocasa/single_stage/kitchen_pnp/PnPCounterToSink.json
    
  3. Extract image observations. You can then extract image datasets following the dataset extraction tutorial on this guide.

Set up MimicGen for new tasks

Please follow the official MimicGen documentation tutorial page.