# A New Algorithm for Rotation Detection in Iris Pattern Recognition

Krzysztof Misztal, Jacek Tabor, Khalid Saeed

► To cite this version:

Krzysztof Misztal, Jacek Tabor, Khalid Saeed. A New Algorithm for Rotation Detection in Iris Pattern Recognition. 11th International Conference on Computer Information Systems and Industrial Management (CISIM), Sep 2012, Venice, Italy. pp.135-145, 10.1007/978-3-642-33260-9_11. hal-01551719

HAL Id: hal-01551719

https://inria.hal.science/hal-01551719

Submitted on 30 Jun 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# A new algorithm for rotation detection in iris pattern recognition

Krzysztof Misztal¹,², Jacek Tabor², and Khalid Saeed¹

¹ AGH University of Science and Technology
Faculty of Physics and Applied Computer Science
al. A. Mickiewicza 30, 30-059 Kraków, Poland
*Krzysztof.Misztal@fis.agh.edu.pl, saeed@agh.edu.pl*

² Jagiellonian University
Faculty of Mathematics and Computer Science
Łojasiewicza 6, 30-348 Kraków, Poland
tabor@ii.uj.edu.pl

**Abstract.** A new method for finding the rotation angle in iris images for biometric identification is presented in this paper. The proposed approach is based on Fourier descriptors analysis and algebraic properties of vector rotation in complex space.

**Keywords:** iris pattern recognition, rotation estimation, rotation recovery, Fourier descriptors

## 1 Introduction

The iris is an important candidate for the source of the unique human population characteristics. It is very stable over time – the iris is determined during the first years of our lives and does not change until the death. Moreover, the study shows the iris structure is minimally dependent on our genes and allows to identify even identical twins. In addition, the modern iris biometrics systems are fast and have a high accuracy verification.

In light of the above, it seems that the iris is ideal for biometrics. However, the iris recognition process is complex and the construction of a complete system requires addressing a number of problems. The current approaches to iris pattern recognition include: the Gabor wavelet approach by Daugman [2], the Laplacian parameter approach by Wildes et al. [9], zero-crossings of the wavelet transform at various resolution levels by Boles et al. [1], the Independent Component Analysis approach by Huang et al. [6], the texture analysis using multi-channel Gabor filtering and wavelet transform by Zhu et al. [10], and many others ideas. Each method has its own advantages and disadvantages.

Let us focus our attention on the classical John Daugman algorithm [3] – the most popular approach to individual identification by iris pattern recognition. and discuss how the algorithm copes with rotations. Let us start with the explanation and role of iris rotation angle. Fig. 1 present rotated and non-rotated iris images. When capturing iris images, most systems seek to achieve the same
<figure><img src="image_2.png" /><figcaption>Fig. 1: Iris images: original (non-rotated) and rotated (23 degree).</figcaption></figure>

environmental conditions and the position of the face. Under some assumed re-
strictions the obtained images provide the highest reliability of identification
methods. However, these methods are not comfortable for the users. The system
proposed by Daugman detects the rotation angle by "brute force", i.e., by test-
ing all accessible angles and selects the best of them. However, such a way, as
we will show later is not optimal in practice. Our aim in this paper is to present
alternative approach to this method. The method determines the rotation angle
directly. Based on this knowledge we hope to develop a more efficient algorithm
to identify individuals.

In the first part of our work we briefly describe the classical Daugman algo-
rithm. In the next chapter we will focus on the problem of detecting the rotation
angle of the iris image. Then we describe the rotation angle estimation algo-
rithm using Fourier transform. Further considerations will include construction
of our algorithm. The last part of the work contains numerical experiments that
demonstrate how our rotation angle estimation algorithm is relatively insensitive
to both the eye and the camera:

- rotation,

- contrast modification,

- illumination level modification,

- blurring,

- sharpening.

This makes it suitable to be used even in the first stage of preprocessing images
for the algorithm of individual verification.

## 2 Iris code matching algorithms survey

In this section we describe the main stages in the iris pattern recognition algo-
rithm proposed by John Daugman [3].

