| Literature DB >> 28974031 |
Dat Tien Nguyen1, Hyo Sik Yoon2, Tuyen Danh Pham3, Kang Ryoung Park4.
Abstract
Finger-vein recognition, a new and advanced biometrics recognition method, is attracting the attention of researchers because of its advantages such as high recognition performance and lesser likelihood of theft and inaccuracies occurring on account of skin condition defects. However, as reported by previous researchers, it is possible to attack a finger-vein recognition system by using presentation attack (fake) finger-vein images. As a result, spoof detection, named as presentation attack detection (PAD), is necessary in such recognition systems. Previous attempts to establish PAD methods primarily focused on designing feature extractors by hand (handcrafted feature extractor) based on the observations of the researchers about the difference between real (live) and presentation attack finger-vein images. Therefore, the detection performance was limited. Recently, the deep learning framework has been successfully applied in computer vision and delivered superior results compared to traditional handcrafted methods on various computer vision applications such as image-based face recognition, gender recognition and image classification. In this paper, we propose a PAD method for near-infrared (NIR) camera-based finger-vein recognition system using convolutional neural network (CNN) to enhance the detection ability of previous handcrafted methods. Using the CNN method, we can derive a more suitable feature extractor for PAD than the other handcrafted methods using a training procedure. We further process the extracted image features to enhance the presentation attack finger-vein image detection ability of the CNN method using principal component analysis method (PCA) for dimensionality reduction of feature space and support vector machine (SVM) for classification. Through extensive experimental results, we confirm that our proposed method is adequate for presentation attack finger-vein image detection and it can deliver superior detection results compared to CNN-based methods and other previous handcrafted methods.Entities:
Keywords: NIR camera-based finger-vein recognition; convolutional neural network; presentation attack detection; spoof detection; transfer learning
Mesh:
Year: 2017 PMID: 28974031 PMCID: PMC5677458 DOI: 10.3390/s17102261
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
A summary of previous studies on presentation attack detection (PAD) methods and our proposed method.
| Categories | Methods | Strength | Weakness | Accuracy (Database) |
|---|---|---|---|---|
| PAD methods using handcrafted methods | Uses a series of images to check the variation of vein patterns based on heart rate [ | Easy to implement | Requires high processing time for capturing and processing successive images | Not available |
| Uses the combination of features in both spatial and frequency domain through Fourier and wavelet transform [ | Uses information from both spatial and frequency domain for fake image detection. Fair detection accuracy | More complex than the method in [ | Equal error rate (EER) = 2.874% | |
| Uses average vertical energy of the Fourier spectrum; BSIF feature; monogenic scale space based global descriptor; and local binary pattern on residual image [ | Fair detection accuracy | Detection accuracy is limited due to the use of handcrafted image feature extractor. | Half total error rate (HTER) = 0.00% | |
| Uses the windowed DMD as micro-texture descriptor for fake finger-vein image detection [ | Results comparable to previous methods | EER = 1.59% | ||
| Uses steerable pyramids decomposition for image feature extraction [ | Improved detection accuracy compared to some other previous proposed methods. | Average classification error rate (ACER) = about 3.0% | ||
| PAD method using learning-based method ( | Uses CNN to learn the suitable image feature extractor | Suitable image feature extractor is obtained using CNN-based method. | Requires a large amount of computation operations and is more complex than previous methods. | HTER = 0.00% (Using Idiap database) HTER = 0.031% (Using ISPR database) |
Figure 1The overall structure of the proposed PAD method, and its position in finger-vein recognition systems.
Figure 2General structure of a CNN.
Figure 3Demonstration of the difference between: (a) traditional machine learning technique; and (b) transfer learning technique.
Description of CNN structure based on Alex network for PAD problem.
| Layer Name | Number of Filters | Filter Size | Stride Size | Padding Size | Dropout Value | Output Size |
|---|---|---|---|---|---|---|
| Input Layer | n/a | n/a | n/a | n/a | n/a | 227 × 227 × 3 |
| Convolution Layer 1 (conv1) | 96 | 11 × 11 × 3 | 4 × 4 | 0 | n/a | 55 × 55 × 96 |
| Rectified Linear Unit (relu1) | n/a | n/a | n/a | n/a | n/a | 55 × 55 × 96 |
| Normalization Layer (norm1) | n/a | n/a | n/a | n/a | n/a | 55 × 55 × 96 |
| MAX Pooling Layer 1 (pool1) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 27 × 27 × 96 |
| Convolution Layer 2 (conv2) | 256 | 5 × 5 × 48 | 1 × 1 | 2 × 2 | n/a | 27 × 27 × 256 |
| Rectified Linear Unit (relu2) | n/a | n/a | n/a | n/a | n/a | 27 × 27 × 256 |
| Normalization Layer (norm2) | n/a | n/a | n/a | n/a | n/a | 27 × 27 × 256 |
| MAX Pooling Layer 2 (pool2) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 13 × 13 × 256 |
| Convolution Layer 3 (conv3) | 384 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 13 × 13× 384 |
| Rectified Linear Unit (relu3) | n/a | n/a | n/a | n/a | n/a | 13 × 13 × 384 |
| Convolution Layer 4 (conv4) | 384 | 3 × 3 × 192 | 1 × 1 | 1 × 1 | n/a | 13 × 13 × 384 |
| Rectified Linear Unit (relu4) | n/a | n/a | n/a | n/a | n/a | 13 × 13 × 384 |
| Convolution Layer 5 (conv5) | 256 | 3 × 3 × 192 | 1 × 1 | 1 × 1 | n/a | 13 × 13 × 256 |
| Rectified Linear Unit (relu5) | n/a | n/a | n/a | n/a | n/a | 13 × 13 × 256 |
| MAX Pooling Layer 5 (pool5) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 6 × 6 × 256 |
| Fully Connected Layer 1 (fc6) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Dropout Layer (drop6) | n/a | n/a | n/a | n/a | 0.50 | 4096 |
| Rectified Linear Unit (relu6) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Fully Connected Layer 2 (fc7) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Rectified Linear Unit (relu7) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Dropout Layer (drop7) | n/a | n/a | n/a | n/a | 0.50 | 4096 |
| Output Layer (fc8) | n/a | n/a | n/a | n/a | n/a | 2 |
| Softmax Layer (prob) | n/a | n/a | n/a | n/a | n/a | 2 |
| Classification Layer (output) | n/a | n/a | n/a | n/a | n/a | 2 |
Description of customized Alex network for PAD problem.
| Layer Name | Number of Filters | Filter Size | Stride Size | Padding Size | Dropout Value | Output Size |
|---|---|---|---|---|---|---|
| Input Layer | n/a | n/a | n/a | n/a | n/a | 87 × 151 × 3 |
| Convolution Layer 1 (conv1) | 96 | 11 × 11 × 3 | 2 × 2 | 0 | n/a | 39 × 71 × 96 |
| Rectified Linear Unit (relu1) | n/a | n/a | n/a | n/a | n/a | 39 × 71 × 96 |
| Normalization Layer (norm1) | n/a | n/a | n/a | n/a | n/a | 39 × 71 × 96 |
| MAX Pooling Layer 1 (pool1) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 19 × 35 × 96 |
| Convolution Layer 2 (conv2) | 128 | 5 × 5 × 96 | 1 × 1 | 2 × 2 | n/a | 19 × 35 × 128 |
| Rectified Linear Unit (relu2) | n/a | n/a | n/a | n/a | n/a | 19 × 35 × 128 |
| Normalization Layer (norm2) | n/a | n/a | n/a | n/a | n/a | 19 × 35 × 128 |
| MAX Pooling Layer 2 (pool2) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 9 × 17 × 128 |
| Convolution Layer 3 (conv3) | 192 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 9 × 17 × 192 |
| Rectified Linear Unit (relu3) | n/a | n/a | n/a | n/a | n/a | 9 × 17 × 192 |
| Convolution Layer 4 (conv4) | 192 | 3 × 3 × 192 | 1 × 1 | 1 × 1 | n/a | 9 × 17 × 192 |
| Rectified Linear Unit (relu4) | n/a | n/a | n/a | n/a | n/a | 9 × 17 × 192 |
| Convolution Layer 5 (conv5) | 128 | 3 × 3 × 192 | 1 × 1 | 1 × 1 | n/a | 9 × 17 × 128 |
| Rectified Linear Unit (relu5) | n/a | n/a | n/a | n/a | n/a | 9 × 17 × 128 |
| MAX Pooling Layer 5 (pool5) | 1 | 3 × 3 | 2 × 2 | 0 | n/a | 4 × 8 × 128 |
| Fully Connected Layer 1 (fc6) | n/a | n/a | n/a | n/a | n/a | 2048 |
| Dropout Layer (drop6) | n/a | n/a | n/a | n/a | 0.50 | 2048 |
| Rectified Linear Unit (relu6) | n/a | n/a | n/a | n/a | n/a | 2048 |
| Fully Connected Layer 2 (fc7) | n/a | n/a | n/a | n/a | n/a | 1024 |
| Rectified Linear Unit (relu7) | n/a | n/a | n/a | n/a | n/a | 1024 |
| Dropout Layer (drop7) | n/a | n/a | n/a | n/a | 0.50 | 1024 |
| Output Layer (fc8) | n/a | n/a | n/a | n/a | n/a | 2 |
| Softmax Layer (prob) | n/a | n/a | n/a | n/a | n/a | 2 |
| Classification Layer (output) | n/a | n/a | n/a | n/a | n/a | 2 |
Description of CNN structure based on VGG-16 network for PAD problem.
| Layer Name | Number of Filters | Filter Size | Stride Size | Padding Size | Dropout Value | Output Size |
|---|---|---|---|---|---|---|
| Input Layer | n/a | n/a | n/a | n/a | n/a | 224 × 224 × 3 |
| Convolution Layer (conv1_1) | 64 | 3 × 3 × 3 | 1 × 1 | 1 × 1 | n/a | 224 × 224 × 64 |
| Rectified Linear Unit 1 (relu1_1) | n/a | n/a | n/a | n/a | n/a | 224 × 224 × 64 |
| Convolution Layer (conv1_2) | 64 | 3 × 3 × 64 | 1 × 1 | 1 × 1 | n/a | 224 × 224 × 64 |
| Rectified Linear Unit (relu1_2) | n/a | n/a | n/a | n/a | n/a | 224 × 224 × 64 |
| MAX Pooling Layer (pool1) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 112 × 112 × 64 |
| Convolution Layer (conv2-1) | 128 | 3 × 3 × 64 | 1 × 1 | 1 × 1 | n/a | 112 × 112 × 128 |
| Rectified Linear Unit (relu2_1) | n/a | n/a | n/a | n/a | n/a | 112 × 112 × 128 |
| Convolution Layer (conv2_2) | 128 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 112 × 112 × 128 |
| Rectified Linear Unit (relu2_2) | n/a | n/a | n/a | n/a | n/a | 112 × 112 × 128 |
| MAX Pooling Layer (pool2) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 56 × 56 × 128 |
| Convolution Layer (conv3_1) | 256 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 56 × 56 × 256 |
| Rectified Linear Unit (relu3_1) | n/a | n/a | n/a | n/a | n/a | 56 × 56 × 256 |
| Convolution Layer (conv3_2) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 56 × 56 × 256 |
| Rectified Linear Unit (relu3_2) | n/a | n/a | n/a | n/a | n/a | 56 × 56 × 256 |
| Convolution Layer (conv3_3) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 56 × 56 × 256 |
| Rectified Linear Unit (relu3_3) | n/a | n/a | n/a | n/a | n/a | 56 × 56 × 256 |
| MAX Pooling Layer (pool3) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 28 × 28 × 256 |
| Convolution Layer (conv4_1) | 512 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 28 × 28 × 512 |
| Rectified Linear Unit (relu4_1) | n/a | n/a | n/a | n/a | n/a | 28 × 28 × 512 |
| Convolution Layer (conv4_2) | 512 | 3 × 3 × 512 | 1 × 1 | 1 × 1 | n/a | 28 × 28 × 512 |
| Rectified Linear Unit (relu4_2) | n/a | n/a | n/a | n/a | n/a | 28 × 28 × 512 |
| Convolution Layer (conv4_3) | 512 | 3 × 3 × 512 | 1 × 1 | 1 × 1 | n/a | 28 × 28 × 512 |
| Rectified Linear Unit (relu4_3) | n/a | n/a | n/a | n/a | n/a | 28 × 28 × 512 |
| MAX Pooling Layer (pool4) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 14 × 14 × 512 |
| Convolution Layer (conv5_1) | 512 | 3 × 3 × 512 | 1 × 1 | 1 × 1 | n/a | 14 × 14 × 512 |
| Rectified Linear Unit (relu5_1) | n/a | n/a | n/a | n/a | n/a | 14 × 14 × 512 |
| Convolution Layer (conv5_2) | 512 | 3 × 3 × 512 | 1 × 1 | 1 × 1 | n/a | 14 × 14 × 512 |
| Rectified Linear Unit (relu5_2) | n/a | n/a | n/a | n/a | n/a | 14 × 14 × 512 |
| Convolution Layer (conv5_3) | 512 | 3 × 3 × 512 | 1 × 1 | 1 × 1 | n/a | 14 × 14 × 512 |
| Rectified Linear Unit (relu5_3) | n/a | n/a | n/a | n/a | n/a | 14 × 14 × 512 |
| MAX Pooling Layer (pool5) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 7 × 7 × 512 |
| Fully Connected Layer (fc6) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Rectified Linear Unit (relu6) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Dropout Layer (drop6) | n/a | n/a | n/a | n/a | 0.50 | 4096 |
| Fully Connected Layer (fc7) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Rectified Linear Unit (relu7) | n/a | n/a | n/a | n/a | n/a | 4096 |
| Dropout Layer (drop7) | n/a | n/a | n/a | n/a | 0.50 | 4096 |
| Output Layer (fc8) | n/a | n/a | n/a | n/a | n/a | 2 |
| Softmax Layer (prob) | n/a | n/a | n/a | n/a | n/a | 2 |
| Classification Layer (output) | n/a | n/a | n/a | n/a | n/a | 2 |
Description of customized VGG-16 network for PAD problem.
| Layer Name | Number of Filters | Filter Size | Stride Size | Padding Size | Dropout Value | Output Size |
|---|---|---|---|---|---|---|
| Input Layer | n/a | n/a | n/a | n/a | n/a | 128 × 256 × 3 |
| Convolution Layer (conv1_1) | 32 | 3 × 3 × 3 | 1 × 1 | 1 × 1 | n/a | 128 × 256 × 32 |
| Rectified Linear Unit 1 (relu1_1) | n/a | n/a | n/a | n/a | n/a | 128 × 256 × 32 |
| Convolution Layer (conv1_2) | 32 | 3 × 3 × 32 | 1 × 1 | 1 × 1 | n/a | 128 × 256 × 32 |
| Rectified Linear Unit (relu1_2) | n/a | n/a | n/a | n/a | n/a | 128 × 256 × 32 |
| MAX Pooling Layer (pool1) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 64 × 128 × 32 |
| Convolution Layer (conv2-1) | 64 | 3 × 3 × 32 | 1 × 1 | 1 × 1 | n/a | 64 × 128 × 64 |
| Rectified Linear Unit (relu2_1) | n/a | n/a | n/a | n/a | n/a | 64 × 128 × 64 |
| Convolution Layer (conv2_2) | 64 | 3 × 3 × 64 | 1 × 1 | 1 × 1 | n/a | 64 × 128 × 64 |
| Rectified Linear Unit (relu2_2) | n/a | n/a | n/a | n/a | n/a | 64 × 128 × 64 |
| MAX Pooling Layer (pool2) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 32 × 64 × 64 |
| Convolution Layer (conv3_1) | 128 | 3 × 3 × 64 | 1 × 1 | 1 × 1 | n/a | 32 × 64 × 128 |
| Rectified Linear Unit (relu3_1) | n/a | n/a | n/a | n/a | n/a | 32 × 64 × 128 |
| Convolution Layer (conv3_2) | 128 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 32 × 64 × 128 |
| Rectified Linear Unit (relu3_2) | n/a | n/a | n/a | n/a | n/a | 32 × 64 × 128 |
| Convolution Layer (conv3_3) | 128 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 32 × 64 × 128 |
| Rectified Linear Unit (relu3_3) | n/a | n/a | n/a | n/a | n/a | 32 × 64 × 128 |
| MAX Pooling Layer (pool3) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 16 × 32 × 128 |
| Convolution Layer (conv4_1) | 256 | 3 × 3 × 128 | 1 × 1 | 1 × 1 | n/a | 16 × 32 × 256 |
| Rectified Linear Unit (relu4_1) | n/a | n/a | n/a | n/a | n/a | 16 × 32 × 256 |
| Convolution Layer (conv4_2) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 16 × 32 × 256 |
| Rectified Linear Unit (relu4_2) | n/a | n/a | n/a | n/a | n/a | 16 × 32 × 256 |
| Convolution Layer (conv4_3) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 16 × 32 × 256 |
| Rectified Linear Unit (relu4_3) | n/a | n/a | n/a | n/a | n/a | 16 × 32 × 256 |
| MAX Pooling Layer (pool4) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 8 × 16 × 256 |
| Convolution Layer (conv5_1) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 8 × 16 × 256 |
| Rectified Linear Unit (relu5_1) | n/a | n/a | n/a | n/a | n/a | 8 × 16 × 256 |
| Convolution Layer (conv5_2) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 8 × 16 × 256 |
| Rectified Linear Unit (relu5_2) | n/a | n/a | n/a | n/a | n/a | 8 × 16 × 256 |
| Convolution Layer (conv5_3) | 256 | 3 × 3 × 256 | 1 × 1 | 1 × 1 | n/a | 8 × 16 × 256 |
| Rectified Linear Unit (relu5_3) | n/a | n/a | n/a | n/a | n/a | 8 × 16 × 256 |
| MAX Pooling Layer (pool5) | 1 | 2 × 2 | 2 × 2 | 0 | n/a | 4 × 8 × 256 |
| Fully Connected Layer (fc6) | n/a | n/a | n/a | n/a | n/a | 2048 |
| Rectified Linear Unit (relu6) | n/a | n/a | n/a | n/a | n/a | 2048 |
| Dropout Layer (drop6) | n/a | n/a | n/a | n/a | 0.50 | 2048 |
| Fully Connected Layer (fc7) | n/a | n/a | n/a | n/a | n/a | 1024 |
| Rectified Linear Unit (relu7) | n/a | n/a | n/a | n/a | n/a | 1024 |
| Dropout Layer (drop7) | n/a | n/a | n/a | n/a | 0.50 | 1024 |
| Output Layer (fc8) | n/a | n/a | n/a | n/a | n/a | 2 |
| Softmax Layer (prob) | n/a | n/a | n/a | n/a | n/a | 2 |
| Classification Layer (output) | n/a | n/a | n/a | n/a | n/a | 2 |
Figure 4Examples of real and presentation attack finger-vein images in ISPR database: (a) using 1200 dpi printer resolution; and (b) using 300 dpi printer resolution.
Description of ISPR presentation attack finger-vein image database.
| Image Making Protocol | Real Access | Presentation Attack Access | |||||
|---|---|---|---|---|---|---|---|
| Train Set | Test Set | Total | Train Set | Test Set | Total | ||
| Material | Printed on A4 Paper (ISPR-DB1) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 |
| Printed on MAT Paper (ISPR-DB2) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 | |
| Printed on OHP Film (ISPR-DB3) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 | |
| Printer Resolution | Printed Using 300 DPI Resolution Printer (ISPR-DB4) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 |
| Printed Using 1200 DPI Resolution Printer (ISPR-DB5) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 | |
| Printed Using 2400 DPI Resolution Printer (ISPR-DB6) | 1700 | 1600 | 3300 | 1440 | 1080 | 2520 | |
| Entire Database (ISPR-DB) | 1700 | 1600 | 3300 | 4320 | 3120 | 7560 | |
Figure 5Example of real and presentation attack finger-vein images in Idiap database: (a) real and presentation attack finger-vein images from full image database (Idiap Full-DB); and (b) real and presentation attack finger-vein images from cropped image database (Idiap Cropped-DB).
Description of and Istituto Dalle Molle di Intelligenza Artificiale Percettiva (Idiap) presentation attack finger-vein image database with two protocols of full and cropped images.
| Image Making Protocol | Real Access | Presentation Attack Access | ||||
|---|---|---|---|---|---|---|
| Train Set | Test Set | Validation Set | Train Set | Test Set | Validation Set | |
| Full Image Database (Idiap Full-DB) | 120 | 200 | 120 | 120 | 200 | 120 |
| Cropped Image Database (Idiap Cropped-DB) | 120 | 200 | 120 | 120 | 200 | 120 |
Description of the augmented database derived from Idiap databases.
| Database | Real Access | Presentation Attack Access | ||||
|---|---|---|---|---|---|---|
| Train Set | Test Set | Validation Set | Train Set | Test Set | Validation Set | |
| Idiap Full-DB | 7440 (120 × 62) | 200 | 120 | 7440 (120 × 62) | 200 | 120 |
| Idiap Cropped-DB | 7440 (120 × 62) | 200 | 120 | 7440 (120 × 62) | 200 | 120 |
Description of the augmented database derived from ISPR database and its sub-databases (ISPR-DB1–ISPR-DB6).
| Database | Real Access | Presentation Attack Access | |||
|---|---|---|---|---|---|
| Train Set | Test Set | Train Set | Test Set | ||
| Material | Printed on A4 Paper (ISPR-DB1) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 |
| Printed on MAT Paper (ISPR-DB2) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 | |
| Printed on OHP Film (ISPR-DB3) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 | |
| Printer Resolution | Printed Using 300 DPI Resolution Printer (ISPR-DB4) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 |
| Printed Using 1200 DPI Resolution Printer (ISPR-DB5) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 | |
| Printed Using 2400 DPI Resolution Printer (ISPR-DB6) | 37,400 (1700 × 22) | 1600 | 37,440 (1440 × 26) | 1080 | |
| Entire Database (ISPR-DB) | 56,100 (1700 × 33) | 1600 | 56,160 (4320 × 13) | 3240 | |
Figure 6Overall procedure of CNN-based PAD method for finger-vein recognition system.
PAD errors of CNN-based method with and without applying the transfer learning technique using Alex network architecture depicted in Table 2 (unit: %).
| Database | Without Transfer Learning | With Transfer Learning | ||||
|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | APCER | BPCER | ACER | |
| ISPR-DB | 2.5000 | 0.8073 | 1.6536 | 0.2018 | 0.1863 | |
| Idiap Full-DB | 0.000 | 1.5000 | 0.7500 | 0.0000 | 0.0000 | |
| Idiap Cropped-DB | 2.5000 | 2.5000 | 2.500 | 0.0000 | 0.0000 | |
PAD errors of CNN-based method with and without applying the transfer learning technique using VGG-16 network architecture in Table 4 (unit: %).
| Database | Without Transfer Learning | With Transfer Learning | ||||
|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | APCER | BPCER | ACER | |
| ISPR-DB | 0.0000 | 100.00 | 50.00 | 0.0000 | 0.1240 | |
| Idiap (Full-DB) | 0.0000 | 100.00 | 50.00 | 0.0000 | 0.0000 | |
| Idiap (Cropped-DB) | 0.0000 | 100.00 | 50.00 | 0.0000 | 1.0000 | |
Figure 7The DET curves of PAD method based on Alex network using three different databases: ISPR-DB, Idiap Full-DB and Idiap Cropped-DB database; and two training modes: with and without applying the transfer learning method.
Figure 8The DET curves of PAD method (in log scale) based on VGG-16 network with three different databases: ISPR-DB, Idiap Full-DB and Idiap Cropped-DB database; and two training modes: with and without applying the transfer learning method.
Detection errors of our proposed method with and without applying the transfer learning technique using Alex network architecture in Table 2 (unit: %).
| Database | Without Transfer Learning | With Transfer Learning | ||||||
|---|---|---|---|---|---|---|---|---|
| SVM Kernel (No. PC) | APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| ISPR-DB | Polynomial Kernel (No. PC = 60) | 1.1875 | 1.1725 | 1.1800 | Linear Kernel (No. PC = 50) | 0.0313 | 0.0310 | |
| Idiap (Full-DB) | RBF Kernel (No. PC = 50) | 0.0000 | 0.0000 | 0.0000 | RBF Kernel (No. PC = 95) | 0.0000 | 0.0000 | 0.0000 |
| Idiap (Cropped-DB) | RBF Kernel (No. PC = 150) | 1.0000 | 1.0000 | 1.0000 | Linear Kernel (No. PC = 100) | 0.0000 | 0.0000 | |
Detection errors of our proposed method with and without applying the transfer learning technique using VGG-16 network architecture in Table 4 (unit: %).
| Database | Without Transfer Learning | With Transfer Learning | ||||||
|---|---|---|---|---|---|---|---|---|
| SVM Kernel (No. PC) | APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| ISPR-DB | RBF Kernel (No. PC = 200) | 2.8438 | 2.8550 | 2.8494 | Linear Kernel (No. PC = 70) | 0.0313 | 0.0310 | |
| Idiap (Full-DB) | RBF Kernel (No. PC = 70) | 0.0000 | 0.0000 | 0.0000 | Linear Kernel (No. PC = 60) | 0.0000 | 0.0000 | |
| Idiap (Cropped-DB) | RBF Kernel (No. PC = 105) | 1.0000 | 1.0000 | 1.0000 | RBF Kernel (No. PC = 95) | 0.0000 | 0.0000 | 0.0000 |
Detection errors of our proposed method using Alex network architecture in Table 2 on sub-databases of ISPR-DB based on the printing materials (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| Printed on A4 Paper (ISPR-DB1) | 0.1875 | 0.1855 | Polynomial Kernel (No. PC = 110) | 0.0313 | 0.0465 | ||
| Printed on MAT Paper (ISPR-DB2) | 0.0625 | 0.0930 | Polynomial Kernel (No. PC = 105) | 0.0000 | 0.0000 | ||
| Printed on OHP Film (ISPR-DB3) | 0.3750 | 0.3700 | Polynomial Kernel (No. PC = 90) | 0.0938 | 0.0930 | ||
Detection errors of our proposed method using Alex network architecture in Table 2 on sub-databases of ISPR-DB based on printing resolutions (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| Printed Using 300 DPI Resolution Printer (ISPR-DB4) | 0.1250 | 0.1390 | Linear Kernel (No. PC = 90) | 0.0313 | 0.0465 | ||
| Printed Using 1200 DPI Resolution Printer (ISPR-DB5) | 0.0000 | 0.0000 | Linear Kernel (No. PC = 60) | 0.0000 | 0.0000 | ||
| Printed Using 2400 DPI Resolution Printer (ISPR-DB6) | 0.2813 | 0.2775 | Polynomial Kernel (No. PC = 135) | 0.0625 | 0.0930 | ||
Detection errors of our proposed method using VGG-16 network architecture in Table 4 on sub-databases of ISPR-DB based on the printing materials (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| Printed on A4 Paper (ISPR-DB1) | 0.0313 | 0.0465 | Polynomial Kernel (No. PC = 50) | 0.0313 | 0.0465 | ||
| Printed on MAT Paper (ISPR-DB2) | 0.0000 | 0.0000 | Polynomial Kernel (No. PC = 70) | 0.0000 | 0.0000 | ||
| Printed on OHP Film (ISPR-DB3) | 0.1250 | 0.1390 | Polynomial Kernel (No. PC = 90) | 0.0000 | 0.0000 | ||
Detection errors of our proposed method using VGG-16 network architecture in Table 4 on sub-databases of ISPR-DB based on the printing resolution (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| Printed Using 300 DPI Resolution Printer (ISPR-DB4) | 0.0313 | 0.0465 | RBF Kernel (No. PC = 145) | 0.0000 | 0.0000 | ||
| Printed Using 1200 DPI Resolution Printer (ISPR-DB5) | 0.0000 | 0.0000 | Linear Kernel (No. PC = 195) | 0.0000 | 0.0000 | ||
| Printed Using 2400 DPI Resolution Printer (ISPR-DB6) | 0.0625 | 0.0465 | RBF Kernel (No. PC = 140) | 0.0313 | 0.0465 | ||
Detection errors of CNN-based method and our proposed method using customized Alex network in Table 3 (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| ISPR-DB | 0.6563 | 0.6640 | 0.6601 | RBF Kernel (No. PC = 70) | 0.2500 | 0.2625 | |
| Idiap Full-DB | 0.0000 | 0.0000 | 0.0000 | Linear Kernel (No. PC = 75) | 0.0000 | 0.0000 | |
| Idiap Cropped-DB | 0.0000 | 0.0000 | 0.0000 | Linear Kernel (No. PC = 55) | 0.0000 | 0.0000 | |
Detection errors of CNN-based method and our proposed method using customized VGG-16 network in Table 5 (unit: %).
| Database | CNN-Based Method with Transfer Learning | Our Proposed Method | |||||
|---|---|---|---|---|---|---|---|
| APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| ISPR-DB | 0.2500 | 0.2780 | 0.2640 | Linear Kernel (No. PC = 105) | 0.2188 | 0.2160 | |
| Idiap Full-DB | 0.0000 | 0.5000 | 0.2500 | Linear Kernel (No. PC = 90) | 0.0000 | 0.0000 | |
| Idiap Cropped-DB | 1.0000 | 1.0000 | 1.0000 | Linear Kernel (No. PC = 80) | 0.0000 | 0.0000 | |
Detection errors of our proposed method using customized Alex network and VGG-16 network on sub-databases of ISPR-DB database (unit: %).
| Database | Using Customized Alex Network | Using Customized VGG-16 Network | ||||||
|---|---|---|---|---|---|---|---|---|
| SVM Kernel | APCER | BPCER | ACER | SVM Kernel (No. PC) | APCER | BPCER | ACER | |
| Printed on A4 Paper (ISPR-DB1) | RBF Kernel (No. PC = 75) | 0.3438 | 0.3240 | Polynomial Kernel (No. PC = 115) | 0.2188 | 0.2315 | ||
| Printed on MAT Paper (ISPR-DB2) | Linear Kernel (No. PC = 120) | 0.1563 | 0.1855 | Linear Kernel (No. PC = 75) | 0.0313 | 0.0465 | ||
| Printed on OHP Film (ISPR-DB3) | Polynomial Kernel (No. PC = 120) | 0.2188 | 0.2315 | Linear Kernel (No. PC = 50) | 0.5625 | 0.5560 | ||
| Printed Using 300 DPI Resolution Printer (ISPR-DB4) | Linear Kernel (No. PC = 55) | 0.3438 | 0.3705 | Linear Kernel (No. PC = 75) | 0.2188 | 0.2315 | ||
| Printed Using 1200 DPI Resolution Printer (ISPR-DB5) | Linear Kernel (No. PC = 120) | 0.0000 | 0.0000 | Linear Kernel (No. PC = 200) | 0.0313 | 0.0465 | ||
| Printed Using 2400 DPI Resolution Printer (ISPR-DB6) | Polynomial Kernel (No. PC = 120) | 0.5938 | 0.6015 | Linear Kernel (No. PC = 60) | 0.0938 | 0.0925 | ||
Figure 9DET curves of various system configurations using our proposed method based on Alex network on two different databases of: (a) ISPR-DB database; and (b) Idiap Cropped-DB database.
Figure 10The DET curves of various system configurations using our proposed method based on VGG-16 network on two different databases: (a) ISPR-DB database; and (b) Idiap Cropped-DB database.
Comparison of PAD errors of our proposed method and various methods using ISPR and its sub-databases (unit: %).
| Method | Printed Using 300 DPI Resolution Printer (ISPR-DB4) | Printed Using 300 DPI Resolution Printer (ISPR-DB5) | Printed Using 300 DPI Resolution Printer (ISPR-DB6) | Entire ISPR Database (ISPR-DB) |
|---|---|---|---|---|
| FFT + HW + DW [ | 2.5460 | 1.4760 | 3.9310 | 2.8740 |
| CNN-based Method Using Alex network Architecture (Without PCA and SVM) | 0.1320 | 0.0000 | 0.2794 | 0.1940 |
| CNN-based Method using VGG-16 network Architecture (Without PCA and SVM) | 0.0389 | 0.0000 | 0.0545 | 0.0620 |
Comparison of PAD errors using our proposed method and various methods using Idiap Full-DB and Idiap Cropped-DB databases (unit: %).
| Database | Method | APCER | BPCER | ACER |
|---|---|---|---|---|
| Idiap Full-DB | Baseline [ | 0.00 | 0.00 | 0.00 |
| GUC [ | 0.00 | 8.00 | 4.00 | |
| B-Lab [ | 0.00 | 0.00 | 0.00 | |
| GRIP-PRIAMUS [ | 0.00 | 0.00 | 0.00 | |
| CNN-based Method Using Alex network Architecture (Without PCA and SVM) | 0.00 | 0.00 | 0.00 | |
| CNN-based Method using VGG-16 network Architecture (Without PCA and SVM) | 0.00 | 0.00 | 0.00 | |
| Idiap Cropped-DB | Baseline [ | 11.00 | 30.00 | 20.50 |
| GUC [ | 1.50 | 4.00 | 2.75 | |
| B-Lab [ | 0.00 | 2.50 | 1.25 | |
| GRIP-PRIAMUS [ | 0.00 | 0.00 | 0.00 | |
| CNN-based Method Using Alex network Architecture (Without PCA and SVM) | 0.00 | 0.00 | 0.00 | |
| CNN-based Method using VGG-16 network Architecture (Without PCA and SVM) | 0.00 | 0.00 | 0.00 | |
Description of the Idiap palm-vein database (PVD) database used in our experiments for PAD for palm-vein recognition system.
| Idiap PVD Database | Training Database | Testing Database | ||
|---|---|---|---|---|
| Original Database | Augmented Database | |||
| Session 1 | Full Image Protocol | 500 | 24,500 (500 × 49) | 500 |
| Cropped Image Protocol | 500 | 24,500 (500 × 49) | 500 | |
| Session 2 | Full Image Protocol | 500 | 24,500 (500 × 49) | 500 |
| Cropped Image Protocol | 500 | 24,500 (500 × 49) | 500 | |
Detection errors using Idiap PVD database (unit: %).
| Idiap PVD Database | Method | APCER | BPCER | ACER | |
|---|---|---|---|---|---|
| Session 1 | Full Protocol | FFT + HW + DW [ | 2.6 | 3.6 | 3.1 |
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.2 | 0.4 | 0.3 | ||
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.0 | 0.0 | 0.0 | ||
| 0.0 | 0.0 | ||||
| Cropped Protocol | FFT + HW + DW [ | 4.0 | 3.2 | 3.6 | |
| CNN-based Method Using Alex network (Without PCA and SVM) | 2.2 | 3.0 | 2.6 | ||
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.2 | 0.4 | 0.3 | ||
| 0.0 | 0.0 | ||||
| Session 2 | Full Protocol | FFT + HW + DW [ | 3.4 | 1.8 | 2.6 |
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.2 | 2.0 | 1.1 | ||
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.0 | 0.0 | 0.0 | ||
| 0.0 | 0.0 | 0.0 | |||
| Cropped Protocol | FFT + HW + DW [ | 5.8 | 4.4 | 5.1 | |
| CNN-based Method Using Alex network (Without PCA and SVM) | 2.2 | 2.2 | 2.2 | ||
| CNN-based Method Using Alex network (Without PCA and SVM) | 0.2 | 0.2 | 0.2 | ||
| 0.0 | 0.0 | ||||