IP Library Granted Patent US 9,704,038
Granted Patent B2
US 9,704,038 · App. 14/591,865 · Granted Jul 11, 2017

Eye tracking

Inventors: Dijia Wu (Sammamish, WA); Michael J. Conrad (Monroe, WA); Chun-Te Chu (Bellevue, WA); Geoffrey John Hulten (Lynnwood, WA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06K9/0061G06F3/013G06K9/46G06K9/4661G06K9/52G06T3/40G06K2009/4666
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 9,704,038
App. No.
14/591,865
Granted
Jul 11, 2017
Kind
B2
Abstract

Examples are disclosed herein that relate to eye tracking based on two-dimensional image data. One example provides, on a computing device, a method of tracking an eye. The method includes receiving image data from an image sensor, detecting a face of the user in the image data, locating the eye in a region of the face in the image data to obtain an eye image, normalizing one or more of a scale and an illumination of the eye image, fitting an ellipse to an iris of the eye in the eye image, and outputting a determination of an eye gaze direction based upon the ellipse fitted.

Claims (37)

1. On a computing device, a method of tracking an eye, the method comprising:

receiving image data from an image sensor;

detecting a face of the user in the image data;

locating the eye in a region of the face in the image data to obtain an eye image;

normalizing one or more of a scale and an illumination of the eye image;

fitting an ellipse to an iris of the eye in the eye image by applying a plurality of ellipse hypotheses to the image data, and determining for each ellipse hypothesis a voting map corresponding to the eye image, wherein fitting the ellipse comprises, for each pixel of the eye image, determining a gradient vector for the pixel, and updating a value of a corresponding pixel of the voting map with a magnitude of the gradient vector; and

outputting a determination of an eye gaze direction based upon the ellipse fitted.

2. The method of claim 1 , wherein normalizing the scale of the eye image comprises scaling the eye image to normalize a distance between features in the eye image.

3. The method of claim 1 , wherein normalizing the illumination of the eye image comprises forming a gray scale image from the eye image and normalizing intensity of the grayscale image.

4. The method of claim 1 , further comprising performing segmentation on the image data to mask out one or more of a non-eye area and a non-iris area of the eye image prior to fitting the ellipse.

5. The method of claim 1 , wherein fitting the ellipse comprises determining a center of the iris based upon the value of each pixel of the voting map.

6. The method of claim 1 , wherein each of the plurality of ellipse hypotheses comprises one or more of a rotation angle, a radius, and a long-short axis ratio.

7. An eye-tracking system comprising:

an image sensor configured to acquire image data;

a logic subsystem; and

a storage subsystem comprising instructions stored thereon that are executable by the logic subsystem to:

detect a face of a user in the image data;

locate the eye in a region of the face in the image data to obtain an eye image;

normalize one or more of a scale and an illumination of the eye image, determine a voting map for each of a plurality of ellipse hypotheses;

fit an ellipse to an iris of the eye in the eye image by applying a plurality of ellipse hypotheses to the image data, and determine for each ellipse hypothesis a voting map corresponding to the eye image, wherein the instructions are executable to fit the ellipse by, for each pixel of the eye image, determining a gradient vector for the pixel, and updating a value of a corresponding pixel of the voting map with a magnitude of the gradient vector; and

output a determination of a gaze direction based upon the ellipse fitted.

8. The eye-tracking system of claim 7 , wherein the instructions are executable to normalize the scale of the eye image by scaling the eye image to normalize a distance between features in the eye image.

9. The eye-tracking system of claim 7 , wherein the instructions are executable to normalize the illumination of the eye image by forming a gray scale image from the eye image and normalizing intensity of the grayscale image.

10. The eye-tracking system of claim 7 , wherein the instructions are further executable to perform segmentation on the image data to mask out one or more of a non-eye area and a non-iris area of the eye image prior to fitting the ellipse.

11. The eye-tracking system of claim 7 , wherein the instructions are executable to fit the ellipse by determining a center of the iris based upon the value of each pixel of the voting map.

12. An eye-tracking system comprising:

an image sensor configured to acquire image data;

a logic subsystem; and

a storage subsystem comprising instructions stored thereon that are executable by the logic subsystem to:

detect a face of a user from the image data;

locate the eye in a region of the face from the image data to obtain an eye image;

normalize one or more of a scale and an illumination of the eye image, perform segmentation on the image data to mask out one or more of non-eye areas and non-iris areas of the eye image;

fit an ellipse to an iris of the eye in the eye image by applying a plurality of ellipse hypotheses to the image data, and determine for each ellipse hypothesis a voting map corresponding to the eye image, wherein the instructions are executable to fit the ellipse by, for each pixel of the eye image, determining a gradient vector for the pixel, and updating a value of a corresponding pixel of the voting map with a magnitude of the gradient vector; and

output a determination of a gaze direction based upon the ellipse fitted.

13. The eye-tracking system of claim 12 , wherein the instructions are executable to normalize the scale of the eye image by scaling the eye image to normalize a distance between features in the eye image.

14. The eye-tracking system of claim 12 , wherein the instructions are executable to normalize the illumination of the eye image by forming a gray scale image from the eye image and normalizing intensity of the grayscale image.

15. The eye-tracking system of claim 12 , wherein the instructions are executable to fit the ellipse by determining a center of the iris based upon the value of each pixel of the voting map.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2015
From: WU, DIJIA; CONRAD, MICHAEL J.; CHU, CHUN-TE; HULTEN, GEOFFREY JOHN
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034658/0063 →
Continuity (1)
Related Publication 20160196465A1 · Jul 7, 2016