Package: xbob.fingervein
Welcome to the Finger vein Recognition Library based on Bob.
This library is designed to perform a fair comparison of finger vein recognition algorithms.
It contains scripts to execute various kinds of finger vein recognition experiments on a variety of finger vein image databases, and running the help is as easy as going to the command line and typing:$ bin/fingerveinverify.py --helpAboutThis library is developed at theBiometrics groupat theIdiap Research Institute.
The FingerVeinRecLib is designed to run finger vein recognition experiments in a comparable and reproducible manner.NoteWhen you are working atIdiap, you might get a version of the FingerVeinRecLib, where all paths are set up such that you can directly start running experiments.
OutsideIdiap, you need to set up the paths to point to your databases, please checkRead Furtheron how to do that.DatabasesTo achieve this goal, interfaces to many publicly available facial image databases are contained, and default evaluation protocols are defined, e.g.:UTFVP - University of Twente Finger Vein Database [http://website]Interface availalbe xbob.db.utfvp [http://gitlab.idiap.ch/matthias.vanoni/xbob.db.utfvp]VERA Finger vein Database [http://www.idiap.ch/dataset]Interface availalbe xbob.db.vera [http://gitlab.idiap.ch/matthias.vanoni/xbob.db.vera]AlgorithmsTogether with that, a broad variety of traditional and state-of-the-art finger vein recognition algorithms such as:Maximum Curvature[MNM+05]Repeated Line Tracking[MNM+04]Wide Line Detector[HDLTL+10]is provided.
Furthermore, tools to evaluate the results can easily be used to create scientific plots, and interfaces to run experiments using parallel processes or an SGE grid are provided.ExtensionsOn top of these already pre-coded algorithms, the FingerVeinRecLib provides an easy Python interface for implementing new image preprocessors, feature types, finger vein recognition algorithms or database interfaces, which directly integrate into the fingervein recognition experiment.
Hence, after a short period of coding, researchers can compare their new invention directly with already existing algorithms in a fair manner.References[MNM+05]N. Miura, A. Nagasaka, and T. Miyatake.Extraction of Finger-Vein Pattern Using Maximum Curvature Points in Image Profiles. Proceedings on IAPR conference on machine vision applications, 9, pp. 347–350, 2005.[MNM+04]N. Miura, A. Nagasaka, and T. Miyatake.Feature extraction of finger vein patterns based on repeated line tracking and its application to personal identification. Machine Vision and Applications, Vol. 15, Num. 4, pp. 194–203, 2004.[HDLTL+10]B. Huang, Y. Dai, R. Li, D. Tang and W. Li.Finger-vein authentication based on wide line detector and pattern normalization. Proceedings of the 20th International Conference on Pattern Recognition (ICPR), 2010.InstallationTo download the FingerVeinRecLib, please go tohttp://pypi.python.org/pypi/xbob.fingervein, click on thedownloadbutton and extract the .zip file to a folder of your choice.The FingerVeinRecLib is a satellite package of the free signal processing and machine learning libraryBob, and some of its algorithms rely on theCSU Face Recognition Resources.
These two dependencies have to be downloaded manually, as explained in the following.BobYou will need a copy of Bob in version 1.2.0 or newer to run the algorithms.
Please downloadBobfrom its webpage.FaceRecLibYou will need a copy of FaceRecLib in version 1.2.3 or newer to run the algorithms.
Please downloadFaceRecLibfrom its webpage.Remember update thebuildout.cfgfile with the path of your data and package dependencies.After downloading, you should go to the console and write:$ python bootstrap.py
$ bin/buildoutThis will download all required packages and install them locally.
If you don’t want all the database packages to be downloaded, please remove the xbob.db.[database] lines from theeggssection of the filebuildout.cfgin the main directory before calling the three commands above.Test your installationTo verify that your installation worked as expected, you might want to run our test utilities:$ bin/nosetestsUsually, all tests should pass, if you useBobin version 1.2.1.
With other versions ofBob, you might find some failing tests.Cite our paperIf you use the FingerVeinRecLib in any of your experiments, please cite the following paper:@inproceedings{Tome_IEEEBIOSIG2014,
       author = {Tome, Pedro and Vanoni, Matthias and Marcel, S{\'{e}}bastien},
     keywords = {Biometrics, Finger vein, Spoofing Attacks},
        month = sep,
        title = {On the Vulnerability of Finger Vein Recognition to Spoofing},
    booktitle = {IEEE International Conference of the Biometrics Special Interest Group (BIOSIG)},
       series = {},
       volume = {},
         year = {2014},
        pages = {},
     location = {Darmstadt, Germay},
          url = {http://publications.idiap.ch/index.php/publications/show/2910}
}