Nous apportons des données visuelles réalistes et diverses, depuis des modèles génératifs jusqu'aux simulateurs physiques classiques, permettant aux robots d'apprendre des tâches hautement dynamiques comme le parkour sans nécessiter de profondeur.
lucidsim
contient nos environnements simulés construits à l'aide de MuJoCo. Nous fournissons les environnements et les outils nécessaires pour exécuter le pipeline de rendu LucidSim pour le parkour quadrupède. Le code de formation n'est pas encore inclus.
Si vous recherchez le code d'augmentation générative (requis pour exécuter le pipeline de rendu complet), veuillez consulter le dépôt weaver !
Alan Yu *1 , Ge Yang *1,2 , Ran Choi 1 , Yajvan Ravan 1 , John Leonard 1 , Phillip Isola 1
1 MIT CSAIL, 2 Institut d'IA et d'interactions fondamentales (IAIFI)
* Indique une contribution égale
CoRL 2024
Table des matières
Si vous avez suivi les instructions de configuration de weaver
, n'hésitez pas à installer par-dessus cet environnement.
conda create -n lucidsim python=3.10
conda activate lucidsim
# Choose the CUDA version that your GPU supports. We will use CUDA 12.1
pip install torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 --extra-index-url https://download.pytorch.org/whl/cu121
# Install lucidsim with more dependencies
git clone https://github.com/lucidsim/lucidsim
cd lucidsim
pip install -e .
Les dernières dépendances nécessitent des setuptools
et une wheel
de configuration dégradés pour être installés. Pour l'installer, veuillez rétrograder et revenir après.
pip install setuptools==65.5.0 wheel==0.38.4 pip==23
pip install gym==0.21.0
pip install gym-dmc==0.2.9
pip install -U setuptools wheel pip
Remarque : sous Linux, assurez-vous de définir la variable d'environnement MUJOCO_GL=egl
.
LucidSim génère des images photoréalistes en utilisant un modèle génératif pour augmenter le rendu du simulateur, en utilisant des images de conditionnement pour garder le contrôle sur la géométrie de la scène.
Nous avons fourni un point de contrôle de politique expert sous checkpoints/expert.pt
. Cette politique est dérivée de celle de l'Extreme Parkour. Vous pouvez utiliser cette stratégie pour échantillonner un environnement et visualiser les images de conditionnement avec :
# env-name: one of ['parkour', 'hurdle', 'gaps', 'stairs_v1', 'stairs_v2']
python play.py --save-path [--env-name] [--num-steps] [--seed]
où save_path
est l'endroit où enregistrer la vidéo résultante.
Pour exécuter le pipeline d'augmentation générative complet, vous devrez installer le package weaver
à partir d'ici. Une fois terminé, assurez-vous également que les variables d'environnement sont toujours correctement définies :
COMFYUI_CONFIG_PATH=/path/to/extra_model_paths.yaml
PYTHONPATH=/path/to/ComfyUI: $PYTHONPATH
Vous pouvez ensuite exécuter le pipeline complet avec :
python play_three_mask_workflow.py --save-path --prompt-collection [--env-name] [--num-steps] [--seed]
où save_path
et env_name
sont les mêmes qu'avant. prompt_collection
doit être un chemin vers un fichier .jsonl
avec des invites correctement formatées, comme dans le dossier weaver/examples
.
Nous remercions les auteurs d'Extreme Parkour pour leur base de code open source, que nous avons utilisée comme point de départ de notre politique d'expertise ( lucidsim.model
).
Si vous trouvez notre travail utile, pensez à citer :
@inproceedings{yu2024learning,
title={Learning Visual Parkour from Generated Images},
author={Alan Yu and Ge Yang and Ran Choi and Yajvan Ravan and John Leonard and Phillip Isola},
booktitle={8th Annual Conference on Robot Learning},
year={2024},
}