Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/um-arm-lab/chsel_experiments
Experiments for the CHSEL paper
https://github.com/um-arm-lab/chsel_experiments
Last synced: 4 days ago
JSON representation
Experiments for the CHSEL paper
- Host: GitHub
- URL: https://github.com/um-arm-lab/chsel_experiments
- Owner: UM-ARM-Lab
- License: mit
- Created: 2023-05-12T22:13:49.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-07-13T02:22:43.000Z (4 months ago)
- Last Synced: 2024-07-13T03:30:00.427Z (4 months ago)
- Language: Python
- Size: 129 KB
- Stars: 0
- Watchers: 10
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# CHSEL Experiments
This is the official experiments code for the paper [CHSEL: Producing Diverse Plausible Pose Estimates from Contact and Free Space Data](TODO).
If you use it, please cite```
@inproceedings{zhong2023chsel,
title={CHSEL: Producing Diverse Plausible Pose Estimates from Contact and Free Space Data},
author={Zhong, Sheng and Fazeli, Nima and Berenson, Dmitry},
booktitle={Robotics science and systems},
year={2023}
}
```## Installation (experiments)
1. install [pytorch3d](https://github.com/facebookresearch/pytorch3d) (various ways, but probably easiest through conda)
2. install [base experiments](https://github.com/UM-ARM-Lab/base_experiments) by following its readme
3. install [stucco experiments](https://github.com/UM-ARM-Lab/stucco_experiments) by following its readme
4. clone repository locally and `cd` into it
5. `pip install -e .`## Links
- [arxiv](https://arxiv.org/abs/2305.08042)
- [website](https://johnsonzhong.me/projects/chsel/)## Usage
This is the full experiments to reproduce the results from the paper.
See the [light-weight library repository](https://github.com/UM-ARM-Lab/chsel) for how to use CHSEL
in your projects.
See the [website](https://johnsonzhong.me/projects/chsel/) for videos and a high level introduction.## Registration Experiments
The instructions below are for all methods across all tasks. To specify a set of tasks, use the `--task` argument, such
as `--task drill mustard` to run only the methods on the drill and mustard pokes. To specify which methods to run, use
the `--registration` argument, such as `--registration icp medial-constraint` to run only the ICP and medial constraint
baselines. By default, 5 random seeds (0,1,2,3,4) are used; to run using other random seeds use the `--seed` argument,
such as `--seed 23 42` to run with seeds 23 and 42.Generate and export data for offline baselines:
```shell
python run_many_registration_experiments.py --experiment build --no_gui
python run_many_registration_experiments.py --registration none --no_gui
```Generate plausible set for plausible diversity evaluation
```shell
python run_many_registration_experiments.py --experiment generate-plausible-set --seed 0 --no_gui
```Run poking experiments for all methods (CVO requires preprocessing; see below)
```shell
python run_many_registration_experiments.py --experiment poke --no_gui
```Evaluate all methods on their plausible diversity
```shell
python run_many_registration_experiments.py --experiment evaluate-plausible-diversity --no_gui
```Plotting results (images saved under `data/img`)
```shell
python run_many_registration_experiments.py --experiment plot-poke-pd --no_gui
```Generate gifs from the logged images after `cd`ing into their log directories:
```shell
ffmpeg -i %d.png -vf palettegen palette.png
ffmpeg -i %d.png -i palette.png -lavfi paletteuse all.gif
```## Running Baselines
CVO
1. download docker image [https://github.com/UMich-CURLY/docker_images/tree/master/cvo_gpu](cvo_gpu)
2. build docker image and follow instructions
3. first start container with `bash run_cuda_docker.bash cvo` in the `docker/images/cvo_gpu` directory (script modified to mount shared data directory)
4. for later uses, restart latest container with "docker start -a -i `docker ps -q -l`"
5. build CVO
6. run script inside build on a single trajectory `bin/cvo_align_manip_freespace ../data/poke/MUSTARD_0.txt ../data/poke/MUSTARD.txt ../cvo_params/cvo_geometric_params_gpu.yaml`
7. run script for all trajectories of a task `python3 ../scripts/run_many_manip_experiments.py --task mustard mustard_fallen drill`