IP Library Granted Patent US 12,519,921
Granted Patent B2
US 12,519,921 · App. 18/265,085 · Granted Jan 6, 2026

Miscalibration detection for virtual reality and augmented reality systems

Inventors: Gil Sokol (Tel Aviv, IL); Moshe Bouhnik (Holon, IL); Ankur Gupta (Union City, CA); David Gadot Kabasu (Herzliya, IL); Konstantinos Zampogiannis (San Jose, CA)
Assignee: Magic Leap, Inc.
H04N13/327G06T19/006G06V10/44G06V20/70H04N13/239H04N13/246H04N13/271H04N13/344G06N3/08G06N3/126G06N7/01H04N2013/0081
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,519,921
App. No.
18/265,085
Granted
Jan 6, 2026
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for performing miscalibration detection. One of the methods includes receiving sensor data from each of multiple sensors of a device in a system configured to provide augmented reality or mixed reality output to a user. Feature values are determined based on the sensor data for a predetermined set of features. The determined feature values are processed using a miscalibration detection model that has been trained, based on examples of captured sensor data from one or more devices, to predict whether a miscalibration condition of one or more of the multiple sensors has occurred. Based on the output of the miscalibration detection model, the system determines whether to initiate recalibration of extrinsic parameters for at least one of the multiple sensors or to bypass recalibration.

Claims (45)

1 . A computer-implemented method comprising:

accessing, as accessed sets of sensor data, sets of sensor data from one or more devices that each include a first sensor and a second sensor, each set of sensor data comprising first sensor data from the first sensor and second sensor data from the second sensor;

generating distorted sets of sensor data by introducing distortion to the accessed sets of sensor data;

generating, as a generated feature vector, a feature vector for each accessed set of sensor data and for each distorted set of sensor data; and

training a miscalibration detection model to predict whether a miscalibration of sensors of a device has occurred by:

processing each generated feature vector with the miscalibration detection model to obtain a corresponding output of the miscalibration detection model;

determining a label for each generated feature vector, the label indicating whether the generated feature vector represents an accurate calibration or a miscalibration;

comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors; and

adjusting parameters of the miscalibration detection model based on the comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors.

2 . The computer-implemented method of claim 1 , wherein the one or more devices comprise a headset.

3 . The computer-implemented method of claim 1 , wherein the miscalibration detection model is trained to indicate whether there is miscalibration between the first sensor and the second sensor.

4 . The computer-implemented method of claim 1 , wherein introducing distortion comprises applying an offset or rotation to at least one of the first sensor data or the second sensor data.

5 . The computer-implemented method of claim 1 , wherein the sets of sensor data comprises one or more of image data or depth data.

6 . The computer-implemented method of claim 1 , wherein the first sensor and the second sensor each comprise one of a camera or a depth sensor.

7 . The computer-implemented method of claim 1 , wherein generating, as a generated feature vector, a feature vector for each accessed set of sensor data and for each distorted set of sensor data, comprises:

determining a reprojection error vector based on the first sensor data and the second sensor data.

8 . The computer-implemented method of claim 7 , comprising:

determining one or more feature values based on the reprojection error vector.

9 . The computer-implemented method of claim 8 , comprising:

generating the feature vector based on the one or more feature values determined based on the reprojection error vector.

10 . The computer-implemented method of claim 1 , wherein each generated feature vector comprises a median value determined for a characteristic, wherein the median value is determined across respective values for different key points in a frame of sensor data.

11 . The computer-implemented method of claim 10 , wherein the characteristic comprises a visual characteristic or a depth characteristic.

12 . The computer-implemented method of claim 10 , wherein the median value determined for a characteristic, comprises one or more of a median value for a set of reprojection error values or depth error values for the respective key points.

13 . The computer-implemented method of claim 10 , wherein the median value determined for a characteristic, comprises a magnitude of a reprojection error vector or one or more components of the reprojection error vector.

14 . The computer-implemented method of claim 10 , wherein the median value determined for a characteristic, comprises a median ratio for a set of ratios for different key points in a frame of sensor data, wherein the median ratio is between a depth-sensor depth value for a key point and a triangulation depth value for the key point.

15 . The computer-implemented method of claim 10 , wherein the median value determined for a characteristic, comprises a median of values representing characteristics of a vector for each of multiple key points, wherein the vector for each multiple key point is between (i) a position of a 3D point determined for the key point using data from a depth sensor and (ii) a 3D ray determined based on a position of the key point in an image from a camera.