After positive iris detection on an image and automatic segmentation we can
match the iris region. To simplify, we assume we can describe the iris using only
two circles – the arcs of the upper and lower eyelids are invisible on the surface
of the iris. The next step in the iris pattern recognition algorithm performs the normalization process, which includes conversion of the iris annulus into the rectangular sized fixed image.

In general, images standardization is the initial processing procedure which allows their mutual comparison and further analysis. Comparing methods use predetermined patterns of the iris therefore the iris images could be compared with patterns from the database. In the develop of authors' method, we relied on the method of the normalization, called Daugman's Rubber Sheet Model. This

<figure><img src="image_3.png" /><figcaption>Fig. 2: Daugman's Rubber Sheet Model</figcaption></figure>

model maps each point inside the area of the iris with a pair of polar coordinates $(r, \theta)$, where $r \in [0, 1]$ and $\theta \in [0, 2\pi]$ (see Fig. 2).

Afterwards, we are able to introduce the feature encoding methods. In order to describe and recognize large individuals population only the significant features must be encoded. In Daugman's algorithm Gabor filters are used to obtain an optimal coding. As an outcome a phase sequence is obtained, 2048 bytes of data to describe the phase characteristics of the iris in a polar coordinate system – IrisCode. It is not affected by contrast, camera gain or illumination levels, so it is common in iris pattern recognition. Our method also has such properties.

For matching, the Hamming distance is chosen as a metric for recognition. The Hamming distance is calculated using only the bits generated from the true iris region, and this modified Hamming distance formula is given as

$$HD = \frac{\| (\text{code A} \oplus \text{code B}) \cap \text{mask A} \cap \text{mask B} \|}{\| \text{mask A} \cap \text{mask B} \|}$$

where codes A and B are the two bit-wise templates to compare, mask A and mask B are the corresponding noise masks.

In theory, Hamming distance of two iris templates generated from the same iris equals 0.0. However, since the normalization is not perfect this will not occur in practice. We obtain some noise that goes undetected, and hence a difference will always appear.
## 2.1 Daugman's approach – brute force matching

The following method, suggested by Daugman, corrects the misalignment in the
normalized iris pattern. In order to cope with rotational inconsistencies, when
the Hamming distance of two templates is calculated, one template is shifted to
one bit left and right. Then the Hamming distance values are calculated. This
bit offset in the horizontal direction corresponds to the primary market area
of the iris angle indicated by the Rubber Sheet Model. As for the iris distance
we choose only the lowest, which corresponds to the best match between two
templates.

<figure><img src="image_4.png" /><figcaption>Fig. 3: The shifting process for one shift left and right.</figcaption></figure>

The number of bits transferred during each shift by two times the number of
filters used, since each filter will generate two bits of information from one pixel
normalized region. The real number of changes necessary to normalize rotational
inconsistencies will be determined by the maximum angle difference between two
pictures of the same eye. One change is defined as one shift to the left, then one
shift to the right. The example of shifting process is presented in Fig. 3.

In practice, when we configure the algorithm, we fix the maximum number
of shifts to the left and to the right. This brute force rotation angle estimation
by comparisons is made with each element in the database – this is the main
disadvantage of this method.
## 2.2 Authors' Approach: Fourier Descriptor Extended Method – angle calculation

**Discrete Fourier Transform (DTF).** For convenience of the reader and to establish notation we recall the basic definitions of DFT. DFT transforms $(c_0, \dots, c_{N-1}) \in \mathbb{C}^n$ into a sequence $(C_0, \dots, C_{N-1})$ of complex numbers using the frequency domain representation:

$$C_k = \frac{1}{\sqrt{N}} \sum_{n=0}^{N-1} c_n \exp \left( -i \frac{2\pi nk}{N} \right), \quad 0 \le k \le N-1,$$

where $c_n = a_n + ib_n$, for $k = 0, \dots, N-1$. This representation is widely used in data compression [7], partial differential equations, data mining, etc.

It is easy to see that

$$C_0 = \frac{1}{\sqrt{N}} \sum_{n=0}^{N-1} c_n$$

and

$$C_1 = \frac{1}{\sqrt{N}} \sum_{n=0}^{N-1} c_n \exp \left( -i \frac{2\pi n}{N} \right). \quad (1)$$

