Highly Accurate Palmprint Recognition Using Statistical and Wavelet Features
Abstract
Palmprint is one of the most useful physiological biometrics that can be used as a powerful means in personal recognition systems. The major features of the palmprints are palm lines, wrinkles and ridges, and many approaches use them in different ways towards solving the palmprint recognition problem. Here we have proposed to use a set of statistical and waveletbased features; statistical to capture the general characteristics of palmprints; and waveletbased to find those information not evident in the spatial domain. Also we use two different classification approaches, minimum distance classifier scheme and weighted majority voting algorithm, to perform palmprint matching. The proposed method is tested on a wellknown palmprint dataset of 6000 samples and has shown an impressive accuracy rate of 99.65%100% for most scenarios.
Highly Accurate Palmprint Recognition Using Statistical and Wavelet Features
Shervin Minaee and AmirAli Abdolrashidi 
ECE Department, NYU Polytechnic School of Engineering, NY, USA 
Index Terms— Palmprint, Statistical features, Wavelet, Minimum distance classifier, Majority voting.
1 Introduction
Identification has always been required in critical tasks and applications; to ask for an object or a signature that only the right person possesses. Throughout history, there were always attempts to make this process flawless and secure, mostly to prevent forgeries. For centuries, identity was confirmed through an item or a mark. Today there are many ways for a person to identify himself or herself, including passwords and keys. A very reliable way is to utilize something that is very difficult to duplicate quickly; features of the person himself, also known as biometric data. The latter began in the late 19th century with the collection of fingerprints for forensic purposes due to them being unique to every person from whom they are sampled. Afterwards many other characteristics were deemed efficient and unique to be used in the areas of security and identification. Various algorithms have been used on an individual’s biometric data such as fingerprints [1], iris patterns [2], [3], face [4] and palmprints [5]. Sometimes even several methods are used together and then crossreferenced to dramatically increase the verity of the judgment.
We chose palmprints to be our focus in this work, because we believe that despite their more simplicity than fingerprints which casts the illusion that their use is less secure, they can be utilized just as reliably. Palmprints are more economical in the sense of acquisition. They can be easily obtained using inexpensive CCD cameras. They also work in different conditions of weather and are typically timeindependent. However, due to sampling limitations, lighting and other factors, they may pose problems like insufficient data due to unclear wrinkles or confusion due to poor image quality. This is the reason there are usually many different samples from every person in the database.
Like all biometric data, the key is to use image processing and, in many cases, machine learning approaches to extract distinct traits of every person, called features, by their samples and use the captured data for the next blocks of data to come. Being a popular area of research, there are many set of features and different approaches used for palmprint recognition [5]; however, two general approaches for palmprint recognition are the following:

Transforming palmprints into another domain and extracting the features in the transform domain, which could be wavelet, Fourier, Gabor, etc.

