SMARTPHONE SENSOR BASED GESTURE RECOGNITION LIBRARY

Similar documents
FACE RECOGNITION USING NEURAL NETWORKS

Live Hand Gesture Recognition using an Android Device

Artificial Neural Networks. Artificial Intelligence Santa Clara, 2016

NEURAL NETWORK DEMODULATOR FOR QUADRATURE AMPLITUDE MODULATION (QAM)

MINE 432 Industrial Automation and Robotics

Neural Network Based Optimal Switching Pattern Generation for Multiple Pulse Width Modulated Inverter

MATLAB/GUI Simulation Tool for Power System Fault Analysis with Neural Network Fault Classifier

USING EMBEDDED PROCESSORS IN HARDWARE MODELS OF ARTIFICIAL NEURAL NETWORKS

Sonia Sharma ECE Department, University Institute of Engineering and Technology, MDU, Rohtak, India. Fig.1.Neuron and its connection

Comparison of Head Movement Recognition Algorithms in Immersive Virtual Reality Using Educative Mobile Application

DC Motor Speed Control using Artificial Neural Network

Figure 1. Artificial Neural Network structure. B. Spiking Neural Networks Spiking Neural networks (SNNs) fall into the third generation of neural netw

A Simple Design and Implementation of Reconfigurable Neural Networks

Image Finder Mobile Application Based on Neural Networks

Course Objectives. This course gives a basic neural network architectures and learning rules.

A.I in Automotive? Why and When.

A comparative study of different feature sets for recognition of handwritten Arabic numerals using a Multi Layer Perceptron

Decriminition between Magnetising Inrush from Interturn Fault Current in Transformer: Hilbert Transform Approach

CONCLUSIONS AND SUGGESTIONS FOR FUTURE WORK

INTRODUCTION TO DEEP LEARNING. Steve Tjoa June 2013

Robust Hand Gesture Recognition for Robotic Hand Control

CHAPTER 6 BACK PROPAGATED ARTIFICIAL NEURAL NETWORK TRAINED ARHF

Generating an appropriate sound for a video using WaveNet.

Analysis of Learning Paradigms and Prediction Accuracy using Artificial Neural Network Models

IMPLEMENTATION OF NEURAL NETWORK IN ENERGY SAVING OF INDUCTION MOTOR DRIVES WITH INDIRECT VECTOR CONTROL

A Novel Fuzzy Neural Network Based Distance Relaying Scheme

CROP RECOMMENDATION SYSTEM USING NEURAL NETWORKS

Speech/Music Change Point Detection using Sonogram and AANN

AN ANN BASED FAULT DETECTION ON ALTERNATOR

VISUAL FINGER INPUT SENSING ROBOT MOTION

LabVIEW based Intelligent Frontal & Non- Frontal Face Recognition System

Real-Time Face Detection and Tracking for High Resolution Smart Camera System

Application of Multi Layer Perceptron (MLP) for Shower Size Prediction

Human Activity Recognition using Single Accelerometer on Smartphone Put on User s Head with Head-Mounted Display

Creating a Poker Playing Program Using Evolutionary Computation

Prediction and Correction Algorithm for a Gesture Controlled Robotic Arm

AN ANALYSIS OF SPEECH RECOGNITION PERFORMANCE BASED UPON NETWORK LAYERS AND TRANSFER FUNCTIONS

CHAPTER 7 CONCLUSIONS AND FUTURE SCOPE

Application of ANN to Predict Reinforcement Height of Weld Bead under Magnetic Field

Stock Price Prediction Using Multilayer Perceptron Neural Network by Monitoring Frog Leaping Algorithm

FPGA based Real-time Automatic Number Plate Recognition System for Modern License Plates in Sri Lanka

Mel Spectrum Analysis of Speech Recognition using Single Microphone

Proposers Day Workshop

Swarm Intelligence W7: Application of Machine- Learning Techniques to Automatic Control Design and Optimization

ANALYSIS OF CITIES DATA USING PRINCIPAL COMPONENT INPUTS IN AN ARTIFICIAL NEURAL NETWORK

A Comparison of Particle Swarm Optimization and Gradient Descent in Training Wavelet Neural Network to Predict DGPS Corrections

SERIES (OPEN CONDUCTOR) FAULT DISTANCE LOCATION IN THREE PHASE TRANSMISSION LINE USING ARTIFICIAL NEURAL NETWORK

SUPERVISED SIGNAL PROCESSING FOR SEPARATION AND INDEPENDENT GAIN CONTROL OF DIFFERENT PERCUSSION INSTRUMENTS USING A LIMITED NUMBER OF MICROPHONES

