IP Library › Granted Patent US 12,249,015
Granted Patent B2
US 12,249,015 · App. 17/906,855 · Granted Mar 11, 2025

Joint rotation inferences based on inverse kinematics

Inventors: Dongwook Cho (Pierrfonds, CA); Colin Joseph Brown (Montreal, CA)
Assignee: Hinge Health, Inc.
G06T13/40G06N3/08G06T7/70G06T2207/20081G06T2207/20084G06T2207/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 12,249,015
App. No.
17/906,855
Granted
Mar 11, 2025
Kind
B2
Abstract

An example of an apparatus to infer joint rotations and positions is provided. The apparatus includes a communications interface to receive raw data from an external source. The raw data includes a first joint position and a second joint position of an input skeleton. In addition, the apparatus includes a memory storage unit to store the raw data. Furthermore, the apparatus includes a pre-processing engine to generate normalized data from the raw data. The normalized data is to be stored in the memory storage unit. Also, the apparatus includes an inverse kinematics engine to apply a neural network to infer a joint rotation from the normalized data. The neural network is to use historical data. Training data used to train the neural network includes positional noise.

Claims (35)

1. A method comprising:

receiving, via a communications interface, raw data that includes a first joint position and a second joint position of an input skeleton;

storing the raw data in a memory storage unit;

generating normalized data from the raw data by normalizing the first joint position and the second joint position to conform with a template skeleton;

storing the normalized data in the memory storage unit;

applying, to the normalized data, a neural network with an inverse kinematics engine to infer a joint rotation, wherein the neural network is to use historical data, and wherein training data used to train the neural network includes positional noise; and

adjusting a visual representation of the input skeleton based on the joint rotation.

2. The method of claim 1 , wherein generating the normalized data comprises normalizing a length between the first joint position and the second joint position of the input skeleton.

3. The method of claim 2 , wherein normalizing the length comprises scaling the length between the first joint position and the second joint position based on the template skeleton.

4. The method of claim 1 , wherein the template skeleton is posed in a T-pose.

5. The method of claim 1 , further comprising generating the raw data from image data with a pose estimation engine.

6. The method of claim 5 , further comprising capturing the image data with a camera system.

7. The method of claim 1 , further comprising generating the training data.

8. The method of claim 7 , wherein generating the training data comprises adding the positional noise to sample data.

9. The method of claim 1 , further comprising storing the historical data in the memory storage unit.

10. A non-transitory computer readable medium encoded with codes, wherein the codes are to direct a processor to:

receive raw data that includes a first joint position and a second joint position of an input skeleton;

store the raw data in a memory storage unit;

generate normalized data from the raw data by normalizing the first joint position and the second joint position to conform with a template skeleton;

store the normalized data in the memory storage unit;

apply, to the normalized data, a neural network with an inverse kinematics engine to infer a joint rotation, wherein the neural network is to use historical data, and wherein training data used to train the neural network includes positional noise; and

adjust a visual representation of the input skeleton based on the joint rotation.

11. An apparatus comprising:

a communications interface at which to receive raw data from an external source, wherein the raw data includes a first joint position and a second joint position of an input skeleton;

a memory storage unit in which to store the raw data;

a pre-processing engine that is configured to:

generate normalized data from the raw data by normalizing the first joint position and the second joint position to conform with a template skeleton, and

store the normalized data in the memory storage unit;

an inverse kinematics engine that is configured to apply, to the normalized data, a neural network that uses historical data to infer a joint rotation, wherein training data used to train the neural network includes positional noise; and

an animation engine that is configured to:

receive the joint rotation inferred by the inverse kinematics engine, and

adjust a visual representation of the input skeleton based on the joint rotation.

12. The apparatus of claim 11 , wherein the pre-processing engine is to normalize a length between the first joint position and the second joint position of the input skeleton based on the template skeleton.

13. The apparatus of claim 11 , wherein the template skeleton is posed in a T-pose.

14. The apparatus of claim 11 , further comprising a pose estimation engine connected to the communications interface, wherein the pose estimation engine is configured to generate the raw data from image data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2022
From: CHO, DONGWOOK; BROWN, COLIN JOSEPH
To: HINGE HEALTH, INC.
Reel/Frame 062075/0852 →
Continuity (1)
Related Publication 20230154091A1 · May 18, 2023
References Cited (21)
US 5371834A · Tawel · 1994 [cited by applicant]
US 10388053B1 · Carter, Jr. · 2019 [cited by examiner]
US 20100208038A1 · Kutliroff et al. · 2010 [cited by applicant]
US 20130028517A1 · Yoo · 2013 [cited by examiner]
US 20160267699A1 · Borke · 2016 [cited by examiner]
US 20180020978A1 · Kaifosh · 2018 [cited by examiner]
US 20210390355A1 · Xu · 2021 [cited by examiner]
US 20230042756A1 · Song · 2023 [cited by examiner]
JP 2014522035A · 2014 [cited by applicant]
JP 2018520444A · 2018 [cited by applicant]
JP 2019040421A · 2019 [cited by applicant]
WO 2013015528A1 · 2013 [cited by applicant]
“Style-based inverse kinematics” Keith Grochow et al., ACM SIGGRAPH 2004, pp. 522-531. [cited by examiner]
“Recurrent neural network”, Wikipedia, the free encyclopedia, online document, accessed Nov. 11, 2021 via: https://web.archive.org/web/20190711195429/https://en.wikipedia.org/wiki/Recurrent_neural_network, XP055856722, … [cited by applicant]
Kenwright, Ben , “Neural Network in Combination with a Differential Evolutionary Training Algorithm for Addressing Ambiguous Articulated Inverse Kinematic Problems”, Proceedings of the 35th IEEE/ACM International Confer… [cited by applicant]
Yenamandra, Tarun , et al., “Convex Optimisation for Inverse Kinematics”, 2019 International Conference on 3D Vision (3DV), IEEE, XP033653349, Sep. 16, 2019, pp. 318-327. [cited by applicant]
Ito, Masato , et al., “On-line imitative interaction with a humanoid robot using a mirror neuron model”, IEEE International Conference on Robotics and Automation, Apr. 26, 2004, pp. 1071-1076. [cited by applicant]
Mizuno, Katsuya, et al., “A System for Estimating Human Movement for Supporting 3D Character Animation Creation”, Information Processing Society of Japan, Research Report vol. 2008, No. 80, Aug. 15, 2008. [cited by applicant]
Grochow et al., “Style-Based Inverse Kinematics,” [retrieved on Oct. 22, 2020 from: <https://dl.acm.org/doi/pdf/10.I 145/1186562.1015755>; SIGGRAPH 2004, pp. 522-531, Aug. 2004. [cited by applicant]
“Recurrent neural network,” from Wikipedia, the free encyclopedia, retrieved on Oct. 23, 2020 from Internet Archive: <https:/ /web.archive.org/web/20190711195429/https://en.wikipedia.org/wiki/Recurrent_ neural_ network>… [cited by applicant]
Kanazawa et al., “End-to-end Recovery of Human Shape and Pose,” Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), retrieved on Oct. 27, 2020 from: <https:/ /ieeexplore.ieee.org/s… [cited by applicant]