IP Library › Granted Patent US 9,959,678
Granted Patent B2
US 9,959,678 · App. 15/172,473 · Granted May 1, 2018

Face and eye tracking using facial sensors within a head-mounted display

Inventors: Dov Katz (Irvine, CA); Michael John Toksvig (Palo Alto, CA); Ziheng Wang (Mountain View, CA); Timothy Paul Omernick (Foster City, CA); Torin Ross Herndon (Palo Alto, CA)
Assignee: Oculus VR, LLC
G06T19/006G02B27/0172G06K9/00255G06K9/00302G06T13/40H04N5/2256H04N17/002G02B2027/0141G02B2027/0187
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,959,678
App. No.
15/172,473
Filed
Jun 3, 2016
Granted
May 1, 2018
Kind
B2
Art Unit
2618
USPC
345/633
Abstract

A head mounted display (HMD) in a VR system includes sensors for tracking the eyes and face of a user wearing the HMD. The VR system records calibration attributes such as landmarks of the face of the user. Light sources illuminate portions of the user's face covered by the HMD. In conjunction, facial sensors capture facial data. The VR system analyzes the facial data to determine the orientation of planar sections of the illuminated portions of face. The VR system aggregates planar sections of the face and maps the planar sections to landmarks of the face to generate a facial animation of the user, which can also include eye orientation information. The facial animation is represented as a virtual avatar and presented to the user.

Claims (84)

1. A head mounted display (HMD) comprising:

a display element configured to display content to a user wearing the HMD;

an optics block configured to direct light from the display element to an exit pupil of the HMD;

a plurality of light sources positioned at discrete locations around the optics block, the plurality of light sources configured to illuminate portions of a face, inside the HMD, of the user;

a facial sensor configured to capture one or more facial data of a portion of the face illuminated by one or more of the plurality of light sources; and

a controller configured to:

receive a plurality of captured facial data from the facial sensor;

identify a plurality of surfaces of the portion of the face based at least in part on the plurality of captured facial data;

retrieve a plurality of landmarks each indicating a position of a different feature of the face, the plurality of landmarks determined based on calibration attributes corresponding to a plurality of different facial expressions performed by the user for a calibration process;

retrieve global calibration attributes, the global calibration attributes generated based on facial expressions performed by a population of users;

responsive to determining that a difference between the calibration attributes and the global calibration attributes is less than a threshold value:

map the plurality of surfaces to one of the plurality of landmarks; and

generate facial animation information describing the portion of the face of the user based at least in part on the plurality of captured facial data and the mapping.

2. The HMD of claim 1 , wherein the controller is further configured to:

provide instructions to the user to perform the plurality of different facial expressions for the calibration process;

generate the calibration attributes responsive to the user performing at least one of the plurality of different facial expressions; and

identify the plurality of landmarks based at least in part on the calibration attributes.

3. The HMD of claim 1 , wherein the display element is configured to display an avatar to the user, and the avatar's face is based on the facial animation information.

4. The HMD of claim 1 , wherein the controller is further configured to:

generate intensity curves for coordinates of frames of the plurality of captured facial data using pixel values of the plurality of captured facial data; and

wherein identifying the plurality of surfaces of the portion of the face comprises determining normal vectors using the intensity curves.

5. The HMD of claim 1 , wherein the plurality of captured facial data describe frames of an image, the image comprising a plurality of pixels, each pixel associated with a coordinate (x, y) location of the image, and wherein the controller is further configured to:

identify, for each coordinate location of the image, a planar section corresponding to the brightest pixel value at the coordinate location;

identify a light source position corresponding to each of the identified planar sections;

generate a virtual surface of the portion of the face based at least in part on the identified planar sections and the identified light source positions; and

wherein generating the facial animation information is further based on the virtual surface.

6. The HMD of claim 1 , wherein the controller is further configured to:

provide instructions to the plurality of light sources to illuminate the portions of the face; and

provide instructions to the facial sensor, coordinated with the instructions to the plurality of light sources, to capture the one or more facial data.

7. The HMD of claim 6 , wherein the plurality of light sources are positioned in a ring arrangement around the optics block, and wherein the instructions provided to the plurality of light sources are coordinated such that only one light source of the plurality of light sources illuminates the portions of the face at any given time.

8. The HMD of claim 1 , wherein the controller is further configured to:

receive specular reflection information from the plurality of facial data; and

identify a position of an eye of the user based at least in part on the specular reflection information.

9. The HMD of claim 1 , wherein the global calibration attributes are retrieved from an online calibration server, and wherein the controller is further configured to upload the calibration attributes to the online calibration server.

10. A head mounted display (HMD) comprising:

a display element configured to display content to a user wearing the HMD;

a plurality of light sources positioned at discrete locations outside a line of sight of the user, the plurality of light sources configured to illuminate portions of a face, inside the HMD, of the user;

