Highly Accurate Palmprint Recognition Using Statistical and Wavelet Features

Highly Accurate Palmprint Recognition Using Statistical and Wavelet Features


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 wavelet-based features; statistical to capture the general characteristics of palmprints; and wavelet-based 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 well-known 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 cross-referenced 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 time-independent. 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:

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

  2. Trying to extract principal lines and wrinkles and other geometrical characteristics as discriminants.

There are many transform-based approaches. Li proposed Fourier-based features for palmprint recognition [6]. Wu [7] presented a wavelet-based 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 line-based 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 translation-invariant. 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 energy-based 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.

Fig. 1: Four sample palmprints from PolyU database

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 non-overlapping blocks and then extract 5 statistical features to capture essential spatial information and 9 wavelet-based features to determine the frequency content of the image. Since the statistical features alone are not able to capture high-frequency 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 energy-efficient 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 state-of-the-art 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 transform-domain features such as Fourier, Wavelet and Gabor-based 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 low-resolution images. Foreground segmentation techniques can be used to extract principal lines from palmprint [20]. Geometrical features are also used in other applications [21]. Sparsity-based 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 non-overlapping blocks, and from each block, 5 statistical and 9 wavelet-based 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 wavelet-based. In this work, the wavelet transform used is the second-order Daubechies filter [25]. The 2D-wavelet 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:

  1. Divide each palm image into non-overlapping blocks;

  2. Decompose each block up to 3 levels using Daubechies-2 wavelet transform; and

  3. 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 3-level wavelet decomposition of a palmprint is presented in Figure 2.

Fig. 2: Left: A palm image, Right: 3-level wavelet decomposition of the image

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 non-overlapping blocks will be:

Therefore there are such feature vectors, . Similarly they can be put in the columns of a 2-dimensional 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 over-fitting 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 feature-normalizing 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 (near-infrared). 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
Table 1: Identification accuracy for minimum distance classifier and weighted majority voting algorithm

It can be seen that when using a lower number of training samples, weighted majority voting fares much better that minimum-distance 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. K-PCA+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
K-PCA+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%
Table 2: Comparison with other algorithms for palmprint recognition

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 wavelet-based 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 wavelet-based 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.


The authors would like to thank the Hong Kong Polytechnic University (PolyU) for sharing their multisprectral palmprint database with us [27].


  • [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. 1348-1363, 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, 1408-1418, 2009.
  • [6] W. Li, D. Zhang and Z. Xu, “Palmprint identification by Fourier transform,” International Journal of Pattern Recognition and Artificial Intelligence 16.04: 417-432, 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, “Gabor-based kernel PCA for palmprint recognition,” Electronics Letters, vol. 43, no. 20, pp. 1077-1079, 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,: 1504-1513, 2008.
  • [11] F. Yue, W. Zuo, D. Zhang, and K. Wang, “Orientation selection using modified FCM for competitive code-based palmprint recognition,” Pattern recognition 42, no. 11: 2841-2849, 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), 385-395, 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 Hand-Based 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: 480-490, 2010.
  • [17] M. Hosseini, A. Fedorova, J. Peters and S. Shirmohammadi, “Energy-aware adaptations in mobile 3D graphics”, ACM Multimedia: 1017-1020, 2012.
  • [18] M. Hosseini, J. Peters, S. Shirmohammadi, “Energy-budget-compliant 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. 1118-1121. IEEE, 2013.
  • [23] HS. Mousavi, U. Srinivas, V. Monga, Y. Suo, M. Dao and TD. Tran, “Multi-task image classification via collaborative, hierarchical spike-and-slab priors”, ICIP, pp. 4236-4240. 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: 1163-1179, 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
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description