# US 2014/0191955 A1 · Efficient gesture processing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0191955 A1
- Document ID: US20140191955A1
- Status: Published application
- Kind: A1
- Application number: 14/205,210
- Filed: 2014-03-11
- Published: 2014-07-10
- Earliest claimed: 2010-07-13
- Assignees: Intel Corporation
- Inventors: Giuseppe RAFFA; Lama NACHMAN; Jinwon LEE
- Web page: https://patentgrep.com/patent/US20140191955A1

## CPC

- G06F 3/017: {Gesture based interaction, e.g. based on a set of recognized hand gestures (interaction based on gestures traced on a digitiser G06F3/04883)}
- G06F 1/1694: {the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer}
- G06F 3/0346: with detection of the device orientation or free movement in a three-dimensional [3D] space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
- G01C 19/00: Gyroscopes; Turn-sensitive devices using vibrating masses; Turn-sensitive devices without moving masses; Measuring angular rate using gyroscopic effects
- G01P 15/18: in two or more dimensions
- H04M 2250/12: including a sensor for measuring a physical value, e.g. temperature or motion
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G01P: MEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT (measuring or recording blood flow A61B5/02, A61B8/06; monitoring speed or deceleration of electrically-propelled vehicles B60L3/00; vehicle lighting systems adapted to indicate speed B60Q1/54; determining position or course in navigation, measuring ground distance in geodesy or surveying G01C; combined measuring devices for measuring two or more variables of movement G01C23/00; measuring velocity of sound G01H; measuring velocity of light G01J7/00; measuring direction or velocity of solid objects by reception or emission of radiowaves or other waves and based on propagation effects, e.g. Doppler effect, propagation time, direction of propagation, G01S; measuring speed of nuclear radiation G01T; measuring acceleration of gravity G01V; {measuring or recording the speed of trains B61L23/00; speed indicators incorporated in motor vehicles B60K35/00; measuring frequency or phase G01R; traffic control G08G})
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)

## Abstract

Embodiments of the invention describe a system to efficiently execute gesture recognition algorithms. Embodiments of the invention describe a power efficient staged gesture recognition pipeline including multimodal interaction detection, context based optimized recognition, and context based optimized training and continuous learning. Embodiments of the invention further describe a system to accommodate many types of algorithms depending on the type of gesture that is needed in any particular situation. Examples of recognition algorithms include but are not limited to, HMM for complex dynamic gestures (e.g. write a number in the air), Decision Trees (DT) for static poses, peak detection for coarse shake/whack gestures or inertial methods (INS) for pitch/roll detection.

## Claims

### Claim 1

At least one computer readable storage medium having instructions stored thereon that, when executed on a machine, cause the machine to:
receive data from a motion sensor;
select a subset of one or more gesture recognition algorithms from a plurality of gesture recognition algorithms based, at least in part, on an amplitude of the data; and
determine a gesture from the data based, at least in part, on applying the subset of gesture recognition algorithm(s) to the data.

### Claim 2 (depends on 1)

The at least one computer readable storage medium of claim 1, wherein the machine is to further:
determine an energy magnitude of the data based, at least in part, on the amplitude of the data.

### Claim 3

The at least one computer readable storage medium 2, wherein the machine is to select the subset of gesture recognition algorithm(s) based, at least in part, on a comparison of a total energy magnitude of the data with a total energy magnitude value associated with each of the plurality of gesture algorithms.

### Claim 4 (depends on 2)

The at least one computer readable storage medium of claim 2, wherein the machine is to select the subset of gesture recognition algorithm(s) based, at least in part, on a comparison of minimum/maximum energy magnitude values of the data with minimum/maximum energy magnitude values associated with each of the plurality of gesture algorithms.

### Claim 5 (depends on 1)

The at least one computer readable storage medium of claim 1, the machine to further:
determine a frequency spectrum of the data based, at least in part, on the amplitude of the data and a phase of the data.

### Claim 6 (depends on 5)

