Package: bob.hobpad2.chapter19
A Cross-database Study of Voice Presentation Attack DetectionThis package is part of the signal-processing and machine learning toolboxBob. 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 usecondato manage the software stack installation. To install this
package and all dependencies, first installconda, 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" environmentNoteAt the present time,Bobonly offers support to Linux and MacOS operating
systems. Windows installations arenotsupported.Score files to reproduce the results of the chapterDue 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:Unzippad_handcrafted.zipandpad_megafusion.zipfiles locate in thescores’ folder into respective `pad_handcraftedandpad_megafusionsubfolders.Download and unarchive some of the scores of handcrafted features-based PAD systems:$ cd scores
$ wgethttp://www.idiap.ch/resource/biometric/data/interspeech_2016.tar.gz$ tar -xzvf interspeech_2016.tar.gz
$ Add these score files insidepad_handcraftedfolderDownload and unarchive scores for CNN-based PAD systems:$ cd scores
$ wgethttp://www.idiap.ch/resource/biometric/data/isba2018-pad-dnn.tar.gz$ tar -xzvf isba2018-pad-dnn.tar.gz
$ Rename the obtained scores folder intopad_cnnfolderReproducing the results of the chapterTo 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.shThe 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-devTo 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.shThe 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.shThe 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.ContactFor questions or reporting issues to this software package, contact our
developmentmailing list.