Awesome
HandyNet: A One-stop Solution to Detect, Segment, Localize & Analyze Driver Hands
Keras implementation for training and testing the models described in HandyNet: A One-stop Solution to Detect, Segment, Localize & Analyze Driver Hands. This repository was created by modifying the pre-existing Mask R-CNN implementation found here.
Installation
- Clone this repository.
- Ensure
keras
andtensorflow
are installed. This code has been tested with Keras 2.1.4 and Tensorflow 1.4.1.
Dataset preparation
1. Download the HandyNet dataset using this link.
2. Split the dataset into separate training and validation folders as below:
└── DATASET_ROOT
├── train
| ├── seq...
| └── seq...
| ...
| └── seq...
└── val
├── seq...
└── seq...
...
└── seq...
Each seq...
folder above is a from a separate capture sequence. You can split the sequences into train
and val
as per your requirement.
3. Create train-val split using this MATLAB script.
Make sure you replace root
in this script with the actual path to the dataset.
Training
HandyNet can be trained using this script as follows:
python3 handynet.py train --dataset=/path/to/dataset/ --model=imagenet
Inference
An example using the HandyNet for inference and visualization can be seen in this script.
This script can be run as follows:
python3 demo_inference.py /path/to/inference/model /path/to/smooth/depth/mat/file
You can download our trained model using this link.