16 . The computer-implemented method of claim 1 , wherein the first sensor data and the second sensor data are captured while the one or more devices capturing the first and second sensor data is at substantially a same pose and physical arrangement.

17 . A non-transitory, computer-readable storage medium encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations including:

accessing, as accessed sets of sensor data, sets of sensor data from one or more devices that each include a first sensor and a second sensor, each set of sensor data comprising first sensor data from the first sensor and second sensor data from the second sensor;

generating distorted sets of sensor data by introducing distortion to the accessed sets of sensor data;

generating, as a generated feature vector, a feature vector for each accessed set of sensor data and for each distorted set of sensor data; and

training a miscalibration detection model to predict whether a miscalibration of sensors of a device has occurred by:

processing each generated feature vector with the miscalibration detection model to obtain a corresponding output of the miscalibration detection model;

determining a label for each generated feature vector, the label indicating whether the generated feature vector represents an accurate calibration or a miscalibration;

comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors; and

adjusting parameters of the miscalibration detection model based on the comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors.

18 . A computer-implemented system comprising one or more computers and one or more non-transitory, computer-readable storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations including:

accessing, as accessed sets of sensor data, sets of sensor data from one or more devices that each include a first sensor and a second sensor, each set of sensor data comprising first sensor data from the first sensor and second sensor data from the second sensor;

generating distorted sets of sensor data by introducing distortion to the accessed sets of sensor data;

generating, as a generated feature vector, a feature vector for each accessed set of sensor data and for each distorted set of sensor data; and

training a miscalibration detection model to predict whether a miscalibration of sensors of a device has occurred by:

processing each generated feature vector with the miscalibration detection model to obtain a corresponding output of the miscalibration detection model;

determining a label for each generated feature vector, the label indicating whether the generated feature vector represents an accurate calibration or a miscalibration;

comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors; and

adjusting parameters of the miscalibration detection model based on the comparing outputs of the miscalibration detection model with corresponding labels for the generated feature vectors.

Assignments (4)
SECURITY INTEREST Recorded Oct 28, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073387/0487 →
SECURITY INTEREST Recorded Oct 28, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073388/0027 →
SECURITY INTEREST Recorded Oct 15, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073109/0238 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2023
From: SOKOL, GIL; BOUHNIK, MOSHE; GUPTA, ANKUR; KABASU, DAVID GADOT; ZAMPOGIANNIS, KONSTANTINOS
To: MAGIC LEAP, INC.
Reel/Frame 064362/0633 →
Priority Claims (1)
GR 20200100714 · Dec 4, 2020 · national
Continuity (1)
Related Publication 20240106998A1 · Mar 28, 2024
References Cited (23)
US 8736636B2 · Kang · 2014 [cited by applicant]
US 8793770B2 · Lim · 2014 [cited by applicant]
US 8823855B2 · Hwang · 2014 [cited by applicant]
US 8874673B2 · Kim · 2014 [cited by applicant]
US 10038966B1 · Mehra · 2018 [cited by examiner]
US 10992928B1 · Rehder · 2021 [cited by examiner]
US 20160117864A1 · Cajigas · 2016 [cited by examiner]
US 20180031829A1 · Thomas · 2018 [cited by examiner]
US 20190065027A1 · Hauenstein et al. · 2019 [cited by applicant]
US 20190158813A1 · Rowell et al. · 2019 [cited by applicant]
US 20190172223A1 · Vajda et al. · 2019 [cited by applicant]
US 20190197982A1 · Chi et al. · 2019 [cited by applicant]
US 20190340435A1 · Rabinovich et al. · 2019 [cited by applicant]
US 20200353878A1 · Briggs · 2020 [cited by applicant]
US 20210225035A1 · Devitt · 2021 [cited by examiner]
US 20210295561A1 · Abbeloos · 2021 [cited by examiner]
US 20210377505A1 · Liu · 2021 [cited by examiner]
US 20220053039A1 · Bhatt · 2022 [cited by examiner]
US 20220198710A1 · Kuang · 2022 [cited by examiner]
US 20230324988A1 · Eble · 2023 [cited by examiner]
US 20230326078A1 · Lee · 2023 [cited by examiner]
CN 110958467B · 2020 [cited by examiner]
International Search Report and Written Opinion in International Appln. No. PCT/US2021/060942, mailed Mar. 23, 2022, 28 pages. [cited by applicant]