IP Library Granted Patent US 12,474,775
Granted Patent B2
US 12,474,775 · App. 18/742,758 · Granted Nov 18, 2025

Systems and techniques for estimating eye pose

Inventors: Daniel Farmer (Verdi, NV); David Cohen (Nesher, IL); Bradley Vincent Stuart (Fort Lauderdale, FL)
Assignee: Magic Leap, Inc.
G06F3/013G06T7/77G06T2207/10152G06T2207/30201
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,474,775
App. No.
18/742,758
Granted
Nov 18, 2025
Kind
B2
Abstract

An eye tracking system can include eye-tracking camera(s) configured to obtain images of the eye at different exposure times or different frame rates. For example, longer exposure images of the eye taken at a longer exposure time can show iris or pupil features, and shorter exposure, glint images can show peaks of glints reflected from the eye. The shorter exposure glint images may be taken at a higher frame rate than the longer exposure images for more accurate gaze prediction. The shorter exposure glint images can be analyzed to provide glint locations to subpixel accuracy. The longer exposure images can be analyzed for pupil center and/or center of rotation. The eye tracking system can predict gaze direction, which can be used for foveated rendering by a wearable display system. In some instances, the eye-tracking system may estimate the location of a partially or totally occluded glint.

Claims (54)

1 . A head-mounted system comprising:

one or more cameras configured to capture images of an eye of a user;

a plurality of light sources configured to illuminate the eye of the user to produce glints in the images of the eye that are captured by the one or more cameras, wherein a total quantity of light sources included in the plurality of light sources is greater than or equal to a particular value; and

one or more processors operatively coupled to the one or more cameras, the one or more processors configured to:

receive an image of the eye from the one or more cameras;

identify a location in the image at which a center of a pupil of the eye is shown;

detect a set of one or more locations in the image at which one or more glints are shown, respectively;

determine whether a total quantity of locations included in the detected set of one or more glint locations is less than the particular value; and

in response to a determination that the total quantity of locations included in the detected set of one or more glint locations is less than the particular value:

apply the identified location of the center of the pupil and the detected set of one or more glint locations to a probabilistic statistical model to estimate a set of one or more glint locations for the image, the estimated set of one or more glint locations being different than the detected set of one or more glint locations; and

determine a pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

2 . The system of claim 1 , wherein the one or more processors are further configured to:

apply the identified location of the center of the pupil of the eye of the user to the probabilistic statistical model to identify a plurality of regions in the image of the eye of the user at which a plurality of glints are expected to be shown, respectively, wherein a total quantity of regions included in the plurality of identified regions is greater than or equal to the particular value,

wherein to detect the set of one or more locations in the image of the eye of the user at which one or more glints are shown, respectively, the one or more processors are configured to detect a set of one or more locations in one or more of the plurality of identified regions, respectively.

3 . The system of claim 1 , wherein to apply the identified location of the center of the pupil of the eye of the user and the detected set of one or more glint locations to the probabilistic statistical model to estimate the set of one or more locations in the image of the eye of the user at which one or more glints are shown, respectively, the one or more processors are configured to:

apply the identified location of the center of the pupil of the eye of the user to the probabilistic statistical model to identify one or more regions in the image of the eye of the user at which one or more glints are expected to be shown, respectively; and

apply the detected set of one or more glint locations to the probabilistic statistical model to estimate a set of one or more locations in the one or more identified regions of the image of the eye of the user at which one or more glints are shown, respectively.

4 . The system of claim 1 , wherein the one or more processors are further configured to: update the probabilistic statistical model based on the identified location of the center of the pupil of the eye of the user and the detected set of one or more glint locations.

5 . The system of claim 1 , wherein the particular value is three.

6 . The system of claim 1 , wherein the plurality of light sources are infrared light sources.

7 . The system of claim 1 , wherein to determine the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, the one or more processors are configured to:

determine a location of a center of a cornea of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

