Gesture Recognition Based Mouse Events

Similar documents
Face Detection System on Ada boost Algorithm Using Haar Classifiers

International Journal of Research in Computer and Communication Technology, Vol 2, Issue 12, December- 2013

Bandit Detection using Color Detection Method

Analysis of Various Methodology of Hand Gesture Recognition System using MATLAB

Table of Contents 1. Image processing Measurements System Tools...10

VICs: A Modular Vision-Based HCI Framework

Color Image Compression using SPIHT Algorithm

A Real Time Static & Dynamic Hand Gesture Recognition System

Design a Model and Algorithm for multi Way Gesture Recognition using Motion and Image Comparison

Enabling Cursor Control Using on Pinch Gesture Recognition

Color and More. Color basics

Automated hand recognition as a human-computer interface

Finger rotation detection using a Color Pattern Mask

Computer Vision. Howie Choset Introduction to Robotics

Keyword: Morphological operation, template matching, license plate localization, character recognition.

Hand Segmentation for Hand Gesture Recognition

MATLAB: Basics to Advanced

Webcam Based Image Control System

COMPARATIVE PERFORMANCE ANALYSIS OF HAND GESTURE RECOGNITION TECHNIQUES

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

Navigation of PowerPoint Using Hand Gestures

A VIDEO CAMERA ROAD SIGN SYSTEM OF THE EARLY WARNING FROM COLLISION WITH THE WILD ANIMALS

Visual Interpretation of Hand Gestures as a Practical Interface Modality

SKIN SEGMENTATION USING DIFFERENT INTEGRATED COLOR MODEL APPROACHES FOR FACE DETECTION

An Implementation Review of Occlusion-Based Interaction in Augmented Reality Environment

A Comparison of Histogram and Template Matching for Face Verification

Challenging areas:- Hand gesture recognition is a growing very fast and it is I. INTRODUCTION

Augmented Reality using Hand Gesture Recognition System and its use in Virtual Dressing Room

Artificial Beacons with RGB-D Environment Mapping for Indoor Mobile Robot Localization

3D-Position Estimation for Hand Gesture Interface Using a Single Camera

Content Based Image Retrieval Using Color Histogram

Robust Hand Gesture Recognition for Robotic Hand Control

ENEE408G Multimedia Signal Processing

Gesture Recognition with Real World Environment using Kinect: A Review

Wadehra Kartik, Kathpalia Mukul, Bahl Vasudha, International Journal of Advance Research, Ideas and Innovations in Technology

Adaptive use of thresholding and multiple colour space representation to improve classification of MMCC barcode

International Journal of Computer Engineering and Applications, Volume XII, Issue IV, April 18, ISSN

Applying mathematics to digital image processing using a spreadsheet

System of Recognizing Human Action by Mining in Time-Series Motion Logs and Applications

Interacting within Virtual Worlds (based on talks by Greg Welch and Mark Mine)

Color Image Processing

VLSI Implementation of Impulse Noise Suppression in Images

Gesticulation Based Smart Surface with Enhanced Biometric Security Using Raspberry Pi

License Plate Localisation based on Morphological Operations

A simple MATLAB interface to FireWire cameras. How to define the colour ranges used for the detection of coloured objects

ScanGear CS-U 5.3 for CanoScan FB630U/FB636U Color Image Scanner User s Guide

How to define the colour ranges for an automatic detection of coloured objects

A Study on the control Method of 3-Dimensional Space Application using KINECT System Jong-wook Kang, Dong-jun Seo, and Dong-seok Jung,

Graz University of Technology (Austria)

MAV-ID card processing using camera images

Implementation of Barcode Localization Technique using Morphological Operations

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

Fingertip Detection: A Fast Method with Natural Hand

Humera Syed 1, M. S. Khatib 2 1,2

DESIGN & DEVELOPMENT OF COLOR MATCHING ALGORITHM FOR IMAGE RETRIEVAL USING HISTOGRAM AND SEGMENTATION TECHNIQUES

International Journal of Scientific & Engineering Research, Volume 4, Issue 7, July-2013 ISSN

W i n d o w s. ScanGear CS-S 4.3 for CanoScan FB1200S Color Image Scanner. User's Guide

A Very High Level Interface to Teleoperate a Robot via Web including Augmented Reality

Advancements in Gesture Recognition Technology

