.. vim: set fileencoding=utf-8 : .. @author: Pavel Korshunov .. @date: Wed Nov 11 15:06:22 CEST 2015 .. _bob.db.asvspoof: =========================== ASVspoof Database Interface =========================== ASVspoof Protocols ------------------ ASVspoof_ database provides three protocols:: * CM - protocol for presentation attack detection (PAD) experiments. It's short for countermeasure. * ASV - protocol for automatic speaker verification (ASV) experiments. * AS - protocol that was used in Automatic Speaker Verification Spoofing and Countermeasures Challenge (ASVspoof 2015) with anonymized Test set samples. All these protocols are supported by `bob.db.asvspoof` DB interface for Bob_. Getting the data ---------------- The original data and the description of protocols can be downloaded directly from ASVspoof_. Using this interface -------------------- Once the interface package is installed, SQL database file need to be downloaded using the following command: .. code-block:: sh $ bob_dbmanage.py asvspoof download This interface can be used to directly query and access the database protocols and samples, or/and in verification `bob.bio.` and PAD `bob.pad.` frameworks of Bob toolkit. The database filelist can be queried via the following command line: .. code-block:: sh $ bob_dbmanage.py asvspoof dumplist --help To use the database in verification experiments within `bob.bio.` framework, a `bob.bio.database` entry point need to be defined in the `setup.py` file of the package that would run these experiments as so, as follows: .. code-block:: python 'bob.bio.database': [ 'asvspoof = bob.path.to.config.file:database', ] The config file (other ways to defined the database are also available in Bob_, please see database API documentation) would then initialize the `database` with the path to the directory where the actual database sample are located, as follows: .. code-block:: python import bob.bio.base asvspoof_input_dir = "PATH_TO_DATA" database = bob.bio.base.database.ASVspoofBioDatabase( protocol = 'ASV', original_directory=asvspoof_input_dir, original_extension=".wav", training_depends_on_protocol=True, ) Similarly, for PAD experiments, an entry point `bob.pad.database` should be defined in `setup.py` and `bob.pad.db.ASVspoofPadDatabase` should be defined in the config file. Specifying `bob.bio.database` and/or `bob.pad.database` entry points ensures that the verification and/or PAD frameworks can find and use the database. .. _bob: https://www.idiap.ch/software/bob .. _ASVspoof: http://datashare.is.ed.ac.uk/handle/10283/853 .. _idiap: http://www.idiap.ch