Trying to extract principal lines and wrinkles and other geometrical characteristics as discriminants.
There are many transformbased approaches. Li proposed Fourierbased features for palmprint recognition [6]. Wu [7] presented a waveletbased approach for palmprint recognition. They used wavelet energy distribution as a discriminant for the recognition process. Ekinci [8] proposed a Gabor wavelet representation approach followed by kernel PCA for palmprint recognition. There are also several linebased approaches, since palm lines are among the most useful features of palmprints. Chen [9] proposed a recognition algorithm that primarily uses creases. They extract all creases from a palm and use them for palmprint matching. The main advantage of this algorithm is that it is rotation and translationinvariant. Jia [10] used robust line orientation code for palmprint verification. A few groups used image coding methods for palmprint recognition, such as palm code, fusion code, competitive code, ordinal code [11]. A survey about palmprint recognition algorithms before 2009 is provided by Kong [5].
In the more recent works, in [12], Jia proposed a new descriptor for palmprint recognition called histogram of oriented lines (HOL) which is inspired by the histogram of oriented gradients descriptors. The proposed descriptor has some robustness against small deformation and changes of illumination. In [13], Minaee proposed to use a set of textural features for palmprint recognition. In their work, a set of local texture features are derived for each palmprint and then weighted majority voting algorithm is used to perform recognition task. In [14], Mistani proposed an energybased feature which results in a high accuracy for palmprint recognition. In [15], Xu proposed a quaternion principal component analysis approach for multispectral palmprint recognition which achieved a high accuracy rate.
In this work, we have used the palmprint database created by the Polytechnic University of Hong Kong (PolyU) [27] which includes a set of 12 palmprint samples from 500 people under four distinct light spectra. The job of the identifier is to take the picture of a new palmprint sample called a test subject and determine the person in possession of the most similar palmprint. Our dataset allows us to use multiple spectra of the same palmprint. Multispectral methods require different samples of the same object in order to make a better decision [16]. The images in this dataset are preprocessed and the regions of interest (ROI) for each of them are extracted. As a result, no more preprocessing is required before feature extraction. Four different palmprint images are shown in Figure 1.
Here we decided to use a set of features which capture the palmprint information both in spatial and frequency domains. We first divide each image into nonoverlapping blocks and then extract 5 statistical features to capture essential spatial information and 9 waveletbased features to determine the frequency content of the image. Since the statistical features alone are not able to capture highfrequency patterns in palm images, we also use wavelet features to capture fine details of palm images so we are able to detect the partial differences between two different palmprints.
After feature extraction, we have to use a classification algorithm to identify palmprints. In this work, two different classifiers are used, the first one being minimum distance classifier and the other one is the weighted majority voting algorithm, which is very fast and can be also implemented in electronic devices in conjunction with energyefficient algorithms [17], [18].
The rest of the paper is organized as follows. Section 2 provides a detailed explanation of the proposed features. The minimum distance classifier and weighted majority voting algorithms are explained in Sections 3.1 and 3.2 respectively. Experimental results are given in Section 4. We have provided a comprehensive comparison with other stateoftheart algorithms there. In the end, conclusion is given in Section 5.
2 Features
In general, features play a crucial part in the area of machine learning and computer vision. The more informative features are, the higher accuracy one can get. Therefore it is of utmost importance to extract a set of features which have the required information for prediction of the target value. Once the images are dealt with, it is usually needed to extract a set of features from them to use for prediction. For a comprehensive study of feature extraction, the reader is referred to [19].
There are different kinds of features that can be used for palmprint recognition. One type consists of spatial and statistical features. Another type is transformdomain features such as Fourier, Wavelet and Gaborbased features. Another category is the geometrical features based on principal lines and wrinkles. This category requires to extract these lines from the palmprint first, which may not be very simple for lowresolution images. Foreground segmentation techniques can be used to extract principal lines from palmprint [20]. Geometrical features are also used in other applications [21]. Sparsitybased features have also drawn a lot of attention in image classification during the past few years [22][24].
Here a set of features is used to capture the behavior of the palmprint in both spatial and frequency domains. Based on the simulations, this results in a very highly accurate identification method for palmprints. Two images may have similar global characteristics but look different in local regions. Thus the local features are extracted from different parts of each palmprint and combined to create a feature matrix for every image.
Each palmprint is divided into nonoverlapping blocks, and from each block, 5 statistical and 9 waveletbased features are derived which are expected to determine the frequency information of the palms. To obtain the statistical features of each block, it is necessary to find the histogram of pixel intensities first.
Let us assume that represents the pixel value at the location of a block of size (here ) and that denotes the probability mass function for the th pixel value, , in that block. Now the 5 following attributes can be defined as the statistical features of the current block:
where denotes the number of different pixel values in the current block.
The other 9 features are waveletbased. In this work, the wavelet transform used is the secondorder Daubechies filter [25]. The 2Dwavelet decomposition is performed up to three stages, and in the end, 10 subbands are produced. Since the mean pixel intensity is used as a statistical feature already, it is not required to use the LL subband of the last stage, but all other 9 subbands may be utilized. We extract the wavelet features in our implementation using the following algorithm:

Divide each palm image into nonoverlapping blocks;

Decompose each block up to 3 levels using Daubechies2 wavelet transform; and