Tutorial: Correcting images

Digital Imaging - Photoshop

Face Recognition Based Attendance System with Student Monitoring Using RFID Technology

Automatic License Plate Recognition System using Histogram Graph Algorithm

FOCAL LENGTH CHANGE COMPENSATION FOR MONOCULAR SLAM

4/23/12. Improving Your Digital Photographs + ABOUT ME. + CHANGES in PHOTOGRAPHY. CAMERA and DARKROOM Pro? Cons? DIGITAL PHOTOS Pro? Con?

Digital Images. Back to top-level. Digital Images. Back to top-level Representing Images. Dr. Hayden Kwok-Hay So ENGG st semester, 2010

Human Computer Interaction by Gesture Recognition

APPLICATION OF COMPUTER VISION FOR DETERMINATION OF SYMMETRICAL OBJECT POSITION IN THREE DIMENSIONAL SPACE

Implementation of Real Time Hand Gesture Recognition

Color Image Enhancement by Histogram Equalization in Heterogeneous Color Space

Wheeler-Classified Vehicle Detection System using CCTV Cameras

Integration of Hand Gesture and Multi Touch Gesture with Glove Type Device

Automatic Licenses Plate Recognition System

A SURVEY ON HAND GESTURE RECOGNITION

Automated License Plate Recognition for Toll Booth Application

A Proposal for Security Oversight at Automated Teller Machine System

OBJECTIVE OF THE BOOK ORGANIZATION OF THE BOOK

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

An Efficient Method for Landscape Image Classification and Matching Based on MPEG-7 Descriptors

ISSN: [Arora * et al., 7(4): April, 2018] Impact Factor: 5.164

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

QUALITY CHECKING AND INSPECTION BASED ON MACHINE VISION TECHNIQUE TO DETERMINE TOLERANCEVALUE USING SINGLE CERAMIC CUP

PRACTICAL IMAGE AND VIDEO PROCESSING USING MATLAB

A Real Time based Physiological Classifier for Leaf Recognition

Images and Displays. Lecture Steve Marschner 1

Color Image Segmentation in RGB Color Space Based on Color Saliency

Android User manual. Intel Education Lab Camera by Intellisense CONTENTS

5. SilverFast Tools Tools SilverFast Manual. 5. SilverFast Tools Image Auto-Adjust (Auto-Gradation) 114

Linear Gaussian Method to Detect Blurry Digital Images using SIFT

4. Measuring Area in Digital Images

Image Representation using RGB Color Space

Volume 3, Issue 5, May 2015 International Journal of Advance Research in Computer Science and Management Studies

CSSE463: Image Recognition Day 2

CS 565 Computer Vision. Nazar Khan PUCIT Lecture 4: Colour

Urban Feature Classification Technique from RGB Data using Sequential Methods

Digitizing Color. Place Value in a Decimal Number. Place Value in a Binary Number. Chapter 11: Light, Sound, Magic: Representing Multimedia Digitally

Color: Readings: Ch 6: color spaces color histograms color segmentation

Student Attendance Monitoring System Via Face Detection and Recognition System

Mahdi Amiri. March Sharif University of Technology

Chapter 3 Part 2 Color image processing

Transcription:

Gesture Recognition Based Mouse Events Rachit Puri IM\Web, Multimedia & Services\Web Solutions\Web Engine Samsung Research India-Bangalore Bangalore 560037, India rachit.puri@samsung.com ABSTRACT This paper presents the maneuver of mouse pointer and performs various mouse operations such as left click, right click, double click, drag etc using gestures recognition technique. Recognizing gestures is a complex task which involves many aspects such as motion modeling, motion analysis, pattern recognition and machine learning. Keeping all the essential factors in mind a system has been created which recognizes the movement of fingers and various patterns formed by them. Color caps have been used for fingers to distinguish it from the background color such as skin color. Thus recognizing the gestures various mouse events have been performed. The application has been created on MATLAB environment with operating system as windows 7. KEYWORDS YCbCr color model, user interface, gesture recognition, image processing. 1. INTRODUCTION The research activity on gesture based user interface (UI) has been proliferating in the last decade [1]. The main reason of these technologies becomes more popular is because it can be applied into many different fields easily and efficiently. Especially, gesture recognition easily can be applied to the web services, smart home systems, robot manipulation and games [2]. That is why tracking non-rigid motions from sequential videos have been a great interest to the computer vision community. We grew up interacting with the physical objects around us. How we manipulate these objects in our lives every day, we use gestures not only to interact with objects but to interact with each other and this paper brings us a step closer to Human-object relationship by using gesture recognition technique. In this research still webcam has been used to recognize the gestures. There is no need of 3D or stereo cameras and above research has also been tested on low cost 1.3 megapixel laptop webcam. My work is dedicated to a simple vision based gesture recognition system that acts like an interface between the user and various computing devices in the dynamic environment. This paper presents the technique to perform numerous mouse operations thus obviating the need of hardware used for interaction between the user and computing device. The same approach can be applied to endless tasks such as browsing images, playing games, changing T.V channels etc. There is a threshold value for distance (in meters) between the user and camera which can further be varied according to camera's resolution. It means if subject who wants to be recognized with

