Skip to main content

Software package to reproduce Evaluation Methodologies for Biometric Presentation Attack Detection chapter of Handbook of Biometric Anti-Spoofing: Presentation Attack Detection 2nd Edition

Project description

https://img.shields.io/badge/docs-v1.0.1-yellow.svg https://img.shields.io/badge/docs-latest-orange.svg https://gitlab.idiap.ch/bob/bob.hobpad2.chapter19/badges/v1.0.1/build.svg https://gitlab.idiap.ch/bob/bob.hobpad2.chapter19/badges/v1.0.1/coverage.svg https://img.shields.io/badge/gitlab-project-0000c0.svg https://img.shields.io/pypi/v/bob.hobpad2.chapter19.svg

A Cross-database Study of Voice Presentation Attack Detection

This package is part of the signal-processing and machine learning toolbox Bob. It is a software package to reproduce “A Cross-database Study of Voice Presentation Attack Detection” Chapter 19 of “Handbook of Biometric Anti-Spoofing: Presentation Attack Detection 2nd Edition”

We use conda to manage the software stack installation. To install this package and all dependencies, first install conda, and then run the following command on your shell:

$ conda create --name hobpad2-chapter19 --override-channels -c https://www.idiap.ch/software/bob/conda -c defaults python=3 bob.hobpad2.chapter19
$ conda activate hobpad2-chapter19
(hobpad2-chapter19) $ #type all commands inside this "activated" environment

Note

At the present time, Bob only offers support to Linux and MacOS operating systems. Windows installations are not supported.

Score files to reproduce the results of the chapter

Due to the large number and size of score files, some of them need to be downloaded and the rest were archived and need to be unzipped. Please follow these steps to prepare the scores, so that error rates and figures used in the chapter can be computed:

Reproducing the results of the chapter

To compute error rates presented in Tables 5 and 6 of the chapter on performance of PAD systems based on handcrafted features, the following script should be used:

$ ./compute_handcrafted_results.sh

The script will create a folder for each configuration of PAD system and datasets. The folders contain DET curves for each given configuration, histograms of score distributions, and error rates. The script also creates a text file ‘latex_table_handcrafed_stats_eer.txt’ which contains a LaTeX formatted table with the results from Table 6 and 6.

To compute error rates presented in Table 7, run the script that is installed with bob.measure using the following:

$ bob_eval_threshold.py -c eer ../scores/pad_megafusion/corresponding_folder/scores-dev

To compute error rates presented in Tables 10 and 11 and Figure 6 of the chapter on performance of CNN-based PAD systems, the following script should be used:

$ ./compute_cnn_results.sh

The script will create a folder for each configuration of PAD system and datasets. The folders contain DET curves for each given configuration (subset of these plots are shown in Figure 6 of the chapter), histograms of score distributions, and error rates. The script also creates a text file ‘latex_table_cnn_stats_eer.txt’ which contains a LaTeX formatted table with the results from Table 10 and 11.

To compute error rates for different types of attack as presented in Table 12, please execute the following script:

$ ./compute_results_cnn_per_attack.sh

The script will compute error rates for each type of attack of voicePA and BioCPqD-PA databases used in the paper and produce ‘latex_table_cnn_per_attack_stats_eer.txt’ file with LaTeX formatted table that has results from Table 12.

Contact

For questions or reporting issues to this software package, contact our development mailing list.

Project details


Release history Release notifications

This version

1.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for bob.hobpad2.chapter19, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size bob.hobpad2.chapter19-1.0.1.zip (29.3 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page