Academia.eduAcademia.edu

Sign Language Classification

Abstract

Sign language is a process which is used widely for the communication of the deaf community. Generally sign language is considerably more formable for communication which helps to promote and to increase the communication. In different countries of the world there are different forms and variation of the sign systems exists, in which the ASL is said to be the international one. There are less number of principal notions and assigned appearances in the sign language. The basic idea behind this work is to develop a system of sign language which will facilitate the deaf community and will increase the process of communication. The project focuses on implementation of a software model for sign language recognition system using classifier. The approach for this is to recognize the gestures and to analyze the features using classifier. The recognition is done using principal component analysis and by using classifier the features of the gestures are analyzed.

Sign Language Classification Submitted By: Mustafa Ali Raza Reg. No. 11PWCSE0909 Abdul Qadir Reg. No. 11PWCSE0954 Jamal Khan Reg. No. 11PWCSE0918 Supervised by: Engr. Madiha Sher A thesis submitted in partial fulfillment of the requirements for the degree of Bachelor of Science in Computer Systems Engineering Department of Computer Systems Engineering University of Engineering and Technology Peshawar Certificate and approval This is to certify that the work contained in this thesis under the title of “Sign Language Classification” was carried out by Mustafa Ali Raza Abdul Qadir Jamal Khan Under my supervision and that in my opinion, it is fully appropriate, in scope and quality, for the degree of BSc Computer Systems Engineering from university of engineering and technology Peshawar. Approved by: Supervisor: Engr. Madiha Sher Signature: ___________________________ Verified by: FYP Coordinate: Dr. Hammad Ali Zai/ Engr. SaleemUllah Signature: ___________________________ Verified by: Chairman: Dr. Laiq Hassan Signature: ___________________________ Department of Computer Systems Engineering Stamp: Abstract Sign language is a process which is used widely for the communication of the deaf community. Generally sign language is considerably more formable for communication which helps to promote and to increase the communication. In different countries of the world there are different forms and variation of the sign systems exists, in which the ASL is said to be the international one. There are less number of principal notions and assigned appearances in the sign language. The basic idea behind this work is to develop a system of sign language which will facilitate the deaf community and will increase the process of communication. The project focuses on implementation of a software model for sign language recognition system using classifier. The approach for this is to recognize the gestures and to analyze the features using classifier. The recognition is done using principal component analysis and by using classifier the features of the gestures are analyzed. Acknowledgments Thanks and praises to the Allah Almighty for granting us success in completing this project. This thesis is the result of the blessings and dedication of many individual persons, especially our parents. Our sincere and heartfelt appreciations go to all of them. First of all we would like to thank Engr. Madiha Sher, the most humble and knowledgeable person for she was not only our supervisor but she was the binding force of our group. She helped us a lot in this project and always appreciated our questions and queries. The method for solving the problems was very easy and understandable. Special thanks to Dr. Nasir Ahmed for his guidance and constant support throughout the project. We whole-heartedly want to thank him and appreciate his special interest in this project. In addition we would like to thank our teachers and fellows who were ready to help us including Engr. Jibran Khan, Engr. Shakir Ullah, and Engr. Sidra Gul. We had a wonderful experience working as a team. We hope that our work will be of some use to our juniors for their research and projects. List of Abbreviations SL : Sign Language SLR : Sign Language Recognition ASL : American Sign Language FSL : French Sign Language 1D : One Dimension 2D : Two Dimensional LER : Low Error Rate PCA : Principal Component Analysis S.D : Standard Deviation E.M : Electro Magnetic CCU : Central Control Unit GM : Gaussian Model GMM : Gaussian Mixture Model List of Figures NO TITTLE PAGE 3.1 Non Maximum Suppression 19 3.2 Results of the Canny Algorithm 20 6.1 Recognition of the hand gesture using PCA 35 6.2 Average probability of the Hu-Moments 39 List of Tables NO TITTLE PAGE Effect of number of features on 6.1 classification 36 Results of PCA using different 6.2 Classifiers 37 Classification Results Using Hu- 6.3 moments 38 6.4 PCA vs Hu-moments 40 Table of Contents Abstract.............................................................................................................. i Acknowledgments................................................................................................ ii List of Abbreviations............................................................................................ iii List of Figures..................................................................................................... iv List of Tables....................................................................................................... v Table of Contents................................................................................................ vi Chapter1............................................................................................................ 8 Introduction........................................................................................................ 8 1.1 Overview............................................................................................... 8 1.2 Introduction to the Project........................................................................8 1.3 Problem Statement................................................................................10 Chapter 2......................................................................................................... 11 Literature Survey............................................................................................... 11 2.1 Overview............................................................................................. 11 2.2 Previous Work...................................................................................... 11 2.3 Issues with the Gesture Recognition..........................................................13 Chapter 3......................................................................................................... 15 Feature Extraction............................................................................................. 15 3.1 Overview............................................................................................. 15 3.2 Definition of Edge..................................................................................15 3.3 Edge Detection...................................................................................... 15 3.4 Canny Edge Detection............................................................................ 16 3.5 Steps of Canny Edge Detection.................................................................16 3.5.1 Removing of Noise.......................................................................17 3.5.2 Finding Gradients........................................................................17 3.5.3 Non Maximum Suppression.........................................................18 3.5.4 Double Thresholding...................................................................19 3.5.5 Edge Tracking By Hysteresis........................................................20 3.6 Principal Component Analysis.................................................................21 3.7 Steps for PCA....................................................................................... 21 3.7.1 First Step..................................................................................... 21 3.7.3 Third Step.................................................................................... 22 3.7.4 Fourth Step.................................................................................. 22 3.7.5 Fifth Step..................................................................................... 23 3.7.6 Sixth Step.................................................................................... 23 3.7.7 Seventh Step...............................................................................24 3.8 Moments and Invariant..........................................................................25 3.9 Hu-Moments........................................................................................ 25 Chapter 4......................................................................................................... 27 Classifiers......................................................................................................... 27 4.1 Overview............................................................................................. 27 4.2 Random Forests Classifier.......................................................................27 4.3 Methods of Random Forests Algorithm......................................................28 4.5.1 Feature Weighted Method...........................................................28 4.5.2 The Normalized Weights..............................................................29 4.4 Random Tree........................................................................................ 30 Chapter 5......................................................................................................... 32 Methodology..................................................................................................... 32 5.1 Overview............................................................................................. 32 5.2 Heading............................................................................................... 32 5.3 Flow Chart........................................................................................... 34 Chapter 6......................................................................................................... 35 Results............................................................................................................. 35 6.1 Overview............................................................................................. 35 6.2 Classification Using PCA........................................................................35 6.3 Effect on Accuracy by Varying Number of PCA Features..............................36 6.4 Results of Different Classifiers.................................................................37 6.5 Classification Using Hu-moments.............................................................38 6.6 Hu-Moments Vs PCA............................................................................. 39 6.7 Conclusion........................................................................................... 41 References:....................................................................................................... 42 Chapter1 Introduction 1.1 Overview In this chapter the introduction to the project is discussed. The introduction of the sign language and also different types of the images and gestures are discussed. This chapter also covers problem statement of the project. 1.2 Introduction to the Project As the common computer input devices introduced in the field of the technology does not changed a lot. The reason behind this is that these devices are satisfactory. As now days computers becomes so common in our daily life, that the research made in this field make it easy to introduce new applications and the hardware. To deal with the computers we have are restricted to keyboards, light pen and also now a days keypads are introduced to communicate with the computers. These devices become so much popular but it limits the speed. As the technology is growing the vision based interfaces are becoming popular among the people and with these devices the computers are able to see. So this development will lead us to develop new interfaces of the devices through which the commands that are not executed with the current input devices will be executed by these devices. The relation or the interaction of the humans with the machine is generally called the Man Machine Interaction or it is also called the Human Computer Interaction. This refers to the relation of the human 8 beings with the machine. The two main characteristics that are functionality and usability should be kept in mind while designing the HCI model. Functionality of the systems is the services that are provided to the user of the system by the system, while usability of the system is that the specific tasks that the user does can be done precisely. The gestures are way of communication between the machines and humans and also the gestures are used for the communication among the people by using a language i.e. sign language. [1] Now a day’s recognition of the hand gestures has taken a huge interest. There are numerous applications of the hand gesture recognition like controlling the machines, computer games replacing the mouse. The most significant structures are the sets of the gestures exist as a sign language. In the sign language each and every gesture is assigned to a specific meaning. Sign language is basically a way of communication between the humans and the deaf people. As with the advancement of technology sign language has become common using the sensors in the data gloves. The main idea behind the sign language is to recognize the images of the gestures of the human hands. Early the recognition was difficult but with the advancements in technology it is becoming easier and more precise. The satisfactory recognition of the hand gestures are provided by more advanced computer interfaces, allowing a three dimensional model in which rotation of hand gestures are also recognized. The hand gestures are generally divided into two categories of static and dynamic. [2] The first category that is static hand gestures is basically a specific hand pose and configuration which is represented by single image. The second category of hand gesture is dynamic in which we deal with 9 moving gestures and it is represented by a number of images not with a single image like static. In our project for hand gestures we focused on the static images. 1.3 Problem Statement Generally the impaired people in our society have a lot of problems in communicating with the normal people. The problems which they go through is to convey their thoughts and also their ideas which they want to transfer and share with the normal people of the society. The main problem through which this kind of situation arises is the limitation and less knowledge in the sign language. By this the impaired society people lose hope and also interest in the normal activities and it effect their communication with the people and they spent an isolation time in the society. To overcome this great problem and also the handle the situation concerned with these people a lot of sign languages recognition systems were developed by different researchers but still there is need of accuracy and effectiveness in recognition of the signs. The proposed system will focus on solving these problems and try to develop an accurate and effective sign recognition system. 10 . Chapter 2 Literature Survey 2.1 Overview This chapter covers the literature review including the previous work done in this field and also covers the methods which were used in designing this system. This issues related to this project are also discussed in this chapter. 2.2 Previous Work Sign languages (SL) are natural languages that use different means of expression for communication in everyday life. The primary mode of communication for many deaf people from many countries in the world is the sign languages (SL). But the question arises that who invented sign language? [3] As no one has got the answer to this question, but it is most likely that the ones who created the sign languages are the deaf themselves who created a variety of gestures in order to communicate. The researchers have studied and state that there are three categories of the hand gestures. Among the three categories of the hand gestures 11 the first category is glove based analysis. Second category is vision based analysis and at the last the analysis of the drawing gesture. In the first category that is glove based analysis the sensors that are mechanical or optical are attached to the glove that converts the finger movements into electrical signals by which the hand posture can be determined. Generally the sensor which is attached to the glove is an acoustic or a magnetic sensor. For such type of recognition there are toolkits are available with the glove to be used for the recognition of the hand gesture or SL. The second category is vision based analysis which is based on the way through which the humans get the information about their surroundings although its satisfactory implementation is really difficult. So for this different approaches are tested. One of the approach is to make a three dimensional model of the human hand. In this model the images of the hand are matched to the model by one or several cameras and the parameters which correspond to the orientation of the palm and the angles of the joint are estimated and later they are used for the gesture classification. This three dimensional hand skeleton model was developed by Lee and Kunii. Marked gloves were used to simplify the model. The third category was the drawing gestures analysis. In this type of gesture recognition the stylus is used as an input device. The drawing gestures analysis can also lead to the recognition of the written text. [4] The majority of the work in the hand or sign gesture recognition is done for manipulation of the apparent environment and also for the symbolic communication by using the mechanical sensing. Number of problems arises by sensing mechanically the hand gestures which 12 includes the E.M noise, reliability and also accuracy, so visual sensing makes the recognition of the hand gesture more practical. The ASL recognition fully consolidates the data gloves. In addition to this a Data glove based system is discussed by the two Japanese Takashi and Kishino. That system could recognize the 34 of the 46 Japanese gestures using the hand orientation coding and joint angle technique. From their research it seems that for PCA and also for cluster analysis the user made 46 gestures 10 times which provide each gesture a reasonable time. These systems are interesting technically but they are affected from lack of training. In machine SLR and outstanding work has been done by Parish and Sperling. These two have done a deep research in the bandwidth which is necessary for the conversation of the sign from the sub sampled and temporally images. In most of the cases the systems are isolate or static gestures while in many other cases there are finger spelling sign. In general the gestural visual channel is the main principle characteristic of FSL and of SL. [5] Thus, compromise between articulation, visual interpretation and comprehensibility is there. With a continuously purpose of economizing signs are articulated, while to retain a meaningful message which can be easily be interpreted by another person. By means of hand parameters which have generally hand-shape, movement, orientation and location, the meaning is conveyed but also the facial expression, mouth movements, and chest movements are mandatory for conveying the message. These parameters are articulated in the space and occur simultaneously. In our project we focus on the hand gestures recognition. In this we used an available data set of the images of the hand gestures and all of the other computations are done on that available given data set. 13 Canny algorithm is used for the recognition of the hand gesture. And then the result of this is passed to the PCA for further manipulations and computations. 2.3 Issues with the Gesture Recognition There are some issues in the hand gesture recognition. In gesture recognition the first step is the segmentation process in which the image is divided into segments and theses are separated by lines. The process of segmentation depends on the gesture type because for dynamic the hand gesture should be traced and for the static hand gesture only segmentation can be carried out. The useful and common method for the segmentation is the skin color of the hand, because segmentation is a challenging process. There are various methods and tools that use skin pixels and also the non-skin pixels in order to model the hand and these methods are known as the parametric and non- parametric. The parametric techniques are Gaussian Model (GM) and the Gaussian Mixture Model (GMM) and the non-parametric technique is generally base on the histogram. [6] The problem in this model is that they are greatly affected by the changes in the illumination condition. There are also some factors which make the process of the segmentation more difficult and they are complex background, low quality images and the light changes. 14 Chapter 3 Feature Extraction 3.1Overview This chapter covers the all the methods used for the feature extraction. The first section covers the canny algorithm for the edge detection. This chapter covers the principal component analysis method of the feature extraction and also the Hu-moments in recognition of the signs. 15 3.2Definition of Edge Those points in a digital image where the intensity of light change abruptly are called edges. Edge is generally the portion of the object where the light changes in such a way that its intensity suddenly varies. 3.3Edge Detection The set of operations performed mathematically whose goal is to identify those points in an image where the light intensity changes abruptly or those points have some discontinuities is called edge detection. If the same problem performed in one dimensional signal then it is called step detection. Edge detection is widely used in image processing and computer vision. Edge detection is also used for features extraction as well. Different algorithms used for edge detection but canny is the best among others for edge detection. 3.4Canny Edge Detection The canny edge detector was developed in 1986 by John F. Canny. Canny edge detection is a famous edge detection algorithm Canny is most widely used edge detection algorithm because of the following few reasons  Low Error Rate: 16 Low Error Rate means a better detection on only active edges. [7]  Good Localization: Good Localization means the distance between edge pixels detected and real edge pixels have to be minimized.  Minimal Response: Minimal Response means only one detector response per edge. Canny edge detection is a multi-stage algorithm and we will go through each step. 3.5Steps of Canny Edge Detection Canny edge detection algorithm contains the following steps.  Removing Of Noise  To find gradients  Non maximum suppression  Double thresholding  Edge tracking by hysteresis Each step is described in the following sub sections. 3.5.1 Removing of Noise Since edge detection is susceptible to noise so the first step we will perform is to remove the noise and make the image smooth. The Gaussian filter is used for this purpose [8]. An example of Gaussian Kernel of size=5 that might be used as shown below. 17 1 3.5.2 Finding Gradients The canny algorithm basically finds edges where the image’s intensity changes abruptly. These areas are found by determining gradients of the image. Gradients at each pixel in the smooth image can be determined by using the sobel-operator. Two steps are applied here. The first step is to find the directional change in x and y direction by using the following equations. [ ] −1 0 1 KGX = 2 0 2 2 −1 0 1 [ ] 1 2 1 KGY = 0 0 0 3 −1 −2 −1 The second step is to determine the gradient magnitudes using Euclidian distance measures by using Pythagoras theorem as shown in equation (4). It is also some times can also be calculated using Manhattan distance as shown in equation (5). 18 |G|=|√ G2 x+ G2 y| 4 |G|=|Gx|+¿ |Gy| 5 The direction of the edges must be determined and stored as shown below in equation (6). Gy θ=tan −1 (|| ||) Gx 6 3.5.3 Non Maximum Suppression After getting the gradients magnitude and direction, now we want to remove any unwanted pixels that not constitute the edge. For this, we will look at very pixel and checked it if it is a local maximum in its neighborhood in the direction of gradient. 19 Figure 3.1 Non Maximum Suppression Look point A located on the edge in the vertical direction. Gradient direction is perpendicular to the edge. Point B and C are in the direction of gradient. So we will first check point A with other two points B and C to confirm that whether it forms a local maximum or not. If it forms local maximum so it is considered for next stage, otherwise, it is suppressed (put to zero). 3.5.4 Double Thresholding Those pixels which are remaining after non maximum suppression are still marked with their strengths pixel- by –pixel. Many of the pixels will be true edges in the image, but some may be because of noise or because of color variations for instancing due to rough surfaces. The simplest way to differentiate between them is to use a threshold. [9] Thresholding basically converts the image into a binary image. So that only edges stronger than a certain value would be preserved. The canny edge detection algorithm uses the double thresholding. Edge pixels have value stronger than the high threshold value are marked as 20 strong; while those whose values are less than the value of low threshold are marked as weak edges. 3.5.5 Edge Tracking By Hysteresis Only the strong edges we have find out will be involved in the final edge image, because the strong edges are the only edges which are extracted from the true edges in a digital image. However there will be some conversation on the weak image pixels, because weak edges are either extracted from the true edges or because of noise etc. Now in order to get correct result so these edges should be removed. The criteria to determine which case the weak edge belongs to is that, usually the weak edge pixels caused from true edges will be connected to strong edge pixels. [10] Figure 3.2 Results of the Canny Algoritm 21 3.6Principal Component Analysis The PCA is totally a mathematical technique which has different steps including S.D (standard deviation), Eigen vectors, Eigen values as well as calculation of covariance matrix. Each of the mentioned steps is discussed below. 3.7Steps for PCA The various steps involve in the PCA are discussed below. 3.7.1 First Step The first step of PCA is to get the required data. The data will be in the form of images of different gestures of the hands as we are applying PCA for the recognition of the hand gestures. After the data in the form of the images is taken the other steps of the PCA will be applied on the given images. 3.7.2 Second Step The next and the second step that follows the second step of the PCA are to find the mean of the given input data. To find the mean the data dimensions are added and then they are divided by the total dimensions. [11] PCA does a fine work on the given data by subtracting the mean of the data from each of the dimensions. So this gives the average data across each and every dimension. All values are subtracted from this average data. So this step gives the mean of the input data. 22 3.7.3 Third Step The third step of the PCA is to get the covariance values. The best and the useful way for getting the possible covariance values among the different dimensions are to calculate them and after the calculation put these values in a matrix. The formula for the calculation of the covariance matrix is given as; Cmxn = (ci,j, ci,j, =cov(Dimi, Dimj)) 7 The calculated data is arranged in a 2x2 dimensional matrix as this data will be (2D) two dimensional. 3.7.4 Fourth Step The next and the most important and necessary step of the PCA is the finding of the Eigen Vectors and the Eigen Values. This part gets more importance because this will give us the essential features on the basis of which we will perform other processing on the data. For calculating the Eigen vector and Eigen values we need the covariance matrix which is indeed a square matrix. So for the covariance matrix we will find the Eigen values and also the Eigen vectors. These two are more important because they give more useful information about our data. The example of the Eigen value and the Eigen vector is as under; .0580833989 Eigen Values = ( 1.17402661 ) 8 −.624167545 −.56672299 Eigen Vectors= ( −.56672299 −.624167545 ) 9 23 3.7.5 Fifth Step This step is related to the fourth step because the manipulations and also the compression of the data are carried out after the Eigen values and the Eigen vectors are calculated. As we look at the previous section, the values of both Eigen vector and Eigen values are quite different. The Eigen values are quite different values. The principal component of the given data set is the highest Eigen value of the Eigen vector. This gives a clear view of the significant relationship among the data dimensions. Our main goal is to collect the required data and removes or ignores the unwanted data. After this the main work is to construct a feature vector. The construction of the feature vector involves the Eigen vectors which we take from the covariance matrix and with the Eigen vectors in the columns of another matrix forms a new matrix. This new constructed matrix is given below; Feature vector = (eigen1 eigen2 eigen3 eigen4…… eigenn) 10 3.7.6 Sixth Step After doing all of the above steps of the PCA the last and final step of the PCA is to adjust the required data in a specific manner. In this step the important and required features which are gained are actually adjusted in a specific and proper manner in the form of matrix. After this the transpose of the same matrix is taken and we multiply this matrix with the original matrix. This is given by the following relationship as under; Final or Resultant data = original data x transposed data [12] 24 The data which we get after the computation is totally different from the original data and on the basis of this data we do the rest of the computations. We generally select the vectors or values with a higher values which are we will use in for further recognition process. 3.7.7 Seventh Step In this step the older data is retrieved. In the sixth step of the PCA the new data is obtained by the conversion of the older data. Sometimes the older data is requires for the computations, so in this step the new data is converted into the older data which is generally required to get the initial given data. As this step is very important so it is carried out more carefully to retrieve the initial data. So before we move ahead it should be kept in mind that all the Eigen vectors will have exactly the same original data because if the Eigen vectors are reduced then it will definitely lose some of the information. As the following relation is used for obtaining the newer data; Final or Resultant data = Original data x Transposed data So the above relation is re-arranged in order to get the older data: Transposed data = Original data -1 x Resultant data Original data -1 → Original data T It should be kept in mind that to get the actual original data back it is needed to add the mean to the above relation. Transposed data = (Original data -1 x Resultant data) + Mean of the original data 25 3.8Moments and Invariant Moments and the invariants have been analyzed to characterize the patterns in images different applications. The most important moments include geometric moments, Zernike moments, rotational moments, and complex moments. 3.9Hu-Moments Hu derived six absolute orthogonal invariants and one skew orthogonal invariant which are based upon algebraic invariants. [13] These are independent of position, size and orientation and also independent of parallel projection. Moment Invariant are widely applied to image pattern recognition in a variety of applications due to its invariant properties to image pattern recognition, image registration and image reconstruction. The moment invariant are used to trace image patterns regarding the image translation, scaling, and rotation under the assumption of images with continuous function and noise free. The invariant features can be achieved using central moments, which are defined as follows: 26 11 The pixel point ( x , y ) are the centroid of the image f(x, y). The centroid moments μ pq computed using the centroid of the image f(x, y) is equivalent to the mpq whose center has been shifted to centroid of the image. Therefore, the central moments are invariant to image translations. Scale invariance can be obtained by normalization. The normalized central moments are defined as follows: [14] 12 Based on normalized central moments , Hu introduced Seven moment invariants : 13 27 The seven Moment invariants have a property of being unchanged under image scaling, translation and rotation. Chapter 4 Classifiers 4.1 Overview This chapter covers all the classifiers related with this project. In this chapter the random forests and the forest tree classifiers are discussed. The first section covers the random forest and its algorithm and the next section is about the forest tree classifier. 4.2 Random Forests Classifier Random Forests is the classifier used in image processing for extracting features of the images. Random forests are a scheme for building a classification ensemble with a set of decision trees that grow in randomly selected subspaces of data. Random Forests is tree based classifier consists of many decision trees. Each tree gives a classification and the output is the aggregate of these classifications. Experimental results have shown that random forest classifiers can achieve high accuracy in classifying data in domains of high dimensions with many classes. Recently, interests in random forests have been growing in image classification and bioinformatics. Several methods have been proposed to build random forest models from subspaces of data. Among them, one of the most popular forest construction procedures, proposed by Brieman is to randomly select a subspace of features at each node to grow branches of a decision trees, then to use bagging method to generate training data subsets for building individual trees, finally to combine all individual trees to form random forests model. 28 Random forests are the combination of trees predictors [15] such that each tree depends upon the values of a random vector sampled independently and with the same distribution for all trees in the forests. Image data has many features which are uninformative to a class feature. During this forest building process, informative features would have the large chance to be missed, if we randomly select a small subspace from high dimensional data. 4.3 Methods of Random Forests Algorithm The random forests classifier has two methods of implementation. I. Feature weighted method II. The normalized weights 4.5.1Feature Weighted Method Consider an M-dimensional feature space {A 1, A2, …. , AM}. We present how to compute the weights {w1, w2, …., wM} for every feature in the space. These weights are then used in improved algorithm to grow each decision tree in random forest. To compute the feature weight, we measure the in formativeness of each input feature A as its correlation to the class feature Y. A large weight indicates that the class labels of objects in training data are correlated with the values of feature A. Therefore, A is informative to the class label of objects and has a strong power in prediction of class labels of new objects. 29 Given the class feature Y which has q distinct values or classes, denoted as yj (for j=1,…, q). The feature A can take p values, denoted by ai (for i=1,…, p). If A is numerical, it is discretized with a supervised discretization method. Let D be a data set consisting of (1, 1, q, p, j, i, ij, λ) = = Σ Σ data samples. [16] The number of samples in D where A=ai and Y=yj is denoted by λij. Given the contingency table of feature A and the class feature Y of a data set D, the chi-square statistic based correlation is computed as p q ( λij−t ij)2 Corr(A,Y) = ∑∑ t ij 1 i=1 j=1 Where ij is the observed frequency given in the contingency table and tij is the expected frequency that can be computed as: q p ∑ λij X ∑ λij j=1 i=1 tij = q p 2 ∑ ∑ λij j=1 i=1 The larger the corr(A,Y) measure is, the more informative the feature A is with respect to the class feature Y, and the higher weight is assigned to feature A. 4.5.2 The Normalized Weights 30 Feature weights are normalized for feature subspace sampling. Supposing the correlation between a feature Ai and the class label feature Y is corr(Ai,Y) for i=1,…,N. [17] We define √ corr ( A i ,Y ) N Wi = ∑ √ corr( A i, Y ) 3 i=1 The extraction of square root of the correlation is a common technique for smoothing. It can be easily seen that the normalized weight wi measures the relative In formativeness of feature Ai. This weight information will be used in feature subspace sampling when designing our algorithm. 4.4 Random Tree A Random tree is built by choosing components from random subspaces. Each random tree is trained on entire training data. The random trees randomize the selection features and decision criteria. A random Tree is structurally Homogeneous to a classical decision tree. Classical decision tree and random tree are grown recursively top down. Classical decision trees find a decision criterion that best divides the multi class training data into two groups at each node. A decision criterion consists of an attribute and a related threshold. 31 Random trees on the other hand randomize the decision criteria. A random decision criterion is defined by a random attribute and a random threshold. A random tree thus divides the training data on completely random attributes. This randomization mainly addresses high dimensional data and generalization. The random Forests algorithm can be summarized as:  Draw ɳ tree bootstrap samples from the original data. [18]  For each bootstrap sample, grow a regression tree.  Predict new data by aggregating the predictions of the ɳ trees. The error of a forests tree classifiers depend on the strength of individual trees and correlation between them. For random forests the, an estimate of an error can be obtained, based on training data. 1- At each bootstrap iteration, predict the data not in bootstrap sample (Out-of-bag) OOB using the tree grown with a bootstrap sample. 2- Aggregate the OOB predictions, (On average, each data point would be out-of-bag around 36% of the times, so aggregate these predictions). Calculate the error rate, and call it a OOB estimate of error rate. Random Forests create a large number of independently trained class classifiers by the random sampling of features. 32 Chapter 5 Methodology 5.1 Overview This chapter covers the all the methodology related with this chapter. The first section covers the canny algorithm for the edge detection. This chapter covers the principal component analysis method of the feature extraction and also the Hu-moments in recognition of the signs. 5.2 Heading For sign language recognition, a dataset of hand’s gestures is required. One can use the available data set and can also use self-made dataset. In this project, the dataset of hand gestures used is self-made. As it can be seen from the flow chart of this project, the first step is to collect the data. So first we collect the data from the available dataset. 33 Then the next step of the project is edges detection. Once the data has been collected, then edges detection algorithm can be performed on this data. Canny algorithm has been used in the project for the edges detection. Once edges detected from the dataset, then moved to the next step of project. Once the edges detection algorithm has been performed, next is to extract features from the dataset. Features can be extracted using different algorithms. Two algorithms used in the project for features extraction named as PCA and Hu moments. To obtained features using principal component analysis, features can be extracted either passing the result of canny to principal component analysis or directly pass the dataset to principal component analysis. Both steps are applied in the project but the result of passing dataset directly to principal component analysis as compared to the result of canny passing to principal component analysis is better. The features in the PCA are varied between 5 and 15 and calculate the result. As the features increases up to 15 so there is improvement in the result. The same process can also be done using Hu moments. Hu moments take the dataset and extract the features from it. Both principal component analysis and Hu moments result are used in the project. Once the features have been extracted from the data, then its ARFF file can be made. ARFF file stands for attribute relationship file format. Arff file contains the features of the dataset. After extracting features from the data set its features are stored in arff file. Both the features obtained from PCA and Hu moments are stored in separate Arff file. One Arff file contains the features of PCA obtained through PCA and the other contains the features of Hu moments obtained through Hu moments. Once the Arff file made, and then checks the result by applying different classifiers on both the file separately. Different classifiers are 34 applied on the Arff files. Each classifier gives its own result for PCA and Hu moments. In the last, the result of different classifiers is stored in a table for both principal component analysis and Hu moments. Both the result are compared and shown in a table. Each one has a different result for the same classifier. 5.3 Flow Chart 35 Result Figure 5.1 Flow chart of the Project 36 Chapter 6 Results 6.1 Overview In this chapter we will conclude our final results. What we have achieved and what we can be presented now. In other words this chapter is about the results of our project. 6.2 Classification Using PCA By passing the dataset of hand’s gestures to PCA its results are generated. After passing the gestures to the PCA made the ARFF file. ARFF file stands for “Attribute Relation File Format” and it contains the features of the provided dataset. In figure 6.1 the result of the PCA is shown which shows that PCA has recognized the input hand gesture. This is shown below. Figure 6.1 Recognition of the hand gesture using PCA 37 6.3 Effect on Accuracy by Varying Number of PCA Features By changing the number of features the results of the PCA are generated and analyzed. The results shown in table 6.1 are gathered by varying the number of features. For each result we obtained the result in terms of the average probability of correct classification. By increasing the number of features the average probability increases. It means by increasing the number of features the accuracy of classification increases but up to certain features and onwards the probability repeats. The results are as shown below in table 6.1. Results of PCA by Varying Features Number of PCA Features Accuracy 1 Using 5 features 70.833% 2 Using 6 features 70.411% 3 Using 7 features 70.833% 4 Using 8 features 70.0833% 5 Using 9 features 71.6667% 6 Using 10 features 72.9167% 7 Using 11 features 73.333% 8 Using 12 features 74.166% 9 Using 13 features 74.1667% 1 Using 14 features 74.1667% 0 1 Using 15 features 74.1667% 1 Table 6.1 Effect of number of features on classification 38 6.4 Results of Different Classifiers Classification results of the PCA by different classifiers are shown in table 6.2. We obtained different result from different classifiers. Some classifiers give best results in terms of classification. Different classifiers with their correctly classified result are given in the following table. Results of Different Classifiers Classifier Correctly classified 1 BFTree 67.08% 2 RandomForest 86.66% 3 RandomTree 80.33% 4 SimpleCart 68.75% 5 IBK 87.91% 6 Kstar 56.25% 7 NaiveBayes 65.41% 8 SMO 47.5% 9 MultiClassClassifier 77.08% 1 Bagging 77.07% 0 1 HyperPipes 70.83% 1 1 VFI 74.58% 2 1 Ridor 62.08% 3 1 DTNB 67.91% 4 Table 6.2 Results of PCA using different Classifiers 39 6.5 Classification Using Hu-moments Hu moments features give quite different result from the features of PCA. The average probability of the Hu-Moments is shown in the figure 6.2. All its features give different result as compared with result of PCA. The obtained results of different classifiers are shown in the given table. Classification Using Hu-Moments Classifers Correctly classified 1 BFTree 5.41% 2 RandomForest 81.66% 3 RandomTree 74.58% 4 SimpleCart 66.25% 5 IBK 75.41% 6 Kstar 57.91% 7 NaiveBayes 38.75% 8 SMO 27.08% 9 MultiClassClassifier 56.66% 1 Bagging 67.5% 0 1 HyperPipes 45.83% 1 1 VFI 68.75% 2 1 Ridor 39.58% 3 1 OneR 26.25% 4 40 Table 6.3 Classification Results using Hu-moments Figure 6.2 Average Probability of the Hu-Moments 6.6 Hu-Moments Vs PCA After getting result from both PCA and Hu moments the comparison of both algorithms gives an idea that which algorithm will best classified the features obtained from the dataset means that the comparison gives an idea of which algorithm should be used further. In this project the algorithm used is best in terms of the result. The comparison result of both the algorithms is showed in a table 6.4. Comparison is best for 41 getting idea that which classifier gives best result in which algorithm so that someone used that classifier in that algorithm. The result of comparison is shown in the table 6.4. Comparison between PCA and Hu-Moments Classifier PCA Hu-Moments 1 BFTree 67.08% 5.41% 2 RandomForest 86.66% 81.66% 3 RandomTree 80.33% 74.58% 4 SimpleCart 68.75% 66.25% 5 IBK 87.91% 75.41% 6 Kstar 56.25% 57.91% 7 NaiveBayes 65.41% 38.75% 8 SMO 47.5% 27.08% 9 MultiClassClassifier 77.08% 56.66% 1 Bagging 77.07% 67.5% 0 1 HyperPipes 70.83% 45.83% 1 1 VFI 74.58% 68.75% 2 1 Ridor 62.08% 39.58% 3 1 OneR 20% 26.25% 4 Table 6.4 PCA Vs Hu-Moments 42 The above table 6.6 shows the results of the PCA and Hu-moments. From the table it is clear that majority of classifiers give best result for PCA while some of them give best result in terms of Hu moments. As we can see that Kstar classifier gives best result for Hu moments. 6.7 Conclusion In real world sign language is comparatively more formable for communication which helps to increase the communication. In different areas of the world there are different forms and variation of the sign systems exists. The main problem is that there are less number of principal notions and assigned appearances in the sign language. The basic idea behind this work is to develop and implement a system of sign language which will facilitate the deaf people and will increase the process of communication among the deaf and the normal people of the society. This project basically focuses on implementation of a software model for hand gesture recognition system using classifier. The approach for this is to recognize the hand gestures in the self- made data set of the hand gestures and to analyze the features using classifier. The recognition is done using PCA and also using Hu- Moments features of the gestures are analyzed and classification is done using different classifiers. 43 References: [1] Rafiqul Zaman Khan and Noor Adnan Ibraheem “HAND GESTURE RECOGNITION” International Journal of Artificial Intelligence & Applications (IJAIA), Vol.3, No.4, July 2012. [2] A History of Sign Language Brook Larson & Dr. Hallen Mid-Term Paper 24 February, 2003. [3] Annelies Braffort “Computer Science and Sign Language: Ethical Aspects” Orsay cedex international research center, 2009. [4] VonAgris, Blomer, Kraiss,K.F.:Rapid signer adaptation forcontinuous sign language recognition using a combined approach of eigen voices, MLLR,andMAP.In:Procs.ofICPR, pp. 1 – 4. Tampa, Florida, USA (2008). [5] Klimis Symeonidis “Hand Gesture Recognition Using Neural Networks” School of Electronic and Electrical Engineering on August 23, 2000. [6] Zieren, Kraiss, Robustperson “independent visual sign language recognition. In:Procs. of IbPRIA, pp. 520 – 528. Springer, Estoril, Portugal (2005) 44 [7] Vrushali Y Kulkarni, Dr Pradeep K Sinha “Random Forest Classifiers :A Survey and Future Research Directions” International Journal of Advanced Computing, ISSN:2051-0845, Vol.36, Issue, April 2013 [8] Pradeep K Sinha, Vrushali Y Kulkarni “Efficient Learning of Random Forest Classifier using Disjoint Partitioning Approach” Proceedings of the World Congress on Engineering 2013 Vol II, WCE 2013, July 3 - 5, 2013, London, U.K [9] Grahn H, Lavesson N, Lapajne M, Slat D, A CUDA implementation of Random Forest – Early Results, Master Thesis Software Engineering, School of Computing, Blekinge Institute of Technology, Sweden. [10] Kun Zhang, Wei Fan, Bill Buckles, Xiaojing Yuan, and Zujia Xu: "Discovering Unrevealed Properties of Probability Estimation Trees: On Algorithm Selection and Performance Explanation", 2006 IEEE International Conference on Data Ming (ICDM'2006), December 2006. [11] Raymond Lockton and Andrew W.Fitzgibbon, Real time gesture recognition using deterministic boosting, Department of engineering Science, university of Oxford. [12] Sebastien Marcel, Olivier Bernier, Jean-Emmanuel Viallet and Daniel Collobert,Hand gesture recognition using input-output hidden Markov mode, France Telecom CNET 2 avenue pierre Marzin 22307 Lannion,France. [13] Ray Lockton, Hand gesture recognition using computer vision, Balliol college oxford university [14] Canny edge detection “09gr820” on March 23, 2009 45 [15] Aly A. Farag, Shireen Elhabian, A tutorial on principal component analysis, university of Lousisville,CVIP Lab,2009. [16] Steven M.Holland, Principal Component Analysis,Department of Geology, University of Georgia, Athens,2008. [17] B.Vanajakshi, Dr.k.Sri Rama Krishna,classification of boundary and region shapes using Humoment invariants,2012. [18] Laura Keyes, Adam Winstanley, using moment invariants for classifying shapes on large scale maps, department of computer science, National University of Ireland Maynooth. 46
About the author
Papers
1
Followers
13
View all papers from Engr J Khanarrow_forward