Compute the energy of each subband and put the similar subband energy of all blocks in a vector.
If each subband is denoted by where , the wavelet features can be derived as follows:
Note that are blocks of size , are blocks of size and are blocks of size . An example of 3level wavelet decomposition of a palmprint is presented in Figure 2.
After the computations, there will be 14 different features for each block which can be combined in a vector together: . It is necessary to find the mentioned features for each block of a palmprint. If each palm image has a size of , the total number of nonoverlapping blocks will be:
Therefore there are such feature vectors, . Similarly they can be put in the columns of a 2dimensional matrix to produce the feature matrix of that palmprint, F:
Therefore there will be a total number of features for each palmprint image.
3 Recognition algorithm
The goal of palmprint recognition is to identify a person using their palmprint samples. It is possible to use the derived features of each person for identification. After finding the features of all people in the dataset, a classifier is required so that the features of each test palmprint can be compared with all of the available samples in the dataset and find the most similar one. There are different classifiers that can be used for this job; for example, minimum distance classifiers, support vector machines and probabilistic neural networks. In our work, two different classifiers are used. One is the minimum distance classifier which finds the most similar palmprint by minimizing a distance between the features of the test samples and those of the training samples. The other one is the weighted majority voting algorithm which finds the most similar palmprint by acquiring the predictions based on each feature and its weight, each time awarding the training data with points, and choosing the entry with the highest point. These two algorithms are described in the following sections. Since there are enough data in our dataset, our only goal is to minimize the recognition error on test samples, but if one is dealing with a small dataset, the overfitting problem should also be considered, as it is discussed in [26].
3.1 Minimum Distance Classifier
The minimum distance classifier is a popular algorithm in the template matching area. Basically, it finds the distance between the features of an unknown sample and those of the training samples and picks the training sample which has the minimum distance to the unknown as the predicted label. Therefore if denotes the features of a test sample and denotes the features of the th sample in our dataset, minimum distance assigns the test sample to one of the samples in the dataset such that:
Here Euclidean distance is used, which results in the nearest neighbor classifier.
In this algorithm, the feature matrix of all palmprints are extracted first. Considering size of the image and the block, each feature matrix has a size of .
As previously mentioned, there are 500 different persons in the database, and for each, there are 12 sample images. Every time, of these 12 samples are assigned as training and the remaining ones () as test samples, leading to a total of test samples. For each person, the feature matrix is defined as the average of the feature matrices of the different training images of that person. Then, for an unknown sample with the feature matrix , the following distance should be found:
which is very similar to the Frobenius norm of the difference of the two matrices, and each row has a weight of , where is a featurenormalizing factor trying to map all features into the same range. The term can be defined as the reciprocal of the mean value of the corresponding feature of all training samples. is the feature importance factor which gives higher weight to the features with more information about image labels. This factor can be any increasing function of single feature accuracy. Here is defined as the recognition accuracy when the th row of the feature matrix is used on its own for the recognition process.
For each palmprint, there are four different spectra; red, green, blue and infrared. Their features are signified by , , and respectively. The key is to calculate the above distance for all the spectra by comparing the images in the same spectrum. Next, the distance between a test image and the th training sample will be defined as the average of the distances of their corresponding spectra. Then, the predicted entry for a test image with the feature matrix will be:
3.2 Weighted Majority Voting
Voting theory has many applications in AI, search engines and recommendation systems. In algorithms based on majority voting, every voter decides the outcome of the test on its own, and in the end, all the decisions are counted and the final verdict is given. Here the voters are the features and the votes are given to every person in the training samples. In the unweighted case, all features have the same impact on the votes and none of them is superior. In the weighted case, which is used here, each feature has a weight of its own, based on which points will be awarded to each person. When added, the score will decide to which profile the test image is the most analogous.
This scheme has a very simple algorithm and can be performed in a very short time compared to other works in this field. First, the images of every single person are uniformly shuffled in the database so that the training part can use different pieces of data from a random set of the 12 images. Then, the features of the all the training data are gathered and the feature average for every person is computed. Next, the other images are used as test subjects and, for every existing spectrum, the distance between the feature vector of every sample and the average matrix from the training period is calculated. The minimum distance with any subject based on every feature is awarded points based on the coefficient of the feature in that stage. This reward is also applied to a matrix shared by all four spectra and holds the total score. In the end, the person gaining the maximum of the global score matrix is identified as the answer to the recognition query.
For every feature vector , the voting result will be:
When finds the person with minimum distance to the test subject, that person receives a point equal to the weight of the feature.
The score of person based on is denoted by where is the weight of the corresponding feature and where is the indicator function. Then the total score of the th training sample based on all the features in the scope of all the colors will be:
In the end, the identification factor will be calculated:
4 Results
We have tested our algorithm on the PolyU multisprectral palmprint database [27] containing 6000 palmprints captured from 500 different palms. Every palm is sampled 12 times in two sessions. Each palmprint contains 4 palm images collected at the same scene under 4 different illuminations, including red, green, blue and NIR (nearinfrared). Therefore the total number of images is 24000. The resolution of each image is 128128. As mentioned before, we are working on preprocessed palmprint images. Therefore, no further action is required to align or resize the palm images.
We have performed palmprint recognition for different fractions of training and test images. Correct identification takes place when the test palmprint is classified as a person whose label is the same as the label of this palmprint, and misidentification occurs when the test palmprint is classified for an entry whose tag is different from that of the correct palmprint.
Table 1 denotes the identification accuracy for two different classifiers. Every result is produced by repeating the experiment 10 times and taking the average of their results in order to make it more precise.
Ratio of training samples  Using minimum distance classifier  Using weighted majority voting 