his hand gestures in some environment, subject has to come close to certain fixed distance to the camera [3]. This research was done on 1.3 megapixel webcam with threshold value of 2m. 2. ASSUMPTIONS Following assumptions were taken to make the system work effectively and efficiently: Camera is still and continuously capturing the frames. The movement of fingers and gestures made are not changed rapidly. Color caps are needed on the finger so as to track its movement. 3. RELATED WORK In some passed decades Gesture recognition becomes very influencing term. There were many gesture recognition techniques developed for tracking and recognizing various hand gestures. Each one of them has their pros and cons. The older one is wired technology, in which users need to tie up themselves with the help of wire in order to connect or interface with the computer system. In wired technology user can not freely move in the room as they connected with the computer system via wire and limited with the length of wire. In [4], structured light was used to acquire 3D depth data; however, skin color was used for segmenting the hand as well, which requires homogeneous and interest points on the surface of the hand using a stereo camera. Motion information obtained from the 3D trajectories of the points was used to augment the range data. One can also create a full 3D reconstruction of the hand surface using multiple views. However, although 3D data contains valuable information that can help eliminate ambiguities due to self-occlusions which are inherent in image-based approaches, an exact, real-time, and robust 3D reconstruction is very difficult. Besides, the additional computational cost hinders its application in real-life systems. Later on some advanced techniques have been introduced like Image based techniques which require processing of image features like texture etc. If we work with these features of the image for hand gesture recognition the result may vary and could be different as skin tones and texture changes very rapidly from person to person from one continent to other. To overcome these challenges and promote real time application, gesture recognition technique based on color detection and their relative position with each other has been implemented. The color can also be varied and hence obviating the need of any particular color. The movement as well as mouse events of mouse are very smooth and user is able to select the small menu buttons and icons without any difficulty. In paper [5], the approach is based on calculation of three combined features of hand shape which are compactness, area and radial distance. Compactness is the ratio of squared perimeter to area of the shape. If compactness of two hand shapes are equal then they would be classified as same, in this way this approach limits the number of gesture pattern that can be classified using these three shape based descriptors. The algorithm implemented in this paper is divided into seven main steps. First one is selection of RGB value. The second step includes conversion of RGB value to YCbCr. The further steps are region of interests, scale conversion, mirror value and finally the mouse event. The steps have been explained further in detail below.

4. GESTURE RECOGNITION TECHNIQUE The proposed approach is based on detection of number of target colors (region of interest) that triggers the mouse event according to the gesture formed [6]. At the beginning, snapshot is taken while keeping the hand in front of the camera. The user then selects the color cap which will be tracked during gesture formation to perform various mouse events. The color of cap can be varied and needs to be selected when the snapshot of hand is taken as shown in fig1. Selecting the Green color at the time of snapshot. 4.1 Color Models Fig 1. Selecting the color during snapshot A color model is an abstract mathematical model describing the way colors can be represented as tuples of numbers, typically as three or four values or color components. The various color models are: RGB, CYMK, YCbCr etc. Red, Green, Blue (RGB) Cyan, Magenta, Yellow, Black (CYMK) Fig.2 RGB and CYMK color model The model used in gesture recognition is YCbCr [7]. It is a family of color spaces used as a part of the color image pipeline in video and digital photography system. C B and C R are the bluedifference and red-difference chroma components. Y is luminance, meaning that light intensity is non-linearly encoded using gamma. RGB signals are not efficient as a representation for storage and transmission, since they have a lot of mutual redundancy [8]. So, using YCbCr model we can separate the luminance factor and hence eliminate its interference with our operation [9]. YCbCr is not an absolute color space; it is a way of encoding RGB information. The actual color displayed depends on the actual RGB colorants.

