home  |   research   |  members   |  projects  |  publications   |  conferences of interest   |  downloads   |  contact  |  intern
 
 

Shedding Light on the Veins - Evaluation Framework and Scores Files

This is "The Multimedia Signal Processing and Security Lab", short WaveLab, website. We are a research group at the Computer Sciences Department of the University of Salzburg headed by Andreas Uhl. The short name "WaveLab" already indicates that wavelets are among our favorite tools - we have 15 years of experience in this area. Our research is focused on Multimedia Security including Watermarking, Image and Video Compression, Medical Image Classification, and Biometrics.


Framework Source Information

This is a feature extraction and matching/evaluation framework for hand vein recognition implemented in MATLAB. It was tested on MATLAB 2016 and should work with all version of MATLAB newer or equal to 2016. This software is under the Simplified BSD license.

The framework contains all the feature extraction and matching as well as evaluation methods used for the experiments in the paper:

Christof Kauba, and Andreas Uhl “Shedding Light on the Veins - Reflected Light or Transillumination in Hand-Vein Recognition”, in Proceedings of The 11th IAPR International Conference on Biometrics (ICB), 2018.

Feature Extraction Methods

The following 6 feature extractors, the first 5 outputting binary vein images and the last one outputting keypoint-based features, are contained:

  • Maximum Curvature (MC)
  • Repeated Line Tracking (RLT)
  • Wide Line Detector (WLD)
  • Principal Curvature (PC)
  • Gabor Filter (GF)
  • SIFT (SIFT)

Only MC, PC, GF and SIFT have been used in the paper.

Evaluation Methods

There are two different types of evaluation:

  • Single illumination only: Evaluating the single set performance using one typ of illumination only.
  • Cross-spectrum/cross-illumination: Evaluating the cross-spectrum (850 vs. 950 nm) as well as cross-illumination (reflected light vs. transillumination) matching performance.

There are settings files for each of the evaluated feature extraction methods (MC, PC, and SIFT) on the PROTECTVein data set (as the VeinPLUS is not publicly available) and for each type of evaluation. Using these settings files all the scores and results files of the experiment conducted in the paper on the PROTECTVein data set can be reproduced.

Package Information

The main directory contains the setup and the main functions for running the two different sets of experiments on the PROTECTVein data aset, including the matching/score calculation function. The package further contains the following subdirectories:

  • data: Here the PROTECTVein images should be placed and all the feature, score and results files can be found
  • functions_eer_evaluation: Functions from the Biosecure Tool to determine EER and ROC curves (modified)
  • functions_external: Helper functions not implemented by ourselves (see other dependencies)
  • functions_feature_extraction: Implementations of the different feature extractors
  • functions_matching: Implementation of the different matching functions (wrapper for Miura matcher and vl_feat SIFT matcher)
  • functions_preprocessing: Implementation of all functions regarding vein image preprocessing
  • functions_ton: Functions from B.T. Ton for feature extractors and matching
  • utility_functions: Some utility functions, e.g. a progress bar class
  • settings: This directory contains the settings for the feature extraction and matching step for each of the sub data sets
  • vl_feat: Put the vl_feat MATLAB version in this directory

Usage Instructions

The whole framework is written in MATLAB. For more detailed usage instructions have a look at the readme.txt file contained in the package. It contains all the necessary feature extractors and matching scripts as well as an EER/DET evaluation framework. Only for the SIFT implementation, the external package vl_feat has to be downloaded and put into the "vl_feat" subdirectory. The data set has to be downloaded seperately too.

To run all the evaluations, simply use the scripts evaluatePROTECTVeinSingle.m and evaluatePROTECTVeinCross.m.

External Dependencies

  • vl_feat: Implements several computer vision algorithms. The SIFT implementation of this hand vein framework depends on vl_feat SIFT (www.vlfeat.org). The MATLAB version is available at vl_feat binary package

Datasets

The Hand Vein subset of the PROTECT Multimodal Biometric Database (PROTECTVein) has been utilised which need to be obtained from the PROTECT Multimodal Biometric DB and should be put into the data/PROTECTVein/1/G directory.

