US20170316261A1 - Systems and metohds of gesture recognition - Google Patents
Systems and metohds of gesture recognition Download PDFInfo
- Publication number
- US20170316261A1 US20170316261A1 US15/646,555 US201715646555A US2017316261A1 US 20170316261 A1 US20170316261 A1 US 20170316261A1 US 201715646555 A US201715646555 A US 201715646555A US 2017316261 A1 US2017316261 A1 US 2017316261A1
- Authority
- US
- United States
- Prior art keywords
- gesture
- boundary
- image
- camera
- depth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G06K9/00355—
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
Definitions
- the present disclosure relates generally to systems and devices for gesture recognition.
- systems and devices using two-dimensional (2D) cameras that are capable of gesture recognition in three-dimensional (3D) space are described.
- Gesture recognition is a rapidly growing technological field for inputting commands to computer systems, gaming systems, and/or other interactive control systems.
- human gestures are captured by image and/or motion detection subsystems and interpreted via algorithms to relay specific commands to the subject system.
- Gestures can originate from any bodily motion or state, but commonly originate from the face or hand of a user.
- gesture recognition devices and systems are not entirely satisfactory for the range of applications in which they are employed.
- existing gesture recognition systems and devices have difficulty recognizing gestures that are performed in 3D space. More specifically, existing gesture recognition systems have difficulty recognizing gestures that require “depth perception”, such as a forward swipe gesture (i.e., hand moving away from the device) and/or a rearward swipe gesture (i.e., hand moving toward the device).
- some gesture recognition systems and devices include 3D cameras (e.g., structure light cameras, time-of-flight cameras, stereo cameras, etc.) to track gestures through 3D space. These systems, however, are expensive and require complicated systems for operation.
- gesture recognition devices and systems that improve upon and advance the design of known gesture recognition devices and systems. Examples of new and useful gesture recognition devices and systems relevant to the needs existing in the field are discussed below.
- a method of controlling a computing device includes the steps of detecting a gesture made by a human user, identifying the gesture, and executing a computer command.
- the gesture may comprise a change in depth of a body part of the human user relative to the 2D camera.
- the gesture may be detected via a 2D camera in electronic communication with the computing device.
- the detecting step may include capturing at least a first image of the body part in an initial gesture position and a second image of the body part in a subsequent gesture position.
- the gesture may be identified via a computing unit of the computing device.
- the identifying step may comprise recognizing at least a first object in the first image and a second object in the second image, comparing at least the first object to the second object, and converting the gesture into a command via the computing unit.
- the executing step may be triggered in response to the gesture being converted into a command.
- a system includes a 2D camera and a computing device.
- the computing device may be in electronic communication with the 2D camera.
- the 2D camera is configured to capture at least a first and second image of a body part of a human user.
- the computing device is configured to recognize at least a first object in the first image and a second object in the second image.
- the computing device is configured to generate a first boundary in the first image, the first boundary being the smallest region of the first image that fully contains the first object.
- the computing device is configured to generate a second boundary in the second image, the second boundary being the smallest region of the second image that fully contains the second object.
- the computing device is configured to compare at least the size of the first boundary to the size of the second boundary in order to identify a change in depth of the body part of the human user relative to the 2D camera. In the embodiment, the computing device is configured to convert the change in depth of the body part into a command. In the embodiment, the computing device is configured to execute the command.
- FIG. 1 shows a schematic view of an example of a programmable computing device.
- FIG. 2 shows a schematic view of an example of a mobile electronic device.
- FIG. 3 is a schematic view of a first example of a gesture recognition system.
- FIGS. 4A and 4B are schematic views of a second example of a gesture recognition system and a third example of the gesture recognition system, respectively.
- FIGS. 5A and 5B are example camera views of example hand gestures from any of the first, second, or third example gesture recognition systems.
- FIGS. 6A-6C are example camera views of overlaid hand gesture movement images from any of the first, second, or third example gesture recognition systems.
- gesture recognition systems 300 , 400 and 500 function to detect and interpret gesture commands performed through 3D space (e.g., a forward swipe gesture, a rearward swipe gesture, etc.). Additionally or alternatively, the presently described gesture recognition systems and devices can function to detect and interpret generally 2D gesture commands (i.e., gestures made in a generally flat plane).
- the presently described gesture recognition systems and devices address many of the shortcomings existing with conventional gesture recognition systems and devices.
- a 2D camera can be used to recognize depth and detect gestures that are made in 3D space by comparing a first boundary of a first image (i.e., an image of a beginning of a gesture) to a second boundary of a second, subsequent, image (i.e., an image of an ending of the gesture).
- a first boundary of a first image i.e., an image of a beginning of a gesture
- a second boundary of a second, subsequent, image i.e., an image of an ending of the gesture.
- the presently described gesture recognition systems and devices do not require of 3D camera, therefore they have an overall reduced cost and complexity.
- the gesture recognition systems of the present application may be employed to control or interact with one or more computing devices.
- various disclosed examples may be implemented using electronic circuitry configured to perform one or more functions.
- the disclosed examples may be implemented using one or more application-specific integrated circuits (ASICs).
- ASICs application-specific integrated circuits
- components of various examples of the invention will be implemented using a programmable computing device executing firmware or software instructions, or by some combination of purpose-specific electronic circuitry and firmware or software instructions executing on a programmable computing device.
- FIG. 1 shows one illustrative example of a computing device, computing device 101 , which can be used to implement various embodiments of the invention.
- Computing device 101 may be incorporated within a variety of consumer electronic devices, such as personal media players, cellular phones, smart phones, personal data assistants, global positioning system devices, smart eyewear, smart watches, other computer wearables, and the like.
- computing device 101 has a computing unit 103 .
- Computing unit 103 typically includes a processing unit 105 and a system memory 107 .
- Processing unit 105 may be any type of processing device for executing software instructions, but will conventionally be a microprocessor device.
- System memory 107 may include both a read-only memory (ROM) 109 and a random access memory (RAM) 111 .
- ROM read-only memory
- RAM random access memory
- both read-only memory (ROM) 109 and random access memory (RAM) 111 may store software instructions to be executed by processing unit 105 .
- Processing unit 105 and system memory 107 are connected, either directly or indirectly, through a bus 113 or alternate communication structure to one or more peripheral devices.
- processing unit 105 or system memory 107 may be directly or indirectly connected to additional memory storage, such as a hard disk drive 117 , a removable optical disk drive 119 , a removable magnetic disk drive 125 , and a flash memory card 127 .
- additional memory storage such as a hard disk drive 117 , a removable optical disk drive 119 , a removable magnetic disk drive 125 , and a flash memory card 127 .
- Processing unit 105 and system memory 107 also may be directly or indirectly connected to one or more input devices 121 and one or more output devices 123 .
- Output devices 123 may include, for example, a monitor display, an integrated display, television, printer, stereo, or speakers.
- Input devices 121 may include, for example, a keyboard, touch screen, a remote control pad, a pointing device (such as a mouse, touchpad, stylus, trackball, or joystick), a scanner, a microphone, or a camera.
- input devices 121 include at least a 2D camera 122 (e.g., a light camera, a thermographic camera, etc.).
- 2D camera 122 is a visible light digital camera.
- the visible light digital camera uses an optical system including a lens and a variable diaphragm to focus light onto an electronic image pickup device.
- the visible light digital camera can be a compact digital camera, a bridge camera, a mirrorless interchangeable-lens camera, a modular camera, a digital single-lens reflex camera, digital single-lens translucent camera, line-scan camera, etc.
- the visible light digital camera can be any known or yet to be discovered visible light digital camera.
- 2D camera 122 is integral to the computing device 103 . In another embodiment, 2D camera 122 is remote of the computing device 103 .
- 2D camera 122 can additionally or alternatively be a thermographic camera or infrared (IR) camera.
- the IR camera can detect heat radiation in a way similar to the way an ordinary camera detects visible light. This makes IR cameras useful for gesture recognition in “normal light”, “low light”, and/or “no light” conditions.
- the IR camera can include cooled infrared photodetectors (e.g.
- indium antimonide indium arsenide, mercury cadmium telluride, lead sulfide, lead selenide, etc.
- uncooled infrared photodetectors e.g., vanadium oxide, lanthanum barium manganite, amorphous silicon, lead zirconate titanate, lanthanum doped lead zirconate titanate, lead scandium tantalate, lean lanthanum titanate, lead titanate, lead zinc niobate, lead strontium titanate, barium strontium titanate, antimony sulfoiodide, polyvinylidene difluoride, etc.).
- the IR camera can be any known or yet to be discovered thermographic camera.
- computing unit 103 can be directly or indirectly connected to one or more network interfaces 115 for communicating with a network.
- This type of network interface 115 also sometimes referred to as a network adapter or network interface card (NIC), translates data and control signals from computing unit 103 into network messages according to one or more communication protocols, such as the Transmission Control Protocol (TCP), the Internet Protocol (IP), and the User Datagram Protocol (UDP). These protocols are well known in the art, and thus will not be discussed here in more detail.
- An interface 115 may employ any suitable connection agent for connecting to a network, including, for example, a wireless transceiver, a power line adapter, a modem, or an Ethernet connection.
- the computing device may be connected to a variety of other peripheral devices, including some that may perform input, output and storage functions, or some combination thereof.
- the computing device 101 may be connected to a digital music player, such as an IPOD® brand digital music player or iOS or Android based smartphone.
- this type of digital music player can serve as both an output device for a computing device (e.g., outputting music from a sound file or pictures from an image file) and a storage device.
- computing device 101 may be connected to or otherwise include one or more other peripheral devices.
- computing device 101 may be connected to or otherwise include a telephone.
- the telephone may be, for example, a wireless “smart phone,” such as those featuring the Android or iOS operating systems. As known in the art, this type of telephone communicates through a wireless network using radio frequency transmissions.
- a “smart phone” may also provide a user with one or more data management functions, such as sending, receiving and viewing electronic messages (e.g., electronic mail messages, SMS text messages, etc.), recording or playing back sound files, recording or playing back image files (e.g., still picture or moving video image files), viewing and editing files with text (e.g., Microsoft Word or Excel files, or Adobe Acrobat files), etc. Because of the data management capability of this type of telephone, a user may connect the telephone with computing device 101 so that their data maintained may be synchronized.
- electronic messages e.g., electronic mail messages, SMS text messages, etc.
- recording or playing back sound files e.g., still picture or moving video image files
- viewing and editing files with text e.g., Microsoft Word or Excel files, or Adobe Acrobat files
- computing device 101 may be connected to or otherwise include an eyewear article (such as eyewear article 302 shown in FIG. 3 ).
- the eyewear article may be, for example, a “smart” eyewear article, such as a wearable computing device like Google® Glass.
- Augmented reality displays comprise a computer generated graphical display laid over a portion of a user's or mobile device's natural field of vision. These “augmented reality” displays allow a user to view computer generated images including data related to objects in their natural field of vision. Augmented reality displays may include any display including both natural and computer generated elements.
- peripheral devices may be included with or otherwise connected to a computing device 101 of the type illustrated in FIG. 1 , as is well known in the art.
- a peripheral device may be permanently or semi-permanently connected to computing unit 103 .
- computing unit 103 hard disk drive 117 , removable optical disk drive 119 and a display are semi-permanently encased in a single housing.
- Computing device 101 may include, for example, one or more communication ports through which a peripheral device can be connected to computing unit 103 (either directly or indirectly through bus 113 ). These communication ports may thus include a parallel bus port or a serial bus port, such as a serial bus port using the Universal Serial Bus (USB) standard or the IEEE 1394 High Speed Serial Bus standard (e.g., a Firewire port). Alternately or additionally, computing device 101 may include a wireless data “port,” such as a Bluetooth® interface, a Wi-Fi interface, an infrared data port, or the like.
- USB Universal Serial Bus
- IEEE 1394 High Speed Serial Bus standard e.g., a Firewire port
- computing device 101 may include a wireless data “port,” such as a Bluetooth® interface, a Wi-Fi interface, an infrared data port, or the like.
- a computing device employed according various examples of the invention may include more components than computing device 101 illustrated in FIG. 1 , fewer components than computing device 101 , or a different combination of components than computing device 101 .
- Some implementations of the invention may employ one or more computing devices that are intended to have a very specific functionality, such as a digital music player or server computer. These computing devices may thus omit unnecessary peripherals, such as the network interface 115 , removable optical disk drive 119 , printers, scanners, external hard drives, etc.
- Some implementations of the invention may alternately or additionally employ computing devices that are intended to be capable of a wide variety of functions, such as a desktop or laptop personal computer. These computing devices may have any combination of peripheral devices or additional components as desired.
- computing devices may comprise mobile electronic devices, such as smart phones, smart glasses, tablet computers, or portable music players, often operating the iOS, Symbian, Windows-based (including Windows Mobile and Windows 8), or Android operating systems.
- mobile electronic devices such as smart phones, smart glasses, tablet computers, or portable music players, often operating the iOS, Symbian, Windows-based (including Windows Mobile and Windows 8), or Android operating systems.
- an exemplary computing device may include a processor unit 203 (e.g., CPU) configured to execute instructions and to carry out operations associated with the mobile device.
- the controller may control the reception and manipulation of input and output data between components of the mobile device.
- the controller can be implemented on a single chip, multiple chips or multiple electrical components.
- various architectures can be used for the controller, including dedicated or embedded processor, single purpose processor, controller, ASIC, etc.
- the controller may include microprocessors, DSP, A/D converters, D/A converters, compression, decompression, etc.
- the controller together with an operating system operates to execute computer code and produce and use data.
- the operating system may correspond to well-known operating systems such iOS, Symbian, Windows-based (including Windows Mobile and Windows 8), or Android operating systems, or alternatively to special purpose operating system, such as those used for limited purpose appliance-type devices.
- the operating system, other computer code and data may reside within a system memory 207 that is operatively coupled to the controller.
- System memory 207 generally provides a place to store computer code and data that are used by the mobile device.
- system memory 207 may include read-only memory (ROM) 209 , random-access memory (RAM) 211 .
- system memory 207 may retrieve data from storage units 294 , which may include a hard disk drive, flash memory, etc.
- storage units 294 may include a removable storage device such as an optical disc player that receives and plays DVDs, or card slots for receiving mediums such as memory cards (or memory sticks).
- Mobile device 200 also includes input devices 221 that are operatively coupled to processor unit 203 .
- Input devices 221 are configured to transfer data from the outside world into mobile device 200 .
- input devices 221 may correspond to both data entry mechanisms and data capture mechanisms.
- input devices 221 may include touch sensing devices 232 such as touch screens, touch pads and touch sensing surfaces, mechanical actuators 234 such as button or wheels or hold switches, motion sensing devices 236 such as accelerometers, location detecting devices 238 such as global positioning satellite receivers, WiFi based location detection functionality, or cellular radio based location detection functionality, force sensing devices 240 such as force sensitive displays and housings, image sensors 242 such as light cameras and/or IR cameras, and microphones 244 .
- Input devices 221 may also include a clickable display actuator.
- input devices 221 include at least a 2D camera 243 (one of image sensing devices 242 ).
- 2D camera 243 can be a visible light camera and/or a thermographic camera, such as those described above in reference to 2D camera 122 . Accordingly, 2D camera 243 has the same functions and capabilities as those described above in reference to 2D camera 122 .
- mobile device 200 also includes various output devices 223 that are operatively coupled to processor unit 203 .
- Output devices 233 are configured to transfer data from mobile device 200 to the outside world.
- Output devices 233 may include a display unit 292 such as an LCD, speakers or jacks, audio/tactile feedback devices, light indicators, and the like.
- Mobile device 200 also includes various communication devices 246 that are operatively coupled to the controller.
- Communication devices 246 may, for example, include both an I/O connection 247 that may be wired or wirelessly connected to selected devices such as through IR, USB, or Firewire protocols, a global positioning satellite receiver 248 , and a radio receiver 250 which may be configured to communicate over wireless phone and data connections.
- Communication devices 246 may also include a network interface 252 configured to communicate with a computer network through various means which may include wireless connectivity to a local wireless network, a wireless data connection to a cellular data network, a wired connection to a local or wide area computer network, or other suitable means for transmitting data over a computer network.
- Mobile device 200 also includes a battery 254 and possibly a charging system.
- Battery 254 may be charged through a transformer and power cord or through a host device or through a docking station. In the cases of the docking station, the charging may be transmitted through electrical ports or possibly through an inductance charging means that does not require a physical electrical connection to be made.
- the various aspects, features, embodiments or implementations described above can be used alone or in various combinations with the gesture recognition methods disclosed herein.
- the methods disclosed herein can be implemented by software, hardware or a combination of hardware and software.
- the methods can also be embodied as computer readable code on a computer readable medium (e.g. a non-transitory computer readable-storage medium).
- the computer readable medium is any data storage device that can store data which can thereafter be read by a computer system, including both transfer and non-transfer devices as defined above. Examples of the computer readable medium include read-only memory, random access memory, CD-ROMs, flash memory cards, DVDs, magnetic tape, optical data storage devices, and carrier waves.
- the computer readable medium can also be distributed over network-coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- Eyewear article 302 is a “smart” eyewear article, such as those described above in reference to FIGS. 1 and 2 .
- eyewear article 302 includes a frame 304 for supporting a computing device 306 (such as computing device 101 ) including at least a processor 308 and memory 310 in data communication with an image generator 312 and a 2D camera 314 .
- Image generator is configured to display and/or project an image into the view of a user wearing eyewear article 302 , creating an augmented reality view.
- 2D camera 314 can be any of the cameras described above in reference to 2D camera 122 .
- 2D camera 314 is configured to detect a gesture 316 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera).
- gesture 316 is an open hand gesture; however, it will be appreciated that 2D camera 314 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.).
- a gesture may comprise a movement from an initial gesture position to a subsequent gesture positions.
- a gesture position is a particular orientation of a body part of a person. It will be further appreciated that gesture 316 and/or any other gesture detected by 2D camera 314 can be a gesture made by a user (i.e., a wearer of the eye wear article) or a gesture made by another person.
- gesture recognition system 400 includes many similar or identical features to gesture recognition system 300 . Thus, for the sake of brevity, each feature of gesture recognition system 400 will not be redundantly explained. Rather, key distinctions between gesture recognition system 400 and gesture recognition system 300 will be described in detail and the reader should reference the discussion above for features substantially similar between the gesture recognition systems.
- gesture recognition system 400 is implemented in a mobile computing device 402 including a 2D camera 414 in data communication with a computing unit (not specifically shown) of the mobile device for detecting a gesture 416 .
- mobile device 402 is a smart phone. It will be appreciated that in other examples mobile device 402 can be any of the mobile devices described above in reference to mobile device 200 (shown in FIG. 2 ).
- 2D camera 414 can be any of the cameras described above in reference to 2D camera 122 .
- 2D camera 414 is configured to detect a gesture 416 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera).
- gesture 416 is an open hand gesture; however, it will be appreciated that 2D camera 414 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.).
- gesture recognition system 500 includes many similar or identical features to gesture recognition systems 300 and 400 . Thus, for the sake of brevity, each feature of gesture recognition system 500 will not be redundantly explained. Rather, key distinctions between gesture recognition system 500 and gesture recognition systems 300 and 400 will be described in detail and the reader should reference the discussion above for features substantially similar between the gesture recognition systems.
- gesture recognition system 500 is implemented in a computing device 502 including a 2D camera 514 in data communication with a processor and memory of the computing device (not specifically shown) for detecting a gesture 516 .
- computer device 502 is a laptop computer. It will be appreciated that in other examples computing device 502 can be any of the mobile devices described above in reference to computing device 101 (shown in FIG. 1 ).
- 2D camera 514 can be any of the cameras described above in reference to 2D camera 122 .
- 2D camera 514 is configured to detect a gesture 516 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera).
- gesture 516 is an open hand gesture; however, it will be appreciated that 2D camera 514 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.).
- FIG. 5A shows camera view 600 of a first example gesture made by a user, closed hand gesture 616 (i.e., a fist).
- Closed hand gesture 616 is recognized and identified as a “closed hand command” by a system in data communication with the camera.
- a “closed hand command” is a command to select/grab an image on a screen and/or a virtual image.
- a “closed hand command” is a command to capture an image.
- a “closed hand command” is a command to select and/or move forward through a series of screens and/or modes. Further, movement of gesture 616 is tracked by the system via the collected camera images.
- a first boundary 618 is generated and/or calculated when the user's hand is in an initial gesture position.
- a second boundary 620 is generated when the user's hand is a subsequent gesture position.
- gesture 616 is tracked as it moves away from the camera.
- gesture 616 is a rearward moving gesture.
- the movement of gesture 616 is recognized and identified by the system and a command is sent to the image generator to execute the command.
- a rearward movement triggers a command to decrease a size of a virtual image in an augmented reality view (i.e., a “zoom out command”).
- a rearward movement may trigger a command to adjust the volume up, adjust the volume down, scroll up, scroll down, turn on, turn off, open an application, or close an application, among others.
- FIG. 5B depicts a camera view of a second example gesture made by a user, an open hand gesture 716 (i.e., an open palm).
- Open hand gesture 716 is recognized and identified as an “open hand command” by a system in data communication with the camera.
- a “open hand command” is a command to select/grab an image on a screen and/or a virtual image.
- an “open hand command” is a command to select and/or move backward through a series of screens and/or modes. Further, movement of gesture 716 is tracked by the system via the collected camera images.
- a first boundary 718 is generated and/or calculated when the user's hand is in an initial gesture position.
- a second boundary 720 is generated when the user's hand is a first subsequent gesture position, and a third boundary 722 is generated when a user's hand is in a second subsequent gesture position (i.e., a position after the first subsequent gesture position).
- gesture 716 is tracked as it toward the camera.
- gesture 716 is a forward moving gesture.
- the movement of gesture 716 is recognized and identified by the system and a command is sent to the image generator to execute the command.
- a forward movement is a command to increase a size of a virtual image in an augmented reality view (i.e., a “zoom in command”). It will be appreciated that a forward movement can be associated with a different command (i.e., a turn off command, a turn on command, etc.).
- FIGS. 6A-6C show overlaid successive camera views 800 , 900 , and 1000 , respectively. Each of these views shows a closed hand gesture moving away from the camera (i.e., a rearward moving gesture).
- a closed hand gesture moving away from the camera i.e., a rearward moving gesture.
- three successive boundaries are calculated, boundaries 818 , 820 , and 822 for a closed hand gesture 816 .
- two successive boundaries, boundaries 918 and 920 are calculated for closed hand gesture 916 .
- three successive boundaries, boundaries 1018 , 1020 , and 1022 are calculated for a closed hand gesture 1016 .
- gesture 1018 is a rearward and rightward moving gesture.
- the rearward and rightward moving gesture can include an additional or alternative command.
- a rearward and rightward gesture can be a “zoom out” and “move right” command for movement of a virtual image.
- the computing device 103 is configured to identify a first object in a first image and second object in a second image.
- the first object may be indicative of an initial gesture position.
- the first object may be a hand sign, or a portion of a hand sign.
- the second object may be indicative of a subsequent gesture position.
- the second object may be the same hand sign, or portion thereof, however the second object may be a different size than the first object.
- the computing device 103 is configured to terminate any command associated with the first initial gesture position.
- a boundary (e.g., boundaries 616 , 618 , 718 , 720 , 722 , 818 , 820 , 822 , 918 , 920 , 1018 , 1020 , and/or 1022 ) can be calculated using an object detection algorithm.
- Suitable object detection algorithms include the Haar Cascade Classifier algorithm that finds objects in an image that closely match a given set of image features, and the HOG detector classifier. The search is done by comparing regions of the full image against the features being searched for. The smallest region that fully contains the matching object is considered the object's boundary. Subsequent boundaries can be generated over time, creating two or more bounding regions.
- the regions have predetermined shapes. For example the regions may be specified as rectangles, circles, triangles, and trapezoids, among others.
- Depth is calculated by comparing the relative widths and/or heights of the two or more bounding regions. In some instances, relative width or height is used depending on whether the hand position being used for the gesture is bigger horizontally or vertically.
- a subsequent bounding region is bigger in whichever dimension is being used for the comparison (e.g., height, width, circumference, and/or area) than an initial bounding region, the hand is considered to have moved closer to the camera (i.e., a forward moving gesture).
- a subsequent bounding region is smaller than the initial bounding region, the hand is considered to have moved farther from the camera (i.e., a rearward moving gesture).
- the magnitude of the depth change may be quantified, via computing unit 103 , by scaling the difference in width and/or height by an application- and/or device-specific constant.
- the magnitude of the change in depth may be quantified.
- a magnitude may be associated with a gesture triggered command.
- a gesture comprising a change in depth of 2 ft. may be converted, via computing unit 103 , into a command to decrease the size of an image on a display unit (i.e., “zoom out”) by a factor of 200%.
- a gesture comprising a change in depth of 1 ft. may be converted, via computing unit 103 , into a command to decrease the size of an image on a display unit by a factor of 100%.
- a magnitude may be associated with any of the commands discussed above.
- the scaling constant can also change dynamically based on the speed of the gesture.
- the scaling constant can be changed dynamically by dividing the magnitude by the time difference between the two or more bounding regions, which would cause the depth change magnitude to be bigger when the gesture is performed at a faster speed.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
Abstract
Description
- This application is a continuation of, and claims priority, to U.S. application Ser. No. 14/796,944, filed on Jul. 10, 2015, which is hereby incorporated by reference for all purposes.
- The present disclosure relates generally to systems and devices for gesture recognition. In particular, systems and devices using two-dimensional (2D) cameras that are capable of gesture recognition in three-dimensional (3D) space are described.
- Gesture recognition is a rapidly growing technological field for inputting commands to computer systems, gaming systems, and/or other interactive control systems. In such systems, human gestures are captured by image and/or motion detection subsystems and interpreted via algorithms to relay specific commands to the subject system. Gestures can originate from any bodily motion or state, but commonly originate from the face or hand of a user.
- Known gesture recognition devices and systems are not entirely satisfactory for the range of applications in which they are employed. For example, existing gesture recognition systems and devices have difficulty recognizing gestures that are performed in 3D space. More specifically, existing gesture recognition systems have difficulty recognizing gestures that require “depth perception”, such as a forward swipe gesture (i.e., hand moving away from the device) and/or a rearward swipe gesture (i.e., hand moving toward the device). In another example, some gesture recognition systems and devices include 3D cameras (e.g., structure light cameras, time-of-flight cameras, stereo cameras, etc.) to track gestures through 3D space. These systems, however, are expensive and require complicated systems for operation.
- Thus, there exists a need for gesture recognition devices and systems that improve upon and advance the design of known gesture recognition devices and systems. Examples of new and useful gesture recognition devices and systems relevant to the needs existing in the field are discussed below.
- In one embodiment, a method of controlling a computing device includes the steps of detecting a gesture made by a human user, identifying the gesture, and executing a computer command. The gesture may comprise a change in depth of a body part of the human user relative to the 2D camera. The gesture may be detected via a 2D camera in electronic communication with the computing device. The detecting step may include capturing at least a first image of the body part in an initial gesture position and a second image of the body part in a subsequent gesture position. The gesture may be identified via a computing unit of the computing device. The identifying step may comprise recognizing at least a first object in the first image and a second object in the second image, comparing at least the first object to the second object, and converting the gesture into a command via the computing unit. The executing step may be triggered in response to the gesture being converted into a command.
- In one embodiment, a system includes a 2D camera and a computing device. The computing device may be in electronic communication with the 2D camera. In the embodiment, the 2D camera is configured to capture at least a first and second image of a body part of a human user. In the embodiment, the computing device is configured to recognize at least a first object in the first image and a second object in the second image. In the embodiment, the computing device is configured to generate a first boundary in the first image, the first boundary being the smallest region of the first image that fully contains the first object. In the embodiment, the computing device is configured to generate a second boundary in the second image, the second boundary being the smallest region of the second image that fully contains the second object. In the embodiment, the computing device is configured to compare at least the size of the first boundary to the size of the second boundary in order to identify a change in depth of the body part of the human user relative to the 2D camera. In the embodiment, the computing device is configured to convert the change in depth of the body part into a command. In the embodiment, the computing device is configured to execute the command.
-
FIG. 1 shows a schematic view of an example of a programmable computing device. -
FIG. 2 shows a schematic view of an example of a mobile electronic device. -
FIG. 3 is a schematic view of a first example of a gesture recognition system. -
FIGS. 4A and 4B are schematic views of a second example of a gesture recognition system and a third example of the gesture recognition system, respectively. -
FIGS. 5A and 5B are example camera views of example hand gestures from any of the first, second, or third example gesture recognition systems. -
FIGS. 6A-6C are example camera views of overlaid hand gesture movement images from any of the first, second, or third example gesture recognition systems. - The disclosed WIDGETS will become better understood through review of the following detailed description in conjunction with the figures. The detailed description and figures provide merely examples of the various inventions described herein. Those skilled in the art will understand that the disclosed examples may be varied, modified, and altered without departing from the scope of the inventions described herein. Many variations are contemplated for different applications and design considerations; however, for the sake of brevity, each and every contemplated variation is not individually described in the following detailed description.
- Throughout the following detailed description, examples of various WIDGETS are provided. Related features in the examples may be identical, similar, or dissimilar in different examples. For the sake of brevity, related features will not be redundantly explained in each example. Instead, the use of related feature names will cue the reader that the feature with a related feature name may be similar to the related feature in an example explained previously. Features specific to a given example will be described in that particular example. The reader should understand that a given feature need not be the same or similar to the specific portrayal of a related feature in any given figure or example.
- The disclosed gesture recognition systems and devices using 2D cameras for detecting gestures through 3D space will become better understood through review of the following detailed description in conjunction with the figures. The detailed description and figures provide merely examples of the various inventions described herein. Those skilled in the art will understand that the disclosed examples may be varied, modified, and altered without departing from the scope of the inventions described herein. Many variations are contemplated for different applications and design considerations; however, for the sake of brevity, each and every contemplated variation is not individually described in the following detailed description.
- Throughout the following detailed description, a variety of gesture recognition systems and devices using 2D cameras for detecting gestures through 3D space examples are provided. Related features in the examples may be identical, similar, or dissimilar in different examples. For the sake of brevity, related features will not be redundantly explained in each example. Instead, the use of related feature names will cue the reader that the feature with a related feature name may be similar to the related feature in an example explained previously. Features specific to a given example will be described in that particular example. The reader should understand that a given feature need not be the same or similar to the specific portrayal of a related feature in any given figure or example.
- With reference to
FIGS. 1-5 examples of gesture recognition systems using 2D cameras to detect gestures made through 3D space,gesture recognition systems - The presently described gesture recognition systems and devices address many of the shortcomings existing with conventional gesture recognition systems and devices. For example, using the gesture recognition systems of the present application, a 2D camera can be used to recognize depth and detect gestures that are made in 3D space by comparing a first boundary of a first image (i.e., an image of a beginning of a gesture) to a second boundary of a second, subsequent, image (i.e., an image of an ending of the gesture). Further, the presently described gesture recognition systems and devices do not require of 3D camera, therefore they have an overall reduced cost and complexity.
- As described below, in some embodiments, the gesture recognition systems of the present application may be employed to control or interact with one or more computing devices. In this regard, it will be appreciated that various disclosed examples may be implemented using electronic circuitry configured to perform one or more functions. For example, with some embodiments of the invention, the disclosed examples may be implemented using one or more application-specific integrated circuits (ASICs). More typically, however, components of various examples of the invention will be implemented using a programmable computing device executing firmware or software instructions, or by some combination of purpose-specific electronic circuitry and firmware or software instructions executing on a programmable computing device.
- Accordingly,
FIG. 1 shows one illustrative example of a computing device,computing device 101, which can be used to implement various embodiments of the invention.Computing device 101 may be incorporated within a variety of consumer electronic devices, such as personal media players, cellular phones, smart phones, personal data assistants, global positioning system devices, smart eyewear, smart watches, other computer wearables, and the like. - As seen in this figure,
computing device 101 has acomputing unit 103.Computing unit 103 typically includes aprocessing unit 105 and a system memory 107.Processing unit 105 may be any type of processing device for executing software instructions, but will conventionally be a microprocessor device. System memory 107 may include both a read-only memory (ROM) 109 and a random access memory (RAM) 111. As will be appreciated by those of ordinary skill in the art, both read-only memory (ROM) 109 and random access memory (RAM) 111 may store software instructions to be executed by processingunit 105. -
Processing unit 105 and system memory 107 are connected, either directly or indirectly, through abus 113 or alternate communication structure to one or more peripheral devices. For example, processingunit 105 or system memory 107 may be directly or indirectly connected to additional memory storage, such as ahard disk drive 117, a removable optical disk drive 119, a removable magnetic disk drive 125, and aflash memory card 127.Processing unit 105 and system memory 107 also may be directly or indirectly connected to one ormore input devices 121 and one ormore output devices 123. -
Output devices 123 may include, for example, a monitor display, an integrated display, television, printer, stereo, or speakers.Input devices 121 may include, for example, a keyboard, touch screen, a remote control pad, a pointing device (such as a mouse, touchpad, stylus, trackball, or joystick), a scanner, a microphone, or a camera. - More specifically, in the presently described gesture recognition systems,
input devices 121 include at least a 2D camera 122 (e.g., a light camera, a thermographic camera, etc.). In one example,2D camera 122 is a visible light digital camera. The visible light digital camera uses an optical system including a lens and a variable diaphragm to focus light onto an electronic image pickup device. The visible light digital camera can be a compact digital camera, a bridge camera, a mirrorless interchangeable-lens camera, a modular camera, a digital single-lens reflex camera, digital single-lens translucent camera, line-scan camera, etc. Further, it will be appreciated that the visible light digital camera can be any known or yet to be discovered visible light digital camera. - In one embodiment,
2D camera 122 is integral to thecomputing device 103. In another embodiment,2D camera 122 is remote of thecomputing device 103. - As mentioned above,
2D camera 122 can additionally or alternatively be a thermographic camera or infrared (IR) camera. The IR camera can detect heat radiation in a way similar to the way an ordinary camera detects visible light. This makes IR cameras useful for gesture recognition in “normal light”, “low light”, and/or “no light” conditions. The IR camera can include cooled infrared photodetectors (e.g. indium antimonide, indium arsenide, mercury cadmium telluride, lead sulfide, lead selenide, etc.) and/or uncooled infrared photodetectors (e.g., vanadium oxide, lanthanum barium manganite, amorphous silicon, lead zirconate titanate, lanthanum doped lead zirconate titanate, lead scandium tantalate, lean lanthanum titanate, lead titanate, lead zinc niobate, lead strontium titanate, barium strontium titanate, antimony sulfoiodide, polyvinylidene difluoride, etc.). Further, it will be appreciated that the IR camera can be any known or yet to be discovered thermographic camera. - Returning to
FIG. 1 ,computing unit 103 can be directly or indirectly connected to one ormore network interfaces 115 for communicating with a network. This type ofnetwork interface 115, also sometimes referred to as a network adapter or network interface card (NIC), translates data and control signals fromcomputing unit 103 into network messages according to one or more communication protocols, such as the Transmission Control Protocol (TCP), the Internet Protocol (IP), and the User Datagram Protocol (UDP). These protocols are well known in the art, and thus will not be discussed here in more detail. Aninterface 115 may employ any suitable connection agent for connecting to a network, including, for example, a wireless transceiver, a power line adapter, a modem, or an Ethernet connection. - It should be appreciated that, in addition to the input, output and storage peripheral devices specifically listed above, the computing device may be connected to a variety of other peripheral devices, including some that may perform input, output and storage functions, or some combination thereof. For example, the
computing device 101 may be connected to a digital music player, such as an IPOD® brand digital music player or iOS or Android based smartphone. As known in the art, this type of digital music player can serve as both an output device for a computing device (e.g., outputting music from a sound file or pictures from an image file) and a storage device. - In addition to a digital music player,
computing device 101 may be connected to or otherwise include one or more other peripheral devices. In one example,computing device 101 may be connected to or otherwise include a telephone. The telephone may be, for example, a wireless “smart phone,” such as those featuring the Android or iOS operating systems. As known in the art, this type of telephone communicates through a wireless network using radio frequency transmissions. In addition to simple communication functionality; a “smart phone” may also provide a user with one or more data management functions, such as sending, receiving and viewing electronic messages (e.g., electronic mail messages, SMS text messages, etc.), recording or playing back sound files, recording or playing back image files (e.g., still picture or moving video image files), viewing and editing files with text (e.g., Microsoft Word or Excel files, or Adobe Acrobat files), etc. Because of the data management capability of this type of telephone, a user may connect the telephone withcomputing device 101 so that their data maintained may be synchronized. - In another example,
computing device 101 may be connected to or otherwise include an eyewear article (such aseyewear article 302 shown inFIG. 3 ). The eyewear article may be, for example, a “smart” eyewear article, such as a wearable computing device like Google® Glass. - The “smart” eyewear technologies are particularly suited to the display of “augmented reality” displays. “Augmented reality” displays comprise a computer generated graphical display laid over a portion of a user's or mobile device's natural field of vision. These “augmented reality” displays allow a user to view computer generated images including data related to objects in their natural field of vision. Augmented reality displays may include any display including both natural and computer generated elements.
- Of course, still other peripheral devices may be included with or otherwise connected to a
computing device 101 of the type illustrated inFIG. 1 , as is well known in the art. In some cases, a peripheral device may be permanently or semi-permanently connected tocomputing unit 103. For example, with many computing devices, computingunit 103,hard disk drive 117, removable optical disk drive 119 and a display are semi-permanently encased in a single housing. - Still other peripheral devices may be removably connected to
computing device 101, however.Computing device 101 may include, for example, one or more communication ports through which a peripheral device can be connected to computing unit 103 (either directly or indirectly through bus 113). These communication ports may thus include a parallel bus port or a serial bus port, such as a serial bus port using the Universal Serial Bus (USB) standard or the IEEE 1394 High Speed Serial Bus standard (e.g., a Firewire port). Alternately or additionally,computing device 101 may include a wireless data “port,” such as a Bluetooth® interface, a Wi-Fi interface, an infrared data port, or the like. - It will be appreciated that a computing device employed according various examples of the invention may include more components than computing
device 101 illustrated inFIG. 1 , fewer components than computingdevice 101, or a different combination of components than computingdevice 101. Some implementations of the invention, for example, may employ one or more computing devices that are intended to have a very specific functionality, such as a digital music player or server computer. These computing devices may thus omit unnecessary peripherals, such as thenetwork interface 115, removable optical disk drive 119, printers, scanners, external hard drives, etc. Some implementations of the invention may alternately or additionally employ computing devices that are intended to be capable of a wide variety of functions, such as a desktop or laptop personal computer. These computing devices may have any combination of peripheral devices or additional components as desired. - In many examples, computing devices may comprise mobile electronic devices, such as smart phones, smart glasses, tablet computers, or portable music players, often operating the iOS, Symbian, Windows-based (including Windows Mobile and Windows 8), or Android operating systems.
- With reference to
FIG. 2 , an exemplary computing device,mobile device 200, may include a processor unit 203 (e.g., CPU) configured to execute instructions and to carry out operations associated with the mobile device. For example, using instructions retrieved from memory, the controller may control the reception and manipulation of input and output data between components of the mobile device. The controller can be implemented on a single chip, multiple chips or multiple electrical components. For example, various architectures can be used for the controller, including dedicated or embedded processor, single purpose processor, controller, ASIC, etc. By way of example, the controller may include microprocessors, DSP, A/D converters, D/A converters, compression, decompression, etc. - In most cases, the controller together with an operating system operates to execute computer code and produce and use data. The operating system may correspond to well-known operating systems such iOS, Symbian, Windows-based (including Windows Mobile and Windows 8), or Android operating systems, or alternatively to special purpose operating system, such as those used for limited purpose appliance-type devices. The operating system, other computer code and data may reside within a
system memory 207 that is operatively coupled to the controller.System memory 207 generally provides a place to store computer code and data that are used by the mobile device. By way of example,system memory 207 may include read-only memory (ROM) 209, random-access memory (RAM) 211. Further,system memory 207 may retrieve data fromstorage units 294, which may include a hard disk drive, flash memory, etc. In conjunction withsystem memory 207,storage units 294 may include a removable storage device such as an optical disc player that receives and plays DVDs, or card slots for receiving mediums such as memory cards (or memory sticks). -
Mobile device 200 also includes input devices 221 that are operatively coupled toprocessor unit 203. Input devices 221 are configured to transfer data from the outside world intomobile device 200. As shown, input devices 221 may correspond to both data entry mechanisms and data capture mechanisms. In particular, input devices 221 may includetouch sensing devices 232 such as touch screens, touch pads and touch sensing surfaces, mechanical actuators 234 such as button or wheels or hold switches,motion sensing devices 236 such as accelerometers,location detecting devices 238 such as global positioning satellite receivers, WiFi based location detection functionality, or cellular radio based location detection functionality, force sensing devices 240 such as force sensitive displays and housings,image sensors 242 such as light cameras and/or IR cameras, and microphones 244. Input devices 221 may also include a clickable display actuator. - More specifically, in the presently described gesture recognition systems, input devices 221 include at least a 2D camera 243 (one of image sensing devices 242). 2D camera 243 can be a visible light camera and/or a thermographic camera, such as those described above in reference to
2D camera 122. Accordingly, 2D camera 243 has the same functions and capabilities as those described above in reference to2D camera 122. - Returning to
FIG. 2 ,mobile device 200 also includes various output devices 223 that are operatively coupled toprocessor unit 203. Output devices 233 are configured to transfer data frommobile device 200 to the outside world. Output devices 233 may include adisplay unit 292 such as an LCD, speakers or jacks, audio/tactile feedback devices, light indicators, and the like. -
Mobile device 200 also includesvarious communication devices 246 that are operatively coupled to the controller.Communication devices 246 may, for example, include both an I/O connection 247 that may be wired or wirelessly connected to selected devices such as through IR, USB, or Firewire protocols, a globalpositioning satellite receiver 248, and aradio receiver 250 which may be configured to communicate over wireless phone and data connections.Communication devices 246 may also include anetwork interface 252 configured to communicate with a computer network through various means which may include wireless connectivity to a local wireless network, a wireless data connection to a cellular data network, a wired connection to a local or wide area computer network, or other suitable means for transmitting data over a computer network. -
Mobile device 200 also includes a battery 254 and possibly a charging system. Battery 254 may be charged through a transformer and power cord or through a host device or through a docking station. In the cases of the docking station, the charging may be transmitted through electrical ports or possibly through an inductance charging means that does not require a physical electrical connection to be made. - The various aspects, features, embodiments or implementations described above can be used alone or in various combinations with the gesture recognition methods disclosed herein. The methods disclosed herein can be implemented by software, hardware or a combination of hardware and software. The methods can also be embodied as computer readable code on a computer readable medium (e.g. a non-transitory computer readable-storage medium). The computer readable medium is any data storage device that can store data which can thereafter be read by a computer system, including both transfer and non-transfer devices as defined above. Examples of the computer readable medium include read-only memory, random access memory, CD-ROMs, flash memory cards, DVDs, magnetic tape, optical data storage devices, and carrier waves. The computer readable medium can also be distributed over network-coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- Turning now to
FIGS. 3-4B example gesture recognition systems are shown and described. As depicted inFIG. 3 , a first example of a gesture recognition system,gesture recognition system 300, is shown implemented aneyewear article 302.Eyewear article 302 is a “smart” eyewear article, such as those described above in reference toFIGS. 1 and 2 . Accordingly,eyewear article 302 includes aframe 304 for supporting a computing device 306 (such as computing device 101) including at least aprocessor 308 andmemory 310 in data communication with animage generator 312 and a 2D camera 314. Image generator is configured to display and/or project an image into the view of a user wearingeyewear article 302, creating an augmented reality view. - 2D camera 314 can be any of the cameras described above in reference to
2D camera 122. 2D camera 314 is configured to detect agesture 316 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera). In the present example,gesture 316 is an open hand gesture; however, it will be appreciated that 2D camera 314 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.). A gesture may comprise a movement from an initial gesture position to a subsequent gesture positions. As used herein, a gesture position is a particular orientation of a body part of a person. It will be further appreciated thatgesture 316 and/or any other gesture detected by 2D camera 314 can be a gesture made by a user (i.e., a wearer of the eye wear article) or a gesture made by another person. - A second example of a gesture recognition system,
gesture recognition system 400, is shown inFIG. 4A and will now be described.Gesture recognition system 400 includes many similar or identical features togesture recognition system 300. Thus, for the sake of brevity, each feature ofgesture recognition system 400 will not be redundantly explained. Rather, key distinctions betweengesture recognition system 400 andgesture recognition system 300 will be described in detail and the reader should reference the discussion above for features substantially similar between the gesture recognition systems. - As can be seen in
FIG. 4A ,gesture recognition system 400 is implemented in amobile computing device 402 including a2D camera 414 in data communication with a computing unit (not specifically shown) of the mobile device for detecting a gesture 416. In the present example,mobile device 402 is a smart phone. It will be appreciated that in other examplesmobile device 402 can be any of the mobile devices described above in reference to mobile device 200 (shown inFIG. 2 ). -
2D camera 414 can be any of the cameras described above in reference to2D camera 122.2D camera 414 is configured to detect a gesture 416 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera). In the present example, gesture 416 is an open hand gesture; however, it will be appreciated that2D camera 414 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.). - A third example of a gesture recognition system,
gesture recognition system 500, is shown inFIG. 4B and will now be described.Gesture recognition system 500 includes many similar or identical features togesture recognition systems gesture recognition system 500 will not be redundantly explained. Rather, key distinctions betweengesture recognition system 500 andgesture recognition systems - As can be seen in
FIG. 4B ,gesture recognition system 500 is implemented in acomputing device 502 including a2D camera 514 in data communication with a processor and memory of the computing device (not specifically shown) for detecting a gesture 516. In the present example,computer device 502 is a laptop computer. It will be appreciated that in otherexamples computing device 502 can be any of the mobile devices described above in reference to computing device 101 (shown inFIG. 1 ). -
2D camera 514 can be any of the cameras described above in reference to2D camera 122.2D camera 514 is configured to detect a gesture 516 that changes in depth relative to the camera (i.e., moves away from the camera or moves toward the camera). In the present example, gesture 516 is an open hand gesture; however, it will be appreciated that2D camera 514 can detect a variety of other hand gestures (e.g., closed hand, open hand, swipe right, swipe left, swipe forward, swipe backward, etc.) and/or a variety of gestures (e.g., wink of eye, blink of eyes, head movements up, down, right, and/or left, etc.). - Turning now to
FIGS. 5A-6B , example camera views and boundaries as detected and calculated by a camera in the above described systems (e.g.,cameras FIG. 5A shows camera view 600 of a first example gesture made by a user, closed hand gesture 616 (i.e., a fist).Closed hand gesture 616 is recognized and identified as a “closed hand command” by a system in data communication with the camera. In one specific example, a “closed hand command” is a command to select/grab an image on a screen and/or a virtual image. In another specific example, a “closed hand command” is a command to capture an image. In even another specific example, a “closed hand command” is a command to select and/or move forward through a series of screens and/or modes. Further, movement ofgesture 616 is tracked by the system via the collected camera images. - In the example of camera view 600, a first boundary 618 is generated and/or calculated when the user's hand is in an initial gesture position. A
second boundary 620 is generated when the user's hand is a subsequent gesture position. - Thus, in this example,
gesture 616 is tracked as it moves away from the camera. In other words,gesture 616 is a rearward moving gesture. The movement ofgesture 616 is recognized and identified by the system and a command is sent to the image generator to execute the command. In one specific example, a rearward movement triggers a command to decrease a size of a virtual image in an augmented reality view (i.e., a “zoom out command”). In other embodiments, a rearward movement may trigger a command to adjust the volume up, adjust the volume down, scroll up, scroll down, turn on, turn off, open an application, or close an application, among others. -
FIG. 5B depicts a camera view of a second example gesture made by a user, an open hand gesture 716 (i.e., an open palm). Open hand gesture 716 is recognized and identified as an “open hand command” by a system in data communication with the camera. In one specific example, a “open hand command” is a command to select/grab an image on a screen and/or a virtual image. In another specific example, an “open hand command” is a command to select and/or move backward through a series of screens and/or modes. Further, movement of gesture 716 is tracked by the system via the collected camera images. - In the example of camera view 700, a
first boundary 718 is generated and/or calculated when the user's hand is in an initial gesture position. Asecond boundary 720 is generated when the user's hand is a first subsequent gesture position, and athird boundary 722 is generated when a user's hand is in a second subsequent gesture position (i.e., a position after the first subsequent gesture position). - Thus, in this example, gesture 716 is tracked as it toward the camera. In other words, gesture 716 is a forward moving gesture. The movement of gesture 716 is recognized and identified by the system and a command is sent to the image generator to execute the command. In one specific example, a forward movement is a command to increase a size of a virtual image in an augmented reality view (i.e., a “zoom in command”). It will be appreciated that a forward movement can be associated with a different command (i.e., a turn off command, a turn on command, etc.).
-
FIGS. 6A-6C , show overlaid successive camera views 800, 900, and 1000, respectively. Each of these views shows a closed hand gesture moving away from the camera (i.e., a rearward moving gesture). In the example ofFIG. 6A , three successive boundaries are calculated, boundaries 818, 820, and 822 for aclosed hand gesture 816. In the example ofFIG. 6B , two successive boundaries,boundaries closed hand gesture 916. In the example ofFIG. 6C , three successive boundaries,boundaries closed hand gesture 1016. In the example ofFIG. 6C ,gesture 1018 is a rearward and rightward moving gesture. In this example, the rearward and rightward moving gesture can include an additional or alternative command. For example, in an augmented reality display a rearward and rightward gesture can be a “zoom out” and “move right” command for movement of a virtual image. - It will be appreciated that different hand signs (e.g. open hand, closed hand, etc.) can be recognized and identified as different objects by a system in data communication with a camera. The change in depth (e.g., rearward movement, forward movement, etc.) is recognized when the same hand sign is detected in successive camera frames with a changing size. Thus, in one embodiment, the
computing device 103 is configured to identify a first object in a first image and second object in a second image. The first object may be indicative of an initial gesture position. For example, the first object may be a hand sign, or a portion of a hand sign. The second object may be indicative of a subsequent gesture position. For example, the second object may be the same hand sign, or portion thereof, however the second object may be a different size than the first object. - As soon as a different hand sign/gesture is detected, the depth gesture that was in progress can be considered completed. Thus, in some embodiments, after identifying a first initial gesture position, and then identifying a second initial gesture position, the
computing device 103 is configured to terminate any command associated with the first initial gesture position. - A boundary (e.g.,
boundaries - Depth is calculated by comparing the relative widths and/or heights of the two or more bounding regions. In some instances, relative width or height is used depending on whether the hand position being used for the gesture is bigger horizontally or vertically. When a subsequent bounding region is bigger in whichever dimension is being used for the comparison (e.g., height, width, circumference, and/or area) than an initial bounding region, the hand is considered to have moved closer to the camera (i.e., a forward moving gesture). When a subsequent bounding region is smaller than the initial bounding region, the hand is considered to have moved farther from the camera (i.e., a rearward moving gesture).
- The magnitude of the depth change may be quantified, via
computing unit 103, by scaling the difference in width and/or height by an application- and/or device-specific constant. Thus, the magnitude of the change in depth may be quantified. In this regard, a magnitude may be associated with a gesture triggered command. For example, a gesture comprising a change in depth of 2 ft. may be converted, viacomputing unit 103, into a command to decrease the size of an image on a display unit (i.e., “zoom out”) by a factor of 200%. In another example, a gesture comprising a change in depth of 1 ft. may be converted, viacomputing unit 103, into a command to decrease the size of an image on a display unit by a factor of 100%. As can be appreciated, a magnitude may be associated with any of the commands discussed above. - Optionally, the scaling constant can also change dynamically based on the speed of the gesture. For example, the scaling constant can be changed dynamically by dividing the magnitude by the time difference between the two or more bounding regions, which would cause the depth change magnitude to be bigger when the gesture is performed at a faster speed.
- The disclosure above encompasses multiple distinct inventions with independent utility. While each of these inventions has been disclosed in a particular form, the specific embodiments disclosed and illustrated above are not to be considered in a limiting sense as numerous variations are possible. The subject matter of the inventions includes all novel and non-obvious combinations and subcombinations of the various elements, features, functions and/or properties disclosed above and inherent to those skilled in the art pertaining to such inventions. Where the disclosure or subsequently filed claims recite “a” element, “a first” element, or any such equivalent term, the disclosure or claims should be understood to incorporate one or more such elements, neither requiring nor excluding two or more such elements.
- Applicant(s) reserves the right to submit claims directed to combinations and subcombinations of the disclosed inventions that are believed to be novel and non-obvious. Inventions embodied in other combinations and subcombinations of features, functions, elements and/or properties may be claimed through amendment of those claims or presentation of new claims in the present application or in a related application. Such amended or new claims, whether they are directed to the same invention or a different invention and whether they are different, broader, narrower or equal in scope to the original claims, are to be considered within the subject matter of the inventions described herein.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/646,555 US20170316261A1 (en) | 2014-07-11 | 2017-07-11 | Systems and metohds of gesture recognition |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462023667P | 2014-07-11 | 2014-07-11 | |
US14/796,944 US9734391B2 (en) | 2014-07-11 | 2015-07-10 | Systems and methods of gesture recognition |
US15/646,555 US20170316261A1 (en) | 2014-07-11 | 2017-07-11 | Systems and metohds of gesture recognition |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/796,944 Continuation US9734391B2 (en) | 2014-07-11 | 2015-07-10 | Systems and methods of gesture recognition |
Publications (1)
Publication Number | Publication Date |
---|---|
US20170316261A1 true US20170316261A1 (en) | 2017-11-02 |
Family
ID=55067807
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/796,944 Active - Reinstated US9734391B2 (en) | 2014-07-11 | 2015-07-10 | Systems and methods of gesture recognition |
US15/646,555 Abandoned US20170316261A1 (en) | 2014-07-11 | 2017-07-11 | Systems and metohds of gesture recognition |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/796,944 Active - Reinstated US9734391B2 (en) | 2014-07-11 | 2015-07-10 | Systems and methods of gesture recognition |
Country Status (1)
Country | Link |
---|---|
US (2) | US9734391B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013207528A1 (en) * | 2013-04-25 | 2014-10-30 | Bayerische Motoren Werke Aktiengesellschaft | A method for interacting with an object displayed on a data goggle |
US9734391B2 (en) * | 2014-07-11 | 2017-08-15 | Ryan Fink | Systems and methods of gesture recognition |
CN106873776B (en) * | 2017-01-16 | 2019-08-23 | 广东美的制冷设备有限公司 | Recognition methods, identification device and air conditioner |
CN108733205B (en) * | 2017-04-20 | 2021-07-13 | 奥克斯空调股份有限公司 | Gesture image acquisition equipment and method |
WO2022260682A1 (en) * | 2021-06-11 | 2022-12-15 | Hewlett-Packard Development Company, L.P. | Camera power state controls |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140157209A1 (en) * | 2012-12-03 | 2014-06-05 | Google Inc. | System and method for detecting gestures |
US20140204015A1 (en) * | 2013-01-23 | 2014-07-24 | Wistron Corporation | Gesture recognition module and gesture recognition method |
US20140325373A1 (en) * | 2009-04-02 | 2014-10-30 | Oblong Industries, Inc. | Operating environment with gestural control and multiple client devices, displays, and users |
US20160012281A1 (en) * | 2014-07-11 | 2016-01-14 | Ryan Fink | Systems and methods of gesture recognition |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7606411B2 (en) * | 2006-10-05 | 2009-10-20 | The United States Of America As Represented By The Secretary Of The Navy | Robotic gesture recognition system |
US8553931B2 (en) * | 2009-02-11 | 2013-10-08 | Samsung Electronics Co., Ltd. | System and method for adaptively defining a region of interest for motion analysis in digital video |
US9189068B2 (en) * | 2011-03-14 | 2015-11-17 | Lg Electronics Inc. | Apparatus and a method for gesture recognition |
JP5845002B2 (en) * | 2011-06-07 | 2016-01-20 | ソニー株式会社 | Image processing apparatus and method, and program |
EP2602692A1 (en) * | 2011-12-05 | 2013-06-12 | Alcatel Lucent | Method for recognizing gestures and gesture detector |
DE102013109862A1 (en) * | 2012-09-10 | 2014-03-13 | Electronics And Telecommunications Research Institute | Device and method for user connection and terminal that uses the same |
JP6121534B2 (en) * | 2013-08-02 | 2017-04-26 | 三菱電機株式会社 | Gesture determination device and method, gesture operation device, program, and recording medium |
US9501138B2 (en) * | 2014-05-05 | 2016-11-22 | Aquifi, Inc. | Systems and methods for remapping three-dimensional gestures onto a finite-size two-dimensional surface |
-
2015
- 2015-07-10 US US14/796,944 patent/US9734391B2/en active Active - Reinstated
-
2017
- 2017-07-11 US US15/646,555 patent/US20170316261A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140325373A1 (en) * | 2009-04-02 | 2014-10-30 | Oblong Industries, Inc. | Operating environment with gestural control and multiple client devices, displays, and users |
US20140157209A1 (en) * | 2012-12-03 | 2014-06-05 | Google Inc. | System and method for detecting gestures |
US20140204015A1 (en) * | 2013-01-23 | 2014-07-24 | Wistron Corporation | Gesture recognition module and gesture recognition method |
US20160012281A1 (en) * | 2014-07-11 | 2016-01-14 | Ryan Fink | Systems and methods of gesture recognition |
Also Published As
Publication number | Publication date |
---|---|
US9734391B2 (en) | 2017-08-15 |
US20160012281A1 (en) | 2016-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240391824A1 (en) | Methods for Camera Movement Compensation | |
US10701273B1 (en) | User terminal apparatus and control method thereof | |
US10962809B1 (en) | Eyewear device with finger activated touch sensor | |
US10999480B2 (en) | Methods for camera movement compensation | |
CN113220139B (en) | Method for controlling display of large-screen equipment, mobile terminal and first system | |
KR102458344B1 (en) | Method and apparatus for changing focus of camera | |
US20170316261A1 (en) | Systems and metohds of gesture recognition | |
KR102114377B1 (en) | Method for previewing images captured by electronic device and the electronic device therefor | |
CN114746831A (en) | Electronic device for providing augmented reality service and operation method thereof | |
KR20190071839A (en) | Virtual reality experience sharing | |
KR20170010588A (en) | Image capturing apparatus and method for the same | |
KR102308201B1 (en) | User terminal apparatus and control method thereof | |
CN108495028A (en) | A camera focusing method, device and mobile terminal | |
US11284003B2 (en) | User terminal apparatus and control method thereof | |
US10270963B2 (en) | Angle switching method and apparatus for image captured in electronic terminal | |
US9990043B2 (en) | Gesture recognition systems and devices for low and no light conditions | |
CN111368268A (en) | User identification method, user identification device, storage medium and head-mounted device | |
CN116325711A (en) | Image capture eyewear with context-based recipients to automatically send images | |
CN117130472B (en) | Virtual space operation guide display method, mobile device and system | |
CN117130471B (en) | Human-computer interaction method, electronic equipment and system | |
CN112738332A (en) | Electronic equipment interaction method and electronic equipment | |
US20230143443A1 (en) | Systems and methods of fusing computer-generated predicted image frames with captured images frames to create a high-dynamic-range video having a high number of frames per second | |
CN117131888A (en) | Method, electronic equipment and system for automatically scanning virtual space two-dimensional code | |
WO2023081440A1 (en) | Systems and methods of fusing computer-generated predicted image frames with captured images frames to create a high- dynamic-range video having a high number of frames per second | |
CN116939094A (en) | Method, device and system for predicting user intention |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: COTA CAPITAL MASTER FUND, L.P., AS COLLATERAL AGEN Free format text: SECURITY INTEREST;ASSIGNOR:ATHEER, INC.;REEL/FRAME:048154/0759 Effective date: 20181119 Owner name: COTA CAPITAL MASTER FUND, L.P., AS COLLATERAL AGENT, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:ATHEER, INC.;REEL/FRAME:048154/0759 Effective date: 20181119 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |
|
AS | Assignment |
Owner name: ATHEER, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FINK, RYAN;PHELPS, RYAN;PECK, GARY;SIGNING DATES FROM 20220109 TO 20220111;REEL/FRAME:058637/0447 |
|
AS | Assignment |
Owner name: WEST TEXAS TECHNOLOGY PARTNERS, LLC, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ATHEER, INC.;REEL/FRAME:058962/0067 Effective date: 20220130 |