The at least one computer readable storage medium of claim 5, wherein the machine is to select the subset of gesture recognition algorithm(s) based, at least in part, on a comparison of the frequency spectrum of the data with one or more spectrum patterns associated with each of the plurality of gesture algorithms.

### Claim 7 (depends on 1)

The at least one computer readable storage medium of claim 1, wherein the motion sensor comprises at least one of an accelerometer or a gyroscope.

### Claim 8

A mobile computing device comprising:
a motion sensor;
a memory;
at least one processor;
an algorithm selection module, stored in the memory and executed via the at least one processor, to select a subset of one or more gesture recognition algorithms from a plurality of gesture recognition algorithms based, at least in part, on an amplitude of a data from the motion sensor; and
a gesture recognition module, stored in the memory and executed via the at least one processor, to determine a gesture from the data from the motion sensor based, at least in part, on applying the subset of gesture recognition algorithm(s) to the data from the motion sensor.

### Claim 9 (depends on 8)

The mobile computing device of claim 8, wherein the at least one processor comprises a low power processing unit to execute the algorithm selection module, and a main processing unit to execute the gesture recognition module.

### Claim 10 (depends on 8)

The mobile computing device of claim 8, wherein the algorithm selection module is to further:
determine an energy magnitude of the data from the motion sensor based, at least in part, on the amplitude of the data from the motion sensor.

### Claim 11 (depends on 10)

The mobile computing device of claim 10, wherein the algorithm selection module is to select the subset of gesture recognition algorithm(s) based, at least in part, on a comparison of a total energy magnitude of the data from the motion sensor with a total energy magnitude value associated with each of the plurality of gesture algorithms.

### Claim 12 (depends on 10)

The mobile computing device of claim 10, wherein the algorithm selection module is to select the subset of gesture recognition algorithm(s) based, at least in part, on a comparison of minimum/maximum energy magnitude values of the data from the motion sensor with minimum/maximum energy magnitude values associated with each of the plurality of gesture algorithms.

### Claim 13 (depends on 8)

The mobile computing device of claim 8, wherein the algorithm selection module is to further:
determine a frequency spectrum of the data from the motion sensor based, at least in part, on the amplitude of the data from the motion sensor and a phase of the data from the motion sensor.

### Claim 14 (depends on 13)

The mobile computing device of claim 13, wherein the algorithm selection module is to select the subset of gesture recognition algorithm(s) is based, at least in part, on a comparison of the frequency spectrum of the data from the motion sensor with one or more spectrum patterns associated with each of the plurality of gesture algorithms.

### Claim 15 (depends on 8)

The mobile computing device of claim 8, wherein the motion sensor comprises an accelerometer.

### Claim 16 (depends on 8)

The mobile computing device of claim 8, wherein the motion sensor comprises a gyroscope.

### Claim 17 (depends on 8)

The mobile computing device of claim 8, further comprising:
a wearable housing including the motion sensor, the at least one processor, and the memory.

### Claim 18

A machine-implemented method comprising:
receiving data from a motion sensor;
selecting a subset of one or more gesture recognition algorithms from a plurality of gesture recognition algorithms based, at least in part, on an amplitude of the data; and
determining a gesture from the data based, at least in part, on applying the subset of gesture recognition algorithm(s) to the data.

### Claim 19 (depends on 18)

The machine-implemented method of claim 18, further comprising:
determining an energy magnitude of the data based, at least in part, on the amplitude of the data; wherein selecting the subset of gesture recognition algorithm(s) is based, at least in part, on at least one of:
comparing a total energy magnitude of the data with a total energy magnitude value associated with each of the plurality of gesture algorithms; or
comparing minimum/maximum energy magnitude values of the data with minimum/maximum energy magnitude values associated with each of the plurality of gesture algorithms.

### Claim 20 (depends on 18)

The machine-implemented method of claim 18, further comprising:
determining a frequency spectrum of the data based, at least in part, on the amplitude of the data and a phase of the data; wherein selecting the subset of gesture recognition algorithm(s) is based, at least in part, on comparing the frequency spectrum of the data with one or more spectrum patterns associated with each of the plurality of gesture algorithms.