RGB YCbCr Fig 3. RGB to YCbCr image conversion. 5. METHODOLGY The implementation has been divided into various steps such as selection of RGB, YCbCr conversion, finding region of interest, storing values and last mouse event. Each step has been explained below along with the MATLAB implementation. 5.1 Selection of RGB: The first step is to get the RGB value of the color cap which will be tracked during gesture formation to cause mouse events. To perform this step hand with any color cap is kept in front of the camera. The camera will take the snapshot of hand and asks the user to select the color in the snapshot for performing various mouse events. Then user finally selects the color of cap and video starts to track that specific color. 5.2 YCbCr conversion: The obtained RGB value in the above step is converted to YCbCr color model using below formula: Y = (0.257 * R) + (0.504 * G) + (0.098 * B) + 16 Cr = V = (0.439 * R) - (0.368 * G) - (0.071 * B) + 128 ----- (1) Cb = U = - (0.148 * R) - (0.291 * G) + (0.439 * B) + 128 ----- (2) 5.3 Region of Interest: The next step is to find the region of interest and their relative position that stimulates the mouse events accordingly. To find the region of interest each pixel of captured frame is first converted to Cb and Cr using formulas Cb = im(x, y, 2) and Cr = im(x, y, 3), where im is captured image; x and y are the co-ordinates. Now, comparing the Cb and Cr with the Cb and Cr obtained in (1) and (2) of color cap with a threshold value of 12 (calculated experimentally), region of interests are calculated. The threshold value stated above is for green color and can vary slightly depending upon the color and calculated Y value. During experiment it was generally observed that Y value has a direct relation with the threshold value. 5.4 Storing values: The number of region of interests and their relative position in terms of pixel value is stored in variables.

Forefinger Thumb Finding the area of ROI Position of left click Converting area into single-pixel value. As shown above the ROI is converted into single pixel value by finding the mid pixel of the shaded region. This single pixel value facilitates the smooth movement of mouse pointer and performs operations equally well. 5.5 Scale conversion: The webcam used in the experiment has the resolution of 640 x 480 but the screen resolution is 1600 x 900. Therefore, there is a need of scale conversion. X s = (1600 640) X w ---- (1) Y s = (900 480) Y w ----- (2) X s, X w: Screen and webcam x pixel value. Y s, Y w: Screen and webcam y pixel value. 5.6 Mirror value: Once X s Y s are obtained, we take the mirror value of X s as the direction of cursor movement in webcam is opposite to the hand movement. The axis of webcam and screen are coincided before the mirror value of X s is taken. 5.7 Mouse Event: The mouse event such as cursor movement, left click, right click, drag etc are performed according to the number of region of interests and their relative position in each captured frame.

6. MATLAB IMPLEMENTATION vid = videoinput ('winvideo', 1,'YUY2_320x240'); set (vid,'triggerrepeat', Inf); vid.framegrabinterval = 1; set (vid,'returnedcolorspace','rgb'); start (vid); pause (2); g = getsnapshot (vid); p = impixel (g); disp (p); close; yo = (0.257*p (1)) + (0.504*p (2)) + (0.098*p (3)) + 16; disp (yo); cbo = (-0.148*p (1)) + (-0.291*p (2)) + (0.439*p (3)) + 128; disp (cbo); cro = (0.439*p (1)) + (-0.368*p (2)) + (-0.071*p (3)) + 128; pause (1); Now, video is started as {while (vid.framesacquired <= 1000000)} and depending 6.1 Various Mouse Events Cursor move Right Click Left Click Drag Double Click Fig 4. Gesture Vocabulary for mouse events.

6.2 Data Flow Image acquisition for color selection RGB to YCbCr conversion for selected color Convert each pixel of captured frame to YCbCr Capturing frame from video Comparing Cb & Cr of each pixel with that of selected color In specified range? YES NO Compare next pixel of frame NO Incrementing variable (f) symbolizing number of region of interest (ROI) Scanned all pixels of frame? YES Depending on ROI value and their relative position mouse event is triggered F = 1: Move the cursor to desired position. F = 2: a) Pixel difference of 2 ROI > threshold value; Perform left click. b) Pixel difference of 2 ROI < threshold value; Perform right click. F = 3: Perform drag action. F = 4: Double click.