This list supersedes the one published in the November 2002 issue of CR.

ARTIFICIAL NEURAL NETWORK BASED CLASSIFICATION FOR MONOBLOCK CENTRIFUGAL PUMP USING WAVELET ANALYSIS

Artificial Neural Networks

Application of Artificial Neural Networks System for Synthesis of Phased Cylindrical Arc Antenna Arrays

High-Level Programming for Industrial Robotics: using Gestures, Speech and Force Control

Visual & Virtual Configure-Price-Quote (CPQ) Report. June 2017, Version Novus CPQ Consulting, Inc. All Rights Reserved

Prediction of Missing PMU Measurement using Artificial Neural Network

Automated Planetary Terrain Mapping of Mars Using Image Pattern Recognition

Visual Interpretation of Hand Gestures as a Practical Interface Modality

Implementation of a Choquet Fuzzy Integral Based Controller on a Real Time System

Neural Networks and Antenna Arrays

A Survey on Smart City using IoT (Internet of Things)

Performance Study of A Non-Blind Algorithm for Smart Antenna System

Application Areas of AI Artificial intelligence is divided into different branches which are mentioned below:

WHITE PAPER Need for Gesture Recognition. April 2014

Research Seminar. Stefano CARRINO fr.ch

Research on Hand Gesture Recognition Using Convolutional Neural Network

Design of Substrate IntegratedWaveguide Power Divider and Parameter optimization using Neural Network

To be published by IGI Global: For release in the Advances in Computational Intelligence and Robotics (ACIR) Book Series

Real-Time Gesture Prediction Using Mobile Sensor Data for VR Applications

Modelling and Simulation of Tactile Sensing System of Fingers for Intelligent Robotic Manipulation Control

ARTIFICIAL INTELLIGENCE IN POWER SYSTEMS

Impeding Forgers at Photo Inception

Hand & Upper Body Based Hybrid Gesture Recognition

Detection and classification of faults on 220 KV transmission line using wavelet transform and neural network

Representation Learning for Mobile Robots in Dynamic Environments

TCM-coded OFDM assisted by ANN in Wireless Channels

1 Introduction. w k x k (1.1)

AI Application Processing Requirements

UUIs Ubiquitous User Interfaces

The Use of Neural Network to Recognize the Parts of the Computer Motherboard

Indirect Vector Control of Induction Motor Using Pi Speed Controller and Neural Networks

The Digital Synaptic Neural Substrate: Size and Quality Matters

Text Extraction from Images

A Divide-and-Conquer Approach to Evolvable Hardware

Abstract. Most OCR systems decompose the process into several stages:

An Evaluation of Automatic License Plate Recognition Vikas Kotagyale, Prof.S.D.Joshi

Supercomputers have become critically important tools for driving innovation and discovery

Photoshop CS - No More Workslow 2003 Seth Resnick

Introduction to Machine Learning

Design of Head Movement Controller System (HEMOCS) for Control Mobile Application through Head Pose Movement Detection

Extended Kalman Filtering

Number Plate Detection with a Multi-Convolutional Neural Network Approach with Optical Character Recognition for Mobile Devices

Gesture Identification Using Sensors Future of Interaction with Smart Phones Mr. Pratik Parmar 1 1 Department of Computer engineering, CTIDS

Neuro-Fuzzy based First Responder for Image forgery Identification

DETECTION AND RECOGNITION OF HAND GESTURES TO CONTROL THE SYSTEM APPLICATIONS BY NEURAL NETWORKS. P.Suganya, R.Sathya, K.

Implementation and Performance Testing of the SQUASH RFID Authentication Protocol

WIRELESS CONTROL OF A ROBOTIC ARM USING 3D MOTION TRACKING SENSORS AND ARTIFICIAL NEURAL NETWORKS 13

Smart antenna for doa using music and esprit

VOICE CONTROL BASED PROSTHETIC HUMAN ARM

DIAGNOSIS OF STATOR FAULT IN ASYNCHRONOUS MACHINE USING SOFT COMPUTING METHODS

Sri Shakthi Institute of Engg and Technology, Coimbatore, TN, India.

Transcription:

SMARTPHONE SENSOR BASED GESTURE RECOGNITION LIBRARY Sidhesh Badrinarayan 1, Saurabh Abhale 2 1,2 Department of Information Technology, Pune Institute of Computer Technology, Pune, India ABSTRACT: Gestures are a natural way for humans to interact. We propose a gesture recognition library using the motion sensors embedded on mobile devices. Data from a combination of sensors form a signature for each individual gesture which is then recognized using pattern recognition technique. Gesture recognition is achieved in the video game console market using Kinect/camera or by controllers like Wii, Xbox controller etc. These devices are generally costly and have limitations associated with them. The objective of our idea is to provide an amazing gaming experience, generally associated with costly devices, using smartphones that are already widely available. The library can be used in applications catering to domains like gaming, augmented reality, browsing applications and many more. Due to the rising popularity of smartphones, the reach of our idea will be huge. Consequently, smart phones can soon replace other gaming consoles, and our system can aid this transition. Keywords: Gesture recognition, smartphones, sensors, gaming, pattern recognition, library, controllers, console market, augmented reality, browsing applications [1] INTRODUCTION Gesture recognition is an emerging field. Almost all the applications have slowly added the gesture recognition modules onto them for ease of use. With the fast pace of life, everybody wants maximum output by investing least efforts and gesture recognition has the potential to do that. Therefore, with the means of this paper we want to propose the idea of using the accelerometer and gyroscope of smartphones to their utmost level. We also put forward the research we have done about this. Gestures are a very natural way for humans to communicate with each other and they help us explore the field of virtual reality. Various technologies using gestures need external hardware for its operation. Nowadays, hardware sensors are embedded into smartphones and we can use them to recognize gestures. The accelerometer and the gyroscope are the two most common hardware devices. The gyroscope measures the orientation of a device with the coordinate axes using the basic yaw-pitch-roll convention [3].But, there is no such library present which exploits the capabilities of smartphones and we intend to create a library to recognize an array of gestures which can be used in innumerable applications. The library can prove to be a thrust for dual screen technology. The scope of library can be extended to the domain of gaming. The current gaming consoles require external hardware devices as input device which 257

Smartphone Sensor Based Gesture Recognition Library are expensive and is tedious to setup[3]. We wish to eliminate the need of such external devices and replace it by smartphones. Being embedded with sensors and widely available with the public, smartphones are a viable, less expensive and a promising substitute. Hence, with dual screen technology in place, all that needs to be done is to develop applications using gestures and orientation of the phone. The library we propose can ease the job of the application developer and can capitalize on the console market. Its scope can be gauged by the fact that the console gaming market amounts to around 27 billion dollars [4]. [2] SYSTEM DESIGN The main aim of this idea is to match patterns. So with the existing set of gestures and all the new ones generated by the user, a pattern matching technique would be used to find which gesture the new one compares with. So the steps involved in the process would be as follows: 1) Capture the gesture from the user 2) Match the patterns with stored gestures using an appropriate pattern matching technique 3) Recognition of the final output and result [Figure-1] shows the basic architecture of our proposed system. Figure: 1.The proposed system architecture for pattern recognition [3] APPROACH As the main focus of this idea was pattern recognition, we used the following two techniques: 1) Dynamic Time Warping 2) Neural Networks 258

[3.1] DYNAMIC TIME WARPING (DTW) This is a technique to find an optimal alignment between two time-dependent sequences under certain restrictions. In DTW, the sequences are warped in a nonlinear fashion to match each other. Though DTW has originally been used to compare different speech patterns in automatic speech recognition, it finds great potential in the fields of data mining, information retrieval and would be implemented for our proposed idea. DTW is another pattern recognition algorithm that is based on the concept of dynamic programming. DTW can map two gestures non-linearly which makes DTW capable of comparing two gestures of different data size. DTW compares two gestures and computes a matrix which contains the optimal warping path. The weight of the optimal warping path is indicative of how similar the gesture is to the stored gesture. The least warping path of a gesture shows it is closest to that gesture out of all. Threshold is required to establish whether the gesture is similar enough. DTW algorithm is of polynomial time complexity. The algorithm in [Figure-2] describes the mathematical notation for optimal warping path using DTW. Figure: 2.The algorithm for Optimal Warping Path [2] If there are two sequences X and Y, then [Figure-3] clearly explains how DTW can be applied to them for warping. Figure: 3.The algorithm for Optimal Warping Path [2] 259

