Hand Biometrics Using High Order Zernike Moments

From MeliWiki
Jump to: navigation, search

<Contributed to MeLi Wiki by Professor George Bebis, Department of Computer Science and Engineering, University of Nevada, Reno>

Hand Biometrics

Recently, there has been increased interest in developing biometrics-based authentication systems which has led to intensive research in fingerprint, face, hand, ear, and iris recognition [1]. Each biometric has its strength and weakness depending on the application and its requirements. The geometry of the hand contains relatively invariant features of an individual. Hand-based authentication is among the oldest live biometrics-based authentication modalities. The existence of several hand-based authentication commercial systems and patents indicate the effectiveness of this type of biometric.

Hand shape can be easily captured in a relatively user friendly manner by using conventional CCD cameras. This technology is more acceptable by the public in daily life mainly because it lacks a close connection to forensic applications. However, hand-based verification systems are usually employed in small scale person authentication applications due to the fact that geometric features of the hand (e.g., finger length/width, area/size of the palm) are not as distinctive as fingerprint or iris features. Lately, there has been some interest lately in fusing different biometrics to increase system performance. The ease of use and acceptability of hand-based biometrics make hand shape a good candidate in these heterogeneous systems.

The majority of hand-based verification systems use geometric measurements. In these systems, the user is asked to place his/her hand on a surface and align it, with the help of some guidance pegs, on the surface. A mirror is usually used to obtain a side view of the hand using a single camera. The alignment operation simplifies the feature extraction process to a great extent and allows high processing speeds. In most cases, a few handcrafted geometric features (e.g. length, width and height of the fingers, thickness of the hand, aspect ratio of fingers and palm, etc.) are extracted, making it possible to construct a small template. Removal of pegs, to improve convenience, and use of more powerful feature extraction techniques to capture the shape of the hand more accurately represent promising research directions in this area. In this assignment, you will investigate using high-order Zernike moments for capturing hand geometry.

Zernike Moments

Moment functions of image intensity values are used to capture global features of the image in pattern recognition and image analysis [2]. Among many moment based descriptors, Zernike moments have minimal redundancy, rotation invariance and robustness to noise; therefore they are used in a wide range of applications on image analysis, reconstruction and recognition. Zernike moments are based on a set of complex polynomials that form a complete orthogonal set over the interior of the unit circle [3]. They are defined to be the projection of the image function on these orthogonal basis functions. The basis functions <math>V_{n,m}(x,y)</math> are given by:

<math> V_{n,m}(x,y)=V_{n,m}(\rho,\theta)=R_{n,m}(\rho)e^{jm\theta} \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(1) </math>

where n is a non-negative integer, m is non-zero integer subject to the constraints n-|m| is even and n<|m|, ρ is the length of the vector from origin to (x,y), <math>\theta</math> is the angle between vector ρ and the x-axis in a counter clockwise direction and <math>R_{n,m}(\rho)</math> is the Zernike radial polynomial. The Zernike radial polynomials,<math>R_{n,m}(\rho)</math>,are defined as:

<math> R_{n,m}(\rho)=\sum_{k=|m|,n-k=even}^{n}\frac{(-1)^{\frac{n-k}{2}}\frac{n+k}{2}!}{\frac{n-k}{2}!\frac{k+m}{2}!\frac{k-m}{2}!}\rho^{k}=\sum_{k=|m|,n-k=even}^{n}\beta_{n,m,k}\rho^{k} \;\;\;\;\;\;\;\;(2) </math>

Note that <math>R_{n,m}(\rho)=R_{n,-m}(\rho)</math>. The basis functions in equation 1 are orthogonal thus satisfy

<math> \frac{n+1}{\pi}\iint_{x^{2}+y^{2}\leqslant 1}V_{n,m}(x,y)V_{p,q}^{*}(x,y)=\delta _{n,p}\delta _{m,q} \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(3) </math>

where

<math> \delta_{a,b}=\begin{cases} 1 & \text{ if } a=b \\ 0 & \text{ if } otherwise \end{cases} \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(4) </math>

The Zernike moment of order n with repetition m for a digital image function <math>f(x,y)</math> is given by [3]:

<math> Z_{n,m}=\frac{n+1}{\pi}\sum\sum_{x^{2}+y^{2}\leq 1}f(x,y)V_{n,m}^{*}(x,y) \;\;\;\;\;\;\;\;(5) </math>

where <math>V_{n,m}^{*}(x,y)</math> is the complex conjugate of <math>V_{n,m}(x,y)</math>. To compute the Zernike moments of a given image, the image center of mass is taken to be the origin. The function <math>f(x,y)</math> can then be reconstructed by the following truncated expansion:

<math> \tilde{f}(x,y)=\sum_{n=0}^{N}\frac{C_{n,0}}{2}R_{n,0}(\rho)+\sum _{n=1}^{N}\sum_{m>0}(C_{n,m}cosm\theta+s_{n,m}sinm\theta)R_{n,m}(\rho) \;\;\;\;\;\;\;\;(6) </math>

where N is the maximum order of Zernike moments we want to use, Cn,m and <math>S_{n,m}</math> denote the real and imaginary parts of <math>Z_{n,m}</math> respectively.


Accurate and Efficient Computation of High Order Zernike Moments

Direct computation of Zernike moments is very expensive, limiting their use especially at high orders. There have been some efforts to reduce the computational cost by employing quantized polar coordinate systems, however, quantization introduces some error in high order Zernike moments. To preserve accuracy, a different approach has been proposed which does not use any form of coordinate transformation and employs arbitrary precision arithmetic [4]. The computational complexity is reduced by detecting the common terms in Zernike moments with different order and repetition. Specifically, by substituting equations 2 and 1 in 5 and re-organizing the terms the Zernike moments can be calculated as follows:

<math> \begin{align} Z_{n,m} &=\frac{n+1}{\pi}\sum \sum_{x^{2}+y^{2}\leq 1}(\sum_{k=|m|}^{n}\beta_{n,m,k}\rho^{k})e^{-jm\theta}f(x,y)\\ &= \frac{n+1}{\pi}\sum_{k=|m|}^{n}\beta_{n,m,k}(\sum \sum_{x^{2}+y^{2}\leq 1}e^{-jm\theta}\rho^{k}f(x,y))\\ &= \frac{n+1}{\pi}\sum_{k=|m|}^{n}\beta_{n,m,k}\chi _{m,k} \;\;\;\;\;\;\;\;\;\;\;\;\;\;(7) \end{align} </math>

The <math>\chi _{m,k}</math>'s defined in equation 7 become a common term in the computation of Zernike moments with the same repetition as shown in Figure 1 for the case of repetition <math>m=0</math>. In general, to compute Zernike moments up to order N, we need to compute <math>\chi _{m,k}</math> for each repetition as demonstrated in Table 1. The table shows all the <math>\chi _{m,k}</math> to be computed for each repetition up to order 10. The second row of the table corresponds to the <math>\chi _{m,k}</math> shown in Figure 1. Once all the entries in the Table 1 are computed, Zernike moments with any order and repetition can be calculated as a linear combination of <math>\chi _{m,k}</math> as shown in equation 7. Also, note that the coefficients <math>\beta_{n,m,k}</math>does not depend on the image or the coordinates; therefore, they can be stored on a small lookup table to save further computation.

Fig.1. The common terms to compute Zernike moments up to 10 orders with zero repetition
Table 1. <math>\chi_{m,k}</math>’s needed to compute Zernike moments up to 10 order and m repetition.

Another important issue in high orders Zernike moment computation is numerical precision. Depending on the image size and the maximum order, double precision arithmetic does not provide enough precision. This fact is demonstrated in table 2, which shows the magnitude of the difference between Zernike moments computed using double precision and arbitrary precision arithmetic for a 300 x 300 image up to order 50. It can be seen that the error becomes more and more significant with increasing order and decreasing repetition. Figure 3 shows the effect of this error on the orthogonality of basis functions. It can be clearly seen that in Figure 2(a), which is obtained using the double precision, equation 3 is violated to a great extent while Figure 2(b) which is obtained using arbitrary precision, the orthogonality is preserved.

Table 2. The difference between magnitude of Zernike moments computed by classical method using double precision and big number class variables.
Fig. 2. Dot product of basis function with <math>n=43; m=7</math> and other basis functions up to order 50 using (a) double precision and (b) arbitrary precision arithmetic.

