# US 12,001,611 B2 · Tremor correction for gesture recognition

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

- Number: US 12,001,611 B2
- Document ID: US12001611B2
- Status: Granted
- Kind: B2
- Application number: 17/386,132
- Filed: 2021-07-27
- Published: 2022-04-28
- Granted: 2024-06-04
- Earliest claimed: 2016-02-08
- Assignees: Comcast Cable Communications, LLC
- Applicants: Comcast Cable Communications, LLC
- Inventors: Jeffrey Allen Hall; Edward David Monnerat
- Web page: https://patentgrep.com/patent/US12001611B2

## 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: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Motion detection computing devices may have difficulty determining precise motions of a user who suffers from unintended movement, such as tremors, associated with a physical or medical condition. Aspects described herein relate to motion compensation for detected motion input, e.g., 3D motion, from such users. As described herein, a system may detect the presence of rhythmic motion and/or other input characteristics within captured motion input from a user. The system may determine one or more filters to apply to the captured motion input based on the rhythmic motion, other input characteristics, and/or information in a user profile. The one or more filters may be applied to the captured motion input in order to suppress or minimize the effects of the rhythmic motion and/or other input characteristics thereby resulting in an enhanced user experience in an interactive system, such as a 3D, virtual and/or augmented reality environment.

## Claims

### Claim 1

A method comprising:
receiving, by a computing device, motion input obtained by one or more sensors;
based on a frequency of a gesture command being higher than a frequency of a tremor in the motion input, filtering the motion input to suppress the tremor and generate filtered motion input; and
based on comparing the filtered motion input with one or more frequencies of gesture commands associated with an application, sending, by the computing device, one or more user commands to the application.

### Claim 2 (depends on 1)

The method of claim 1, wherein the received motion input comprises three dimensional position data associated with one or more tracked objects.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining, based on frequencies of gesture commands associated with one or more applications, a filter for the motion input.

### Claim 4 (depends on 3)

The method of claim 3, wherein the filter comprises:
a first component to filter motion input below a first frequency; and
a second component to filter motion input within a range of frequencies.

### Claim 5 (depends on 1)

The method of claim 1, wherein the gesture command comprises a hand wave, and wherein a command of the one or more commands comprises an erasure command.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining, for one or more gesture commands associated with the application, a frequency of the one or more gesture commands.

### Claim 7

A method comprising:
receiving, by a computing device, motion input associated with a tracked object;
based on a frequency of a rhythmic gesture being higher than a frequency of a tremor in the motion input, filtering the motion input to suppress the tremor and generate filtered motion input; and
sending, by the computing device and based on the filtered motion input, one or more user commands to an application.

### Claim 8 (depends on 7)

The method of claim 7, wherein sending the one or more user commands further comprises:
comparing the filtered motion input with a gesture command associated with the application.

### Claim 9 (depends on 8)

The method of claim 8, wherein the gesture command comprises a command, of a plurality of commands associated with the application, having a highest correlation with the filtered motion input.

### Claim 10 (depends on 7)

The method of claim 7, further comprising:
applying a bias correction to the filtered motion input.

### Claim 11 (depends on 10)

The method of claim 10, further comprising:
determining a user bias associated with the filtered motion input based on an angular difference between the filtered motion input and a gesture command associated with the application.

### Claim 12 (depends on 7)

The method of claim 7, further comprising:
comparing, based on a motion type of the motion input, the filtered motion input to a gesture command associated with the application.

### Claim 13 (depends on 7)

The method of claim 7, further comprising:
determining a correlation value based on comparing the filtered motion input with a gesture command associated with the application.

### Claim 14

A method comprising:
receiving, by a computing device, motion input associated with a tracked object;
based on a frequency of a rhythmic gesture being higher than a frequency of a tremor in the motion input, filtering, via a first filter, the motion input to generate filtered motion input;
based on detecting residual rhythmic motion in the filtered motion input, filtering, via a second filter, the filtered motion input to suppress the residual rhythmic motion and generate a second filtered motion input; and
sending, by the computing device and based on the second filtered motion input, one or more user commands to an application.

### Claim 15 (depends on 14)

The method of claim 14, wherein sending the one or more user commands further comprises:
sending the second filtered motion input to the application.

### Claim 16 (depends on 14)

The method of claim 14, wherein the tracked object is associated with a touchscreen device.

### Claim 17 (depends on 14)

The method of claim 14, wherein the motion input comprises pressure data.

### Claim 18 (depends on 14)

The method of claim 14, further comprising:
determining a correlation value based on comparing the second filtered motion input with a gesture command associated with the application.

### Claim 19 (depends on 14)

The method of claim 14, wherein the first filter comprises:
a low-pass component; and
a bandpass component.

### Claim 20 (depends on 14)

The method of claim 14, further comprising:
detecting the tremor in the motion input based on a frequency of a periodic pattern in the motion input satisfying a temporal threshold and a frequency threshold.
