IP Library Granted Patent US 12,236,528
Granted Patent B2
US 12,236,528 · App. 17/958,089 · Granted Feb 25, 2025

Determining spans and span lengths of a control object in a free space gesture control environment

Inventors: Kevin A. Horowitz (San Francisco, CA); David S. Holz (San Francisco, CA)
Assignee: Ultrahaptics IP Two Limited
G06T17/10G06F3/011G06F3/017G06F3/0487G06F3/0488G06T7/11G06T7/136G06T7/194G06T7/251G06T7/593G06T17/00G06T17/20G06T19/006G06T19/20G06V10/752G06V10/757G06V40/20G06V40/28H04N13/275A61B2017/00207G06F2203/04808G06T3/40G06T7/13G06T19/00G06T2200/08G06T2207/10028G06T2207/20048G06T2219/00G06T2219/2004G06T2219/2016G06T2219/2021G06V10/7515G06V40/11
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 12,236,528
App. No.
17/958,089
Granted
Feb 25, 2025
Kind
B2
Abstract

Free space machine interface and control can be facilitated by predictive entities useful in interpreting a control object's position and/or motion (including objects having one or more articulating members, i.e., humans and/or animals and/or machines). Predictive entities can be driven using motion information captured using image information or the equivalents. Predictive information can be improved applying techniques for correlating with information from observations.

Claims (76)

1. A method of accurately capturing gestural motion of a control object in a three-dimensional (3D) sensory space, the method including:

determining observation information characterizing gestural motion of a control object in a three-dimensional (3D) sensory space from at least one image captured at time t 0 , the determining of the observation information including:

determining a normal for a first unmatched contour point from among a plurality of contour points identified with the control object;

identifying a second unmatched contour point from among the plurality of contour points by locating an unmatched contour point that is closest to the first unmatched contour point and is reachable by a line having a most opposite normal to the normal for the first unmatched contour point; and

including a shortest distance between the first unmatched contour point and the second unmatched contour point in the observation information;

constructing a 3D solid model to represent the control object by fitting one or more 3D solid subcomponents to a construct of the control object defined by the observation information based on the image captured at time t 0 ; and

responsive to modifications in the observation information based on another image captured at time t 1 , wherein the control object moved between t 0 and t 1 , improving conformance of the 3D solid model to the modifications in the observation information.

2. The method of claim 1 , wherein

the fitting of the one or more 3D solid subcomponents further includes

fitting a set of closed curves to at least a portion of a construct of the control object.

3. The method of claim 2 , wherein

the set of closed curves includes at least one of radial solids, capsuloids, spheres, ellipsoids, and hyperboloids.

4. The method of claim 1 , wherein

the fitting of the one or more 3D solid subcomponents further includes

fitting a set of capsuloids to at least a portion of construct of the control object.

5. The method of claim 1 , wherein

the control object is a hand and the fitting the one or more 3D solid subcomponents further includes at least one of:

fitting capsuloids to finger portions of a construct of the control object; and

fitting radial solids to palm and/or wrist portions of the construct.

6. The method of claim 1 , wherein

the improving of the conformance of the 3D solid model includes altering the 3D solid subcomponents to conform to at least one of length, width, orientation, and arrangement of portions of a construct of the control object.

7. The method of claim 6 , wherein

the altering of the 3D solid subcomponents further includes

applying a transformation matrix to a plurality of points on the 3D solid subcomponents.

8. The method of claim 1 , wherein

the constructing of the 3D solid model further includes determining the 3D solid subcomponents from physical characteristics of a type of control object being observed.

9. The method of claim 8 , wherein

the control object is a hand and the physical characteristics of the hand include at least one of:

four fingers and a thumb of the hand;

a palm to which the fingers and the thumb are connected; and

positions and angles of the fingers and the thumb relative to each other and to the palm.

10. The method of claim 8 , wherein

the control object is a tool and the physical characteristics of the tool include at least one of:

length of the tool;

width of the tool; and

pointing direction vector of the tool.

11. The method of claim 1 , wherein

the control object is a hand and identified construct portions include at least one fingers, carpals, knuckles, palm, and wrist.

12. The method of claim 1 , further including