8 . The system of claim 1 , wherein to determine the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, the one or more processors are configured to:

determine a location of a center of rotation of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

9 . The system of claim 1 , wherein to determine the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, the one or more processors are configured to:

determine a gaze direction of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

10 . The system of claim 1 , wherein the one or more processors are further configured to:

in response to a determination that the total quantity of locations included in the detected set of one or more glint locations is greater than the particular value, determine a pose of the eye of the user based at least in part on the detected set of one or more glint locations.

11 . A method performed by one or more processors of a head-mounted system, the method comprising:

receiving an image of an eye of a user, the image captured by one or more cameras of the head-mounted system;

identifying a location in the image at which a center of a pupil of the eye is shown;

detecting a set of one or more locations in the image at which one or more glints are shown, respectively, wherein the one or more glints are produced by a plurality of light sources of the head-mounted system that are configured to illuminate the eye, wherein a total quantity of light sources included in the plurality of light sources is greater than or equal to a particular value;

determining whether a total quantity of locations included in the detected set of one or more glint locations is less than the particular value; and

in response to a determination that the total quantity of locations included in the detected set of one or more glint locations is less than the particular value:

applying the identified location of the center of the pupil and the detected set of one or more glint locations to a probabilistic statistical model to estimate a set of one or more glint locations for the image, the estimated set of one or more glint locations being different than the detected set of one or more glint locations; and

determining a pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

12 . The method of claim 11 , further comprising:

applying the identified location of the center of the pupil of the eye of the user to the probabilistic statistical model to identify a plurality of regions in the image of the eye of the user at which a plurality of glints are expected to be shown, respectively, wherein a total quantity of regions included in the plurality of identified regions is greater than or equal to the particular value,

wherein detecting the set of one or more locations in the image of the eye of the user at which one or more glints are shown, respectively, includes detecting a set of one or more locations in one or more of the plurality of identified regions, respectively.

13 . The method of claim 11 , wherein applying the identified location of the center of the pupil of the eye of the user and the detected set of one or more glint locations to the probabilistic statistical model to estimate the set of one or more locations in the image of the eye of the user at which one or more glints are shown, respectively, further comprises:

applying the identified location of the center of the pupil of the eye of the user to the probabilistic statistical model to identify one or more regions in the image of the eye of the user at which one or more glints are expected to be shown, respectively; and

applying the detected set of one or more glint locations to the probabilistic statistical model to estimate a set of one or more locations in the one or more identified regions of the image of the eye of the user at which one or more glints are shown, respectively.

14 . The method of claim 11 , further comprising:

updating the probabilistic statistical model based on the identified location of the center of the pupil of the eye of the user and the detected set of one or more glint locations.

15 . The method of claim 11 , wherein the particular value is three.

16 . The method of claim 11 , wherein the plurality of light sources are infrared light sources.

17 . The method of claim 11 , wherein determining the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, further comprises:

determining a location of a center of a cornea of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

18 . The method of claim 11 , wherein determining the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, further comprises:

determining a location of a center of rotation of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

19 . The method of claim 11 , wherein determining the pose of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations, further comprises:

determining a gaze direction of the eye of the user based at least in part on the detected set of one or more glint locations and the estimated set of one or more glint locations.

20 . The method of claim 11 , further comprising:

in response to a determination that the total quantity of locations included in the detected set of one or more glint locations is greater than the particular value, determining a pose of the eye of the user based at least in part on the detected set of one or more glint locations.

