IP Library Granted Patent US 11,538,282
Granted Patent B2
US 11,538,282 · App. 16/529,632 · Granted Dec 27, 2022

Spatially consistent representation of hand motion

Inventors: Harpreet Singh Sawhney (Kirkland, WA); Ning Xu (Sammamish, WA)
Assignee: Microsoft Technology Licensing, LLC
G06V40/28G02B27/017G06V10/40G06V40/107
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,538,282
App. No.
16/529,632
Filed
Aug 1, 2019
Granted
Dec 27, 2022
Kind
B2
Art Unit
2621
USPC
345/156
Abstract

Examples are disclosed that relate to representing recorded hand motion. One example provides a computing device comprising a logic subsystem and a storage subsystem comprising instructions executable by the logic subsystem to receive a recorded representation of hand motion determined relative to a virtual model aligned to a first instance of an object, receive image data corresponding to an environment, and recognize a second instance of the object in the environment. The instructions are further executable to align the virtual model to the second instance of the object, and output a parametric representation of hand motion for display relative to the virtual model as aligned to the second instance of the object, such that the parametric representation is spatially consistent with the recorded representation of hand motion relative to the virtual model as aligned to the first instance of the object.

Claims (41)

1. A computing device, comprising:

a logic subsystem; and

a storage subsystem comprising instructions executable by the logic subsystem to:

receive a recorded representation of hand motion determined in a coordinate system of a virtual model aligned to a first object, the virtual model corresponding to the first object;

receive image data corresponding to an environment;

recognize a second object in the environment;

align the virtual model to the second object; and

based on the recorded representation of hand motion, output a parametric representation of hand motion for display in a coordinate system of the virtual model as aligned to the second object, such that the parametric representation of hand motion relative to the virtual model as aligned to the second object is spatially consistent with the recorded representation of hand motion relative to the virtual model as aligned to the first object, wherein the parametric representation includes a multi-dimensional vector, wherein each dimension of the multi-dimensional vector encodes an articulation of at least one of a plurality of hand joints.

2. The computing device of claim 1 , wherein the second object is recognized based on the virtual model.

3. The computing device of claim 1 , further comprising instructions executable to determine a pose of the second object.

4. The computing device of claim 3 , wherein the instructions executable to align the virtual model to the second object are executable to align a pose of the virtual model to the pose of the second object.

5. The computing device of claim 1 , wherein the recorded representation of hand motion is determined in the coordinate system of the virtual model.

6. The computing device of claim 1 , wherein the parametric representation of hand motion is output for display on a head-mounted display device.

7. The computing device of claim 6 , wherein the parametric representation of hand motion is output for display based on a head pose of a user of the head-mounted display device.

8. The computing device of claim 1 , wherein the instructions are further executable to maintain an alignment of the virtual model to the second object as the second object undergoes motion.

9. The computing device of claim 8 , wherein the motion includes motion of an articulable part of the second object.

10. The computing device of claim 8 , wherein the motion includes motion of a removable part of the second object.

11. The computing system of claim 1 , further comprising instructions executable to use the multi-dimensional vector to reproduce an overall pose of a hand.

12. A computing device, comprising:

a logic subsystem; and

a storage subsystem comprising instructions executable by the logic subsystem to:

receive image data corresponding to an environment;

recognize a first object in the environment;

receive a virtual model representing the first object;

align the virtual model to the first object and maintain such alignment;

receive a recording of hand motion;

based on the recording, determine a parametric representation of hand motion relative to the virtual model as aligned with the first object; and

configure the parametric representation of hand motion for display in a coordinate system of the virtual model as aligned to a second object, such that the parametric representation of hand motion relative to the virtual model as aligned to the second object is spatially consistent with the parametric representation of hand motion relative to the virtual model as aligned to the first object, wherein the parametric representation includes a multi-dimensional vector, wherein each dimension of the multi-dimensional vector encodes an articulation of at least one of a plurality of hand joints.

13. The computing device of claim 12 , wherein the first object is recognized based on the virtual model.

14. The computing device of claim 12 , further comprising instructions executable to determine a pose of the first object.

15. The computing device of claim 14 , wherein the instructions executable to align the virtual model to the first object are executable to align a pose of the virtual model to the pose of the first object.

16. The computing device of claim 12 , wherein the parametric representation of hand motion is determined in the coordinate system of the virtual model.

17. The computing device of claim 12 , further comprising instructions executable to output the parametric representation of hand motion for display at another computing device.

18. At a robotic device, a method of controlling a robot manipulator, comprising:

receiving a parametric representation of hand motion determined in a coordinate system of a virtual model aligned to a first object, the virtual model corresponding to the first object;

receiving image data corresponding to an environment;

recognizing a second object in the environment;

aligning the virtual model to the second object; and

based on the parametric representation of hand motion, determining a sequence of actions for performance, relative to the virtual model as aligned to the second object, by a manipulator of the robotic device, where the sequence of actions is spatially consistent with the parametric representation of hand motion relative to the virtual model as aligned to the first object, wherein the parametric representation includes a multi-dimensional vector, wherein each dimension of the multi-dimensional vector encodes an articulation of at least one of a plurality of hand joints.

19. The method of claim 18 , further comprising, for each action of the sequence of actions, generating one or more corresponding commands configured to cause the manipulator to perform the action.

20. The method of claim 19 , further comprising updating the one or more commands based on the image data to thereby align the manipulator to the second object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2019
From: SAWHNEY, HARPREET SINGH; XU, NING
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 049936/0956 →
Continuity (2)
Continuation In Part 16363964 · Mar 25, 2019
Related Publication 20200311397A1 · Oct 1, 2020