IP Library Granted Patent US 12,450,859
Granted Patent B2
US 12,450,859 · App. 17/852,175 · Granted Oct 21, 2025

Model fitting using keypoint regression

Inventors: Julien Pascal Christophe Valentin (Zurich, CH); Erroll William Wood (Cambridge, GB); Thomas Joseph Cashman (Cambridge, GB); Martin de La Gorce (Cambridge, GB); Tadas Baltrusaitis (Cambridge, GB); Daniel Stephen Wilde (Cambridge, GB); Jingjing Shen (Cambridge, GB); Matthew Alastair Johnson (Cambridge, GB); Charles Thomas Hewitt (Cambridge, GB); Nikola Milosavljevic (Belgrade, RS); Stephan Joachim Garbin (Cambridge, GB); Toby Sharp (Cambridge, GB); Ivan Stojiljkovic (Cambridge, GB)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06V10/25G06N3/08G06T7/344G06T7/73G06T17/00G06T19/20G06V10/82G06T2207/20081G06T2207/20084G06T2207/30201G06T2219/2004
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,450,859
App. No.
17/852,175
Granted
Oct 21, 2025
Kind
B2
Abstract

Keypoints are predicted in an image. Predictions are generated for each of the keypoints of an image as a 2D random variable, normally distributed with location (x, y) and standard deviation sigma. A neural network is trained to maximize a log-likelihood that samples from each of the predicted keypoints equal a ground truth. The trained neural network is used to predict keypoints of an image without generating a heatmap.

Claims (83)

1. A method for predicting keypoints by a computing system, the method comprising:

receiving, by the computing system, data indicative of a plurality of images;

generating, by the computing system, predictions for keypoints of the plurality of images as 2D random variables, normally distributed with location (x, y) and standard deviation sigma;

training, by the computing system, a neural network to maximize a log-likelihood that samples from each of the predicted keypoints equal a ground truth by minimizing a sum of Gaussian negative log likelihoods; wherein the training comprises introducing a conjugate prior of a Gaussian distribution of uncertainty values for the predicted keypoints;

using the trained neural network to predict keypoints of a 3D image without generating a heatmap; and

based on the predicted keypoints of the 3D image, outputting a fitted 3D model for rendering on a display device.

2. The method of claim 1 , further comprising fitting a parametric model to the predicted keypoints.

3. The method of claim 2 , wherein an energy function for fitting the parametric model comprises

E

(

Φ

;

L

)

=

E

landmarks

Data

term

+

E

identity

+

E

expression

+

E

joints

+

E

temporal

+

E

intersect

Regularizers

wherein E(Φ; L) comprises the energy function, E landmarks is a data term and remaining terms use prior knowledge to regularize the fit of the parametric model.

4. The method of claim 1 , wherein distribution of uncertainty values is influenced during the training by introducing a suitable prior.

5. The method of claim 1 , wherein the image is of an object for which an a-priori model is available, the method further comprising preprocessing the image by:

running a sliding window over the image;

measuring average keypoint confidence for each window of the sliding window;

if a window with a high average keypoint certainty is not found, determining that the object is not in the image; and

otherwise, taking the window which reported a highest average keypoint confidence to contain the object.

6. The method of claim 1 , wherein the image is input from one or more of regular color (RGB) cameras, depth cameras, IR sensors, head-mounted cameras, event cameras, or web cameras.

7. The method of claim 1 , wherein the method is performed in combination with a model fitter that predicts intrinsic camera parameters.

8. The method of claim 7 , wherein the model fitter is configured for a single view where uncertainty of each landmark is taken into account.

9. The method of claim 7 , wherein the model fitter is configured for multiple views.

10. A computing system for fitting a model using observation data, the computing system comprising:

one or more processors; and

a computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by the processor, cause the computing system to perform operations comprising:

receiving, by the computing system, data indicative of a plurality of images;