*Remark 1.* Fourier descriptors can be used to capture the main details of a boundary. This property is valuable because the coefficients usually keep the shape information. Thus they can be used as the basis for differentiating between distinct boundary shapes [5].

<figure><img src="image_5.png" /><figcaption>Fig. 4: Example of two shapes with digital boundary. The rotation of the second one does not allow to estimate angle of rotation.</figcaption></figure>
This allows recovering the rotation for images with ordinary boundaries (see Fig. 4). However, it is useless in the case of rotation of the circles. Moreover, it can be affected by image modification like contrast correction, gamma correction, blurring, etc.

**The Fourier descriptor approach to rotation detection in iris pattern recognition.** In this section we present how to recover the rotation angle using the modified idea of Fourier transform with vector angle calculation. The method from the above remark is not suitable in this situation, because the iris is represented as concentric circles and their rotations cannot be detected by boundary positions testing.

Assume that after using Daugman's Rubber Sheet Model we obtain two normalized iris $I$ and $I_R$ for original and rotated images respectively. Images are assumed to be in gray-scale and each pixel in the image is coded by a number from the set $\{0, \dots, 255\}$. Next, we resize the images to obtain the same size, for example we set the new size to $8 \times 256$ (image height $\times$ width).

As an outcome we obtain two matrices

$$ \tilde{I} = (c_{kn})_{k,n} \in M_{8 \times 256}(\mathbb{R}), \\ \tilde{I}_R = (c_{kn}^R)_{k,n} \in M_{8 \times 256}(\mathbb{R}). $$

Next, we construct the vectors of features describing $\tilde{I}$ and $\tilde{I}_R$ by Fourier descriptors. For each row of these matrices we calculate the first Fourier descriptor according to equation (1)

$$ C_k = \frac{1}{16} \sum_{n=0}^{255} c_{kn} \exp \left( -i \frac{\pi n}{128} \right), \text{ for } k = 1, \dots, 8, $$

$$ C_k^R = \frac{1}{16} \sum_{n=0}^{255} c_{kn}^R \exp \left( -i \frac{\pi n}{128} \right), \text{ for } k = 1, \dots, 8. $$

We put

$$ x = (C_1, \dots, C_8), \quad x^R = (C_1^R, \dots, C_8^R). $$

Under the considerations of subsection about Fourier Descriptor Method, we get that those vectors are in the form $x = e^{i\varphi}v, x^R = w$, for some $v, w \in \mathbb{C}^8$.

**Remark 2.** The problem of finding the angle of rotation in the iris images can be formulated mathematically as follows.

Let non-trivial vectors $v, w \in \mathbb{C}^8$ be fixed. We are looking for the minimum of the function $f$:

$$ f_{v,w}: [0, 2\pi] \ni \varphi \rightarrow \|e^{i\varphi}v - w\|^2 \in \mathbb{R}_+. $$

These functions describe the rotation one of the vectors relatively to the second one. We want to reduce the vectors to the same one-dimensional linear subspace. This will reduce the difference between them.
After simple transformation we get

$$f_{v,w}(\varphi) = \|v\|^2 + \|w\|^2 - (e^{i\varphi}\langle v, w \rangle + \overline{e^{i\varphi}\langle v, w \rangle}) \\ = \|v\|^2 + \|w\|^2 - 2\Re(e^{i\varphi}\langle v, w \rangle).$$

It is easy to see that the minimum is reached when the value of

$$\Re(e^{i\varphi}\langle v, w \rangle)$$

is the largest. A trivial observation shows that

$$\Re(e^{i\varphi}\langle v, w \rangle) \le |e^{i\varphi}\langle v, w \rangle| = |\langle v, w \rangle|, \text{ for } \varphi \in [0, 2\pi].$$

Consequently, we get $e^{i\varphi} = \langle v, w \rangle / |\langle v, w \rangle|$, since $z \cdot \bar{z} = |z|^2$ for $z \in \mathbb{C}$ and $|e^{i\varphi}| = 1$. Thus the minimum of the function $f$ is reached for

$$\varphi = \operatorname{Arg} \frac{\langle v, w \rangle}{|\langle v, w \rangle|}. \qquad (2)$$