Smartphone Sensor Based Gesture Recognition Library [3.1.1] EXPERIMENTAL SETUP To implement DTW in our approach we stored a gesture in the database. There were 6 important attributes of a gesture that were needed for our test, which were: 1) The X, Y and Z values from the accelerometer 2) Yaw, Roll and Pitch values from the gyroscope We stored say x values each for the six arrays of the gesture. This would serve as the comparison model for the gesture the user would make. The number of values in these six arrays stored for the user s gesture depended on factors like the angle and the speed of movement. So, if the gesture movement was slow there were more values stored in each of the arrays. Now, DTW would be iteratively performed on each of these arrays. The DTW decision to find out where the user s gesture was similar to that in the database would be done using thresholding. If the values were within the threshold, then the gesture would be recognized else it would not. [3.2] NEURAL NETWORKS An Artificial Neural Network (ANN) is an information processing paradigm that is inspired by animals' central nervous systems (in particular the brain) that are capable of machine learning and pattern recognition. The composition of an ANN is of a number of highly interconnected processing elements (called as neurons) working in unison to compute values from inputs by feeding information through the network. An ANN is configured for pattern recognition or data classification, through a learning process. The activations of neurons are then passed on, weighted and transformed by an activation function determined by the network's designer, to other neurons, etc., until finally an output neuron is activated that determines which character was read. Network here refers to the interconnections between the neurons in the different layers of each system. Such a system generally has three layers. Data is sent via synapses from the first (input) layer to the third output layer via the second (hidden) layer with substantiate increase I the number of synapses. More complex systems will have more layers of neurons with some having increased layers of input neurons and output neurons. The synapses store parameters called "weights". The functioning of each layer in the network: 1) The activities carried out by the first input layer resemble the raw data fed to the network. 2) The hidden layer activities are decided by the output of input layer and the weights of the interconnection between the neurons of the input and the hidden layer. 3) The activity of the output layer is to show output by fetching values from the activation function. It also acts as the initiator for back-propagation process helping in error correction. The activation function calculates values for the hidden layer neurons by taking summation of product of each of the weights connecting neurons of first (input) layer to the 260

hidden layer and output given by the neuron in the first layer interconnected to the hidden layer neuron. An ANN is typically defined by three types of parameters: 1) The connection pattern between neurons of different layers. 2) Process of learning to update weights of the interconnections between neurons of different layers. 3) The activation function to convert a neuron's weighted input to its output activation. [3.2.1] EXPERIMENTAL SETUP Due to variations in gestures, input data needs to be processed and then fed to the neural network owing to its requirement of a fixed size of input. When a gesture is performed, the values obtained from the accelerometer and the gyroscope are variable. These values need to be mapped to a fixed number. This preprocessing can be carried out by maintaining a queue in which a fixed set of input values are pushed by the accelerometer or the gyroscope. We fixed the number of input values to an ANN to 45 per axes of the gyroscope and the accelerometer (corresponding to X, Y and Z axes of each). Hence, the first layer of the neural network was fixed with 270 neurons to accept the input values. The results showcased that the tapering architecture of the ANN yielded better results. Therefore, the hidden layers were made such that the output of ANN was taken from only five neurons in the output layer. The configuration of the setup is given below: Network type: Feed forward neural network using back propagation Number of inputs: 270 Number of layers: 4 Number of outputs: 5 Activation function used: Sigmoid function [Figure-4] shows an example of a tapering architecture of neural networks. Figure: 4.Architectural Diagram of ANN 261

Smartphone Sensor Based Gesture Recognition Library [3.2.2] TEST CASES Since there is no rule of thumb for neural networks, we did many tests so as to define the scope for our idea and concluded with the following five test cases: 1) Number of inputs: Tests were done with different number of inputs to neural network ranging from 30, 45, 60 and 90. Results: 45 inputs gave the correct results and those were used after for further experiments. 2) Number of layers: Tests were done with various numbers of layers ranging from three to six. Results: Four layers were selected after the tests. 3) Activation function: Various activation functions available were tested viz. sigmoid function, threshold function. Results: There was no noticeable difference hence, we used the sigmoid function. 4) Number of output bits: Tests were done to ascertain the number of output bits. Results: We concluded that (n+1) bits were to be used for (2*n) gestures. 5) Training with stop and start values: Fetching 100 values from sensors and downsizing them to 45 and feeding it to neural network. Results: Worked fine with noticeable delay. [6] CONCLUSION With the experiments conducted we found out that the neural network approach best suited our proposed system. Though DTW is a faster and memory efficient algorithm [1] but for our proposed system for smartphones, neural networks is a better approach. The reasons why neural network are better are that the accuracy is higher than DTW and also that it takes constant processing time for any data[1], unlike DTW in which the processing time is dependent on the size of the input data. This idea is in its fundamental stages but it has the potential to revolutionize the console gaming market. 262

REFERENCES [1] Gerrit Niezen and Gerhard P. Hanckel, Evaluating and optimising accelerometer-based gesture recognition techniques for mobile devices, 2009 IEEE Africon. [2] Muller M., Information Retrieval for Music and Motion, Springer, 2007. [3] Thomas Schlomer, Benjamin Poppinga, Neils Henze, Susanne Boll, Evaluation of Gyroscope-embedded Mobile Phones,University of Oldenburg. [4] www.develop-online.net/news/microsoft-console-industry-worth-27-billion/0114865. 263