improving a 3D solid model's representation of the gestural motion by:

detecting conflicting attributes between adjacent 3D solid subcomponents; and

fitting, to the construct, 3D solid subcomponents with least conflicting attributes.

13. The method of claim 12 , further including:

ranking the 3D solid subcomponents with conflicting attributes based on a degree of conflict; and

presenting the ranked 3D solid subcomponents for selection.

14. The method of claim 1 , wherein

the first unmatched contour point is arbitrarily identified.

15. The method of claim 1 , wherein

the line is a convex curve line.

16. The method of claim 1 , wherein

a span is defined as a shortest convex curve between the first unmatched contour point and the second unmatched contour point.

17. The method of claim 1 , wherein

the normal for the first unmatched contour point is determined by:

identifying a set of contour points proximate to the first unmatched contour point, wherein at least two contour points included in the set of contour points are not co-linear; and

determining the normal by obtaining a cross product of the set of points.

18. The method of claim 1 , wherein

the normal for the first unmatched contour point is determined by:

identifying a set of contour points proximate to the first unmatched contour point;

defining a first vector by subtracting a first contour point in the set of contour points from a second contour point in the set of contour points;

applying a rotation matrix to rotate the first vector by 90 degrees away from a center of mass of the set of contour points; and

determining the rotated first vector to be the normal.

19. A non-transitory computer readable storage medium impressed with computer program instructions to accurately capture gestural motion of a control object in a three-dimensional (3D) sensory space, which computer program instructions, when executed on a processor, implement a method including:

determining observation information characterizing gestural motion of a control object in a three-dimensional (3D) sensory space from at least one image captured at time t 0 , the determining of the observation information including:

determining a normal for a first unmatched contour point from among a plurality of contour points identified with the control object;

identifying a second unmatched contour point from among the plurality of contour points by locating an unmatched contour point that is closest to the first unmatched contour point and is reachable by a line having a most opposite normal to the normal for the first unmatched contour point; and

including a shortest distance between the first unmatched contour point and the second unmatched contour point in the observation information;

constructing a 3D solid model to represent the control object by fitting one or more 3D solid subcomponents to a construct of the control object defined by the observation information based on the image captured at time t 0 ; and

responsive to modifications in the observation information based on another image captured at time t 1 , wherein the control object moved between t 0 and t 1 , improving conformance of the 3D solid model to the modifications in the observation information.

20. A system to accurately capture gestural motion of a control object in a three-dimensional (3D) sensory space, comprising:

a processor and a computer readable storage medium storing computer instructions configured to cause the processor to:

determine observation information characterizing gestural motion of a control object in a three-dimensional (3D) sensory space from at least one image captured at time t 0 , the determination of the observation information including:

determining a normal for a first unmatched contour point from among a plurality of contour points identified with the control object;

identifying a second unmatched contour point from among the plurality of contour points by locating an unmatched contour point that is closest to the first unmatched contour point and is reachable by a line having a most opposite normal to the normal for the first unmatched contour point; and

including a shortest distance between the first unmatched contour point and the second unmatched contour point in the observation information;

construct a 3D solid model to represent the control object by fitting one or more 3D solid subcomponents to a construct of the control object defined by the observation information based on the image captured at time t 0 ; and

responsive to modifications in the observation information based on another image captured at time t 1 , wherein the control object moved between t 0 and t 1 , improve conformance of the 3D solid model to the modifications in the observation information.

Assignments (6)
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/0545 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2026
From: ULTRAHAPTICS LIMITED; ULTRAHAPTICS IP LIMITED; ULTRAHAPTICS IP TWO LIMITED; ULTRALEAP LIMITED
To: SIM IP HXR LLC
Reel/Frame 074403/0573 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2023
From: HOROWITZ, KEVIN A.; HOLZ, DAVID S.
To: LEAP MOTION, INC.
Reel/Frame 064539/0226 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2023
From: LEAP MOTION, INC.
To: LMI LIQUIDATING CO. LLC
Reel/Frame 064539/0257 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2023
From: LMI LIQUIDATING CO. LLC
To: ULTRAHAPTICS IP TWO LIMITED
Reel/Frame 064539/0294 →