a facial sensor configured to capture one or more facial data of a portion of the face illuminated by one or more of the plurality of light sources; and

a controller configured to:

receive a plurality of captured facial data from the facial sensor;

identify a plurality of surfaces of the portion of the face based at least in part on the plurality of captured facial data;

retrieve a plurality of landmarks each indicating a position of a different feature of the face, the plurality of landmarks determined based on calibration attributes corresponding to a plurality of different facial expressions performed by the user for a calibration process;

retrieve global calibration attributes, the global calibration attributes generated based on facial expressions performed by a population of users;

responsive to determining that a difference between the calibration attributes and the global calibration attributes is less than a threshold value:

map the plurality of surfaces to one of the plurality of landmarks; and

generate facial animation information describing the portion of the face of the user based at least in part on the plurality of captured facial data and the mapping.

11. The HMD of claim 10 , wherein the controller is further configured to:

provide instructions to the user to perform the plurality of different facial expressions for the calibration process;

generate the calibration attributes responsive to the user performing at least one of the plurality of different facial expressions; and

identify the plurality of landmarks based at least in part on the calibration attributes.

12. The HMD of claim 10 , wherein the display element is configured to display an avatar to the user, and the avatar's face is based on the facial animation information.

13. The HMD of claim 10 , wherein the controller is further configured to:

generate intensity curves for coordinates of frames of the plurality of captured facial data using pixel values of the plurality of captured facial data; and

wherein identifying the plurality of surfaces of the portion of the face comprises determining normal vectors using the intensity curves.

14. The HMD of claim 10 , wherein the plurality of captured facial data describe frames of an image, the image comprising a plurality of pixels, each pixel associated with a coordinate (x, y) location of the image, and wherein the controller is further configured to:

identify, for each coordinate location of the image, a planar section corresponding to the brightest pixel value at the coordinate location;

identify a light source position corresponding to each of the identified planar sections;

generate a virtual surface of the portion of the face based at least in part on the identified planar sections and the identified light source positions; and

wherein generating the facial animation information is further based on the virtual surface.

15. The HMD of claim 10 , wherein the controller is further configured to:

provide instructions to the plurality of light sources to illuminate the portions of the face; and

provide instructions to the facial sensor, coordinated with the instructions to the plurality of light sources, to capture the one or more facial data.

16. The HMD of claim 15 , wherein the plurality of light sources are positioned in a ring arrangement around the optics block, and wherein the instructions provided to the plurality of light sources are coordinated such that only one light source of the plurality of light sources illuminates the portion of the face at any given time.

17. The HMD of claim 10 , wherein the controller is further configured to:

receive specular reflection information from the plurality of facial data; and

identify a position of an eye of the user based at least in part on the specular reflection information.

18. A head mounted display (HMD) comprising:

a display element configured to display content to a user wearing the HMD;

an optics block configured to direct light from the display element to an exit pupil of the HMD;

a plurality of light sources positioned at discrete locations around the optics block, the plurality of light sources configured to illuminate portions of a face, inside the HMD, of the user;

a facial sensor configured to capture one or more facial data of a portion of the face illuminated by one or more of the plurality of light sources; and

a controller configured to:

receive a plurality of captured facial data from the facial sensor;

identify a plurality of surfaces of the portion of the face based at least in part on the plurality of captured facial data;

retrieve global calibration attributes, the global calibration attributes generated based on facial expressions performed by a population of users;

responsive to determining that a difference between calibration attributes of the user and the global calibration attributes is less than a threshold value:

provide the plurality of surfaces to a virtual reality (VR) console; and

receive, from the VR console a virtual animation of the portion of the face of the user, the virtual animation generated by mapping the plurality of surfaces to one of a plurality of landmarks each indicating a position of a different feature of the face, the plurality of landmarks determined based on the calibration attributes of the user corresponding to a plurality of different facial expressions performed by the user for a calibration process.

19. The HMD of claim 18 , wherein the controller is further configured to:

provide instructions to the user to perform the plurality of different facial expressions for the calibration process;

generate the calibration attributes responsive to the user performing at least one of the plurality of different facial expressions;

identify the plurality of landmarks based at least in part on the calibration attributes; and

provide the plurality of landmarks to the VR console.

20. The HMD of claim 18 , wherein the facial sensor is selected from a group consisting of: a camera, audio sensor, strain gauge, electromagnetic sensor, and proximity sensor.

Assignments (3)
CHANGE OF NAME Recorded Jun 8, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060315/0224 →
CHANGE OF NAME Recorded Sep 12, 2018
From: OCULUS VR, LLC
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 047178/0616 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2016
From: KATZ, DOV; TOKSVIG, MICHAEL JOHN; WANG, ZIHENG; OMERNICK, TIMOTHY PAUL; HERNDON, TORIN ROSS
To: OCULUS VR, LLC
Reel/Frame 039371/0917 →
Continuity (1)
Related Publication 20170352183A1 · Dec 7, 2017