generating predictions for keypoints of the plurality of images as 2D random variables, normally distributed with location (x, y) and standard deviation sigma;

training a neural network to maximize a log-likelihood that samples from each predicted keypoint equal a ground truth by minimizing a sum of Gaussian negative log likelihoods; wherein the training comprises introducing a conjugate prior of a Gaussian distribution of uncertainty values for the predicted keypoints;

using the trained neural network to predict keypoints of a 3D image;

fitting a parametric model to the predicted keypoints; and

based on the predicted keypoints of the 3D image, outputting a fitted 3D model for rendering on a display device.

11. The computing system of claim 10 , wherein distribution of uncertainty values is influenced during the training by introducing a suitable prior.

12. The computing system of claim 10 , wherein the image is of an object, further comprising computer-executable instructions stored thereupon which, when executed by the processor, cause the computing system to perform operations for preprocessing the image, comprising:

running a sliding window over the image;

measuring average keypoint confidence for each window;

if a window with a high average keypoint certainty is not found, determining that the object is not in the image; and

otherwise, taking the window which reported the highest average keypoint confidence to contain the object.

13. The computing system of claim 10 , wherein the predicting and training is performed in combination with a model fitter that predicts intrinsic camera parameters.

14. The computing system of claim 13 , wherein the model fitter is configured for a single view where uncertainty of each landmark is taken into account.

15. The computing system of claim 10 , further comprising computer-executable instructions stored thereupon which, when executed by the processor, cause the computing system to perform operations comprising performing 3D reconstruction from multiple views from multiple cameras, where an uncertainty in each view is taken into account, and wherein extrinsic parameters of each camera are concurrently optimized.

16. The computer system of claim 15 , wherein the cameras are HMD cameras.

17. The computing system of claim 10 , computer-executable instructions stored thereupon which, when executed by the processor, cause the computing system to perform operations comprising using uncertainties of the neural network to estimate which parts of an object being tracked are visible.

18. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a processor of a computing device, cause the computing device to perform operations comprising:

receiving data indicative of a plurality of images;

generating predictions for keypoints of the plurality of images as 2D random variables, normally distributed with location (x, y) and standard deviation sigma;

training a neural network to maximize a log-likelihood that samples from each predicted keypoint equal a ground truth by minimizing a sum of Gaussian negative log likelihoods; wherein the training comprises introducing a conjugate prior of a Gaussian distribution of uncertainty values for the predicted keypoints;

using the trained neural network to predict keypoints of a 3D image;

fitting a parametric model to the predicted keypoints; and

based on the predicted keypoints of the 3D image, outputting a fitted 3D model for rendering on a display device.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the image is of an object for which an a-priori model is available, further comprising preprocessing the image by:

running a sliding window over the image;

measuring average keypoint confidence for each window of the sliding window;

if a window with a high average keypoint certainty is not found, determining that the object is not in the image; and

otherwise, taking the window which reported a highest average keypoint confidence to contain the object.

