IP Library Granted Patent US 9,741,136
Granted Patent B2
US 9,741,136 · App. 15/387,353 · Granted Aug 22, 2017

Systems and methods of object shape and position determination in three-dimensional (3D) space

Inventor: David Holz (San Francisco, CA)
Assignee: Leap Motion, Inc.
G06T7/70G06F3/017G06K9/00201G06K9/00355G06K9/00375H04N7/183G06T2207/10016G06T2207/30196
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 9,741,136
App. No.
15/387,353
Granted
Aug 22, 2017
Kind
B2
Abstract

Methods and systems for capturing motion and/or determining the shapes and positions of one or more objects in 3D space utilize cross-sections thereof. In various embodiments, images of the cross-sections are captured using a camera based on edge points thereof.

Claims (57)

1. A system of identifying a position and a shape of a portion of an object in a three-dimensional (3D) space, the system comprising:

one or more processors coupled to a memory, the memory loaded with computer instructions that, when executed on the one or more processors, implement a method including:

capturing, with a single camera having a particular vantage point, two or more images generated by casting an output from at least one source onto the portion of the object;

analyzing the two or more images captured by the camera from the particular vantage point to computationally represent the portion of the object, as captured, as one or more mathematically represented 3D surfaces, each 3D surface corresponding to a cross-section of the portion of the object, based at least in part on a plurality of edge points of the portion of the object in the image, tangent lines extending from the camera to at least two edge points of the plurality of edge points and a centerline corresponding to the tangent lines; and

reconstructing the position of and the shape fitting at least the portion of the object in the 3D space based at least in part on the plurality of edge points and the centerline.

2. The system of claim 1 , wherein at least a portion of at least one of the 3D surfaces is determined from a correlation of slices that represent all or part of the object.

3. The system of claim 2 , wherein at least one slice of the slices is tilted with respect to one or more other slices of the slices.

4. The system of claim 2 , wherein the correlating comprises defining a 3D surface that best fits the slices.

5. The system of claim 1 , wherein:

the analyzing comprises determining the centerline by identifying diagonal line segments that connect opposite corners of an intersection region formed from an intersection of two pairs of intersecting tangent lines selected from the tangent lines, identifying midpoints of the diagonal line segments, and identifying a line segment joining the midpoints as the centerline; and

the reconstructing comprises fitting at least one of the 3D surfaces to a point at which at least one of the tangent lines is substantially tangent to the object, as represented, and positioned about the centerline.

6. The system of claim 5 , wherein the reconstructing further comprises stacking two or more of the 3D surfaces.

7. The system of claim 1 , wherein at least one of the 3D surfaces approximates a contour of the cross-section of the portion of the object.

8. The system of claim 1 , wherein at least one of the 3D surfaces is symmetrical in at least one plane.

9. The system of claim 8 , wherein at least one of the 3D surfaces is selected from a group consisting of ellipsoids, hyperboloids, cylinders and other quadratic surfaces.

10. The system of claim 1 , wherein the analyzing comprises revising characteristic parameters of at least one of the 3D surfaces based upon results of the analyzing as conducted on images obtained at a different time.

11. The system of claim 1 , wherein:

at least one of the 3D surfaces is defined according to characteristic parameters defining characteristics of the at least one of the 3D surfaces; and

the analyzing comprises assuming a characteristic parameter of the at least one of the 3D surfaces.

12. The system of claim 11 , wherein the assuming is conducted according to a type of the object.

13. The system of claim 1 , wherein:

at least one of the 3D surfaces is defined according to characteristic parameters defining characteristics of the at least one of the 3D surfaces; and

the analyzing comprises assuming a typical characteristic parameter of the at least one of the 3D surfaces.

14. The system of claim 1 , wherein the object comprises multiple members.

15. The system of claim 14 , wherein one or more of the multiple members is separately articulating.

16. The system of claim 15 , wherein spatial relationships between multiple members change as a subject comprising the multiple members moves.

17. The system of claim 1 , wherein the portion of the object is selected from a group consisting essentially of fingers, finger segments, thumb segments, hands, palms, arms, legs, a core of a person and a trunk of a person.

18. The system of claim 1 , wherein the analyzing comprises analyzing additional images and determining an object motion of the object.

19. The system of claim 18 , wherein the object motion determines a pose.

20. The system of claim 18 , wherein the determining of the object motion of the object comprises determining a movement of digits indicated by a sequence of models captured across time.

21. The system of claim 20 , wherein the object is any type of object.

22. The system of claim 20 ,

wherein the object is a hand, and

wherein motion of the hand as captured is used to control equipment.

23. The system of claim 1 , wherein the capturing comprises capturing images of a viewed portion of the object.

24. The system of claim 1 , wherein the method further comprises analyzing one or more of the 3D surfaces to produce a 3D model.

25. The system of claim 1 , wherein the method further comprises refining a 3D model by correlating a cross-section of an object portion represented by a first surface with a cross-section of at least one different object portion represented by at least one different 3D surface.

26. The system of claim 1 , wherein the method further comprises refining a 3D model by informing results of the analyzing with results of such analyzing as conducted on images obtained at a different time and correspondingly modifying the 3D model.

27. The system of claim 1 , wherein the method further comprises refining a position of an object portion based upon informing results of the analyzing with results of such analyzing as conducted on images obtained at a different time.

