Method of textured contact lens detection
Systems and methods for detecting textured contact lenses in an iris image are disclosed. Initially, “K” images are taken of an eye in near-infrared light, each for a different positioning of the illuminant. Three-dimensional properties of the hypothetical iris are estimated based on image processing methods. The variability of the estimated three-dimensional properties is calculated, and a classification into two classes is made based on the variability. A low variability denotes that an authentic iris pattern was presented to the sensor, whereas a high variability denotes that the sensor observes an eye wearing a textured contact lens. The systems and methods disclosed allow for detecting presentation attacks to iris recognition systems/sensors based on presentation of an eye wearing a textured contact lens in an automatic and accurate way.
1. A computer-implemented method for determining a presence of a textured contact lens on an eye, comprising:
illuminating the eye with k illuminants, the k illuminants comprising at least two different illuminants placed at different angles relative to a camera;
acquiring iris images using the camera, the acquired iris images comprising at least two images acquired under illumination by each of the k illuminants; and
determining, using one or more processors, the presence of a textured contact lens based on an analysis of an estimated surface shape of a selected portion of an iris determined within the acquired iris images, wherein determining the presence of a textured contact lens comprises:
calculating normal vectors to the observed surface based on the acquired iris images;
calculating a nonoccluded portion of the iris annulus based on the acquired iris images;
determining a variance of the normal vectors to the observed surface found within the nonoccluded portion of the iris annulus; and
comparing the variance to an acceptance threshold and outputting a result indicating the presence of a textured contact lens if the variance exceeds the acceptance threshold.
2. The computer-implemented method of claim 1 , wherein the selected portion of the iris comprises a nonoccluded portion of an iris annulus.
3. The computer-implemented method of claim 2 , wherein the selected portion of the iris is identified by applying one or more occlusion masks to the acquired iris images.
4. The computer-implemented method of claim 1 , wherein illuminating the eye with k illuminants comprises illuminating the eye with the at least two different illuminants of the k illuminants successively.
5. The computer-implemented method of claim 1 , wherein the at least two different illuminants are not positioned concentrically with a camera lens of the camera used to acquire the acquired iris images.
6. The computer-implemented method of claim 1 , wherein the at least two different illuminants are positioned coplanar with a camera lens of the camera used to acquire the acquired iris images, such that the at least two different illuminants and the camera lens are positioned on a plane that is orthogonal to an optic axis of the camera lens.
7. The computer-implemented method of claim 1 , wherein calculating the normal vectors (n x,y ) to the observed surface comprises calculating n x,y by way of a photometric stereo method.
8. The computer-implemented method of claim 7 , wherein the photometric stereo method comprises:
n
x
,
y
=
n
^
n
^
,
where
n
^
=
{
L
-
1
I
x
,
y
if
k
=
3
(
L
T
L
)
-
1
L
T
I
x
,
y
if
k
≠
3
where I x,y is a vector of observed k intensities at each (x, y) pixel location of the acquired iris images, L is a 3×k matrix of k known light directions, (L T L) −1 L T is a Moore-Penrose pseudoinverse of L, and ∥x∥ is the norm of x.
9. The computer-implemented method of claim 1 , wherein calculating the nonoccluded portion of the iris annulus comprises classifying each pixel within the acquired iris images into a pixel class.
10. The computer-implemented method of claim 9 , wherein the pixel class comprises iris texture or background.
11. The computer-implemented method of claim 1 , wherein determining the variance comprises calculating:
var∥ n x,y − n ∥
where ∥x∥ is the norm of x, and
n
_
=
1
N
∑
x
,
y
n
x
,
y
,
where N is a number of nonoccluded iris points, and n x,y comprises normal vectors calculated for the nonoccluded iris points.
12. The computer-implemented method of claim 1 , wherein determining the presence of a textured contact lens comprises comparing the variance with an acceptance threshold for a given dataset of iris images.
13. The computer-implemented method of claim 12 , wherein determining the presence of a textured contact lens comprises determining the iris is covered by the textured contact lens if the variance meets or exceeds the acceptance threshold.
14. The computer-implemented method of claim 1 , wherein the selected portion of the iris includes one or more subsections of the acquired iris images for each of the k illuminants.
15. A computer system for determining a presence of a textured contact lens on an eye, comprising:
one or more processors; and
one or more storage devices having stored thereon computer-executable instructions that when executed by the one or more processors configure the computer system to perform at least the following:
receive a plurality of iris images, each iris image of the plurality of iris images being acquired during illumination with one of k illuminants, the k illuminants comprising at least two different illuminants placed at different angles relative to a camera used to acquire the plurality of iris images; and
determine, using the one or more processors, the presence of a textured contact lens based on an analysis of an estimated surface shape of a nonoccluded portion of an iris determined within the plurality of iris images, wherein determining the presence of the textured contact lens comprises:
calculating normal vectors to an observed surface based on the plurality of iris images;
calculating a nonoccluded portion of an iris annulus based on the plurality of iris images;
determining a variance of the normal vectors to the observed surface found within the nonoccluded portion of the iris annulus; and
comparing the variance to an acceptance threshold and outputting a result indicating the presence of a textured contact lens if the variance exceeds the acceptance threshold.
16. The computer system of claim 15 , wherein the computer-executable instructions further cause the computer system to calculate the normal vectors (n x,y ) to the observed surface by calculating n x,y by way of a photometric stereo method.
17. The computer system of claim 16 , wherein the photometric stereo method comprises:
n
x
,
y
=
n
^
n
^
,
where
n
^
=
{
L
-
1
I
x
,
y
if
k
=
3
(
L
T
L
)
-
1
L
T
I
x
,
y
if
k
≠
3
where I x,y is a vector of observed k intensities at each pixel location of the acquired iris images, L is 3×k matrix of k known light directions, (L T L) −1 L T is a Moore-Penrose pseudoinverse of L, and ∥x∥ is the norm of x.
18. The computer system of claim 15 , wherein the computer-executable instructions further cause the computer system to determine the variance by calculating:
var( q )
where q is a vector composed of all elements of q x,y , and q x,y =∥n x,y − n ∥, and ∥x∥ and is the l 2 (Euclidean) norm of x, and
n
_
=
1
N
∑
x
,
y
n
x
,
y
,
where N is a number of nonoccluded iris points, and n x,y comprises normal vectors calculated for the nonoccluded iris points, and
wherein determining the presence of a textured contact lens includes comparing the variance with an acceptance threshold.