Package: xbob.thesis.elshafey2014
This package contains scripts to reproduce the experiments of my Ph.D. thesis at Ecole Polytechnique Fédérale de Lausanne (EPFL).
It was developed when I was working in theBiometrics groupat theIdiap Research Institute:@phdthesis{ElShafey_EPFL2014,
  title = {Scalable Probabilistic Models for Face and Speaker Recognition},
  author = {Laurent El Shafey},
  month = {April},
  year = {2014},
  school = {Ecole Polytechnique F{\'e}d{\'e}rale de Lausanne (EPFL)},
  url = {http://publications.idiap.ch/index.php/publications/show/2830},
}In particular, this package provides instructions to combine code (seeBob, which contains the implementations of machine learning algorithms and signal processing tools) and data to generate the plots depicted in my thesis.InstallationTo download the xbob.thesis.elshafey2014 package, please go tohttp://pypi.python.org/pypi/xbob.thesis.elshafey2014, click on thedownloadbutton and extract the .zip file to a folder of your choice.The xbob.thesis.elshafey2014 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.2 to run the algorithms.
Please downloadBobfrom its webpage.
After downloading, you should go to the console and write:$ python bootstrap.py
$ bin/buildoutThis will download all required dependencies 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.The CSU Face Recognition ResourcesTwo open source face recognition algorithms are provided by theCSU Face Recognition Resources, namely the LRPCA and the LDA-IR (a.k.a. CohortLDA) algorithm.
For these algorithms, optional wrapper classes are provided in thexfacereclib.extension.CSUsatellite package.
By default, this package is disabled.
To enable them, please call:$ bin/buildout -c buildout-with-csu.cfgafter downloading and patching the CSU resources, and updating thesources-dirin thebuildout-with-csu.cfgfile – as explained inxfacereclib.extension.CSU.DatabasesExperiments are conducted on several databases.
They should be downloaded and extracted manually to be able to reproduce the plots.BANCA [http://www.ee.surrey.ac.uk/CVSSP/banca]AR face database [http://www2.ece.ohio-state.edu/~aleix/ARdatabase.html]Face Recognition Grand Challenge version 2 [http://www.nist.gov/itl/iad/ig/frgc.cfm]The Good, The Bad and the Ugly [http://www.nist.gov/itl/iad/ig/focs.cfm]Labeled Faces in the Wild [http://vis-www.cs.umass.edu/lfw] (images aligned with funneling [http://vis-www.cs.umass.edu/lfw/lfw-funneled.tgz] and annotations [http://www.idiap.ch/resource/biometric/data/LFW-Annotations.tar.gz])Multi-PIE [http://www.multipie.org]MOBIO  [http://www.idiap.ch/dataset/mobio] (images, audio data and image annotations)CAS-PEAL [http://www.jdl.ac.cn/peal/index.html]NIST Speaker Recognition Evaluation 2012 [http://www.nist.gov/itl/iad/mig/sre12.cfm] (Additional data distributed byLDCare required for training and development purposes [seehttps://pypi.python.org/pypi/xbob.db.nist_sre12to preprocess the data])Once you have installed the databases, you should set the path to raw data into some configuration files.
For instance, for running experiments on the BANCA database, you should set the variable ‘banca_directory’
in the filebanca.pyto your directory that
contains the images of this database.
This is explained in more details in the complete documentation.Running experimentsIf you have set up everything mentioned above, you are ready to run the recognition experiments.This process is split into two different steps:1. Generation of raw scores from raw data (image/audio files [and possibly annotations]) of the databases

2. Generation of plots from these raw scoresThere is a single exception with the plots generated on the M-iris synthetic dataset.
In this case, the experiments does not require any external data and can be reproduced in one step.
In practice, the first step has high computational requirements, which depend on the database considered.Read furtherThere are several file links in the documentation, which won’t work in the online documentation.
To generate the documentation locally, type:$ bin/sphinx-build docs sphinx
$ firefox sphinx/index.htmland read further instructions on how to use this package.Cite our paperIf you use this package in any of your experiments, please cite the following paper:@phdthesis{ElShafey_EPFL2014,
  title = {Scalable Probabilistic Models for Face and Speaker Recognition},
  author = {Laurent El Shafey},
  month = {April},
  year = {2014},
  school = {Ecole Polytechnique F{\'e}d{\'e}rale de Lausanne (EPFL)},
  url = {http://publications.idiap.ch/index.php/publications/show/2830},
}ProblemsIn case of problems, please contact me (Laurent El Shafey).If you are facing technical issues to be able to run the scripts
of this package, you can send a message on theBob’s mailing list.Please followthese guidelineswhen (or even better before) reporting any bug.