28. The system of claim 1 , wherein the method further comprises determining constraints on at least one of a number and position of one or more object portions according an object type.

29. The system of claim 1 , wherein the method further comprises resolving an at least partially occluded object portion by conducting spatial correlations across surfaces.

30. The system of claim 1 , wherein the method further comprises:

capturing one or more additional image sets of two or more images; and

resolving an at least partially occluded object portion by conducting temporal correlations across image sets.

31. The system of claim 1 , wherein the method further comprises resolving an at least partially occluded object portion by applying physical constraints of an object type.

32. The system of claim 1 , wherein the method further comprises refining a 3D model formed by the reconstructing.

33. The system of claim 32 , wherein the 3D model represents a generic hand, the refining further comprising texture mapping details from image capture onto a generic hand model.

34. The system of claim 32 , wherein the method further comprises morphing the 3D model according to detected object orientation and motion.

35. The system of claim 32 , wherein the refining includes refining the 3D model based at least in part upon one of continuity in motion and continuity in deformation.

36. The system of claim 1 , wherein the method further comprises refining a 3D model formed by the reconstructing by comparing a reconstructed model of the portion of the object to object types in a library of object types and characteristic parameters for objects in one or more possible poses; and assigning matching object types to the 3D model when a match based on characteristic parameters is found.

37. The system of claim 36 , wherein the object type includes a hand, the pose includes fingers extended and palm facing the camera, and the characteristic parameters include five fingers.

38. The system of claim 36 , wherein the refining of the 3D model further comprises applying a constraint to the 3D model based on characteristics of the object type.

39. The system of claim 38 , wherein the object type includes a hand, and the constraint includes positions and angles of fingers relative to each other and to a palm portion of a hand.

40. A non-transitory computer readable medium storing a plurality of instructions for programming one or more processors to identify a position and a shape of a portion of an object in a three-dimensional (3D) space, the instructions, when executed on the one or more processors, implementing a method including:

capturing, with a single camera having a particular vantage point, two or more images generated by casting an output from at least one source onto the portion of the object;

analyzing the two or more images captured by the camera from the particular vantage point to computationally represent the portion of the object, as captured, as one or more mathematically represented 3D surfaces, each 3D surface corresponding to a cross-section of the portion of the object, based at least in part on a plurality of edge points of the portion of the object in the image, tangent lines extending from the camera to at least two edge points of the plurality of edge points and a centerline corresponding to the tangent lines; and

reconstructing the position of and the shape fitting at least the portion of the object in the 3D space based at least in part on the plurality of edge points and the centerline.

Assignments (13)
SECURITY INTEREST Recorded Apr 6, 2026
From: SIM IP HXR LLC
To: UNITY MASTER LLC SERIES XIX
Reel/Frame 075365/0907 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2026
From: TRIPLEPOINT CAPITAL LLC
To: ULTRAHAPTICS IP TWO LIMITED
Reel/Frame 075288/0632 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2026
From: ULTRAHAPTICS IP TWO LIMITED
To: SIM IP HXR LLC
Reel/Frame 075127/0488 →
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 →
SECURITY INTEREST Recorded Jun 10, 2020
From: LMI LIQUIDATING CO., LLC
To: TRIPLEPOINT CAPITAL LLC
Reel/Frame 052902/0571 →
SECURITY INTEREST Recorded Jun 5, 2020
From: ULTRAHAPTICS IP TWO LIMITED
To: LMI LIQUIDATING CO., LLC
Reel/Frame 052848/0240 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2020
From: LMI LIQUIDATING CO., LLC.
To: ULTRAHAPTICS IP TWO LIMITED
Reel/Frame 051580/0165 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2020
From: LEAP MOTION, INC.
To: LMI LIQUIDATING CO., LLC.
Reel/Frame 052914/0871 →
RELEASE OF SECURITY INTEREST Recorded Jul 31, 2019
From: HAYNES BEFFEL WOLFELD LLP
To: LEAP MOTION, INC.
Reel/Frame 049926/0631 →
RELEASE OF SECURITY INTEREST Recorded May 31, 2019
From: TRIPLEPOINT CAPITAL LLC
To: LEAP MOTION, INC.
Reel/Frame 049337/0130 →
SECURITY INTEREST Recorded Apr 11, 2019
From: LEAP MOTION, INC.
To: HAYNES BEFFEL WOLFELD LLP
Reel/Frame 048919/0109 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2018
From: HOLZ, DAVID
To: LEAP MOTION, INC.
Reel/Frame 045564/0623 →
SECURITY INTEREST Recorded Dec 22, 2017
From: LEAP MOTION, INC.
To: TRIPLEPOINT CAPITAL LLC
Reel/Frame 044469/0592 →
Continuity (9)
Continuation 14710499 · May 12, 2015
Continuation 14106140 · Dec 13, 2013
Continuation 13742953 · Jan 16, 2013
Continuation In Part 13724357 · Dec 21, 2012
Continuation In Part 13414485 · Mar 7, 2012
Continuation In Part 13414485 · Mar 7, 2012
Provisional Application 61587554 · Jan 17, 2012
Provisional Application 61724091 · Nov 8, 2012
Related Publication 20170103545A1 · Apr 13, 2017