Thus, with a description by a vector of features, we can find the angle by which the iris has been rotated.

Therefore, we can apply observation from previous section and by equation (2) we obtain

$$\varphi = \operatorname{Arg} \frac{\overline{\langle x, x^R \rangle}}{|\langle x, x^R \rangle|}, \qquad (3)$$

where $\varphi$ is the desired angle.

Summarizing, our approach to the problem of rotation angle estimation is stated as follows:

1. perform Daugman's Rubber Sheet Model standardization for $I$ and $I_R$ (we use rubber sheets of $8 \times 256$);

2. calculate Fourier Transform for each row of rubber sheets;

3. select the first Fourier descriptor from each rubber's row and build the vectors $x$ and $x^R$;

4. estimate angle of rotation using equation (3);

5. compare irises by Hamming distance using estimated angle.

The above steps link properties of the Fourier transform and the algebraic calculations. The computation is based on simple mathematical operations which make it easy for implementation.

## 3 Application in iris matching

In the last part of this work we present the comparison of classical Daugman's shifting method with our algorithm. Moreover, we make some experiments with noising and other "destruction" of information on iris images (ex. blur, gamma correction, sharpen) and examine the algorithm under such circumstances [8].

We prepare implementation of Daugman's iris recognition algorithm based on [3] and [2]. Besides we extend this application by adding the implementation of our method.
## 3.1 Comparison between classical and authors' method in rotation angle detection.

Firstly, we compare the efficiency of shifting method with our method. Table 1 contains comparison between the classical method and ours.

We evaluate IrisCode for rotated (for angle 0, ..., 9 degrees) and non-rotated images. Then we run shifting method to see what angle (column Rec.) was chosen and what the value of Hamming distance (column HD) is. In this case IrisCode evaluated for rotated iris image was compared with shifted original IrisCode in maximum 10 shifts. Next, we use our method which estimates rotation angle

<table><caption>Table 1: Comparison of angle detection in classical methods with shifts and authors' method</caption><thead><tr><th rowspan="2">Angle</th><th colspan="2">Classical</th><th colspan="2">Authors'</th></tr><tr><th>Rec.</th><th>HD</th><th>Rec.</th><th>HD</th></tr></thead><tbody><tr><td>0</td><td>0</td><td>0</td><td>0.0</td><td>0</td></tr><tr><td>1</td><td>0</td><td>0</td><td>0.0</td><td>0</td></tr><tr><td>2</td><td>1</td><td>0</td><td>1.4</td><td>0</td></tr><tr><td>3</td><td>3</td><td>0</td><td>2.8</td><td>0</td></tr><tr><td>4</td><td>3</td><td>0</td><td>2.8</td><td>0</td></tr><tr><td>5</td><td>4</td><td>0</td><td>4.2</td><td>0</td></tr><tr><td>6</td><td>6</td><td>0</td><td>5.6</td><td>0</td></tr><tr><td>7</td><td>6</td><td>0</td><td>5.6</td><td>0</td></tr><tr><td>8</td><td>7</td><td>0</td><td>7.0</td><td>0</td></tr><tr><td>9</td><td>8</td><td>0</td><td>8.4</td><td>0</td></tr></tbody></table>

(column Rec.), and then the estimated angle was rounded to the nearest integer and used to generate shifted IrisCode. The obtained distance is presented in column HD.

The experiment results show that our method gives the same angle as the brute force method, with the advantage that calculations were performed faster.

## 3.2 Sensitivity to image modifications

During the second experiment we want to check if our method is insensitive to image destruction. Fig. 5 presents images used in this experiment. But before we present experiment details let us put some notations.

Let $I$ denote image of size $w \times h$ pixels (width $\times$ height) – it is a matrix, so $I \in \{0, ..., 255\}^{w \times h}$ for gray-scale image. Then $I(x, y)$ for $x \in \{1, ..., w\}$, $y \in \{1, ..., h\}$ denotes colors value at position $(x, y)$ on image. By $I_N$ we denote the new image (output image) created by modifying the input image $I$.

