International Journal of Advanced Research in Engineering and Technology (IJARET) Volume 9, Issue 3, May - June 2018, pp. 177 185, Article ID: IJARET_09_03_023 Available online at http://www.iaeme.com/ijaret/issues.asp?jtype=ijaret&vtype=9&itype=3 ISSN Print: 0976-6480 and ISSN Online: 0976-6499 IAEME Publication COMPARATIVE PERFORMANCE ANALYSIS OF HAND GESTURE RECOGNITION TECHNIQUES Vidyarani M. Katigar, Sandhya M. Sudi Assistant Professor, Department of Electronics and Communication Engineering KLS Gogte Institute of Technology, Belagavi, Karnataka, India Veeresh M. Hiremath Assistant Professor, Department of Electronics and Communication Engineering KLS Gogte Institute of Technology, Belagavi, Karnataka, India ABSTRACT These days it is important to interact with machine as naturally as two human beings do. Human interaction with each other has started with gesture communication and interaction with machine with gesture is natural and simple. The aim of gesture recognition system is to recognize the gestures posed by human being and use them to control computer or other systems. With advancements in computer vision and pattern recognition, a number of algorithms are developed for vision based hand gesture recognition. This paper presents two techniques of recognizing hand gestures one based on Principal Component Analysis (PCA) and the other based on Erosion and Image Subtraction. The paper also compares the results of both the techniques. Key words: Principal Component Analysis, Erosion, Dilation, Image Subtraction. Cite this Article: Vidyarani M. Katigar, Sandhya M. Sudi and Veeresh M. Hiremath, Comparative Performance Analysis of Hand Gesture Recognition Techniques. International Journal of Advanced Research in Engineering and Technology, 9(3), 2018, pp 177 185. http://www.iaeme.com/ijaret/issues.asp?jtype=ijaret&vtype=9&itype=3 1. INTRODUCTION Hand gesture recognition is a process by which the gestures made by the user are recognized by the computer. There are multiple ways to recognize the gesture which include the use color gloves, markers and sensors which need to be worn by the user in order to interact with machine. However, these equipments are usually expensive and often bring much cumbersome experience to users. To make the interaction more natural and simpler, the vision based systems independent of external dedicated devices are becoming more and more of current need. The current study focuses on different techniques for gesture recognition and interpretation, their comparison and applications. http://www.iaeme.com/ijaret/index.asp 177 editor@iaeme.com
Comparative Performance Analysis of Hand Gesture Recognition Techniques Gestures are expressive, meaningful body motions i.e., physical movements of the fingers, hands, arms, head, face or body in order to convey information or interact with the environment [1]. Gestures can exist in isolation or involve external objects. Gesture recognition is the process by which gestures made by the users are made known to the system. 2. SYSTEM OVERVIEW A general vision based static hand gesture recognition system has following steps Gesture registration: This step involves capturing the images of the gestures either by a webcam or other camera and storing it for further processing. Pre-processing and Segmentation: Some pre-processing steps are carried out in order to eliminate noise and redundant information that does not contain any useful data. The hand gesture to be processed is separated from the background, to make it helpful for processing. Feature extraction: Certain features are extracted from the segmented image and are compared with those of standard gestures stored in the database. Gesture classification: The registered gesture is identified. 3. HAND GESTURE RECOGNITION TECHNIQUES 3.1. Hand Gesture Recognition using Principal Component Analysis Principal Component Analysis (PCA) is a technique which is widely used to reduce the noise and the dimensionality in a data set, while retaining the most variance, by finding patterns within it. The PCA belongs to linear transforms, based on the statistical techniques [8]. This method provides a powerful tool for data analysis and pattern recognition which is often used in signal and image processing as a technique for data compression, data dimension reduction or their decorrelation as well. Hand gesture recognition using PCA technique has steps as shown in Figure 1. Figure 1 Steps involved in hand gesture recognition based on PCA technique http://www.iaeme.com/ijaret/index.asp 178 editor@iaeme.com
Vidyarani M. Katigar, Sandhya M. Sudi and Veeresh M. Hiremath 3.1.1. Training Phase The gesture recognition system is trained for the different types of gestures. The training stage is off-line in which a set of images (templates), i.e., training samples, is obtained and loaded on to the system. The training samples are captured in different inclinations and lighting conditions. The sets of images are highly correlated. Thus, they can efficiently be compressed using principal component analysis, resulting in a low-dimensional eigenspace. 3.1.2. Gesture Registration When a gesture has to be recognized, a hand gesture is projected to webcam and gesture is captured and stored for further processing. The gesture images are captured from the webcam in RGB plane. 3.1.3. Pre-processing Pre-processing is aimed to change the raw data, to assist computational capabilities in feature extraction as well as to reduce noise. Digital image processing techniques are used which are intended to change the intensity of image pixels to produce a more suitable form of data for subsequent operations. When the system is given a query, images is converted into gray scale. Since Principal Component Analysis is used for recognition, reliable output is obtained when training image is gray. Then the image is resized to 100x100 pixels. 3.1.4. PCA Technique When the system is given a query, i.e., a new hand gesture to classify, the system computes Euclidean distance of the test image to every image in the training set and returns an array of Eigen distances. Euclidean distance is given by ( ) ( ) (1) where i=1,2,.,p, P is the number of images and h is the projection of the input image onto eigen space. Next step is to find the most similar object which incorporates obtaining the smallest Eigen distance and its index. This Eigen distance is compared with the threshold value ϑ specified in the function. (2) 3.1.5. Gesture Classification If the distance between the test gesture and a particular instance of training example is less than the threshold, then the gesture is recognized to be that instance. The label of the instance gives the gesture number recognized. 3.2. Static Hand Gesture Recognition by Erosion and Image Subtraction The steps involved hand gesture recognition by erosion and image subtraction are shown in Figure 2. http://www.iaeme.com/ijaret/index.asp 179 editor@iaeme.com
Comparative Performance Analysis of Hand Gesture Recognition Techniques Figure 2 Steps involved hand gesture recognition by erosion and image subtraction 3.2.1 Image Capture In this technique, the trained hand gestures are captured using a camera and saved. The saved images are retrieved from the modal dialog box which lists the images saved. 3.2.2 Gray Conversion The image needed is chosen from the dialog box which undergoes gray scale conversion where a colour 24 bit pixel image is converted to 8 bit pixel image. Thus the image after grayscale conversion gives information about intensity by removing the hue and saturation information. The RGB values of the image are converted to gray-scale values by forming a weighted sum of the R, G, and B components [2] [3] (3) 3.2.3. Binary Conversion The gray image is converted into binary image. The output image replaces all pixels in the input image with luminance greater than level with the value 1 (white) and replaces all other pixels with the value 0 (black). The default level is 0.5. This helps in segmentation of the skin pixels and background pixels. Compliment the image. 3.2.4. Morphological Operations For detection of the fingers the image is eroded and then dilated. Erosion removes finger pixels only. Dilation is used to get a clear image after the fingers objects are removed from the image. This gives an image of the hand without the fingers. Since the structuring element is a disk shape the formula for erosion and dilation is: Erosion: ( )( ) * ( ) ( ) ( ) + (4) Where, A is the image and B is the structuring element and DE is the domain of the structuring element [5] [9]. http://www.iaeme.com/ijaret/index.asp 180 editor@iaeme.com
Vidyarani M. Katigar, Sandhya M. Sudi and Veeresh M. Hiremath Dilation: ( )( ) * ( ) ( ) ( ) + (5) Where A is the image and B is the structuring element and DE is the domain of the structuring element [4] 3.2.5. Image subtraction Eroded and dilated image is subtracted from the image binary image which gives an output image that contains only fingers. (6) 3.2.6. Feature extraction Shape of the finger is detected using feature extraction method. It removes all the redundant pixels (if any shadows) other than the finger pixels thus it gives defined shape of the fingers. Feature extraction is done by removing the white pixels below a threshold and also by removing the pixels in the object connected to the image border. Thus after several process of removing redundant pixels only finger pixels remains in the image. 3.2.7. Edge Detection Edges of the fingers are detected using canny edge detection method. Canny edge detection is used because it is not affected by noise and can easily detect true weak edges [9]. Canny edge detection has a series of process i.e. (1) Applying Gaussian filter to smoothen the image ( ( ( )) ( ( )) ) ( ) ( ) Where Gaussian filter kernel has size (2k+1)x(2k+1) [3] [5] (2) Finding the intensity gradients ( ) ( ) ( ) Where, Gx : Gradient in horizontal direction Gy : Gradient in vertical direction [6][7] (3) Non maximum suppression (4) Double threshold (5) Edge tracking by hysteresis 3.2.8. Gesture Classification Change from background pixels to foreground pixels and vice -versa is detected. The number of changes are recorded which gives the count of the fingers. Gesture is classified based on number of fingers. 4. RESULTS AND DISCUSSION To analyze the recognition rate for PCA technique, the system is trained and tested using a training set of 8 different gestures shown in Figure 3 http://www.iaeme.com/ijaret/index.asp 181 editor@iaeme.com
Comparative Performance Analysis of Hand Gesture Recognition Techniques Figure 3 Set of gestures used for training For training 8 images of each gesture are added into the database. These images are captured at different orientation and lighting conditions so that the system is trained to work well in all conditions. The gesture 1 captured at different orientation is shown in Figure 4. A plane background is preferred for efficient recognition. Figure 4 Training set of gesture 1 The percentage of correct recognition rate (CRR) can be defined as the ratio of number of correct recognitions to the total number of recognition tests performed multiplied by 100. To measure the CRR, a gesture projected to the system to record 100 recognitions. The results are tabulated Table 1. Table 1 CRR for PCA Technique Gesture Id Recognition Rate for PCA Technique 1 95 2 65 3 85 4 97 5 96 6 90 7 88 8 95 http://www.iaeme.com/ijaret/index.asp 182 editor@iaeme.com
Vidyarani M. Katigar, Sandhya M. Sudi and Veeresh M. Hiremath The system is not 100% efficient because of some ambiguity in recognition. For example, in Table 3 gesture 2 is recognized as gesture 5. The probable reason as inferred from the studies is that the two gestures are very similar in shape and orientation. The reason for other false recognition may be the value of Eigen distance. Since pixel values are used to calculate Eigen vectors and Eigen distances, the two gesture images may have close values. The drawback of the eigen space method is the time for loading of training images. If more images are used and if the images have greater size, it will take longer time to complete the training phase. This increases the size of training data. Thus, the recognition phase will also take longer time to initialize the data. Larger image sets will require greater memory space to run the program. This however has minimal impact on the time it takes to recognize gestures or the real-time implementation of the system. To study the results of Erosion and Image Subtraction Technique, Hand gestures recognition was performed for 10 subjects by fixing the camera at 40 cm-42 cm height. Good lighting was provided using a flash light with a clear white background. Subjects were instructed to show fingers resembling the count of1 2 3 4 and 5. The results of recognition for gesture 1 after each stage are shown in Figure 5. Figure 5 (a) Original Image (b) Gray Image (c) Binary Image (d) Complimented Image (e) Image after erosion and dilation (f) Subtracted Image The results of CRR are as tabulated below. http://www.iaeme.com/ijaret/index.asp 183 editor@iaeme.com
Comparative Performance Analysis of Hand Gesture Recognition Techniques Table 2 CRR for Erosion and Image Subtraction Technique Gesture Id Recognition Rate Erosion and Image Subtraction Technique 1 99 2 100 3 98 4 100 5 97 5. CONCLUSION AND FUTURE SCOPE From the results and discussion, it is observed that PCA technique has ambiguity in recognition and loading time for training set is high which causes delay. While, in Erosion and Image subtraction method, recognition rate is high. Hence, PCA technique is less efficient compared to erosion and image subtraction method. But the drawbacks of Erosion and Image subtraction method a very limited gestures can be recognized as it is based on counting of fingers. Even when both hands are used, a maximum of 10 distinct gestures can be recognized, whereas by using PCA techniques more number of distinct gestures can be used to train and recognize. In both the techniques, it is important to note that the system can give an accurate result if and only if good lighting condition is provided with a stationary white background. Since the systems are based on a Laptop for its working, thus it is difficult to use for practical purposes. Thus, in future, a standalone or android based system has to be made for the commercial use. And, in PCA technique Addition of more training images and large size images causes delay. This can be improved by training the data through other soft computing techniques. REFERENCES [1] Sushmita Mitra, Tinku Acharya, Gesture Recognition: A Survey, Proc. IEEE Transactions On Systems, Man, And Cybernetics Part C: Applications And Reviews, Vol. 37, No. 3, May 2007 [2] W. Gonzalez, and R. E. Woods, Eddins, Digital Image Processing Using MATLAB, Third New Jersey: Prentice Hall, 2004. [3] J. Babaud, A. P. Witkin, M. Baudin, and R. O. Duda, Uniqueness of the Gaussian kernel for scale-space filtering, IEEE transactions on pattern analysis and machine intelligence, no. 1, pp. 26-33, 1986. [4] G. Amalorpavam, H. T. Naik, J. Kumari, and M.Suresha, Analysis of Digital Images Using Morphlogical Operations, International Journal of Computer Science & Information Technology, vol. 5, no. 1, pp. 145, 2013. [5] J. Canny, A computational approach to edge detection, IEEE Transactions on pattern analysis and machine intelligence, no. 6, pp. 679-698, 1986. [6] P. R. V. Chowdary, M. N. Babu, T. V.Subbareddy, B. M. Reddy, and V. Elamaran, "Image processing algorithms for gesture recognition using MATLAB." pp. 1511-1514, 2014. http://www.iaeme.com/ijaret/index.asp 184 editor@iaeme.com
Vidyarani M. Katigar, Sandhya M. Sudi and Veeresh M. Hiremath [7] A.-C. Tsai, A. Paul, J.-C. Wang, and J.-F. Wang, Intensity gradient technique for efficient intra-prediction in H. 264/AVC, IEEE Transactions on Circuits and Systems for Video Technology, vol. 18, no. 5, pp. 694-698, 2008. [8] I.T. Jolli, Principal Component Analysis, Springer Series in Statistics, Springer New York, second edition, 2002. [9] R. Muthukrishnan, and M. Radha, Edge detection techniques for image segmentation, International Journal of Computer Science & Information Technology, vol. 3, no. 6, pp. 259, 2011. http://www.iaeme.com/ijaret/index.asp 185 editor@iaeme.com