Image-based head position tracking method and system
First Claim
1. A method for controlling a computing device, comprising:
- obtaining a first digital image of a face of a user of the computing device with a digital camera;
processing the first digital image to determine a position and orientation of an eyeball of the user beneath a surface of the user'"'"'s skin by;
determining an ellipse equation characterizing a first apparent iris disc in a plane of the first digital image by performing a least squares fit of iris-to-sclera boundary pixels in the first digital image; and
determining a spherical center point location of the eyeball using the determined ellipse equation characterizing the first apparent iris disc in the plane of the first digital image; and
translating the position determined and the orientation of the user'"'"'s eyeball into an input command;
wherein determining the spherical center point location of the eyeball comprises;
determining coordinates of a center point of an iris disc in a three-dimensional coordinate system based on the determined ellipse equation characterizing the first apparent iris disc;
calculating a first optical axis vector of the iris disc oriented in the three-dimensional coordinate system based on the center point of the iris disc and on the ellipse equation characterizing the first apparent iris disc;
projecting the first optical axis vector into the user'"'"'s eyeball;
measuring one eyeball radius distance along the projected first optical axis vector from the surface of the iris disc in the user'"'"'s eyeball;
storing the projected first optical axis vector;
calculating at least a second optical axis vector of the iris disc by;
prompting the user to look in another direction;
obtaining at a second digital image of the user'"'"'s face;
determining an ellipse equation characterizing a second apparent iris disc in a plane of the second digital image; and
determining three-dimensional coordinates of a second center point of the iris disc based on the determined ellipse equation characterizing the second apparent iris disc;
projecting the at least second optical axis vector into the user'"'"'s eyeball; and
determining an intersection of the projected first and projected at least second optical axis vector.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for tracking a head position of a user include obtaining digital images of the user'"'"'s head, processing the images to locate anatomical structures beneath the visible surface, and using those determined locations as inputs to a computing device. In an embodiment, images of a user'"'"'s face are processed to identify the irises of the eyes, identify pixels along a boundary between each iris and the surrounding sclera, determine an ellipse defined by the identified iris-sclera boundary pixels, determine a distance-to-pixel ratio based on a pixel length of a long axis of such an ellipse compared to a known or presumed diameter of the iris, locating the iris in a three-axis coordinate system, determining an optical axis vector of the eye in the three-axis coordinate system, and calculating a center of the eyeball based on the optical axis vector and a known or presumed eyeball radius.
36 Citations
24 Claims
-
1. A method for controlling a computing device, comprising:
-
obtaining a first digital image of a face of a user of the computing device with a digital camera; processing the first digital image to determine a position and orientation of an eyeball of the user beneath a surface of the user'"'"'s skin by; determining an ellipse equation characterizing a first apparent iris disc in a plane of the first digital image by performing a least squares fit of iris-to-sclera boundary pixels in the first digital image; and determining a spherical center point location of the eyeball using the determined ellipse equation characterizing the first apparent iris disc in the plane of the first digital image; and translating the position determined and the orientation of the user'"'"'s eyeball into an input command; wherein determining the spherical center point location of the eyeball comprises; determining coordinates of a center point of an iris disc in a three-dimensional coordinate system based on the determined ellipse equation characterizing the first apparent iris disc; calculating a first optical axis vector of the iris disc oriented in the three-dimensional coordinate system based on the center point of the iris disc and on the ellipse equation characterizing the first apparent iris disc; projecting the first optical axis vector into the user'"'"'s eyeball; measuring one eyeball radius distance along the projected first optical axis vector from the surface of the iris disc in the user'"'"'s eyeball; storing the projected first optical axis vector; calculating at least a second optical axis vector of the iris disc by; prompting the user to look in another direction; obtaining at a second digital image of the user'"'"'s face; determining an ellipse equation characterizing a second apparent iris disc in a plane of the second digital image; and determining three-dimensional coordinates of a second center point of the iris disc based on the determined ellipse equation characterizing the second apparent iris disc; projecting the at least second optical axis vector into the user'"'"'s eyeball; and determining an intersection of the projected first and projected at least second optical axis vector. - View Dependent Claims (2, 9, 10, 11, 12)
-
-
3. A computing device, comprising:
-
a digital camera; and a processor coupled to the camera and configured with processor-executable instructions to perform operations comprising; obtaining a first digital image of a face of a user of the computing device with the digital camera; processing the first digital image to determine a position and orientation of an eyeball of the user beneath a surface of the user'"'"'s skin by; determining an ellipse equation characterizing a first apparent iris disc in a plane of the first digital image by performing a least squares fit of iris-to-sclera boundary pixels in the first digital image; and determining a spherical center point location of the eyeball using the determined ellipse equation characterizing the first apparent iris disc in the plane of the first digital image; and translating the position determined and the orientation of the user'"'"'s eyeball into an input command; wherein determining the spherical center point location of the eyeball comprises; determining coordinates of a center point of an iris disc in a three-dimensional coordinate system based on the determined ellipse equation characterizing the first apparent iris disc; calculating a first optical axis vector of the iris disc oriented in the three-dimensional coordinate system based on the center point of the iris disc and on the ellipse equation characterizing the first apparent iris disc; projecting the first optical axis vector into the user'"'"'s eyeball; measuring one eyeball radius distance along the projected first optical axis vector from the surface of the iris disc in the user'"'"'s eyeball; storing the projected first optical axis vector; calculating at least a second optical axis vector of the iris disc by; prompting the user to look in another direction; obtaining at a second digital image of the user'"'"'s face; determining an ellipse equation characterizing a second apparent iris disc in a plane of the second digital image; and determining three-dimensional coordinates of a second center point of the iris disc based on the determined ellipse equation characterizing the second apparent iris disc; projecting the at least second optical axis vector into the user'"'"'s eyeball; and determining an intersection of the projected first and projected at least second optical axis vector. - View Dependent Claims (4, 13, 14, 15, 16)
-
-
5. A computing device, comprising:
-
means for obtaining a first digital image of a face of a user of the computing device; means for processing the first digital image to determine a position and orientation of an eyeball of the user beneath a surface of the user'"'"'s skin comprising means for determining an ellipse equation characterizing a first apparent iris disc in a plane of the first digital image by performing a least squares fit of iris-to-sclera boundary pixels in the first digital image; and means for determining a spherical center point location of the eyeball using the determined ellipse equation characterizing the first apparent iris disc in the plane of the first digital image; and means for translating the position determined and the orientation of the user'"'"'s eyeball into an input command; wherein means for determining the spherical center point location of the eyeball comprises; means for determining coordinates of a center point of an iris disc in a three-dimensional coordinate system based on the determined ellipse equation characterizing the first apparent iris disc; means for calculating a first optical axis vector of the iris disc oriented in the three-dimensional coordinate system based on the center point of the iris disc and on the ellipse equation characterizing the first apparent iris disc; means for projecting the first optical axis vector into the user'"'"'s eyeball; means for measuring one eyeball radius distance along the projected first optical axis vector from the surface of the iris disc in the user'"'"'s eyeball; means for storing the projected first optical axis vector; means for calculating at least a second optical axis vector of the iris disc comprising; means for prompting the user to look in another direction; means for obtaining at a second digital image of the user'"'"'s face; means for determining an ellipse equation characterizing a second apparent iris disc in a plane of the second digital image; and means for determining three-dimensional coordinates of a second center point of the iris disc based on the determined ellipse equation characterizing the second apparent iris disc; means for projecting the at least second optical axis vector into the user'"'"'s eyeball; and means for determining an intersection of the projected first and projected at least second optical axis vector. - View Dependent Claims (6, 17, 18, 19, 20)
-
-
7. A non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor of a computing device including a digital camera to perform operations comprising:
-
obtaining a first digital image of a face of a user of the non-transitory processor readable storage medium with the digital camera; processing the first digital image to determine a position and orientation of an eyeball of the user a surface of the user'"'"'s skin by; determining an ellipse equation characterizing a first apparent iris disc in a plane of the first digital image by performing a least a squares fit of iris-to-sclera boundary pixels in the first digital image; and determining a spherical center point location of the eyeball using the determined ellipse equation characterizing the first apparent iris disc in the plane of the first digital image; and translating the position determined and the orientation of the user'"'"'s eyeball anatomical structure into an input command; wherein determining the spherical center point location of the eyeball comprises; determining coordinates of a center point of an iris disc in a three-dimensional coordinate system based on the determined ellipse equation characterizing the first apparent iris disc; calculating a first optical axis vector of the iris disc oriented in the three-dimensional coordinate system based on the center point of the iris disc and on the ellipse equation characterizing the first apparent iris disc; projecting the first optical axis vector into the user'"'"'s eyeball; measuring one eyeball radius distance along the projected first optical axis vector from the surface of the iris disc in the user'"'"'s eyeball; storing the projected first optical axis vector; calculating at least a second optical axis vector of the iris disc by; prompting the user to look in another direction; obtaining at a second digital image of the user'"'"'s face; determining an ellipse equation characterizing a second apparent iris disc in a plane of the second digital image; and determining three-dimensional coordinates of a second center point of the iris disc based on the determined ellipse equation characterizing the second apparent iris disc; projecting the at least second optical axis vector into the user'"'"'s eyeball; and determining an intersection of the projected first and projected at least second optical axis vector. - View Dependent Claims (8, 21, 22, 23, 24)
-
Specification