Skip to content

Application of Spatial transformer network to a hand alignment task.

License

Notifications You must be signed in to change notification settings

kinik93/Spatial-Transformer-Network-application

Repository files navigation

Spatial-Transformer-Network-application

Application of Spatial transformer network to a hand alignment task.

All results refer to the dataset avaiable here.

A full description of this project is provided in ImageAnalysisArticle.pdf

Getting started

If you want to create your own dataset run acquisition.cpp source file on Windows OS and arrange the dataset folder like we did. The STNtest script includes the code to test the network.

Dataset creation requirements

The file acquisition.cpp has the following dependecies:

and obviously a depth camera like Senz3d or DepthSense.

An example of depth frames (8 bit PNG encoding) acquisition is shown in the following gif:

Alt Text

STN requirements

Package name Version
Python 2.7
Numpy 1.14.3 or higher
OpenCV 3.4.1 or higher
Tensorflow 1.7.0 or higher
Keras 2.1.6 or higher
matplotlib 2.2.2 or higher
PIL 3.4.2 or higher

and SpatialTransformer.py [2]

Run the scripts

The notebook STNtest.ipynb file is provided for a user friendly mode to test the application. Pretrained model weights can be loaded from weights_last.h5.

We recommend to use STN_train.py in a real use context to train the network, just type:

python STN_train.py

Experiment results

Loss functions

Loss function

Training process gif sample

Alt Text

References

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Authors:

About

Application of Spatial transformer network to a hand alignment task.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published