IP Library Granted Patent US 11,069,148
Granted Patent B2
US 11,069,148 · App. 16/258,430 · Granted Jul 20, 2021

Visualization of reconstructed handstate information

Inventors: Tudor Giurgica-Tiron (Stanford, CA); Adam Berenzweig (Brooklyn, NY); Attila Maczak (Brooklyn, NY); Michael Astolfi (Astoria, NY); Mason Remaley (Santa Cruz, CA)
Assignee: Facebook Technologies, LLC
G06T19/20G06F3/014G06F3/015G06F3/016G06F3/017G06N7/005G06N20/10G06T15/005G06T2219/2012
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,069,148
App. No.
16/258,430
Granted
Jul 20, 2021
Kind
B2
Abstract

Method and apparatus for rendering a visual representation based on a musculoskeletal representation. The method comprises updating the musculoskeletal representation based, at least in part, on a plurality of neuromuscular signals recorded from a user, wherein the musculoskeletal representation is updated based at least in part on: position information describing a spatial relationship between two or more connected segments of the musculoskeletal representation, and force information describing a force exerted by at least one segment of the musculoskeletal representation, and rendering, via a user interface, the visual representation based on the updated musculoskeletal representation, wherein the visual representation includes a visual indication of the position information and a visual indication of the force information.

Claims (64)

1. A computerized system comprising:

at least one computer processor programmed to:

generate a musculoskeletal representation based, at least in part, on a first plurality of neuromuscular signals recorded using one or more sensors attached to a user's body, wherein the musculoskeletal representation is generated based at least in part on:

position information describing a spatial relationship between two or more connected segments of the musculoskeletal representation, wherein the position information is determined based, at least in part, on the first plurality of neuromuscular signals, and

force information describing a first amount of force exerted by at least one segment of the musculoskeletal representation, wherein the force information is determined based, at least in part, on the first plurality of neuromuscular signals,

wherein a first portion of the user's body has at least one of the one or more sensors attached thereto and wherein a second portion of the user's body lacks an attached sensor, and

wherein a handstate of the second portion of the user's body having no sensor attached is predicted using the position information and force information from the one or more sensors on the first portion of the user's body and further based on one or more constraints indicating how the first and second portions of the user's body are connected;

determine that at least an identified portion of the handstate represents a specific type of gesture, the determining including reducing a dimensionality associated with the generated musculoskeletal representation to reduce latency upon rendering, wherein reducing the dimensionality is performed by a statistical model configured to select an appropriate sub-manifold of the generated musculoskeletal representation; and

render, via a user interface, a visual representation based on the generated musculoskeletal representation, the generated musculoskeletal representation including the first and second portions of the user's body, wherein the visual representation includes a visual indication of the position information and a visual indication of the force information, wherein upon determining that that the identified portion of the handstate represents the specified type of gesture, the specified type of gesture is rendered with a higher level of fidelity that is to be used with gestures of the specified type.

2. The computerized system of claim 1 , wherein the at least one computer processor is further programmed to:

update the musculoskeletal representation based, at least in part, on a second plurality of neuromuscular signals recorded from the one or more sensors attached to the user's body, wherein updating the musculoskeletal representation comprises updating the position information and the force information, wherein the updated force information describes a second amount of force exerted by the at least one segment of the musculoskeletal representation; and

update in real time the visual representation based on the updated musculoskeletal representation, wherein updating the visual representation comprises updating the visual indication of the force information based on the updated force information,

wherein updating the visual indication of the force information comprises changing a color of a portion of the visual representation corresponding to the at least one segment of the updated musculoskeletal representation to indicate the updated force information.

3. The computerized system of claim 2 , wherein changing the color comprises changing a hue of the color for the portion of the visual representation corresponding to the at least one segment, and wherein the hue is indicative of the second amount of force exerted by the at least one segment.

4. The computerized system of claim 2 , wherein updating the visual indication of the force information comprises changing a scale or size of a portion of the visual representation corresponding to the at least one segment of the updated musculoskeletal representation to indicate the updated force information.

5. The computerized system of claim 2 , wherein updating the visual indication of the force information comprises applying at least one visual element to a portion of the visual representation corresponding to the at least one segment of the updated musculoskeletal representation to indicate the updated force information.

