Installation:
Create a python3 virtual environment and after enabling the data generation virtual environment, install the necessary requirements as follows:
- Run pip install requirements.txt to install all external requirements
- Run python setup.py develop to install unsupervised_rbt package
Basic Usage:
You will mostly interact with files in the tools folder, which all have corresponding files in the cfg/tools/ folder which specify paramaters for these files. The controller folder contains scripts for running the simulation experiments to orient objects given a model trained on the self-supervised trask.
Self-Supervised Rotation Prediction Task:
Data Generation: See tools/data_gen_quat.py for generating data for the task. See cfg/tools/data_gen_quat.yaml for config parameters The dataset used for Kit-Net is called 872objv3
Example usage: python tools/data_gen_quat.py {dataset_name}
Training: Make sure to either generate data or use pre-generated data. For training see tools/unsup_rbt_train_quat.py
Example usage: python tools/unsup_rbt_train_quat.py {dataset_name}. Example dataset is 872objv3
Testing: Same as train except with a --test flag.
Example usage: python tools/unsup_rbt_train_quat.py {dataset_name} --test. Example dataset is 872objv3
Prismatic Cavity Task:
Create a dataset with tools/prismatic_cavity.py, then do training and testing as above
Simulation Experiments Controller:
In controller/pyrender_controller.py you can run the orienting objects experiments.
In controller/prism_controller.py you can run the simulation experiments for Kit-Net