Project details for Gesture Recogition Toolkit

Logo Gesture Recogition Toolkit 0.1 Revision 289

by ngillian - December 13, 2013, 22:59:53 CET [ Project Homepage BibTeX Download ]

view (2 today), download ( 0 today ), 0 subscriptions


The Gesture Recognition Toolkit (GRT) is a cross-platform, open-source, C++ machine learning library that has been specifically designed for real-time gesture recognition.

In addition to a comprehensive C++ API, the GRT now also includes an easy-to-use graphical user interface (GUI) which enables user's to stream real-time data into the GUI via the Open Sound Control network protocol. Using the GUI you can:

(1) Setup and configure a gesture recognition pipeline that can be used for classification, regression, or timeseries analysis.

(2) Stream real-time data into the GUI via Open Sound Control (OSC) from another application (such as Processing, Max, Pure Data, Openframeworks, etc.).

(3) Record, label, save and load your training data.

(4) Train a model for classification or regression.

(5) Test the generalization abilities of the model (using another test dataset or cross validation).

(6) Perform real-time prediction on new data streamed into the GUI via OSC.

(7) Stream the real-time prediction results from the GUI to another application via OSC.

(8) Save your system, trained model, training data, etc. to files that can be loaded in another application that is using the Gesture Recognition Toolkit C++ library.

The GRT C++ library has been designed to:

(1) be easy to use and integrate into your existing c++ projects (2) be compatible with any type of sensor or data input (3) be easy to rapidly train with your own gestures (4) be easy to extend and adapt with your own custom processing or feature extraction algorithms (if needed).

The GRT C++ library currently works across several operating systems including:

(1) Windows (Tested on Windows XP, Windows 7) (2) OS X (Tested on 10.7) (3) Linux (Tested on Ubuntu 12).

The current build of the GRT contains machine-learning algorithms such as:

  • Adaptive Naive Bayes Classifier
  • AdaBoost
  • Decision Tree
  • K-Nearest Neighbor Classifier
  • MinDist
  • Gaussian Mixture Model
  • Dynamic Time Warping
  • Random Forests
  • Support Vector Machine (a wrapper for libsvm)
  • Artificial Neural Network (Multi Layer Perceptron)
  • Linear Regression
  • Logistic Regression

In addition to the machine-learning algorithms, the GRT also contains a large number of pre-processing, post-processing, and feature-extraction algorithms such as:

  • Low Pass Filter
  • High Pass Filter
  • Moving Average Filter
  • Derivative
  • Zero Crossing
  • FFT
  • KMeans Quantizer
  • Class Label Filter
  • Class Label Timeout Filter.

More information can be found on the main GRT wiki:

You can download the GRT via:

Changes to previous version:

Added Decision Tree and Random Forests.

BibTeX Entry: Download
Supported Operating Systems: Linux, Windows, Mac Os X
Data Formats: Plain Ascii, Csv
Tags: Classification, Clustering, Support Vector Machines, Dtw, Logistic Regression, Hidden Markov Model, Feature Extraction, Gesture Recognition
Archive: download here

Other available revisons

Version Changelog Date
0.1 Revision 289

Added Decision Tree and Random Forests.

December 13, 2013, 22:59:53
0.1 Revision 272

Added new graphical user interface to support main C++ library.

November 5, 2013, 13:51:00
0.1 Revision 220

Added logistic regression module.

August 18, 2013, 22:27:58
0.1 Revision 216

Initial Announcement on

August 14, 2013, 23:19:58


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.