7. EXPERIMENTS AND RESULTS The results obtained by the experiments for various mouse events such as cursor movement, left click, right click, double click, drag etc has been shown in below graph. The distance between the user and camera was kept fixed as 1m for below experiment. Recognition Rate (%) 100 95 90 85 80 Recognitio n Rate (%) 75 Cursor move Left click Right click Double click Drag Fig 5. Recognition rate v/s mouse events. The higher the percentage of recognition rate the more likely the gesture is going to be recognized e.g. cursor move may fail 5% of time i.e. there may be a delay in moving the cursor to its new position. Below graph shows the response rate of cursor movement when distance between user and camera is varied from 0.3m till 2.4m. The smoothness in cursor movement decreases when the distance from the webcam is increased. For both the experiments 1.3 megapixel laptop webcam was used. Response Rate(%) 120 100 80 60 40 20 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 Response Rate(%) Fig 6. Recognition rate v/s Distance 8. CONCLUSION AND FUTURE WORK Gesture recognition technique shows the positive signs for performing various mouse events. The use of YCbCr color model in research extricates the dependency on light intensity during experiment.

This technique is very useful for crippled people, at the time of presentation using IP cameras, controlling TV channels etc and can be applied to smartphones for numerous operations. Future works will include better methods for implementing mouse events and reducing the lag to almost zero during cursor movement. More features such as zoom in, zoom out, shut down etc will be implemented. 9. REFERENCES [1] Cheoljong Yang; Yujeong Jang ; Jounghoon Beh ; Han, D. ; Hanseok Ko: "Gesture recognition using depth-based hand tracking for contactless controller application, Consumer Electronics (ICCE), 2012 IEEE International Conference on, On Page(s): 297-298. [2] Igorevich, R.R.; Park, P.; Jongchan Choi; Dugki Min "ivision based Context-Aware Smart Home system", Consumer Electronics (GCCE), 2012 IEEE 1st Global Conference on, On page(s): 542 546. [3] Igorevich, R.R; Pusik Park ; Dugki Min ; Yunjung Park ; Jongchan Choi ; Eunmi Choi: "Hand gesture recognition algorithm based on grayscale histogram of the image", Application of Information and Communication Technologies (AICT), 2010 4th International Conference on, On Page(s) - 1-4 [4] M. Bray, E. Koller-Meier, and L. V. Gool. Smart particle filtering for 3d hand tracking. In Proc. Of Sixth IEEE International Conf. on Face and Gesture Recognition, 2004. [5] Amornched Jinda-apiraksa, Warong Pongstiensak, and Toshiaki Kondo, A Simple Shape-Based Approach to Hand Gesture Recognition, in Proceedings of IEEE International Conference on Electrical Engineering/Electronics Computer Telecommunications and Information Technology (ECTI-CON), Pathumthani, Thailand, pages 851-855, May 2010 [6] Manchanda, K; Bing, B. "Advanced mouse pointer control using trajectory-based gesture recognition", IEEE SoutheastCon 2010 (SoutheastCon), Proceedings of the, On Page(s): 412-415. [7] Tsang, W.-W.M.; Kong-Pang Pun; A finger-tracking virtual mouse realized in an embedded system, Intelligent Signal Processing and Communication Systems, 2005. ISPACS 2005. Proceedings of 2005 International Symposium on, pp 781-784. [8] Jun-ho An; Kwang-Seok Hong; Finger gesture-based mobile user interface using a rear-facing camera, Consumer Electronics (ICCE), 2011 IEEE International Conference on, pp 303-304. [9] Ueda, Y.; Maeno, T.; Development of a mouse-shaped haptic device with multiple finger inputs Intelligent Robots and Systems, 2004. (IROS 2004). Proceedings. 2004 IEEE/RSJ International Conference on, pp 2886-2891, 2004. Author biography Rachit Puri received B.Tech degree from Thapar University, Patiala in Electronics and Communication Engineering. He has presented one National paper Prompt Indian Coin Recognition with Rotation Invariance Using Image Subtraction Technique. Attended two workshops and 5 seminars related to image, sound and video processing. Presently he is working with Samsung India Research Bangalore.