For a quick conda install simply run
conda env create --file=environment.yaml
conda activate deep_orientation
For the paper, we make use of the following datasets (some of them require a registration for downloading).
- UPNA Head Pose Dataset.
The dataset needs to be extracted into the folderdatasets/upna
. - IDIAP Head Pose Dataset
The dataset needs to be extracted into the folderdatasets/IDIAPHeadPose
. - T-Less Dataset
We use all objects from the kinect training set for our experiments on t-less. To simplify downloading, we provide the convenience scriptdatasets/download_tless.sh
.
Run the following command to generate the lookup table for Bingham Loss training.
$ python generate_lookup_table.py
Before starting training, we need to generate a lookup table for the Bingham loss. This can be done by running the following script.
$ python generate_lookup_table.py
You can perform training by selecting a configuration YAML file (or writing a new YAML file). Follow the structure in the example UPNA training file. After that, run python train.py --config [config file]
.
In the training portion of the config file, specify the device/gpu number that you would like to use. Also, be sure to name the model you are training! For example if save_as = practice
, then the save_dir = /models/practice/
for consistency.
To run all the experiments in our paper,
$ ./run_training.sh
A tensorboard providing training information can be started via
$ python -m tensorboard.main --logdir=runs/
To run all the evaluations in our paper,
$./run_evaluations.py
If you found this repository useful, please cite our paper presented at ICLR 2020.
@inproceedings{Gilitschenski2020,
title={Deep Orientation Uncertainty Learning based on a Bingham Loss},
author={Igor Gilitschenski and Roshni Sahoo and Wilko Schwarting and Alexander Amini and Sertac Karaman and Daniela Rus},
booktitle={International Conference on Learning Representations},
year={2020}
}
This work was supported in part by NSF Grant 1723943, the Office of Naval Research (ONR) Grant N00014-18-1-2830, and Toyota Research Institute (TRI). The work solely reflects the opinions and conclusions of its authors and not TRI, Toyota, or any other Toyota entity. Their support is gratefully acknowledged. The structure of the directories and the code is partially based on the Pytorch Template by Victor Huang.