Using Zernike Moments for Hand Shape Verification

One can imagine utilizing various shape descriptors to provide a more powerful representation of the shape of the hand, replacing the conventional geometric features. In this project, we will use high-order Zernike moments for representing hand shape geometry. The method requires 2D hand silhouette images which can be acquired by placing the hand on a lighting table (or a scanner) without any guidance pegs. Moreover, it does not require extracting any landmarks on the hand (e.g., finding finger joints), a process which could be prone to errors. Using Zernike moments for hand-based authentication requires fast computation of high-order moments as accurately as possible, in order to capture the details of the hand shape. To deal with these requirements, we are using the algorithm described in Section 3.

To determine the maximum order of Zernike moments needed for capturing the shape of the hand satisfactorily, we can use the average reconstruction error (i.e., Eq. 5) on a large number of hand images. Fig. 3 shows the reconstruction error for different orders. As it can be observed, the error almost saturates for orders higher than 70. Fig. 3(a), shows the reconstructions for different orders. The saturation observed in Fig. 3(b) is also visually evident in Fig. 3. Based on these experiments, the maximum order chosen in our system was 70.


Fig. 3. (a) Original and (b) reconstructed images (left to right, top to bottom) up to order 10, 20, 30, 40, 50, 60, 70, 80, and 90; (c) reconstruction error.

Zernike moments up to order 70 yield a feature vector of 1296 components. To reduce template size, Principal Component Analysis (PCA) can be used to reduce the dimensionality of the Zernike feature vectors. Using only 30 components, we were able to capture 99% of the information. For matching, the Euclidean distance can be used. Since we use multiple templates for each subject, our similarity criterion is based on the minimum distance between the query and the templates.

Experimental Results

In order to evaluate the approach, we used data from 40 people of different age and sex. For each subject, we collected 10 images of their right hand during the same session. Besides asking the subjects to stretch their hand and place it inside a square area drawn on the surface of the lighting table, no other restrictions were imposed (see Fig. 4). To capture different samples, subjects were asked to remove their hand from the lighting table, relax for a few seconds, and then place it back again. As a result, finger movements were unavoidable. For example, the middle and ring fingers are more apart from each other in Fig. 4(d) than in Fig. 4(c).

Fig 4. Sample images belonging to the same subject.

Our experimental results show that Zernike moments can tolerate certain finger movement (e.g., 6 degrees rotation about the axis perpendicular to the joint of the finger with the palm), however, they are more sensitive when fingers move close to each other. Interestingly enough, finger motion does not affect high-order moments significantly more than low-order moments. Also, Zernike moments cannot tolerate very well situations where the hand is bent at the wrist. In our database, the maximum distance between samples was 0.6556. The mean distance between samples of the same subject (i.e., 1800 pairs of hands) was 0.2063, while the mean distance between samples of different subjects (i.e., 76,200 pairs of hands) was 0.4507.

We used different number of samples (e.g., 3, 4, and 5) for each subject as enrollment templates. To capture the effect of template selection on overall system performance, we repeated each experiment ten times, each time choosing the enrollment templates randomly. The remaining samples were used to construct matching and non-matching sets to estimate False Acceptance Rate (FAR) and False Reject Rate (FRR). Figs. 5(a), (b), and (c) show the average ROC curves using 3, 4 and 5 templates per subject respectively. For comparison purposes, our tests were performed using both Zernike moments and PCA features. In all cases, performance was better using PCA was rather than using raw Zernike moments except for very low FAR values. Moreover, we observed that the error rates decrease to a great extent with an increase in the number of templates, which also enforces the use of PCA.

Fig. 5. Average ROC curves using (a) 3, (b) 4, and (c) 5 templates for each subject; the solid and dashed curves correspond to the raw Zernike moments and PCA features respectively.

It should be mentioned that using the whole hand for authentication suffers from finger motion. To deal with this issue, the method has been extended by decomposing the silhouette of the hand in different regions, corresponding to the palm and fingers, and fusing information from different parts of the hand [5]. . To capture the geometry of the palm and the fingers, high-order Zernike moments are used again.

Project

Zernike moments can be used for recognizing various types of objects. In this project, you will experiment with using Zernike moments for hand-based authentication.

Experiments

