IP Library Granted Patent US 11,099,653
Granted Patent B2
US 11,099,653 · App. 16/659,468 · Granted Aug 24, 2021

Machine responsiveness to dynamic user movements and gestures

Inventors: Michael Zagorsek (Yountville, CA); Avinash Dabir (San Francisco, CA); Paul Durdik (Foster City, CA); Keith Mertens (Oakland, CA)
Assignee: Ultrahaptics IP Two Limited
G06F3/017G06K9/00355G06K9/00382
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,099,653
App. No.
16/659,468
Granted
Aug 24, 2021
Kind
B2
Abstract

Methods and systems for processing an input are disclosed that detect a portion of a hand and/or other detectable object in a region of space monitored by a 3D sensor. The method further includes determining a zone corresponding to the region of space in which the portion of the hand or other detectable object was detected. Also, the method can include determining from the zone a correct way to interpret inputs made by a position, shape or a motion of the portion of the hand or other detectable object.

Claims (68)

1. A method of interacting with a machine using input gestures, the method comprising:

sensing, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

defining a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detecting, by the 3D sensor, a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving closer to or further away from the first user-specific virtual plane;

detecting, by the 3D sensor, a second finger state of the second finger relative to the second user-specific virtual plane;

interpreting the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpreting the second finger state as a second input gesture command to interact with a second functionality of the machine.

2. The method of claim 1 , further comprising interpreting the first input gesture command to be a pinch gesture command to zoom-in.

3. The method of claim 1 , further comprising interpreting the second input gesture command to be a spreading gesture command to zoom-out.

4. The method of claim 1 , further comprising interpreting the first input gesture command to be a pressure gesture command.

5. The method of claim 1 , further comprising determining, from the sensed positional information, a speed of the one or more fingers of the user and adjusting gesture-recognition sensitivity based on the determined speed.

6. The method of claim 1 , further comprising:

dynamically personalizing one or more planes by characterizing trajectories of user gestures as vectors in 3-dimensional space, using the vectors to determine a maximal depth from gestural movement along an axis extending from the user to a display; and

defining a thickness of a plane based upon the maximal depth.

7. The method of claim 6 , further comprising revising plane positions as more user movements are detected.

8. The method of claim 1 further comprising shifting a plane in space as the user changes position.

9. The method of claim 1 , further comprising determining a correct way to interpret an input detected by the 3D sensor including:

using the sensed positional information, determining, from a plurality of zones defined for the region, a zone in which the first finger is present at a time the first finger state is detected;

determining an active program and that the determined zone is a hover zone for the active program; and

interpreting a position or a motion of the first finger based on the active program and the hover zone.

10. The method of claim 1 , further comprising:

interpreting a motion of the first finger as one or more gestures; and

determining from the one or more gestures an input to at least one of (i) an application and (ii) an operating system.

11. A system for interacting with a machine using input gestures, including:

an image-capture device including at least one camera;

an image analyzer coupled to the at least one camera, the image analyzer being configured to:

sense, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

define a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detect a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving closer to or further away from the first user-specific virtual plane;

detect a second finger state of the second finger relative to the second user-specific virtual plane;

interpret the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpret the second finger state as a second input gesture command to interact with a second functionality of the machine.

12. A non-transitory computer-readable storage medium storing instructions for interacting with a machine using input gestures, the instructions, when executed by a processor, cause the processor to:

sense, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

define a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detect a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving closer to or further away from the first user-specific virtual plane;

detect a second finger state of the second finger relative to the second user-specific virtual plane;

interpret the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpret the second finger state as a second input gesture command to interact with a second functionality of the machine.

13. A method of interacting with a machine using input gestures, the method comprising:

sensing, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

defining a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detecting, by the 3D sensor, a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving on or against the first user-specific virtual plane;

detecting, by the 3D sensor, a second finger state of the second finger relative to the second user-specific virtual plane;

interpreting the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpreting the second finger state as a second input gesture command to interact with a second functionality of the machine.

14. A system for interacting with a machine using input gestures, including:

an image-capture device including at least one camera;

an image analyzer coupled to the at least one camera, the image analyzer being configured to:

sense, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

define a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detect a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving on or against the first user-specific virtual plane;

detect a second finger state of the second finger relative to the second user-specific virtual plane;

interpret the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpret the second finger state as a second input gesture command to interact with a second functionality of the machine.

15. A non-transitory computer-readable storage medium storing instructions for interacting with a machine using input gestures, the instructions, when executed by a processor, cause the processor to:

sense, using a 3D sensor, positional information of one or more fingers of a user in a region of space monitored by the 3D sensor;

define a first user-specific virtual plane in the space according to a sensed position of a first finger of the user;

defining a second user-specific virtual plane in the space according to a sensed position of a second finger of the user;

detect a first finger state of the first finger relative to the first user-specific virtual plane, the first finger state being one of the first finger moving on or against the first user-specific virtual plane;

detect a second finger state of the second finger relative to the second user-specific virtual plane;

interpret the first finger state as a first input gesture command to interact with a first functionality of the machine; and

interpret the second finger state as a second input gesture command to interact with a second functionality of the machine.

Assignments (5)
SECURITY INTEREST Recorded Apr 6, 2026
From: SIM IP HXR LLC
To: UNITY MASTER LLC SERIES XIX
Reel/Frame 075365/0907 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2026
From: ULTRAHAPTICS IP TWO LIMITED
To: SIM IP HXR LLC
Reel/Frame 075127/0793 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2021
From: ZAGORSEK, MICHAEL; DABIR, AVINASH; DURDIK, PAUL A.; MERTENS, KEITH
To: LEAP MOTION, INC.
Reel/Frame 056963/0601 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2021
From: LEAP MOTION, INC.
To: LMI LIQUIDATING CO. LLC
Reel/Frame 056964/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2021
From: LMI LIQUIDATING CO. LLC
To: ULTRAHAPTICS IP TWO LIMITED
Reel/Frame 056964/0174 →