Assignments (2)
SECURITY INTEREST Recorded Oct 24, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073255/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2024
From: FARMER, DANIEL; COHEN, DAVID; STUART, BRADLEY VINCENT
To: MAGIC LEAP, INC.
Reel/Frame 067721/0805 →
Continuity (5)
Continuation 18302587 · Apr 18, 2023
Continuation 17659145 · Apr 13, 2022
Continuation 16878366 · May 19, 2020
Provisional Application 62850539 · May 20, 2019
Related Publication 20240329737A1 · Oct 3, 2024
References Cited (79)
US 6850221B1 · Tickle · 2005 [cited by applicant]
US 9338382B2 · Jiang · 2016 [cited by applicant]
US 9354445B1 · Weaver et al. · 2016 [cited by applicant]
US 10893802B2 · Yamamoto et al. · 2021 [cited by applicant]
US 11315288B2 · Farmer et al. · 2022 [cited by applicant]
US 11675432B2 · Farmer et al. · 2023 [cited by applicant]
US 12050727B2 · Farmer et al. · 2024 [cited by applicant]
US 20060028436A1 · Armstrong · 2006 [cited by applicant]
US 20070081123A1 · Lewis · 2007 [cited by applicant]
US 20120127062A1 · Bar-Zeev et al. · 2012 [cited by applicant]
US 20120162549A1 · Gao et al. · 2012 [cited by applicant]
US 20130050642A1 · Lewis · 2013 [cited by examiner]
US 20130082922A1 · Miller · 2013 [cited by applicant]
US 20130117377A1 · Miller · 2013 [cited by applicant]
US 20130125027A1 · Abovitz · 2013 [cited by applicant]
US 20130208234A1 · Lewis · 2013 [cited by applicant]
US 20130242262A1 · Lewis · 2013 [cited by applicant]
US 20140071539A1 · Gao · 2014 [cited by applicant]
US 20140177023A1 · Gao et al. · 2014 [cited by applicant]
US 20140218468A1 · Gao et al. · 2014 [cited by applicant]
US 20140267420A1 · Schowengerdt et al. · 2014 [cited by applicant]
US 20150016777A1 · Abovitz et al. · 2015 [cited by applicant]
US 20150103306A1 · Kaji et al. · 2015 [cited by applicant]
US 20150178939A1 · Bradski et al. · 2015 [cited by applicant]
US 20150205126A1 · Schowengerdt · 2015 [cited by applicant]
US 20150309263A2 · Abovitz et al. · 2015 [cited by applicant]
US 20150326570A1 · Publicover et al. · 2015 [cited by applicant]
US 20150346495A1 · Welch et al. · 2015 [cited by applicant]
US 20160011419A1 · Gao · 2016 [cited by applicant]
US 20160026253A1 · Bradski et al. · 2016 [cited by applicant]
US 20160270656A1 · Samec et al. · 2016 [cited by applicant]
US 20160344957A1 · Kaehler · 2016 [cited by applicant]
US 20170053165A1 · Kaehler · 2017 [cited by applicant]
US 20170053166A1 · Amayeh et al. · 2017 [cited by applicant]
US 20170091996A1 · Wei et al. · 2017 [cited by applicant]
US 20170109936A1 · Powderly et al. · 2017 [cited by applicant]
US 20180018515A1 · Spizhevoy et al. · 2018 [cited by applicant]
US 20180096503A1 · Kaehler et al. · 2018 [cited by applicant]
US 20180131853A1 · Pellman et al. · 2018 [cited by applicant]
US 20180183986A1 · Smith et al. · 2018 [cited by applicant]
US 20180246320A1 · Rana et al. · 2018 [cited by applicant]
US 20180275410A1 · Yeoh et al. · 2018 [cited by applicant]
US 20180276467A1 · Kaehler · 2018 [cited by applicant]
US 20180278843A1 · Smith et al. · 2018 [cited by applicant]
US 20190042842A1 · Cavin et al. · 2019 [cited by applicant]
US 20190076015A1 · Johansson et al. · 2019 [cited by applicant]
US 20190108383A1 · Klingström · 2019 [cited by examiner]
US 20190181169A1 · Tadmor et al. · 2019 [cited by applicant]
US 20190181171A1 · Tadmor et al. · 2019 [cited by applicant]
US 20190222830A1 · Edwin et al. · 2019 [cited by applicant]
US 20190243448A1 · Miller et al. · 2019 [cited by applicant]
US 20190324276A1 · Edwin et al. · 2019 [cited by applicant]
US 20200241635A1 · Cohen · 2020 [cited by applicant]
US 20200372678A1 · Farmer et al. · 2020 [cited by applicant]
US 20220237823A1 · Farmer et al. · 2022 [cited by applicant]
US 20230305627A1 · Farmer et al. · 2023 [cited by applicant]
CN 103870796A · 2014 [cited by applicant]
JP 2013535022A · 2013 [cited by applicant]
JP 2014093704A · 2014 [cited by applicant]
JP 2016106668A · 2016 [cited by applicant]
JP 2017111746A · 2017 [cited by applicant]
JP 2017211891A · 2017 [cited by applicant]
JP 2018128749A · 2018 [cited by applicant]
WO 2016098406A1 · 2016 [cited by applicant]
WO 2020236827A1 · 2020 [cited by applicant]
U.S. Appl. No. 16/878,366, filed May 19, 2020, which published on Nov. 26, 2020 as U.S. Patent Publication No. 2020/0372678, and which issued on Apr. 26, 2022 as U.S. Pat. No. 11,315,288. [cited by applicant]
U.S. Appl. No. 17/659,145, filed Apr. 13, 2022, which published on Jul. 28, 2022 as U.S. Patent Publication No. 2022/0237823, and which issued on Jun. 13, 2023 as U.S. Pat. No. 11,675,432. [cited by applicant]
U.S. Appl. No. 18/302,587, filed Apr. 18, 2023, which published on Sep. 28, 2023 as U.S. Patent Publication No. 2023/0305627, and which issued on Jul. 30, 2024 as U.S. Pat. No. 12,050,727. [cited by applicant]
ARToolKit: https://web.archive.org/web/20051013062315/http://www.hitl.washington.edu:80/artoolkit/documentation/hardware.htm, archived Oct. 13, 2005. [cited by applicant]
Azuma, “A Survey of Augmented Reality,” Teleoperators and Virtual Environments 6, 4 (Aug. 1997), pp. 355-385. https://web.archive.org/web/20010604100006/http://www.cs.unc.edu{tilde over (/)} azuma/ARpresence.pdf. [cited by applicant]
Azuma, “Predictive Tracking for Augmented Realty,” TR95-007, Department of Computer Science, UNC-Chapel Hill, NC, Feb. 1995. [cited by applicant]
Bimber, et al., “Spatial Augmented Reality—Merging Real and Virtual Worlds,” 2005 https://web.media.mit.edu/raskar/book/BimberRaskarAugmentedRealityBook.pdf. [cited by applicant]
EP20809425.0 Extended European Search Report mailed Apr. 20, 2023. [cited by applicant]
Geisler David et al: “Real-time 3D Glint Detection in Remote Eye Tracking Based on Bayesian Inference”, 2018 IEEE International Conference on Robotics and Automation (ICRA), IEEE, May 21, 2018 (May 21, 2018), pp. 7119-7… [cited by applicant]
International Preliminary Report on Patentability for PCT Application No. PCT/US2020/033620, dated Aug. 28, 2020. [cited by applicant]
International Search Report and Written Opinion for PCT Application No. PCT/US2020/033620, dated Aug. 28, 2020. [cited by applicant]
Jacob, “Eye Tracking in Advanced Interface Design,” Human-Computer Interaction Lab Naval Research Laboratory, Washington, D.C. / paper/ in Virtual Environments and Advanced Interface Design, ed. by W. Barfield and T.A. … [cited by applicant]
JP2021-568889 Office Action mailed Aug. 2, 2023. [cited by applicant]
Tanriverdi and Jacob, “Interacting With Eye Movements in Virtual Environments,” Department of Electrical Engineering and Computer Science, Tufts University, Medford, MA—paper/Proc. AMC CHI 2000 Human Factors in Computin… [cited by applicant]