The second data set used during the experiments is the VeinPLUS Hand Vein Data Set. Unfortunately this data set is not publicly available due to restrictions with the original consent form. Further information regarding this data set can be found in [1].

Other Dependencies

The following methods have not been implemented by ourselves but are already included in the framework sources:

For the Maximum Curvature, Repeated Line Tracking, Wide Line Detector and Principal Curvature feature extraction as well as for the finger boundary detection and the finger normalisation an implementation of B.T. Ton was utilised which is publicly available through MATLAB Central. The Gabor Filter approach is a custom implementation of the approach by Kumar et al. [6] done by Emanuela Piciucco in [7], which is also included in the hand vein evaluation framework package.

For matching an implementation of B.T. Ton of the method proposed by Miura et al. [2, 3] which can also be downloaded via MATLAB Central was used.

For the EER determination the routine of the Biosecure Tool was utilisied which can be found here.

For adaptive thresholding an implementation by Guanglei Xiong, which freely available at MATLAB Central was used.

For Gaussian filtering an implementation by F. van der Heijden, freely available at MATLAB Central was used.

For reading the settings from .ini files an ini file parser MATLAB class (IniConfig.m) from Evgeny Prilepin aka Iroln is used. It is freely available at MATLAB Central

References

  • VeinPLUS Data Set
  • [1] Alexander Gruschina. VeinPLUS: A Transillumination and Reflection-based Hand Vein Database. CoRR, abs/1505.06769, 2015. URL http://arxiv.org/abs/1505.06769.
  • PROTECT Multimodal Biometric Data Set
  • [2] University of Reading. PROTECT Multimodal DB Dataset., 2017. URL http://projectprotect.eu/dataset.
  • Maximum Curvature
  • [3] Naoto Miura, Akio Nagasaka, Takafumi Miyatake. Extraction of finger-vein patterns using maximum curvature points in image profiles. IEICE transactions on information and systems, 90(8):1185—1194, 2007
  • Repeated Line Tracking
  • [4] Naoto Miura, Akio Nagasaka, Takafumi Miyatake. Feature extraction of finger-vein patterns based on repeated line tracking and its application to personal identification. Machine Vision and Applications, 15(4):194—203, 2004
  • Wide Line Detector
  • [5] Beining Huang, Yanggang Dai, Rongfeng Li, Darun Tang, Wenxin Li. Finger-vein authentication based on wide line detector and pattern normalization. Pattern Recognition (ICPR), 2010 20th International Conference on:1269—1272, 2010
  • Principal Curvature
  • [6] Joon Hwan Choi, Wonseok Song, Taejeong Kim, Seung-Rae Lee, Hee Chan Kim. Finger vein extraction using gradient normalization and principal curvature. IS&T/SPIE Electronic Imaging:725111—725111, 2009
  • Gabor Filter
  • [7] Ajay Kumar, Yingbo Zhou. Human identification using finger images. Image Processing, IEEE Transactions on, 21(4):2228—2244, 2012

    [8] E. Piciucco, E. Maiorana, C. Kauba, A. Uhl, P. Campisi. Cancelable Biometrics for Finger Vein Recognition. 2016 International Workshop on Sensing, Processing and Learning for Intelligent Machines (SPLINE), 2016.

  • IUWT
  • [9] Jean-Luc Starck, Jalal Fadili, Fionn Murtagh. The Undecimated Wavelet Decomposition and its Reconstruction. IEEE Transactions on Image Processing, 16(2):297—309, 2007. URL http://dx.doi.org/10.1109/TIP.2006.887733
  • SIFT
  • [10] Christof Kauba, Andreas Uhl. Robustness Evaluation of Hand Vein Recognition Systems. Proceedings of the International Conference of the Biometrics Special Interest Group (BIOSIG'15), 2015.

Contact

Evaluation Framework Sources Download

The code is available upon request.

Please fill out this form to request a download link for the evaluation framework MATLAB source files:

Name:
Affiliation:
Email address:

Scores Files

General Structure of the Files

The scores files are provided as MATLAB .mat files. Each .mat file contains a struct, containing two vectors:

  • positives: This vector contains the scores obtained from the genuine matches.
  • negatives: This vector contains the scores obtained from the impostor matches.

The scores are all similarity scores, i.e. higher scores indicate higher similarity. Thus the genuine scores should be ideally higher than the impostor ones. The scores obtained for the 3 binary features using the Miura matcher are in the range of [0 - 0.5] while the scores obtained for SIFT are in the range of [0 - 1].

File Naming Conventions and Directory Structure

According to the experiments, there are two different sets of score files: one for the single set experiments and one for the cross-spectrum/cross-illumination matching experiments. These sets are further divided by the sensor (only for PROTECTVein) as well as the illumination condition (reflected light 850/950 and transillumination).

For the single illumination set experiments the directory structure (Single Sets is the main directory) is as follows:

  • PROTECTVein: contains all the single set scores files for the PROTECTVein data set
    • IDS: Contains the scores files for the IDS Imaging Camera sensor subset
      • Reflected Light 850
      • Reflected Light 950
      • Transillumination
    • Nexus 5: Contains the scores files for the Nexus 5 smartphone sensor subset
      • Reflected Light 850
      • Reflected Light 950
      • Transillumination
  • VeinPLUS: contains all the single set scores files for VeinPLUS data set
    • Reflected Light
    • Transillumination

Each of the subdirectories contains one scores file per feature type:

  • Scores_GF.mat: Scores obtained for the evaluation of the Gabor Filter based features.
  • Scores_MC.mat: Scores obtained for the evaluation of the Maximum Curvature based features.
  • Scores_PC.mat: Scores obtained for the evaluation of the Principal Curvature based features.
  • Scores_SIFT.mat: Scores obtained for the evaluation of the SIFT based features.

For the cross-matching experiments the directory structure (Cross-Matching is the main directory) is as follows:

  • PROTECTVein
    • IDS
      • Reflected Light 850 - Reflected Light 950
        • Scores_Reflected_850_950_GF.mat
        • Scores_Reflected_850_950_MC.mat
        • Scores_Reflected_850_950_PC.mat
        • Scores_Reflected_850_950_SIFT.mat
      • Reflected Light 850 - Transillumination
        • Scores_Reflected_850_Transillumination_GF.mat
        • Scores_Reflected_850_Transillumination_MC.mat
        • Scores_Reflected_850_Transillumination_PC.mat
        • Scores_Reflected_850_Transillumination_SIFT.mat
      • Reflected Light 950 - Transillumination
        • Scores_Reflected_950_Transillumination_GF.mat
        • Scores_Reflected_950_Transillumination_MC.mat
        • Scores_Reflected_950_Transillumination_PC.mat
        • Scores_Reflected_950_Transillumination_SIFT.mat
    • Nexus 5
      • Reflected Light 850 - Reflected Light 950
        • Scores_Reflected_850_950_GF.mat
        • Scores_Reflected_850_950_MC.mat
        • Scores_Reflected_850_950_PC.mat
        • Scores_Reflected_850_950_SIFT.mat
      • Reflected Light 850 - Transillumination
        • Scores_Reflected_850_Transillumination_GF.mat
        • Scores_Reflected_850_Transillumination_MC.mat
        • Scores_Reflected_850_Transillumination_PC.mat
        • Scores_Reflected_850_Transillumination_SIFT.mat
      • Reflected Light 950 - Transillumination
        • Scores_Reflected_950_Transillumination_GF.mat
        • Scores_Reflected_950_Transillumination_MC.mat
        • Scores_Reflected_950_Transillumination_PC.mat
        • Scores_Reflected_950_Transillumination_SIFT.mat
  • VeinPLUS
    • Scores_GF_CrossMatch.mat: Scores from cross-illumination matching reflected light - transillumination for the Gabor Filter features
    • Scores_MC_CrossMatch.mat: Scores from cross-illumination matching reflected light - transillumination for the Maximum Curvature features
    • Scores_PC_CrossMatch.mat: Scores from cross-illumination matching reflected light - transillumination for the Principal Curvature features
    • Scores_SIFT_CrossMatch.mat: Scores from cross-illumination matching reflected light - transillumination for the SIFT features

Scores Files Download

The scores are available upon request.

Please fill out this form to request a download link for the scores files:

Name:
Affiliation:
Email address: