Constrained LAtent Shape Projection (CLASP) combines a shape completion neural network with contact measurements from a robot. This repo also contains the full paper and additional plots.
- Set up ROS
- Clone this repo in your ROS path. Rebuild (e.g. catkin build), re-source
- Install dependencies
- Download datasets and pretrained models by running
shape_completion_training/scripts/download_pretrained.py
Trial results are in ./evaluations
To recreate the plots from the paper using the pre-run trials, contact_completion_evaluation.py --plot
To rerun shape completion experiments using the robot motion and contacts as recorded from the paper, in separate terminals run:
roslaunch shape_completion_visualization live_shape_completion.launch
(Rviz will start)roslaunch shape_completion_visualization transforms.launch
(Sets transforms between robot and shape objects)contact_completion_evaluation.py --plot --regenerate
(You will see many shape being generated and updates. Will take over an hour to complete)
The full experimental setup requires running a simulated, or real robot, which moves and contacts objects. To build the software stack used in the experiments, set up the dependencies.
Detailed instructions are in the subfolder [https://github.com/UM-ARM-Lab/contact_shape_completion/tree/main/contact_shape_completion]
Then run
roslaunch shape_completion_visualization live_shape_completion.launch
(Rviz will start)- Launch the robot stack (see detailed instructions in subfolder)
store_simulation_examples --trial [PRETRAINED_NETWORK_NAME] --scene [SCENE_NAME] --store