We can now proceed in explaining the original image (Fig. 5a) modification descriptions. We use the following methods:
<figure><img src="image_6.png" /><figcaption>Fig. 5: Iris image modified by different methods: 5a – original image; 5b – brightness correction (+50); 5c – contrast correction (+30); 5d – gamma correction (+2.5); 5e – blur; 5f – sharpen.</figcaption></figure>

- brightness correction (level $\delta = +50$) (Fig. 5b) – this method removes shadows without affecting the rest of the image, by

$$I_N(x, y) = \min(255, I(x, y) + \delta) \text{ for } x \in \{1, \dots, w\}, y \in \{1, \dots, h\},$$

- contrast correction (level $\alpha = +30$) (Fig. 5c) – this method changes luminance on image and makes objects distinguishable

$$I_N(x, y) = \min \left( 255, \max \left( 0, \left\lfloor \frac{255}{255 - \alpha} (I(x, y) - 127) + 127 \right\rfloor \right) \right), \\ \text{for } x \in \{1, \dots, w\}, y \in \{1, \dots, h\}$$

- gamma correction (level $\gamma = 2.5$) (Fig. 5d) – it is nonlinear modification of brightness

$$I_N(x, y) = \left\lfloor 255 \left( \frac{I(x, y)}{255} \right)^{\gamma} \right\rfloor \text{ for } x \in \{1, \dots, w\}, y \in \{1, \dots, h\},$$

- blur (Fig. 5e) – it is a convolution filter with mask

$$B = \frac{1}{16} \begin{bmatrix} 1 & 2 & 1 \\ 2 & 4 & 2 \\ 1 & 2 & 1 \end{bmatrix},$$
used to reduce noise and details information on image. In this case linear filtering with a mask of size 3 × 3 is given by the expression

$$I_N(x, y) = \sum_{s=-1}^{1} \sum_{t=-1}^{1} B(s, t)I(x + s, y + t).$$

To generate full filtered image this equation should be applied for $x \in \{1, \dots, w\}$ and $y \in \{1, \dots, h\}$ (see [5]).

– sharpen (Fig. 5f) – it is a convolution filter with a mask

$$\begin{bmatrix} -1 & -1 & -1 \\ -1 & 9 & -1 \\ -1 & -1 & -1 \end{bmatrix}.$$

Sharpens the image making it look crisper and making the edges in the image more distinct.

<table><caption>Table 2: Angle detection in different image modifications (angle is given in degrees).</caption><thead><tr><th rowspan="2">Method</th><th colspan="8">Angle</th></tr><tr><th colspan="2">5</th><th colspan="2">14</th><th colspan="2">23</th><th colspan="2">47</th><th colspan="2">76</th></tr><tr><th></th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th></tr></thead><tbody><tr><td>None</td><td>4.22</td><td>0.78</td><td>12.66</td><td>1.34</td><td>22.50</td><td>0.50</td><td>46.41</td><td>0.59</td><td>75.94</td><td>0.06</td></tr><tr><td>Brightness</td><td>4.22</td><td>0.78</td><td>12.66</td><td>1.34</td><td>22.51</td><td>0.49</td><td>46.41</td><td>0.59</td><td>75.94</td><td>0.06</td></tr><tr><td>Contrast</td><td>3.99</td><td>1.01</td><td>12.43</td><td>1.57</td><td>22.27</td><td>0.73</td><td>46.18</td><td>0.82</td><td>75.71</td><td>0.29</td></tr><tr><td>Gamma</td><td>3.98</td><td>1.02</td><td>12.41</td><td>1.59</td><td>22.26</td><td>0.74</td><td>46.16</td><td>0.84</td><td>75.70</td><td>0.30</td></tr><tr><td>Blur</td><td>3.69</td><td>1.31</td><td>11.99</td><td>2.01</td><td>21.87</td><td>1.73</td><td>45.69</td><td>1.31</td><td>75.13</td><td>0.87</td></tr><tr><td>Sharpen</td><td>3.66</td><td>1.34</td><td>13.72</td><td>0.28</td><td>23.10</td><td>0.10</td><td>47.92</td><td>0.92</td><td>77.83</td><td>1.83</td></tr></tbody></table>

