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.
- Clone this repository.
- Ensure
keras
andtensorflow
are installed. This code has been tested with Keras 2.1.4 and Tensorflow 1.4.1.
1. Download the HandyNet dataset using this link.
└── 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.
HandyNet can be trained using this script as follows:
python3 handynet.py train --dataset=/path/to/dataset/ --model=imagenet
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.