Sensing module, and graphical user interface (GUI) control apparatus and method

Information

  • Patent Grant
  • 9733711
  • Patent Number
    9,733,711
  • Date Filed
    Wednesday, January 18, 2012
    14 years ago
  • Date Issued
    Tuesday, August 15, 2017
    8 years ago
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

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

1. Field


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.


2. Description of the Related Art


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.


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).


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.


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

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.


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.


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.


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

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:



FIG. 1 illustrates a diagram of a hovering keyboard equipped with a sensing module according to example embodiments;



FIG. 2 illustrates a diagram of a hovering mouse equipped with a sensing module according to example embodiments;



FIGS. 3 through 6 illustrate diagrams of structures of sensing modules according to example embodiments;



FIG. 7 illustrates a diagram of a configuration of a Graphical User Interface (GUI) control apparatus according to example embodiments;



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



FIG. 16 illustrates a flowchart of a GUI control method according to example embodiments.





DETAILED DESCRIPTION

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.



FIG. 1 illustrates a diagram of a hovering keyboard 100 equipped with a sensing module according to example embodiments.


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.


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.


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.



FIG. 2 illustrates a diagram of a hovering mouse 200 equipped with a sensing module according to example embodiments.


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.


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.


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.



FIGS. 3 through 6 illustrate diagrams of structures of sensing modules according to example embodiments.


Referring to FIG. 3, a sensing module may include a light emitter 310, and a light sensor 320.


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.


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.


The light emitter 310 may emit light.


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.


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.


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.


The sensing module of FIG. 3 may further include a first optical fiber 311, and a second optical fiber 321.


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.


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.


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.


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.


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.


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.


Referring to FIG. 4, a sensing module may include a plurality of light emitters 410, and a plurality of near-field light sensors 420.


The near-field light sensors 420 may be an example of the light sensor 320 of FIG. 3.


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.


The plurality of near-field light sensors 420 may be included in the input device, and may be inserted in the plurality of positions.


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.


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.


Referring to FIG. 5, a sensing module may include a wedge-type light emitter 510, and a plurality of near-field light sensors 520.


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.


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.


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.


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.


Referring to FIG. 6, a sensing module may include a wedge-shaped light emitter 610, and a wedge-shaped light sensor 620.


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.


The wedge-shaped light sensor 620 may also be inserted into the input device.


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.


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.


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.


Hereinafter, a GUI control apparatus will be further described.



FIG. 7 illustrates a diagram of a configuration of a GUI control apparatus 700 according to example embodiments.


Referring to FIG. 7, the GUI control apparatus 700 may include a receiver 710, a generator 720, and a controller 730.


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.


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.


The receiver 710 may receive the movement information from the input device 701.


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.


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.


The generator 720 may generate GUI control information based on the movement information.


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.


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.


The controller 730 may control a GUI 702, based on the GUI control information.


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.


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.


The receiver 710 may further receive the input information from the input device 701.


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.


Additionally, the generator 720 may generate GUI control information, based on the input information, as well as the movement information.


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.



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).


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).


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.


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.











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


One hand 3D
Hand
slap left/right/up/down/push/pull


hovering for
information
are recognized as gestures


mouse &
(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 &
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


One hand
Key
slap left/right/up/down/push/pull are


keying &
scan code
recognized 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,


mousing
position
and manipulates object by hovering


for mouse &
(x, y)
2) Designates margin of screen using


One hand 3D
Wheel
mouse, and manipulates camera by


hovering for
value (w)
hovering


keyboard
Left, center,
3) Available to switch scenes, move object



and right click
bundle, and perform 3D scrolling, when



Continuous
slap left/right/up/down/push/pull are



position (x, y)
recognized as gestures



Hand
For example, an object bundle in space



information
may be designed using mouse, and objects



(x, y, z,
in the object bundle may be browsed



rx, ry, rz)
by hovering.










FIG. 16 illustrates a flowchart of a GUI control method according to example embodiments.


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.


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.


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.


In operation 1620, GUI control information may be generated based on the movement information.


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.


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.


In operation 1630, a GUI may be controlled based on the GUI control information.


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.


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.


Accordingly, in the GUI control method, the input information inputted to the input device by the user may be further received.


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.


Additionally, GUI control information may be generated based on the input information, as well as the movement information.


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.


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.