3/12  97.42  99.95 
4/12  99.72  99.99 
5/12  99.51  99.99 
6/12  100  99.99 
It can be seen that when using a lower number of training samples, weighted majority voting fares much better that minimumdistance classifier. The reason is the fact that there are many features deciding the output of our system, and if a group of them fail to successfully pinpoint the match to the test subject, there are still others to help the system find the correct entry.
Table 2 shows a comparison of the results of our work and those of five other highly accurate schemes. We have compared our work with methods which were introduced in recent years. KPCA+GWR denotes Ekinci’s approach which applies kernel PCA to the Gabor features [8]. MDA+GWR denotes multilinear discriminant analysis applied to Gabor representation which is presented in [12]. The reported accuracy of the proposed scheme in Table 2 corresponds to the case where half of the images (3000 multispectral images) of each person are used for training and the other half for testing. For more details about the experiment conditions of other works, the reader is referred to the referenced papers in the first column of Table 2.
Method  Recognition rate 

KPCA+GWR [8]  95.17% 
Quaternion principal component analysis [15]  98.13% 
MDA+GWR [12]  98.81% 
Histogram of Oriented Lines [12]  99.97% 
Textural features [13]  100% 
Proposed scheme using majority voting  99.99% 
Proposed scheme using minimum distance classifier  100% 
As it can be seen, the algorithm utilized in this paper outperforms the other methods. This can be due to the fact that statistical features are also used in parallel with waveletbased ones. It is known that wavelet transform is quite sensitive to small changes in the image due to deformation, distortion and other transformations. As a result, methods solely based on such features are more susceptible to noise and other distortions. However, the proposed statistical features in this work do not share this drawback. Therefore they can help to have a more accurate recognition algorithm.
The system is implemented using MATLAB on a laptop with Windows 7 and Core i7 CPU running at 2GHz. The execution time for the proposed method is about 0.05s per test using majority voting algorithm.
5 Conclusion
This paper proposed a set of statistical and waveletbased features for palmprint recognition. One attempts to find the spatial information of palm images and the other aims to mostly capture their frequency content. One is sensitive to the major difference between different palms, while the other is more perceptive of the partial differences between similar palmprints. Two different classifiers are used to perform the recognition process. By using this method, our algorithm is able to identify palmprints with similar line patterns as well as unclear palmprints.
The proposed algorithm has significant advantages over the previous popular methods. The used features are very simple to extract. The algorithm is very fast and it does not need classifier training. Most importantly, it has a very high accuracy rate which is robust to the number of training samples and can be high even for the case where the ratio of training to test is 1 to 3. In the future, we will apply this set of features to other biometrics as well.
Acknowledgments
The authors would like to thank the Hong Kong Polytechnic University (PolyU) for sharing their multisprectral palmprint database with us [27].
References
 [1] K. Delac and M. Grgic, “A survey of biometric recognition methods,” Electronics in Marine, Proceedings Elmar. 46th International Symposium. IEEE, 2004.
 [2] RP. Wildes, “Iris recognition: An emerging biometric technology,” Proc. IEEE, vol. 85, pp. 13481363, Sept. 1997.
 [3] S. Minaee, AA. Abdolrashidi and Yao Wang, “Iris recognition using scattering transform and textural features”, IEEE Signal Processing Workshop, 2015.
 [4] MA. Turk and AP. Pentland, “Face recognition using eigenfaces,” IEEE Conference on Computer Vision and Pattern Recognition, 1991.
 [5] A. Kong, D. Zhang and M. Kamel, “A survey of palmprint recognition,” Pattern Recognition 42.7, 14081418, 2009.
 [6] W. Li, D. Zhang and Z. Xu, “Palmprint identification by Fourier transform,” International Journal of Pattern Recognition and Artificial Intelligence 16.04: 417432, 2002.
 [7] X. Wu, K. Wang and D. Zhang, “Wavelet based palmprint recognition,” International Conference on Machine Learning and Cybernetics, 2002. Vol. 3. IEEE, 2002.
 [8] M. Ekinci and M. Aykut, “Gaborbased kernel PCA for palmprint recognition,” Electronics Letters, vol. 43, no. 20, pp. 10771079, 2007.
 [9] J. Chen, C. Zhang and G. Rong, “Palmprint recognition using crease,” IEEE International Conference on Image Processing. Vol. 3, 2001.
 [10] W. Jia, D. Huang and D. Zhang, “Palmprint verification based on robust line orientation code,” Pattern Recognition 41.5,: 15041513, 2008.
 [11] F. Yue, W. Zuo, D. Zhang, and K. Wang, “Orientation selection using modified FCM for competitive codebased palmprint recognition,” Pattern recognition 42, no. 11: 28412849, 2009.
 [12] W. Jia, R. Hu, X. Lei, YK. Zhao and J. Gui, “Histogram of Oriented Lines for Palmprint Recognition,” IEEE Transactions on Systems, Man, and Cybernetics: Systems, 44(3), 385395, 2014.
 [13] S. Minaee and AA. Abdolrashidi, “Multispectral palmprint recognition using textural features,” IEEE Signal Processing in Medicine and Biology Symposium (SPMB), 2014.
 [14] S.A. Mistani, S. Minaee and E. Fatemizadeh, “Multispectral palmprint recognition using a hybrid feature,” arXiv preprint arXiv:1112.5997, 2011.
 [15] X. Xu and Z. Guo, “Multispectral palmprint recognition using quaternion principal component analysis,” IEEE Workshop on Emerging Techniques and Challenges for HandBased Biometrics, pp. 1â5, 2010.
 [16] D. Zhang, Z. Guo, G. Lu and W. Zuo, “An online system of multispectral palmprint verification,”IEEE Transactions on Instrumentation and Measurement, 59.2: 480490, 2010.
 [17] M. Hosseini, A. Fedorova, J. Peters and S. Shirmohammadi, “Energyaware adaptations in mobile 3D graphics”, ACM Multimedia: 10171020, 2012.
 [18] M. Hosseini, J. Peters, S. Shirmohammadi, “Energybudgetcompliant adaptive 3D texture streaming in mobile games”, Proceedings of the 4th ACM Multimedia Systems Conference, 2013.
 [19] I. Guyon, “Feature extraction: foundations and applications,” Springer Science and Business Media, Vol. 207, 2006.
 [20] S. Minaee and Y. Wang, “Screen Content Image Segmentation Using Least Absolute Deviation Fitting”, IEEE International Conference on Image Processing, 2015.
 [21] S. Minaee, M. Fotouhi and B.H. Khalaj, “A geometric approach for fully automatic chromosome segmentation”, Signal Processing in Medicine and Biology Symposium, IEEE, 2014.
 [22] U. Srinivas, HS. Mousavi, C. Jeon, V. Monga, A. Hattel and B. Jayarao, “SHIRC: A simultaneous sparsity model for histopathological image representation and classification,” ISBI, pp. 11181121. IEEE, 2013.
 [23] HS. Mousavi, U. Srinivas, V. Monga, Y. Suo, M. Dao and TD. Tran, “Multitask image classification via collaborative, hierarchical spikeandslab priors”, ICIP, pp. 42364240. IEEE, 2014.
 [24] U. Srinivas, HS. Mousavi, V. Monga, A. Hattel and B. Jayarao, “Simultaneous sparsity model for histopathological image representation and classification”, IEEE Transactions on Medical Imaging, 33.5: 11631179, 2014.
 [25] I. Daubechies, “Ten lectures on wavelets,” Vol. 61. Philadelphia: Society for industrial and applied mathematics, 1992.
 [26] S. Minaee, Y. Wang and Y. W. Lui, “Prediction of Longterm Outcome of Neuropsychological Tests of MTBI Patients Using Imaging Features,” Signal Processing in Medicine and Biology Symposium, IEEE, 2013.
 [27] http://www.comp.polyu.edu.hk/~biometrics /MultispectralPalmprint/MSP.htm