From c988740dab41ade08732c636f503cd10952b9f83 Mon Sep 17 00:00:00 2001
From: Tiago Freitas Pereira <tiagofrepereira@gmail.com>
Date: Mon, 5 Sep 2016 15:25:08 +0200
Subject: [PATCH] Solving issue #8 from bob.bio.db . Moving database config
 files to bob.bio.db

---
 bob/bio/face/config/database/__init__.py      |  0
 bob/bio/face/config/database/arface.py        | 11 --------
 bob/bio/face/config/database/banca_english.py | 12 ---------
 bob/bio/face/config/database/caspeal.py       | 11 --------
 bob/bio/face/config/database/frgc.py          | 13 ---------
 bob/bio/face/config/database/gbu.py           | 17 ------------
 .../face/config/database/lfw_restricted.py    | 19 -------------
 .../face/config/database/lfw_unrestricted.py  | 20 --------------
 bob/bio/face/config/database/mobio_female.py  | 21 ---------------
 bob/bio/face/config/database/mobio_image.py   | 19 -------------
 bob/bio/face/config/database/mobio_male.py    | 22 ---------------
 bob/bio/face/config/database/multipie.py      | 13 ---------
 bob/bio/face/config/database/multipie_pose.py | 24 -----------------
 bob/bio/face/config/database/scface.py        | 10 -------
 bob/bio/face/config/database/xm2vts.py        | 10 -------
 bob/bio/face/test/test_databases.py           |  6 ++---
 setup.py                                      | 27 +++++++++----------
 17 files changed, 16 insertions(+), 239 deletions(-)
 delete mode 100644 bob/bio/face/config/database/__init__.py
 delete mode 100644 bob/bio/face/config/database/arface.py
 delete mode 100644 bob/bio/face/config/database/banca_english.py
 delete mode 100644 bob/bio/face/config/database/caspeal.py
 delete mode 100644 bob/bio/face/config/database/frgc.py
 delete mode 100644 bob/bio/face/config/database/gbu.py
 delete mode 100644 bob/bio/face/config/database/lfw_restricted.py
 delete mode 100644 bob/bio/face/config/database/lfw_unrestricted.py
 delete mode 100644 bob/bio/face/config/database/mobio_female.py
 delete mode 100644 bob/bio/face/config/database/mobio_image.py
 delete mode 100644 bob/bio/face/config/database/mobio_male.py
 delete mode 100644 bob/bio/face/config/database/multipie.py
 delete mode 100644 bob/bio/face/config/database/multipie_pose.py
 delete mode 100644 bob/bio/face/config/database/scface.py
 delete mode 100644 bob/bio/face/config/database/xm2vts.py