20. The non-transitory computer-readable storage medium of claim 18 , wherein the predicting and training is performed in combination with a model fitter that predicts intrinsic camera parameters.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2023
From: MICROSOFT RESEARCH LIMITED
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065141/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2023
From: VALENTIN, JULIEN PASCAL CHRISTOPHE; WOOD, ERROLL WILLIAM; CASHMAN, THOMAS JOSEPH; DE LA GORCE, MARTIN; BALTRUSAITIS, TADAS; WILDE, DANIEL STEPHEN; SHEN, JINGJING; JOHNSON, MATTHEW ALASTAIR; HEWITT, CHARLES THOMAS; MILOSAVLJEVIC, NIKOLA; GARBIN, STEPHEN JOACHIM; STOJILJKOVIC, IVAN
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065016/0258 →
EMPLOYMENT AGREEMENT Recorded Sep 22, 2023
From: SHARP, TOBY
To: MICROSOFT RESEARCH LIMITED
Reel/Frame 065019/0957 →
Continuity (2)
Provisional Application 63317436 · Mar 7, 2022
Related Publication 20230281863A1 · Sep 7, 2023
References Cited (30)
US 10019622B2 · Cao · 2018 [cited by examiner]
US 10902628B1 · Kharboutly · 2021 [cited by examiner]
US 10972719B1 · Menzel · 2021 [cited by applicant]
US 20080310759A1 · Liu · 2008 [cited by examiner]
US 20110299782A1 · Hamsici · 2011 [cited by examiner]
US 20190286885A1 · Liu · 2019 [cited by examiner]
US 20200272806A1 · Walker · 2020 [cited by examiner]
US 20210056293A1 · Yin · 2021 [cited by examiner]
US 20210287336A1 · Piadyk · 2021 [cited by examiner]
US 20230281863A1 · Valentin · 2023 [cited by examiner]
US 20230281945A1 · Cashman · 2023 [cited by examiner]
EP 2154631A2 · 2010 [cited by applicant]
EP 3901817A1 · 2021 [cited by applicant]
WO 2016026135A1 · 2016 [cited by applicant]
WO 2020108785A1 · 2020 [cited by applicant]
Peter A.N. Bosman, Negative Log-Likelihood And Statistical Hypothesis Testing, Aug. 2000, Utrecht University, pp. 1-17. [cited by examiner]
Arnab, et al., “Exploiting Temporal Context for 3D Human Pose Estimation in the Wild”, In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Jun. 15, 2019, pp. 3390-3399. [cited by applicant]
Bazargani, Hamid, “Real-Time Recognition of Planar Targets on Mobile Devices: A Framework for Fast and Robust Homography Estimation”, In Thesis submitted to the Faculty of Graduate and Postdoctoral Studies in Electrical… [cited by applicant]
Deng, et al., “RetinaFace: Single-shot Multi-level Face Localisation in the Wild”, In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Jun. 13, 2020, pp. 5202-5211. [cited by applicant]
“International Search Report and Written Opinion Issued in PCT Application No. PCT/US23/010526”, Mailed Date: May 9, 2023, 11 Pages. [cited by applicant]
“International Search Report and Written Opinion Issued in PCT Application No. PCT/US23/012557”, Mailed Date: Jun. 9, 2023, 10 Pages. [cited by applicant]
Prince, et al., “Tied Factor Analysis for Face Recognition across Large Pose Differences”, In Journal of IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 30, Issue 6, Jun. 1, 2008, pp. 970-984. [cited by applicant]
Wood, et al., “3D Face Reconstruction with Dense Landmarks”, In Proceedings of the 17th European Conference on Computer Vision, Nov. 3, 2022, pp. 160-177. [cited by applicant]
Aksan, et al., “LiP-Flow: Learning Inference-time Priors for Codec Avatars via Normalizing Flows in Latent Space”, In Proceedings of the 17th European Conference on Computer Vision, Nov. 1, 2022, pp. 92-110. [cited by applicant]
“Gamma Distribution”, Retrieved from: https://web.archive.org/web/20210207151333/https://en.wikipedia.org/wiki/Gamma_distribution, Feb. 7, 2021, 15 Pages. [cited by applicant]
U.S. Appl. No. 17/851,933, filed Jun. 28, 2022. [cited by applicant]
Bouachir, et al.,“Part-based Tracking via Salient Collaborating Features,” IEEE, 2015, pp. 78-85. [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/851,933, mailed on Aug. 19, 2024, 19 Pages. [cited by applicant]
Peng, et al.,“PVNet: Pixel-wise Voting Network for 6DoF Pose Estimation,” CVF, Jun. 2019, pp. 4561-4570. [cited by applicant]
Zhang, et al.,“3D human pose estimation in motion based on multi-stage regression,” Elsevier, Jun. 2021, pp. 1-7. [cited by applicant]