/Dynamic-Time-Warping

A Dynamic Time Warping (DTW) implementation on Android.

Primary LanguageJava

Dynamic-Time-Warping

This Android application demonstrates how the Dynamic Time Warping (DTW) algorithm can be applied to recognizing the shape of waveform data. This is a very useful ability to have for applications which need to interpret time-domain signals, such as physical gestures from an accelerometer.

Dynamic Time Warping Example

How to Use

Download and run the application. In Training mode, tapping and holding on the screen will start recording accelerometer data, so hold down on the screen for the period of the gesture you'd like to record. Select Recognition mode by tapping the Switch on the bottom-right of the screen. In Recognition mode, recorded gestures are compared to those made in Training mode using the DTW algorithm.

The error calculations, here referred to as distance, are returned to the user via a Toast. Each individual axis of the accelerometer has it's own distance measurement for the period of the gesture.

Dependencies

MPAndroidChart

Credit

Java DTW algorithm benevolently provided by GART.

Show them some love! ♥

Buy @cawfree a coffee