Abstract:
A sensing module, and a Graphical User Interface (GUI) control apparatus and method are provided. The sensing module may be inserted into an input device, for example a keyboard, a mouse, a remote controller, and the like, and may sense a hovering movement of a hand of a user within a sensing area, and thus it is possible to provide an interface to control a wider variety of GUIs, and possible to prevent a display from being covered.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims the benefit of Korean Patent Application No. 10-2011-0005033, filed on Jan. 18, 2011, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference. 
       BACKGROUND 
       [0002]    1. Field 
         [0003]    Example embodiments of the following description relate to a sensing module, and a Graphical User Interface (GUI) control apparatus and method, and more particularly, to an apparatus and method for controlling a GUI based on information detected by a sensing module. 
         [0004]    2. Description of the Related Art 
         [0005]    Natural interface technologies for strengthening natural interaction between humans and computers are emerging. In particular, researches have been conducted on recognition of intentions and actions of users for interaction between humans and computers based on multi-touching and hovering. 
         [0006]    Conventionally, information on a position of a plane of a display, or a plane of a touch panel, and whether the plane of the display or the plane of the touch panel is touched, are used as signals for a User Interface (UI). 
         [0007]    Recently, with the advent of a scheme enabling sensing of a short distance, a display or a touch panel that enables sensing of a short distance, are being designed. Accordingly, a plane position, and depth information between a panel and a touched object may be recognized, and may be used as an input of a UI. 
         [0008]    However, conventionally, a problem may occur that an image displayed on a display is covered by hovering performed by hands or fingers above the display. 
       SUMMARY 
       [0009]    The foregoing and/or other aspects are achieved by providing a sensing module for sensing a hovering movement of a hand of a user within a sensing area located in a side of an input device, the sensing module including a light emitter to emit light, and a light sensor to sense reflected light, and to collect movement information regarding the hovering movement of the hand, the reflected light being generated when the emitted light is reflected from the hand. 
         [0010]    The foregoing and/or other aspects are achieved by providing an apparatus for controlling a Graphical User Interface (GUI), the apparatus including a receiver to receive, from an input device, movement information regarding a hovering movement of a hand of a user within a sensing area located in a side of the input device, a generator to generate GUI control information based on the movement information, and a controller to control a GUI based on the GUI control information. 
         [0011]    The foregoing and/or other aspects are also achieved by providing a method of controlling a GUI, the method including receiving, from an input device, movement information regarding a hovering movement of a hand of a user within a sensing area located in a side of the input device, generating GUI control information based on the movement information, and controlling a GUI based on the GUI control information. 
         [0012]    Additional aspects, features, and/or advantages of example embodiments will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the disclosure. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0013]    These and/or other aspects and advantages will become apparent and more readily appreciated from the following description of the example embodiments, taken in conjunction with the accompanying drawings of which: 
           [0014]      FIG. 1  illustrates a diagram of a hovering keyboard equipped with a sensing module according to example embodiments; 
           [0015]      FIG. 2  illustrates a diagram of a hovering mouse equipped with a sensing module according to example embodiments; 
           [0016]      FIGS. 3 through 6  illustrate diagrams of structures of sensing modules according to example embodiments; 
           [0017]      FIG. 7  illustrates a diagram of a configuration of a Graphical User Interface (GUI) control apparatus according to example embodiments; 
           [0018]      FIGS. 8 through 15  illustrate diagrams of examples in which a user inputs an input signal using an input device including a sensing module according to example embodiments; and 
           [0019]      FIG. 16  illustrates a flowchart of a GUI control method according to example embodiments. 
       
    
    
     DETAILED DESCRIPTION 
       [0020]    Reference will now be made in detail to example embodiments, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. Example embodiments are described below to explain the present disclosure by referring to the figures. 
         [0021]      FIG. 1  illustrates a diagram of a hovering keyboard  100  equipped with a sensing module according to example embodiments. 
         [0022]    Referring to  FIG. 1 , the sensing module in the hovering keyboard  100  may sense a hovering movement of a hand of a user within a sensing area. The sensing area may have a predetermined size, and may be located above the hovering keyboard  100 . 
         [0023]    For example, the sensing module may be located in a point  110  of the hovering keyboard  100 . A plurality of points may be included in the hovering keyboard  100 . 
         [0024]    Accordingly, a user of the hovering keyboard  100  may input an input signal by manually operating keys on the hovering keyboard  100 , or by moving or rotating the hand of the user within the sensing area above the hovering keyboard  100 . 
         [0025]      FIG. 2  illustrates a diagram of a hovering mouse  200  equipped with a sensing module according to example embodiments. 
         [0026]    Referring to  FIG. 2 , the sensing module in the hovering mouse  200  may sense a hovering movement of a hand of a user within a sensing area. The sensing area may have a predetermined size, and may be located above the hovering mouse  200 . 
         [0027]    For example, the sensing module may be located in a point  210  of the hovering mouse  200 . A plurality of points may be included in the hovering mouse  200 . 
         [0028]    Accordingly, a user of the hovering mouse  200  may input an input signal by manually operating buttons on the hovering mouse  200 , or by moving or rotating the hand of the user within the sensing area on the hovering mouse  200 . 
         [0029]      FIGS. 3 through 6  illustrate diagrams of structures of sensing modules according to example embodiments. 
         [0030]    Referring to  FIG. 3 , a sensing module may include a light emitter  310 , and a light sensor  320 . 
         [0031]    The sensing module of  FIG. 3  may sense a hovering movement of a hand of a user within a sensing area located in a side of an input device. 
         [0032]    The input device may include at least one of the hovering keyboard  100  of  FIG. 1 , the hovering mouse  200  of  FIG. 2 , and a remote controller. 
         [0033]    The light emitter  310  may emit light. 
         [0034]    The light sensor  320  may sense reflected light. The reflected light may be generated when the emitted light is reflected from the hand moving within the sensing area. Additionally, the light sensor  320  may collect movement information regarding the hovering movement of the hand, based on the sensed reflected light. 
         [0035]    The sensing area in the side of the input device may be space with a predetermined size, to sense movements of body parts of the user, for example the hands of the user, and movements of tools within the sensing area. Depending on embodiments, a sensing area may be located in a plurality of sides of the input device. Additionally, a plurality of sensing areas may be set in the plurality of sides of the input device, respectively. 
         [0036]    For example, the light sensor  320  may collect, from information on the sensed reflected light, information regarding a position of the hand, a size of the hand, a rotation of the hand, a hovering movement of the hand, a movement speed of the hand, and the like. 
         [0037]    The sensing module of  FIG. 3  may further include a first optical fiber  311 , and a second optical fiber  321 . 
         [0038]    A first side of the first optical fiber  311  may be connected to the light emitter  310 , and a second side of the first optical fiber  311  may be exposed outside the input device. The first optical fiber  311  may totally reflect the light emitted from the light emitter  310 , so that the emitted light may travel outward from the side of the input device. In other words, the light may be emitted from the light emitter  310  to the side of the input device through the first optical fiber  311 . 
         [0039]    Depending on embodiments, a plurality of first optical fibers  311  may be included, and may be exposed outside the input device in a plurality of positions that are set in advance in the side of the input device. 
         [0040]    A first side of the second optical fiber  321  may be connected to the light sensor  320 , and a second side of the second optical fiber  321  may be exposed outside the input device. The second optical fiber  321  may totally reflect, to the light sensor  320 , reflected light generated when the light emitted through the first optical fiber  311  exposed outside the input device is reflected from the hand within the sensing area. 
         [0041]    Depending on embodiments, a plurality of second optical fibers  321  may be included, and may be exposed outside the input device in a plurality of positions that are set in advance in the side of the input device. 
         [0042]    For example, when a keyboard is used as an input device, the first optical fiber  311  and the second optical fiber  321  may be exposed outside the keyboard at a point located in a gap between a key  301  and a neighboring key. 
         [0043]    Accordingly, in an input device including a sensing module configured as shown in  FIG. 3 , the sensing module may include a single light emitter and a single light sensor, and may sense a hovering movement of a hand of a user within a sensing area in the input device, using a plurality of optical fibers. 
         [0044]    Referring to  FIG. 4 , a sensing module may include a plurality of light emitters  410 , and a plurality of near-field light sensors  420 . 
         [0045]    The near-field light sensors  420  may be an example of the light sensor  320  of  FIG. 3 . 
         [0046]    The plurality of light emitters  410  may be included in an input device, and may be inserted in a plurality of positions that are set in advance in a side of the input device. 
         [0047]    The plurality of near-field light sensors  420  may be included in the input device, and may be inserted in the plurality of positions. 
         [0048]    For example, when a keyboard is used as an input device, the plurality of light emitters  410  and the plurality of near-field light sensors  420  may be exposed outside the keyboard at a plurality of points that are located in a gap between a key  401  and a neighboring key. 
         [0049]    Accordingly, in an input device including a sensing module configured as shown in  FIG. 4 , a plurality of light emitters and a plurality of light sensors may be inserted for each of a plurality of points, and thus it is possible to sense a hovering movement of a hand of a user within a sensing area. 
         [0050]    Referring to  FIG. 5 , a sensing module may include a wedge-type light emitter  510 , and a plurality of near-field light sensors  520 . 
         [0051]    The wedge-shaped light emitter  510  may be inserted into an input device. Additionally, the wedge-shaped light emitter  510  may emit light based on a Diffused Surface Illumination (DSI) scheme. 
         [0052]    For example, when a keyboard is used as an input device, the wedge-shaped light emitter  510  may be inserted between rows of a key  501 , and may emit light. 
         [0053]    In this instance, the plurality of near-field light sensors  520  may be inserted in a plurality of positions that are set in advance in a side of the input device. 
         [0054]    Accordingly, in an input device including a sensing module configured as shown in  FIG. 5 , light may be emitted by a wedge-shaped light emitter, and reflected light may be sensed by a plurality of near-field light sensors for each of a plurality of points, and thus it is possible to sense a hovering movement of a hand of a user within a sensing area. 
         [0055]    Referring to  FIG. 6 , a sensing module may include a wedge-shaped light emitter  610 , and a wedge-shaped light sensor  620 . 
         [0056]    The wedge-shaped light emitter  610  may be inserted into an input device. Additionally, the wedge-shaped light emitter  610  may emit light based on a DSI scheme. 
         [0057]    The wedge-shaped light sensor  620  may also be inserted into the input device. 
         [0058]    For example, when a keyboard is used as an input device, the wedge-shaped light emitter  610  and the wedge-shaped light sensor  620  may be inserted between rows of a key  601 , and the wedge-shaped light emitter  610  may emit light. 
         [0059]    As described above with reference to  FIGS. 1 through 6 , a sensing module may sense a hovering movement of a hand of a user within a sensing area, and may transmit information regarding the sensed hovering movement to a Graphical User Interface (GUI) control apparatus. The GUI control apparatus may control a GUI using the received information. 
         [0060]    For example, when a user inputs an input signal by moving a hand of the user within a sensing area of an input device, a sensing module may sense a hovering movement of the hand, and may transmit information on the hovering movement to a GUI control apparatus, so that the GUI control apparatus may control a GUI. 
         [0061]    Hereinafter, a GUI control apparatus will be further described. 
         [0062]      FIG. 7  illustrates a diagram of a configuration of a GUI control apparatus  700  according to example embodiments. 
         [0063]    Referring to  FIG. 7 , the GUI control apparatus  700  may include a receiver  710 , a generator  720 , and a controller  730 . 
         [0064]    An input device  701  including a sensing module may sense a hovering movement of a hand of a user within a sensing area. Additionally, the input device  701  may transmit, to the GUI control apparatus  700 , movement information regarding the sensed hovering movement. The sensing area may be located in a side of the input device  701 . 
         [0065]    More specifically, the input device  701  may include a light emitter (not shown), and a light sensor (not shown). The light emitter may emit light. The light sensor may sense reflected light generated when the emitted light is reflected from the hand within the sensing area, and may collect the movement information. 
         [0066]    The receiver  710  may receive the movement information from the input device  701 . 
         [0067]    The movement information may include at least one of information regarding a position of the hand, a size of the hand, a rotation of the hand, and a movement speed of the hand. 
         [0068]    For example, the movement information may include three-dimensional (3D) coordinates (x, y, z) representing the position of the hand within the sensing area shown in  FIG. 10 , coordinates (rx, ry, rz) representing the rotation of the hand, and the like. 
         [0069]    The generator  720  may generate GUI control information based on the movement information. 
         [0070]    The generator  720  may generate GUI control information, based on a table in which types of movement of the hand are matched to meaningful control signals. 
         [0071]    For example, when a hand of a user moves 5 cm in an x-axis direction, an action of moving an object in the same direction as the hand moves, and the like may be included in the table. 
         [0072]    The controller  730  may control a GUI  702 , based on the GUI control information. 
         [0073]    According to an aspect, a user may input an input signal by moving a hand of the user within a sensing area, or by operating keys or buttons of the input device  701 . 
         [0074]    In this instance, the input device  701  may transmit, to the GUI control apparatus  700 , input information, as well as the movement information. The input information may be inputted to the input device  701  by the user operating the keys or buttons of the input device  701 . 
         [0075]    The receiver  710  may further receive the input information from the input device  701 . 
         [0076]    For example, when a keyboard or a mouse is used as the input device  701 , input information may include at least one of information on keys on the keyboard entered by the user, information on buttons on the mouse entered by the user, information on a position of the mouse, and information on a wheel value of the mouse. 
         [0077]    Additionally, the generator  720  may generate GUI control information, based on the input information, as well as the movement information. 
         [0078]    Hereinafter, examples in which a user inputs an input signal to control a GUI using an input device including a sensing module will be described in detail with reference to  FIGS. 8 through 15 . 
         [0079]      FIGS. 8 through 15  illustrate examples in which a user inputs an input signal using an input device including a sensing module according to example embodiments. Hereinafter, a keyboard  810 , a mouse  830 , or a remote controller (not shown) may be used as an input device including a sensing module (not shown). 
         [0080]    Referring to  FIG. 8 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a single hand  820  of the user within a sensing area. The sensing area may be located in a side of a keyboard  810  including a sensing module (not shown). 
         [0081]    The GUI control apparatus may receive, from the keyboard  810 , movement information regarding a hovering movement of the hand  820  sensed by the sensing module. Additionally, the GUI control apparatus  700  may generate GUI control information based on the received movement information, and may control the GUI based on the generated GUI control information. 
         [0082]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the hand  820  within the sensing area above the keyboard  810 . 
         [0083]    Referring to  FIG. 9 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a single hand  920  of the user within a sensing area. The sensing area may be located in a side of a mouse  910  including a sensing module. 
         [0084]    The GUI control apparatus may receive, from the mouse  910 , movement information regarding a hovering movement of the hand  920  sensed by the sensing module. Additionally, the GUI control apparatus may generate GUI control information based on the received movement information, and may control the GUI based on the generated GUI control information. 
         [0085]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the hand  920  within the sensing area above the mouse  910 . 
         [0086]    Referring to  FIG. 10 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a left hand  1020  and a right hand  1030  of the user within a sensing area. The sensing area may be located in a side of a keyboard  1010  including a sensing module. 
         [0087]    The GUI control apparatus may receive, from the keyboard  1010 , movement information regarding hovering movements of the left hand  1020  and the right hand  1030  sensed by the sensing module. Additionally, the GUI control apparatus may generate GUI control information based on the received movement information, and may control the GUI based on the generated GUI control information. 
         [0088]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the left hand  1020 , and coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the right hand  1030 . 
         [0089]    Referring to  FIG. 11 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a left hand  1130  of the user within a sensing area located in a side of a keyboard  1110  including a sensing module, and by moving a right hand  1140  of the user within a sensing area located in a side of a mouse  1120  including a sensing module. 
         [0090]    The GUI control apparatus may receive, from the keyboard  1110  and the mouse  1120 , movement information regarding a hovering movement of the left hand  1130  above the keyboard  1110  and regarding a hovering movement of the right hand  1140  above the mouse  1120 . The hovering movements may be sensed by the sensing modules. Additionally, the GUI control apparatus may generate GUI control information based on the received movement information, and may control the GUI based on the generated GUI control information. 
         [0091]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the left hand  1130  above the keyboard  1110 , and coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the right hand  1140  above the mouse  1120 . 
         [0092]    Referring to  FIG. 12 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a right hand  1230  within a sensing area in a side of a keyboard  1210 , and by operating keys on the keyboard  1210  with a left hand  1220 . The keyboard  1210  may include a sensing module. 
         [0093]    The GUI control apparatus may receive, from the keyboard  1210 , movement information and input information. The movement information may be associated with a hovering movement of the right hand  1230  above the keyboard  1210 , and the input information may be associated with the input signal inputted by operating the keys on the keyboard  1210  with the left hand  1220 . The hovering movement may be sensed by the sensing module of the keyboard  1210 . Additionally, the GUI control apparatus may generate GUI control information based on the received movement information and the received input information, and may control the GUI based on the generated GUI control information. 
         [0094]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the right hand  1230  above the keyboard  1210 . Additionally, the input signal may include information regarding a key-scan code of the keys on the keyboard  1210  operated with the left hand  1220 . 
         [0095]    Referring to  FIG. 13  a user of a GUI control apparatus may input an input signal to control a GUI by moving a right hand  1340  within a sensing area in a side of a mouse  1320 , and by operating keys on a keyboard  1310  with a left hand  1330 . The mouse  1320  may include a sensing module. 
         [0096]    The GUI control apparatus may receive movement information from the mouse  1320 , and may receive input information from the keyboard  1310 . The movement information may be associated with a hovering movement of the right hand  1340  above the mouse  1320 , and the input information may be associated with the input signal inputted by operating the keys on the keyboard  1310  with the left hand  1330 . The hovering movement may be sensed by the sensing module of the mouse  1320 . Additionally, the GUI control apparatus may generate GUI control information based on the received movement information and the received input information, and may control the GUI based on the generated GUI control information. 
         [0097]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the right hand  1340  above the mouse  1320 . Additionally, the input signal may include information regarding a key-scan code of the keys on the keyboard  1310  operated with the left hand  1330 . 
         [0098]    Referring to  FIG. 14 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a left hand  1430  within a sensing area in a side of a keyboard  1410 , and by operating a mouse  1420  with a right hand  1440 . The keyboard  1410  may include a sensing module. 
         [0099]    To input the input signal, the user may operate buttons on the mouse  1420  or a wheel on the mouse  1420 , or may move the mouse  1420 . 
         [0100]    The GUI control apparatus may receive movement information from the keyboard  1410 , and may receive input information from the mouse  1420 . The movement information may be associated with a hovering movement of the left hand  1430  above the keyboard  1410 , and the input information may be associated with the input signal inputted by operating the mouse  1420  with the right hand  1440 . The hovering movement may be sensed by the sensing module of the keyboard  1410 . Additionally, the GUI control apparatus may generate GUI control information based on the received movement information and the received input information, and may control the GUI based on the generated GUI control information. 
         [0101]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the left hand  1430  above the keyboard  1410 . Additionally, the input signal may include information regarding coordinates (x, y) representing a position of the mouse  1420  operated with the right hand  1440 , a wheel value ‘w’ of the mouse  1420 , and a key-scan code of the buttons on the mouse  1420 . 
         [0102]    Referring to  FIG. 15 , a user of a GUI control apparatus may input an input signal to control a GUI by moving a hand  1520  within a sensing area in a side of a remote controller  1510 , or by operating keys on the remote controller  1510 . The remote controller  1510  may include a sensing module. 
         [0103]    The GUI control apparatus may receive movement information or input information from the remote controller  1510 . The movement information may be associated with a hovering movement of the hand  1520  above the remote controller  1510 , and the input information may be associated with the input signal inputted by operating the keys on the remote controller  1510 . The hovering movement may be sensed by the sensing module of the remote controller  1510 . Additionally, the GUI control apparatus may generate GUI control information based on the received movement information or the received input information, and may control the GUI based on the generated GUI control information. 
         [0104]    In this instance, the movement information may include coordinates (x, y, z, rx, ry, rz) representing information on a position and rotation of the hand  1520  above the remote controller  1510 . Additionally, the input signal may include information regarding a key-scan code of the keys on the remote controller  1510  operated by the user. 
         [0105]    Table 1 shows examples of controlling a GUI based on sensing data including movement information and input information, when a user inputs a GUI control signal using at least one of a keyboard and a mouse, as described above with reference to  FIGS. 8 through 15 . Since Table 1 is merely an example embodiment, there is no limitation thereto. 
         [0000]    
       
         
               
               
               
             
           
               
                 TABLE 1 
               
               
                   
               
               
                 Interaction 
                   
                   
               
               
                 method 
                 Sensing data 
                 GUI 
               
               
                   
               
             
             
               
                 One hand 3D 
                 Hand 
                 1) Controls position and rotation of camera 
               
               
                 hovering for 
                 information 
                 based on position and direction of single 
               
               
                 keyboard 
                 (x, y, z, 
                 hand 
               
               
                   
                 rx, ry, rz) 
                 2) Controls position and rotation of object 
               
               
                 One hand 3D 
                 Hand 
                 based on position and direction of single 
               
               
                 hovering 
                 information 
                 hand 
               
               
                 for mouse 
                 (x, y, z, 
                 3) Available to switch scenes, move object 
               
               
                   
                 rx, ry, rz) 
                 bundle, and perform 3D scrolling, when slap 
               
               
                   
                   
                 left/right/up/down/push/pull are recognized 
               
               
                   
                   
                 as gestures 
               
               
                   
                   
                 4) UI appears (displays) when approaching 
               
               
                   
                   
                 keyboard or mouse 
               
               
                   
                   
                 5) UI context is changed when hand 
               
               
                   
                   
                 approaches corresponding position for each 
               
               
                   
                   
                 block of keyboard 
               
               
                 Two hands 
                 Left hand 
                 1) Controls position and rotation of camera 
               
               
                 3D hovering 
                 information 
                 based on positions and directions of both 
               
               
                 for 
                 (x, y, z, 
                 hands 
               
               
                 keyboard 
                 rx, ry, rz) 
                 2) Controls position and rotation of object 
               
               
                   
                 Right hand 
                 based on positions and directions of both 
               
               
                   
                 information 
                 hands 
               
               
                   
                 (x, y, z, 
                 3) Available to switch scenes, move object 
               
               
                   
                 rx, ry, rz) 
                 bundle, and perform 3D scrolling, when slap 
               
               
                 One hand 3D 
                 Hand 
                 left/right/up/down/push/pull are recognized 
               
               
                 hovering for 
                 information 
                 as gestures 
               
               
                 mouse &amp; 
                 (x, y, z, 
                 4) UI appears when approaching 
               
               
                 One hand 3D 
                 rx, ry, rz) 
                 keyboard or mouse 
               
               
                 hovering over 
                   
                 5) UI context is changed when hand 
               
               
                 keyboard 
                   
                 approaches corresponding position for each 
               
               
                   
                   
                 block or keyboard 
               
               
                 One hand 
                 Key 
                 1) Designates target group using keys, and 
               
               
                 keying &amp; 
                 scan code 
                 manipulates object by hovering 
               
               
                 One hand 3D 
                 Hand 
                 2) Designates margin of screen using keys, 
               
               
                 hovering for 
                 information 
                 and manipulates camera by hovering 
               
               
                 keyboard 
                 (x, y, z, 
                 3) Available to switch scenes, move object 
               
               
                   
                 rx, ry, rz) 
                 bundle, and perform 3D scrolling, when slap 
               
               
                 One hand 
                 Key 
                 left/right/up/down/push/pull are recognized 
               
               
                 keying &amp; 
                 scan code 
                 as gestures 
               
               
                 One hand 3D 
                 Hand 
                 For example, when ‘a’ is pressed using a 
               
               
                 hovering  
                 information 
                 keyboard, objects starting with the letter ‘a’ 
               
               
                 for mouse 
                 (x, y, z, 
                 may appear, and browsing may be 
               
               
                   
                 rx, ry, rz) 
                 performed by hovering 
               
               
                 One hand 
                 Mouse 
                 1) Designates object group using mouse, and 
               
               
                 mousing 
                 position 
                 manipulates object by hovering 
               
               
                 for mouse &amp; 
                 (x, y) 
                 2) Designates margin of screen using mouse, 
               
               
                 One hand 3D 
                 Wheel 
                 and manipulates camera by hovering 
               
               
                 hovering for 
                 value (w) 
                 3) Available to switch scenes, move object 
               
               
                 keyboard 
                 Left, center, 
                 bundle, and perform 3D scrolling, when slap 
               
               
                   
                 and right click 
                 left/right/up/down/push/pull are recognized 
               
               
                   
                 Continuous 
                 as gestures 
               
               
                   
                 position (x, y) 
                 For example, an object bundle in space may 
               
               
                   
                 Hand 
                 be designed using mouse, and objects in the 
               
               
                   
                 information 
                 object bundle may be browsed by hovering. 
               
               
                   
                 (x, y, z, 
                   
               
               
                   
                 rx, ry, rz) 
               
               
                   
               
             
          
         
       
     
         [0106]      FIG. 16  illustrates a flowchart of a GUI control method according to example embodiments. 
         [0107]    Referring to  FIG. 16 , in operation  1610 , movement information may be received from an input device. The movement information may be associated with a hovering movement of a hand of a user within a sensing area located in a side of the input device. 
         [0108]    The movement information may include at least one of information regarding a position of the hand, a size of the hand, a rotation of the hand, and a movement speed of the hand. 
         [0109]    For example, the movement information may include 3D coordinates (x, y, z) representing the position of the hand within the sensing area, coordinates (rx, ry, rz) representing the rotation of the hand, and the like. 
         [0110]    In operation  1620 , GUI control information may be generated based on the movement information. 
         [0111]    The GUI control information may be generated, based on a table in which types of movement of the hand are matched to meaningful control signals. 
         [0112]    For example, when a hand of a user moves 5 cm in an x-axis direction, an action of moving an object in the same direction as the hand moves, and the like may be included in the table. 
         [0113]    In operation  1630 , a GUI may be controlled based on the GUI control information. 
         [0114]    According to an aspect, a user may input an input signal by moving a hand of the user within a sensing area, or by operating keys or buttons on an input device. 
         [0115]    In this instance, the input device may transmit, to a GUI control apparatus, input information inputted by the user operating the keys or buttons on the input device, in addition to the movement information. 
         [0116]    Accordingly, in the GUI control method, the input information inputted to the input device by the user may be further received. 
         [0117]    For example, when a keyboard or a mouse is used as an input device, input information may include at least one of information on keys on the keyboard entered by the user, information on buttons on the mouse entered by the user, information on a position of the mouse, and information on a wheel value of the mouse. 
         [0118]    Additionally, GUI control information may be generated based on the input information, as well as the movement information. 
         [0119]    The above-described example embodiments may be recorded in non-transitory computer-readable media including program instructions to implement various operations embodied by a computer. The media may also include, alone or in combination with the program instructions, data files, data structures, and the like. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the example embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of non-transitory computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks and DVDs; magneto-optical media such as optical discs; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory, and the like. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter. The described hardware devices may be configured to act as one or more software modules in order to perform the operations of the above-described example embodiments, or vice versa. 
         [0120]    Although example embodiments have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these example embodiments without departing from the principles and spirit of the disclosure, the scope of which is defined in the claims and their equivalents.