Claims
  • 1. A sensing module configured to sense a hovering movement of a hand of a user within a sensing area disposed in a side of an input device, the sensing module comprising: mechanical keys;a light emitter configured to emit light;a light sensor configured to sense reflected light, and configured to collect movement information regarding the hovering movement of the hand;wherein a top side of the light emitter is disposed higher than a top side of the light sensor, in order to prevent the light sensor from directly sensing light emitted by the light emitter,wherein the reflected light is generated when the emitted light is reflected from the hand, andwherein the light emitter and the light sensor are disposed in a gap between mechanical keys.
  • 2. The sensing module of claim 1, further comprising: an additional light emitter, wherein the light emitters are inserted in predetermined locations in the side of the input device, andan additional light sensor, wherein the light sensors are inserted in the predetermined locations.
  • 3. The sensing module of claim 1, further comprising: an additional light sensor, wherein the light sensors are inserted in predetermined locations in the side of the input device,wherein the light emitter is configured to emit the light based on a Diffused Surface Illumination (DSI) scheme, and is inserted in the form of a wedge into the input device.
  • 4. The sensing module of claim 1, wherein the light emitter is configured to emit the light based on a DSI scheme, and is inserted in the form of a wedge into the input device, andwherein the light sensor is inserted in the form of a wedge into the input device.
  • 5. The sensing module of claim 1, further comprising: rubber domes, wherein each rubber dome is attached to a mechanical key.
  • 6. The sensing module of claim 1, further comprising: a first optical fiber configured to totally reflect the emitted light so that the emitted light travels outward from the side of the input device, wherein the first optical fiber has a first side connected to the light emitter and a second side exposed outside the input device; anda second optical fiber configured to reflect the reflected light to the light sensor, wherein the second optical fiber has a first side connected to the light sensor and a second side exposed outside the input device.
  • 7. The sensing module of claim 6, further comprising: an additional first optical fiber, wherein the first optical fibers are exposed outside the input device in predetermined locations in the side of the input device, andan additional second optical fiber, wherein the second optical fibers are exposed outside the input device in the predetermined locations.
  • 8. An apparatus for controlling a Graphical User Interface (GUI), the apparatus comprising: a receiver configured to receive, from an input device, movement information regarding a hovering movement of a hand of a user within a sensing area disposed in a side of the input device;a generator configured to generate GUI control information based on the movement information; anda controller configured to control a GUI based on the GUI control information,wherein the movement information is collected by using a light emitter and a light sensor disposed in a gap between mechanical keys on the input device, andwherein a to side of the light emitter is disposed higher than a top side of the light sensor, in order to prevent the light sensor from directly sensing light emitted by the light emitter.
  • 9. The apparatus of claim 8, wherein the input device comprises: the light emitter configured to emit light, andthe light sensor configured to sense reflected light, and configured to collect the movement information; andwherein the reflected light is generated when the emitted light is reflected from the hand.
  • 10. The apparatus of claim 8, wherein the movement information comprises 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.
  • 11. The apparatus of claim 8, wherein the input device further comprises rubber domes; andwherein each rubber dome is attached to a mechanical key.
  • 12. The apparatus of claim 8, wherein the receiver is further configured to receive, from the input device, input information inputted to the input device by the user, andwherein the generator is configured to generate the GUI control information, based on the input information and the movement information.
  • 13. The apparatus of claim 12, wherein the input device comprises at least one of: a keyboard and a mouse, andwherein the input information comprises 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.
  • 14. A method of controlling a Graphical User Interface (GUI) of a GUI control apparatus, the method comprising: sensing at least one of position of a user's hand and direction of a user's hand, by using a light emitter and a light sensor disposed in a gap between mechanical keys on an input device;controlling at least one of position of a camera, rotation of a camera, position of an object, and rotation of an object, based on the sensed position and direction of a single hand; andswitching scenes, moving the object, or scrolling 3D images when at least one of the following is detected: slap left, slap right, slap up, slap down, push, and pull,wherein a to side of the light emitter is disposed higher than a top side of the light sensor, in order to prevent the light sensor from directly sensing light emitted by the light emitter.
  • 15. The method of claim 14, the method further comprising: displaying the GUI on a screen of the GUI control apparatus when a keyboard and/or a mouse detects approaching of user's hand to a predetermined distance from the keyboard and/or the mouse.
  • 16. The method of claim 14, the method further comprising: displaying at least one object starting with a letter when detecting approaching to a corresponding letter of a keyboard by the user's hand.
  • 17. A method of controlling a Graphical User Interface (GUI), the method comprising: receiving, from an input device, movement information regarding a hovering movement of a hand of a user within a sensing area disposed in a side of the input device;generating GUI control information based on the movement information; andcontrolling a GUI based on the GUI control information,wherein the movement information is collected by using a light emitter and a light sensor disposed in a gap between mechanical keys on the input device,wherein a to side of the light emitter is disposed higher than a top side of the light sensor, in order to prevent the light sensor from directly sensing light emitted by the light emitter.