diff --git a/bob/bio/face/config/database/__init__.py b/bob/bio/face/config/database/__init__.py
deleted file mode 100644
index e69de29b..00000000
diff --git a/bob/bio/face/config/database/arface.py b/bob/bio/face/config/database/arface.py
deleted file mode 100644
index c3783040..00000000
--- a/bob/bio/face/config/database/arface.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import ARFaceBioDatabase
-
-arface_directory = "[YOUR_ARFACE_DIRECTORY]"
-
-database = ARFaceBioDatabase(
-    original_directory=arface_directory,
-    original_extension=".png",
-    protocol='all'
-)
diff --git a/bob/bio/face/config/database/banca_english.py b/bob/bio/face/config/database/banca_english.py
deleted file mode 100644
index 76c765db..00000000
--- a/bob/bio/face/config/database/banca_english.py
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import BancaBioDatabase
-
-banca_directory = "[YOUR_BANCA_DIRECTORY]"
-
-database = BancaBioDatabase(
-    original_directory=banca_directory,
-    original_extension=".ppm",
-    protocol='P'
-)
-
diff --git a/bob/bio/face/config/database/caspeal.py b/bob/bio/face/config/database/caspeal.py
deleted file mode 100644
index d92dbf50..00000000
--- a/bob/bio/face/config/database/caspeal.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import CaspealBioDatabase
-
-caspeal_directory = "[YOUR_CAS-PEAL_DIRECTORY]"
-
-database = CaspealBioDatabase(
-    original_directory=caspeal_directory,
-    protocol='lighting'
-)
-
diff --git a/bob/bio/face/config/database/frgc.py b/bob/bio/face/config/database/frgc.py
deleted file mode 100644
index 304fcb39..00000000
--- a/bob/bio/face/config/database/frgc.py
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env python
-
-import bob.db.frgc
-import bob.bio.base
-
-frgc_directory = "[YOUR_FRGC_DIRECTORY]"
-
-database = bob.bio.base.database.DatabaseBob(
-    database = bob.db.frgc.Database(frgc_directory),
-    name = "frgc",
-    protocol = '2.0.1',
-    models_depend_on_protocol = True
-)
diff --git a/bob/bio/face/config/database/gbu.py b/bob/bio/face/config/database/gbu.py
deleted file mode 100644
index 6da69eb9..00000000
--- a/bob/bio/face/config/database/gbu.py
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import GBUBioDatabase
-
-mbgc_v1_directory = "[YOUR_MBGC-V1_DIRECTORY]"
-
-database = GBUBioDatabase(
-    original_directory=mbgc_v1_directory,
-    protocol='Good',
-    models_depend_on_protocol=True,
-
-    all_files_options={'subworld': 'x2'},
-    extractor_training_options={'subworld': 'x2'},
-    projector_training_options={'subworld': 'x2'},
-    enroller_training_options={'subworld': 'x2'}
-)
-
diff --git a/bob/bio/face/config/database/lfw_restricted.py b/bob/bio/face/config/database/lfw_restricted.py
deleted file mode 100644
index 1844f9f6..00000000
--- a/bob/bio/face/config/database/lfw_restricted.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import LFWBioDatabase
-
-lfw_directory = "[YOUR_LFW_FUNNELED_DIRECTORY]"
-
-database = LFWBioDatabase(
-    original_directory=lfw_directory,
-    annotation_type='funneled',
-
-    protocol='view1',
-    training_depends_on_protocol=True,
-    models_depend_on_protocol=True,
-
-    all_files_options={'world_type': 'restricted'},
-    extractor_training_options={'world_type': 'restricted'},  # 'subworld' : 'twofolds'
-    projector_training_options={'world_type': 'restricted'},  # 'subworld' : 'twofolds'
-    enroller_training_options={'world_type': 'restricted'}  # 'subworld' : 'twofolds'
-)
diff --git a/bob/bio/face/config/database/lfw_unrestricted.py b/bob/bio/face/config/database/lfw_unrestricted.py
deleted file mode 100644
index b05a354a..00000000
--- a/bob/bio/face/config/database/lfw_unrestricted.py
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import LFWBioDatabase
-
-lfw_directory = "[YOUR_LFW_FUNNELED_DIRECTORY]"
-
-database = LFWBioDatabase(
-    original_directory=lfw_directory,
-    annotation_type='funneled',
-
-    protocol='view1',
-    training_depends_on_protocol=True,
-    models_depend_on_protocol=True,
-
-    all_files_options = { 'world_type' : 'unrestricted' },
-    extractor_training_options = { 'world_type' : 'unrestricted' }, # 'subworld' : 'twofolds'
-    projector_training_options = { 'world_type' : 'unrestricted' }, # 'subworld' : 'twofolds'
-    enroller_training_options =  { 'world_type' : 'unrestricted' } # 'subworld' : 'twofolds'
-)
-
diff --git a/bob/bio/face/config/database/mobio_female.py b/bob/bio/face/config/database/mobio_female.py
deleted file mode 100644
index 73508e5c..00000000
--- a/bob/bio/face/config/database/mobio_female.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol = 'female',
-    models_depend_on_protocol=True,
-
-    all_files_options={'gender': 'female'},
-    extractor_training_options={'gender': 'female'},
-    projector_training_options={'gender': 'female'},
-    enroller_training_options={'gender': 'female'},
-    z_probe_options={'gender': 'female'}
-)
diff --git a/bob/bio/face/config/database/mobio_image.py b/bob/bio/face/config/database/mobio_image.py
deleted file mode 100644
index 59c35651..00000000
--- a/bob/bio/face/config/database/mobio_image.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol='male',
-    models_depend_on_protocol = True,
-)
-
-
-
-
diff --git a/bob/bio/face/config/database/mobio_male.py b/bob/bio/face/config/database/mobio_male.py
deleted file mode 100644
index 214fea45..00000000
--- a/bob/bio/face/config/database/mobio_male.py
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MobioBioDatabase
-
-mobio_image_directory = "[YOUR_MOBIO_IMAGE_DIRECTORY]"
-mobio_annotation_directory = "[YOUR_MOBIO_ANNOTATION_DIRECTORY]"
-
-database = MobioBioDatabase(
-    original_directory=mobio_image_directory,
-    original_extension=".png",
-    annotation_directory=mobio_annotation_directory,
-
-    protocol='male',
-    models_depend_on_protocol = True,
-
-    all_files_options={'gender': 'male'},
-    extractor_training_options={'gender': 'male'},
-    projector_training_options={'gender': 'male'},
-    enroller_training_options={'gender': 'male'},
-    z_probe_options={'gender': 'male'}
-)
-
diff --git a/bob/bio/face/config/database/multipie.py b/bob/bio/face/config/database/multipie.py
deleted file mode 100644
index 9324389b..00000000
--- a/bob/bio/face/config/database/multipie.py
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import MultipieBioDatabase
-
-multipie_image_directory = "[YOUR_MULTI-PIE_IMAGE_DIRECTORY]"
-multipie_annotation_directory = "[YOUR_MULTI-PIE_ANNOTATION_DIRECTORY]"
-
-database = MultipieBioDatabase(
-    original_directory=multipie_image_directory,
-    annotation_directory=multipie_annotation_directory,
-    protocol='U',
-    training_depends_on_protocol = True
-)
diff --git a/bob/bio/face/config/database/multipie_pose.py b/bob/bio/face/config/database/multipie_pose.py
deleted file mode 100644
index a67930ff..00000000
--- a/bob/bio/face/config/database/multipie_pose.py
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env python
-
-
-from bob.bio.db import MultipieBioDatabase
-
-# here, we only want to have the cameras that are used in the P protocol
-cameras = ('24_0', '01_0', '20_0', '19_0', '04_1', '05_0', '05_1', '14_0', '13_0', '08_0', '09_0', '12_0', '11_0')
-
-multipie_image_directory = "[YOUR_MULTI-PIE_IMAGE_DIRECTORY]"
-multipie_annotation_directory = "[YOUR_MULTI-PIE_ANNOTATION_DIRECTORY]"
-
-database = MultipieBioDatabase(
-    original_directory=multipie_image_directory,
-    annotation_directory=multipie_annotation_directory,
-    protocol = 'P',
-    training_depends_on_protocol = True,
-
-    all_files_options={'cameras': cameras},
-    extractor_training_options={'cameras': cameras},
-    projector_training_options={'cameras': cameras, 'world_sampling': 3, 'world_first': True},
-    enroller_training_options={'cameras': cameras}
-
-)
-
diff --git a/bob/bio/face/config/database/scface.py b/bob/bio/face/config/database/scface.py
deleted file mode 100644
index 9f4e339d..00000000
--- a/bob/bio/face/config/database/scface.py
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import SCFaceBioDatabase
-
-scface_directory = "[YOUR_SC_FACE_DIRECTORY]"
-
-database = SCFaceBioDatabase(
-    original_directory=scface_directory,
-    protocol='combined'
-)
diff --git a/bob/bio/face/config/database/xm2vts.py b/bob/bio/face/config/database/xm2vts.py
deleted file mode 100644
index 54a3533d..00000000
--- a/bob/bio/face/config/database/xm2vts.py
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env python
-
-from bob.bio.db import XM2VTSBioDatabase
-
-xm2vts_directory = "[YOUR_XM2VTS_DIRECTORY]"
-
-database = XM2VTSBioDatabase(
-    original_directory=xm2vts_directory,
-    protocol='lp1'
-)
diff --git a/bob/bio/face/test/test_databases.py b/bob/bio/face/test/test_databases.py
index faa2fc44..53d159c4 100644
--- a/bob/bio/face/test/test_databases.py
+++ b/bob/bio/face/test/test_databases.py
@@ -40,7 +40,7 @@ def _check_database(database, groups=('dev',), protocol=None, training_depends=F
     assert len(database.arrange_by_client(database.training_files('train_enroller'))) > 0
 
     for group in groups:
-        model_ids = database.model_ids(group, protocol=protocol)
+        model_ids = database.model_ids_with_protocol(group, protocol=protocol)
         assert len(model_ids) > 0
         assert database.client_id_from_model_id(model_ids[0]) is not None
         assert len(database.enroll_files(model_ids[0], group)) > 0
@@ -160,7 +160,7 @@ def test_mobio():
 
     try:
         _check_annotations(database)
-    except IOError as e:
+    except Exception as e:
         raise SkipTest(
             "The annotations could not be queried; probably the annotation files are missing. Here is the error: '%s'" % e)
 
@@ -181,7 +181,7 @@ def test_multipie():
 
     try:
         _check_annotations(database)
-    except IOError as e:
+    except Exception as e:
         raise SkipTest(
             "The annotations could not be queried; probably the annotation files are missing. Here is the error: '%s'" % e)
 
diff --git a/setup.py b/setup.py
index 0e4f70a2..03bd32d2 100644
--- a/setup.py
+++ b/setup.py
@@ -108,20 +108,19 @@ setup(
         ],
 
         'bob.bio.database': [
-            'arface            = bob.bio.face.config.database.arface:database',
-            'banca             = bob.bio.face.config.database.banca_english:database',
-            'caspeal           = bob.bio.face.config.database.caspeal:database',
-            'frgc              = bob.bio.face.config.database.frgc:database',
-            'gbu               = bob.bio.face.config.database.gbu:database',
-            'lfw-restricted    = bob.bio.face.config.database.lfw_restricted:database',
-            'lfw-unrestricted  = bob.bio.face.config.database.lfw_unrestricted:database',
-            'mobio-image       = bob.bio.face.config.database.mobio_image:database',
-            'mobio-male        = bob.bio.face.config.database.mobio_male:database',  # MOBIO gender-dependent training
-            'mobio-female      = bob.bio.face.config.database.mobio_female:database',  # MOBIO gender-dependent training
-            'multipie          = bob.bio.face.config.database.multipie:database',
-            'multipie-pose     = bob.bio.face.config.database.multipie_pose:database',
-            'scface            = bob.bio.face.config.database.scface:database',
-            'xm2vts            = bob.bio.face.config.database.xm2vts:database',
+            'arface            = bob.bio.db.default_configs.arface:database',
+            'banca             = bob.bio.db.default_configs.banca_english:database',
+            'caspeal           = bob.bio.db.default_configs.caspeal:database',
+            'frgc              = bob.bio.db.default_configs.frgc:database',
+            'gbu               = bob.bio.db.default_configs.gbu:database',
+            'lfw-restricted    = bob.bio.db.default_configs.lfw_restricted:database',
+            'lfw-unrestricted  = bob.bio.db.default_configs.lfw_unrestricted:database',
+            'mobio-male        = bob.bio.db.default_configs.mobio_male:database',  # MOBIO gender-dependent training
+            'mobio-female      = bob.bio.db.default_configs.mobio_female:database',  # MOBIO gender-dependent training
+            'multipie          = bob.bio.db.default_configs.multipie:database',
+            'multipie-pose     = bob.bio.db.default_configs.multipie_pose:database',
+            'scface            = bob.bio.db.default_configs.scface:database',
+            'xm2vts            = bob.bio.db.default_configs.xm2vts:database',
         ],
 
         'bob.bio.preprocessor': [
-- 
GitLab