<table><caption>Table 3: Angle detection in different image modifications (angle is given in degrees) obtained by classical shifting.</caption><thead><tr><th rowspan="2">Method</th><th colspan="8">Angle</th></tr><tr><th colspan="2">5</th><th colspan="2">14</th><th colspan="2">23</th><th colspan="2">47</th><th colspan="2">76</th></tr><tr><th></th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th><th>Rec.</th><th>Error</th></tr></thead><tbody><tr><td>None</td><td>5</td><td>0</td><td>14</td><td>0</td><td>23</td><td>0</td><td>47</td><td>0</td><td>76</td><td>0</td></tr><tr><td>Brightness</td><td>0</td><td>5</td><td>10</td><td>4</td><td>0</td><td>23</td><td>38</td><td>9</td><td>8</td><td>68</td></tr><tr><td>Contrast</td><td>0</td><td>5</td><td>10</td><td>4</td><td>0</td><td>23</td><td>38</td><td>9</td><td>8</td><td>68</td></tr><tr><td>Gamma</td><td>0</td><td>5</td><td>11</td><td>3</td><td>1</td><td>22</td><td>38</td><td>9</td><td>8</td><td>68</td></tr><tr><td>Blur</td><td>0</td><td>5</td><td>13</td><td>2</td><td>3</td><td>20</td><td>60</td><td>13</td><td>30</td><td>46</td></tr><tr><td>Sharpen</td><td>0</td><td>5</td><td>10</td><td>4</td><td>0</td><td>23</td><td>38</td><td>9</td><td>8</td><td>68</td></tr></tbody></table>
Table 2 summarizes the values of estimated angles with error level obtained by our method. Table 3 contains angles recovered by classical Daugman method. The error level in both examples suggests that our method is not affected by the proposed image factors.

## 4 Conclusions

The iris identification and verification process is complex and the construction of a complete system requires addressing a number of problems. One of the most important and most difficult ones is that of detecting the rotation angle of the iris image. The authors have introduced a new method to solve this problem based on simple mathematical operations which have made it easy for implementation. Fourier transform and some algebraic calculations are utilized to work out an algorithm of high success rate whose performance is presented in this work. It has described and shown the rotation angle estimation using Fourier transform. The numerical experiments have demonstrated how the authors algorithm is relatively insensitive to both the eye and the camera relative to rotation, contrast changes, illumination level and other factors that usually affect the image under processing.

## Acknowledgment

The work is supported by AGH University of Science and Technology, Krakow (grant no. 11.11-220-01).

## References

1. Boles, WW and Boashash, B.: A human identification technique using images of the iris and wavelet transform. Signal Processing, IEEE Transactions on, 46(4):1185-1188 (1998).

2. Daugman, J.: High confidence visual recognition of persons by a test of statistical independence. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 15(11):1148-1161 (1993).

3. Daugman, J.: How iris recognition works. Circuits and Systems for Video Technology, IEEE Transactions on, 14(1):21-30 (2004).

4. Elshoura, S. M. and Megherbi, D. B.: A new rotation estimation and recovery algorithm. Computer Communication Control and Automation (3CA), 2010 International Symposium on, 1, 411-414 (2010).

5. Gonzalez, R. C. and Woods, R. E.: Digital Image Processing. Prentice Hall, Upper Saddle River, NJ (2002).

6. Huang, Y.P. and Luo, S.W. and Chen, E.Y.: An efficient iris recognition system Machine Learning and Cybernetics, 2002. Proceedings. 2002 International Conference on, 1:450-454 (2002).

7. Salomon, D.: Data compression: the complete reference Springer-Verlag New York Inc (2007).
8. Tomeo-Reyes, I. and Liu-Jimenez, J. and Rubio-Polo, I. and Redondo-Justo, J. and Sanchez-Reillo, R.: Input images in iris recognition systems: A case study. Systems Conference (SysCon), 2011 IEEE International, 501–505 (2011).

9. Wildes, R. P.: Iris recognition: an emerging biometric technology. Proceedings of the IEEE, 85(9):1348–1363 (1997).

10. Zhu, Y. and Tan, T. and Wang, Y.: Biometric personal identification based on iris patterns. Pattern Recognition, 2000. Proceedings. 15th International Conference on, 2:801–804 (2000).