Priority Claims (1)
Number Date Country Kind
10-2011-0005033 Jan 2011 KR national
US Referenced Citations (90)
Number Name Date Kind
4254333 Bergstrom Mar 1981 A
4379968 Ely Apr 1983 A
4417824 Paterson Nov 1983 A
4641026 Garcia, Jr. Feb 1987 A
4701747 Isherwood Oct 1987 A
4814600 Bergstrom Mar 1989 A
4931794 Haag Jun 1990 A
5286125 DiGiosia Feb 1994 A
5341133 Savoy et al. Aug 1994 A
5369262 Dvorkis Nov 1994 A
5410150 Teron Apr 1995 A
5477223 Destremps Dec 1995 A
5515045 Tak May 1996 A
5943233 Ebina Aug 1999 A
5963434 Jonsson Oct 1999 A
5994710 Knee Nov 1999 A
6026283 Stephenson Feb 2000 A
6300940 Ebina Oct 2001 B1
6496180 Hedman Dec 2002 B1
6525677 Printzis Feb 2003 B1
6552713 Van Brocklin Apr 2003 B1
7489306 Kolmykov-Zotov et al. Feb 2009 B2
7573463 Liess Aug 2009 B2
8786548 Oh et al. Jul 2014 B2
20020035701 Casebolt Mar 2002 A1
20020093481 Kehlstadt Jul 2002 A1
20020171633 Brinjes Nov 2002 A1
20030025082 Brewington Feb 2003 A1
20030025679 Taylor Feb 2003 A1
20030034439 Reime Feb 2003 A1
20030038824 Ryder Feb 2003 A1
20030063775 Rafii et al. Apr 2003 A1
20030076303 Huppi Apr 2003 A1
20030117370 Van Brocklin et al. Jun 2003 A1
20040046741 Low Mar 2004 A1
20040046744 Rafii et al. Mar 2004 A1
20040095323 Ahn May 2004 A1
20040104894 Tsukada et al. Jun 2004 A1
20040174339 Liao Sep 2004 A1
20050018172 Gelfond Jan 2005 A1
20050068300 Wang Mar 2005 A1
20050092843 Dowling et al. May 2005 A1
20050156875 Kong Jul 2005 A1
20050157202 Lin Jul 2005 A1
20050162389 Obermeyer Jul 2005 A1
20050231484 Gordon Oct 2005 A1
20060050062 Ozawa Mar 2006 A1
20060066576 Kong Mar 2006 A1
20060066589 Ozawa Mar 2006 A1
20060066590 Ozawa Mar 2006 A1
20060082548 Kodama Apr 2006 A1
20060152494 Liess Jul 2006 A1
20060203485 Fu Sep 2006 A1
20060256090 Huppi Nov 2006 A1
20060284743 Kong Dec 2006 A1
20070018970 Tabasso Jan 2007 A1
20070062793 Hung Mar 2007 A1
20070200970 Keam Aug 2007 A1
20070296701 Pope Dec 2007 A1
20080006516 Nishino Jan 2008 A1
20080018591 Pittel et al. Jan 2008 A1
20080042980 Bowen Feb 2008 A1
20080055494 Cernasov Mar 2008 A1
20080055495 Cernasov Mar 2008 A1
20080062015 Bowen Mar 2008 A1
20080122796 Jobs May 2008 A1
20080141847 Komatsu Jun 2008 A1
20080143560 Shipman Jun 2008 A1
20080180654 Bathiche et al. Jul 2008 A1
20080186736 Rinko Aug 2008 A1
20080218769 Ahn Sep 2008 A1
20080231596 Liu et al. Sep 2008 A1
20080246606 Smith Oct 2008 A1
20080284734 Visser Nov 2008 A1
20090179869 Slotznick Jul 2009 A1
20090201179 Shipman Aug 2009 A1
20090219253 Izadi et al. Sep 2009 A1
20090245574 Ahn Oct 2009 A1
20100059354 Hsu Mar 2010 A1
20100079419 Shibusawa Apr 2010 A1
20100148996 Wang Jun 2010 A1
20100149099 Elias Jun 2010 A1
20100214135 Bathiche et al. Aug 2010 A1
20100225588 Newton Sep 2010 A1
20100294938 Alameh Nov 2010 A1
20100295772 Alameh Nov 2010 A1
20100295773 Alameh Nov 2010 A1
20110032185 Yamamoto Feb 2011 A1
20110038115 Halkosaari Feb 2011 A1
20110169743 Oh Jul 2011 A1
Foreign Referenced Citations (5)
Number Date Country
2003-122477 Apr 2003 JP
10-2005-0092549 Sep 2005 KR
10-2006-0035925 Apr 2006 KR
10-2008-0057270 Jun 2008 KR
10-2008-0098374 Nov 2008 KR
Non-Patent Literature Citations (3)
Entry
NUI Group Community Forums, Getting Started With MultiTouch, Published Aug. 6, 2009; see p. 4, Diffused Surface Illumination (DSI).
NUI Group Community Forums, Getting Started With MultiTouch, Published at least as early as Aug. 6, 2009; see p. 4, Diffused Surface Illumination (DSI).
Korean Office Action issued June 21, 2017, in corresponding Korean Application No. 10-2011-0005033 (8 pages in English, 7 pages in Korean).
Related Publications (1)
Number Date Country
20120182215 A1 Jul 2012 US