(a) Create a small database of hand images by collecting M (M>=5) images from N (N>=20) subjects. You can capture the hand images using a scanner or request a dataset from Dr. Bebis (bebis@cse.unr.edu).

(b) Implement the Zernike Moments method discussed in Section 2. Verify the accuracy of high-order Zernike Moments using the orthogonality criterion (i.e., Table 2, Figure 2).

(c) Implement the improved method discussed in Section 3. Verify the accuracy of high-order Zernike Moments using the orthogonality criterion (i.e., Table 2, Figure 2).

(d) Randomly choose 2M/3 of the images for training (i.e., templates) and keep the remaining for testing. Using 1, 2, and 3 images (i.e., templates) per person, compute the verification accuracy using the test images. Show your results in terns ROC curves as in Section 4. Analyze the verification errors and investigate the effect of finger movement.

(e) Use PCA to reduce the dimensionality of the Zernike moments. Repeat the experiment in (d) and compare your results.

Wiki Assessment

Pre-test questions

1. What geometrical features might be important for hand-based authentication? How easy would it be to compute these features accurately?

Answer: Students will probably mention various features including finger lengths, finger widths, palm ratio etc. In answering the second part of the question, students will have to think about how to obtain these features. This might require identifying different fingers and extracting certain landmarks.

2. Compare hand geometry with other biometrics such as fingerprint and face in terms of discrimination ability.

Answer: The most obvious difference is that fingerprints and faces seem to contain much more information about identity than hands. Currently, commercial systems use hand geometry for authentication only. However, using powerful features, such as high order Zernike moments, allows computing fine details of hand’s geometry. Our study in [5] demonstrated that hand geometry can be used for identification.

3. Will hand and finger movement affect system accuracy? How can we handle these issues?

Answer: Hand and finger movements affect system accuracy since they contribute tor errors in the computation of the hand’s geometric features. Different answers might be presented for handling these issues such as extracting landmarks very precisely or using pegs to control the position and orientation of the hand. Another issue might be computing features that are invariant to hand position and orientation (such as Zernike Moments).


Post-test questions

1. What are the Zernike Moments? What are some of their properties?

Answer: see Section 2 for a formal definition. They are based on a set of complex polynomials that form a complete orthogonal set over the interior of the unit circle. They are powerful translation, rotation, and scale invariant shape descriptors. They are quite attractive for representing hand shape information due to having minimal redundancy.

2. What are some practical problems with computing high-order Zernike moments? How can we address these issues?

Answer: (1) Accuracy and (2) Speed. Using Zernike moments for hand-based authentication requires fast computation of high-order moments as accurately as possible, in order to capture the details of the hand shape. To preserve accuracy, the algorithm described in Section 3 avoids any form of coordinate transformations and it uses arbitrary precision arithmetic. To reduce computational complexity, it avoids re-computing the same terms multiple times and uses a lookup table to save computations.

3. How are Zernike Moments used for hand-based authentication?

Answer: We compute the Zernike moments for a set of hand images from different people and we store them in a database. Given a new hand image, we compute its Zerrnike moments and we find the closest match from the database using Euclidean distance. Details are provided in Section 4.

4. Are Zernike moments affected by finger movement? How can we handle this issue?

Answer: Yes, finger movement affects Zernike moments as discussed in Section 5. To deal with this issue, we need to segment the fingers and the palm and compute Zernike moments separately for each of them [5].

References and Resources

  1. Biometrics: http://en.wikipedia.org/wiki/Biometrics
  2. C. H. Teh and R. T. Chin, “On image analysis by the method of moments,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 10, pp. 485-513, 1988.
  3. 3.0 3.1 A. Khotanzad and Y. H. Hong,“Invariant image recognition by Zernike moments,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 12, pp. 489-498, 1990.
  4. G. Amayeh, A. Erol, G. Bebis, and M. Nicolescu, "Accurate and Efficient Computation of High Order Zernike Moments", International Symposium on Visual Computing, LNCS, vol 3804, Lake Tahoe, NV, December 2005
  5. 5.0 5.1 G. Amayeh, G. Bebis, A. Erol, and M. Nicolescu, "Hand-Based Verification and Identification Using Palm-Finger Segmentation and Fusion", Computer Vision and Image Understanding (CVIU) vol 113, pp. 477-501, 2009