6. The computerized system of claim 5 , wherein a change in a characteristic of the at least one visual element is indicative of the second amount of force exerted by the at least one segment.

7. The computerized system of claim 2 , wherein updating the visual indication of the force information comprises increasing or decreasing a brightness of a portion of the visual representation corresponding to the at least one segment of the updated musculoskeletal representation to indicate the updated force information.

8. The computerized system of claim 7 , wherein a degree of increase or decrease in the brightness is indicative of the second amount of force exerted by the at least one segment.

9. The computerized system of claim 2 , wherein the at least one computer processor is further programmed to:

output a sound representation indicative of the updated force information associated with the updated musculoskeletal representation.

10. The computerized system of claim 2 , wherein the at least one computer processor is further programmed to:

execute a computer application that provides a virtual reality environment; and

update in real time the visual representation in the virtual reality environment, wherein updating the visual representation further comprises updating the visual indication of the position information and the visual indication of the force information.

11. The computerized system of claim 10 , wherein the virtual reality environment comprises a virtual object, and wherein updating the visual representation comprises updating the visual representation such that a hand interacts with the virtual object within the virtual reality environment.

12. The computerized system of claim 11 , wherein updating the visual indication of the force information comprises changing an appearance or dimension of the virtual object, wherein a degree of change of the virtual object indicates the second amount of force exerted by the at least one segment when interacting with the virtual object within the virtual reality environment.

13. The computerized system of claim 12 , wherein interacting with the virtual object comprises an action selected from the group consisting of grasping the virtual object, dropping the virtual object, pushing the virtual object, throwing the virtual object, pulling the virtual object, opening the virtual object, and closing the virtual object.

14. The computerized system of claim 10 , wherein the virtual reality environment comprises a shared virtual reality environment, and wherein the at least one computer processor is further programmed to provide the updated visual representation to a third-party participating in the shared virtual reality environment.

15. The computerized system of claim 14 , wherein providing the updated visual representation comprises providing the updated visual indication of the position information and the updated visual indication of the force information.

16. The computerized system of claim 1 , wherein the at least one computer processor is further programmed to:

provide feedback regarding the first amount of force and/or the second amount of force exerted by the at least one segment of the musculoskeletal representation.

17. The computerized system of claim 16 , wherein providing feedback comprises providing haptic feedback indicative of the first amount of force and/or the second amount of force exerted by the at least one segment.

18. The computerized system of claim 16 , wherein providing feedback comprises providing feedback to a user in a virtual reality environment.

19. The computerized system of claim 16 , wherein providing feedback comprises providing feedback to a third-party in a shared virtual reality environment.

20. A method comprising:

generating the musculoskeletal representation based, at least in part, on a plurality of neuromuscular signals recorded using one or more sensors attached to a user's body, wherein the musculoskeletal representation is generated based at least in part on:

position information describing a spatial relationship between two or more connected segments of the musculoskeletal representation, wherein the position information is determined based, at least in part, on the plurality of neuromuscular signals, and

force information describing a first amount of force exerted by at least one segment of the musculoskeletal representation, wherein the force information is determined based, at least in part, on the plurality of neuromuscular signals,

wherein a first portion of the user's body has at least one of the one or more sensors attached thereto and wherein a second portion of the user's body lacks an attached sensor, and

wherein a handstate of the second portion of the user's body having no sensor attached is predicted using the position information and force information from the one or more sensors on the first portion of the user's body and further based on one or more constraints indicating how the first and second portions of the user's body are connected;

determining that at least an identified portion of the handstate represents a specific type of gesture, the determining including reducing a dimensionality associated with the generated musculoskeletal representation to reduce latency upon rendering, wherein reducing the dimensionality is performed by a statistical model configured to select an appropriate sub- manifold of the generated musculoskeletal representation; and

rendering, via a user interface, the visual representation based on the generated musculoskeletal representation, the generated musculoskeletal representation including the first and second portions of the user's body, wherein the visual representation includes a visual indication of the position information and a visual indication of the force information, wherein upon determining that that the identified portion of the handstate represents the specified type of gesture, the specified type of gesture is rendered with a higher level of fidelity that is to be used with gestures of the specified type.

21. The method of claim 20 , further comprising:

updating in real time the visual representation in a virtual reality environment, wherein updating the visual representation further comprises updating the visual indication of the position information and the visual indication of the force information.

