Welcome to the Palm vein Recognition Library based on Bob. This library is designed to perform a fair comparison of palm vein recognition algorithms. It contains scripts to execute various kinds of palm vein recognition experiments on a variety of palm vein image databases, and running the help is as easy as going to the command line and typing:
$ bin/palmveinverify.py --help
This library is developed at the Biometrics group at the Idiap Research Institute. The PalmVeinRecLib is designed to run palm vein recognition experiments in a comparable and reproducible manner.
Note
When you are working at Idiap, you might get a version of the PalmVeinRecLib, where all paths are set up such that you can directly start running experiments. Outside Idiap, you need to set up the paths to point to your databases, please check the documentation on how to do that.
To achieve this goal, interfaces to many publicly available facial image databases are contained, and default evaluation protocols are defined, e.g.:
- CASIA Multi-Spectral Palmprint Database [http://biometrics.idealtest.org/dbDetailForUser.do?id=6]
- VERA Palm vein Database [http://www.idiap.ch/scientific-research/resources]
Together with that, a broad variety of traditional and state-of-the-art palm vein recognition algorithms such as:
- Local Binary Pattern Histogram Sequences [ZSG+05]
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.
On top of these already pre-coded algorithms, the PalmVeinRecLib provides an easy Python interface for implementing new image preprocessors, feature types, palm vein recognition algorithms or database interfaces, which directly integrate into the palmvein recognition experiment. Hence, after a short period of coding, researchers can compare their new invention directly with already existing algorithms in a fair manner.
[ZSG+05] | W. Zhang, S. Shan, W. Gao, X. Chen and H. Zhang. Local Gabor binary pattern histogram sequence (LGBPHS): a novel non-statistical model for face representation and recognition. Computer Vision, IEEE International Conference on, 1:786-791, 2005. |
To download the PalmVeinRecLib, please go to http://pypi.python.org/pypi/bob.palmvein, click on the download button and extract the .zip file to a folder of your choice.
The PalmVeinRecLib is a satellite package of the free signal processing and machine learning library Bob. These two dependencies have to be downloaded manually, as explained in the following.
You will need a copy of Bob in version 2.0 or newer to run the algorithms. Please download Bob from its webpage. After downloading, you should go to the console and write:
$ python bootstrap-buildout.py $ bin/buildout
This 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 the eggs
section of the file buildout.cfg in the main directory before calling the three commands above.
To verify that your installation worked as expected, you might want to run our test utilities:
$ bin/nosetests
Usually, all tests should pass, if you use the latest packages of Bob. With other versions of Bob, you might find some failing tests, or some errors might occur.
If you use the PalmVeinRecLib in any of your experiments, please cite the following paper:
@inproceedings{Tome_ICB2015-SpoofingPalmvein, author = {Tome, Pedro and Marcel, S{\'{e}}bastien}, projects = {Idiap, BEAT, TABULA RASA}, month = may, title = {On the Vulnerability of Palm Vein Recognition to Spoofing Attacks}, booktitle = {The 8th IAPR International Conference on Biometrics (ICB)}, year = {2015}, pdf = {http://publications.idiap.ch/downloads/papers/2015/Tome_ICB2015-SpoofingPalmvein.pdf} }