22. The method of claim 21 , wherein the virtual reality environment comprises a shared virtual reality environment, and wherein the method further comprises providing the updated visual representation to a third-party participating in the shared virtual reality environment.

23. The method of claim 22 , wherein providing the updated visual representation comprises providing the updated visual indication of the position information and the updated visual indication of the force information.

24. The method of claim 20 , further comprising:

providing feedback regarding the first amount of force and/or the second amount of force exerted by the at least one segment of the musculoskeletal representation.

25. The method of claim 24 , wherein providing feedback comprises providing haptic feedback indicative of the first amount of force and/or the second amount of force exerted by the at least one segment.

26. The method of claim 24 , wherein providing feedback comprises providing feedback to a user in a virtual reality environment or providing feedback to a third-party in a shared virtual reality environment.

27. A non-transitory computer-readable medium encoded with a plurality of instructions that, when executed by at least one computer processor performs a method of:

generating a musculoskeletal representation based, at least in part, on a plurality of neuromuscular signals recorded using one or more sensors attached to a user's body, wherein the musculoskeletal representation is generated based at least in part on:

position information describing a spatial relationship between two or more connected segments of the musculoskeletal representation, wherein the position information is determined based, at least in part, on the plurality of neuromuscular signals, and

force information describing a first amount of force exerted by at least one segment of the musculoskeletal representation, wherein the force information is determined based, at least in part, on the plurality of neuromuscular signals,

wherein a first portion of the user's body has at least one of the one or more sensors attached thereto and wherein a second portion of the user's body lacks an attached sensor, and

wherein a handstate of the second portion of the user's body having no sensor attached is predicted using the position information and force information from the one or more sensors on the first portion of the user's body and further based on one or more constraints indicating how the first and second portions of the user's body are connected;

determining that at least an identified portion of the handstate represents a specific type of gesture, the determining including reducing a dimensionality associated with the generated musculoskeletal representation to reduce latency upon rendering, wherein reducing the dimensionality is performed by a statistical model configured to select an appropriate sub-manifold of the generated musculoskeletal representation; and

rendering, via a user interface, a visual representation based on the generated musculoskeletal representation, the generated musculoskeletal representation including the first and second portions of the user's body, wherein the visual representation includes a visual indication of the position information and a visual indication of the force information, wherein upon determining that that the identified portion of the handstate represents the specified type of gesture, the specified type of gesture is rendered with a higher level of fidelity that is to be used with gestures of the specified type.

28. The non-transitory computer-readable medium of claim 27 , wherein the method further comprises:

updating in real time the visual representation in a virtual reality environment, wherein updating the visual representation further comprises updating the visual indication of the position information and the visual indication of the force information.

29. The non-transitory computer-readable medium of claim 28 , wherein the virtual reality environment comprises a shared virtual reality environment, and wherein the method further comprises providing the updated visual representation to a third-party participating in the shared virtual reality environment.

30. The computerized system of claim 1 , wherein:

the at least one segment of the musculoskeletal representation comprises a first segment and a second segment, and

the musculoskeletal representation is generated based on force information describing the first amount of force and a second amount of force exerted by the first segment and a third amount of force exerted by the second segment.

Assignments (6)
CHANGE OF NAME Recorded May 26, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060199/0876 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE WAS ERRONEOUSLY FILED AS FACEBOOK TECHNOLOGIES, INC. PREVIOUSLY RECORDED ON REEL 051649 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 5, 2020
From: CTRL-LABS CORPORATION
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 053200/0321 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA PREVIOUSLY RECORDED AT REEL: 051649 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 10, 2020
From: CTRL-LABS CORPORATION
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 051867/0136 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: CTRL-LABS CORPORATION
To: FACEBOOK TECHNOLOGIES, INC.
Reel/Frame 051653/0927 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2020
From: CTRL-LABS CORPORATION
To: FACEBOOK TECHNOLOGIES, INC.
Reel/Frame 051649/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2019
From: GIURGICA-TIRON, TUDOR; BERENZWEIG, ADAM; MACZAK, ATTILA; ASTOLFI, MICHAEL; REMALEY, MASON
To: CTRL-LABS CORPORATION
Reel/Frame 049915/0035 →
Cited By (1)
US 12,429,947