diff --git a/bob/bio/base/config/examples/lda_atnt_legacy.py b/bob/bio/base/config/examples/lda_atnt_legacy.py index aecb53fb4ba978cd9edbb07ead7c75e85bab1c50..a23b93d859d81cbbd10656fb9003b62488ba217b 100644 --- a/bob/bio/base/config/examples/lda_atnt_legacy.py +++ b/bob/bio/base/config/examples/lda_atnt_legacy.py @@ -1,24 +1,18 @@ # from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector, AlgorithmAdaptor -import bob.db.atnt +import bob.bio.base +import bob.bio.face + +## DATABASE + from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector +database = DatabaseConnector(bob.bio.face.database.AtntBioDatabase(original_directory="./atnt"), protocol="Default") -database = DatabaseConnector(bob.db.atnt.Database(), protocol="Default") from sklearn.pipeline import Pipeline, make_pipeline -from sklearn.decomposition import PCA - from bob.pipelines.mixins import CheckpointMixin, SampleMixin -from bob.bio.base.mixins import CheckpointSampleLinearize from bob.bio.base.mixins.legacy import LegacyProcessorMixin, LegacyAlgorithmMixin - - -class CheckpointSamplePCA(CheckpointMixin, SampleMixin, PCA): - """ - Enables SAMPLE and CHECKPOINTIN handling for https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html - """ - - pass +from bob.bio.base.transformers import CheckpointSampleLinearize, CheckpointSamplePCA #### PREPROCESSOR LEGACY ### @@ -68,7 +62,7 @@ extractor = Pipeline( ] ) -extractor = dask_it(extractor) +#extractor = dask_it(extractor) from bob.bio.base.pipelines.vanilla_biometrics.biometric_algorithm import ( Distance, diff --git a/bob/bio/base/config/examples/lda_atnt_legacy_all_legacy.py b/bob/bio/base/config/examples/lda_atnt_legacy_all_legacy.py index 1e12c1a971c0042e85c80124dab950357cba33b8..0b9d601e3840d24d76835b49aa2dfbfbd0dc17e7 100644 --- a/bob/bio/base/config/examples/lda_atnt_legacy_all_legacy.py +++ b/bob/bio/base/config/examples/lda_atnt_legacy_all_legacy.py @@ -1,27 +1,21 @@ # from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector, AlgorithmAdaptor -import bob.db.atnt +import bob.bio.base +import bob.bio.face + +## DATABASE + from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector +database = DatabaseConnector(bob.bio.face.database.AtntBioDatabase(original_directory="./atnt"), protocol="Default") -database = DatabaseConnector(bob.db.atnt.Database(), protocol="Default") from sklearn.pipeline import Pipeline, make_pipeline -from sklearn.decomposition import PCA - from bob.pipelines.mixins import CheckpointMixin, SampleMixin -from bob.bio.base.mixins import CheckpointSampleLinearize from bob.bio.base.mixins.legacy import LegacyProcessorMixin, LegacyAlgorithmMixin +from bob.bio.base.transformers import CheckpointSampleLinearize, CheckpointSamplePCA from bob.bio.base.pipelines.vanilla_biometrics.legacy import LegacyBiometricAlgorithm -class CheckpointSamplePCA(CheckpointMixin, SampleMixin, PCA): - """ - Enables SAMPLE and CHECKPOINTIN handling for https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html - """ - - pass - - #### PREPROCESSOR LEGACY ### import functools diff --git a/bob/bio/base/config/examples/pca_atnt.py b/bob/bio/base/config/examples/pca_atnt.py index 68c055124ee31e3dad9b9f027884ccdc38808c34..a72d9577873c8d7fe76502223867ca64b1b0b46b 100644 --- a/bob/bio/base/config/examples/pca_atnt.py +++ b/bob/bio/base/config/examples/pca_atnt.py @@ -1,22 +1,14 @@ #from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector, AlgorithmAdaptor -import bob.db.atnt +import bob.bio.face from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector -database = DatabaseConnector(bob.db.atnt.Database(), protocol="Default") +database = DatabaseConnector(bob.bio.face.database.AtntBioDatabase(original_directory="./atnt"), protocol="Default") from sklearn.pipeline import Pipeline, make_pipeline -from sklearn.decomposition import PCA - from bob.pipelines.mixins import CheckpointMixin, SampleMixin -from bob.bio.base.mixins import CheckpointSampleLinearize +from bob.bio.base.transformers import CheckpointSampleLinearize, CheckpointSamplePCA -class CheckpointSamplePCA(CheckpointMixin, SampleMixin, PCA): - """ - Enables SAMPLE and CHECKPOINTIN handling for https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html - """ - pass -#extractor = make_pipeline([CheckpointSampleLinearize(), CheckpointSamplePCA()]) from bob.pipelines.mixins import dask_it extractor = Pipeline(steps=[('0',CheckpointSampleLinearize(features_dir="./example/extractor0")), ('1',CheckpointSamplePCA(features_dir="./example/extractor1", model_path="./example/pca.pkl"))]) diff --git a/bob/bio/base/config/examples/pca_atnt_legacy.py b/bob/bio/base/config/examples/pca_atnt_legacy.py index 8dbd0ddc302d736d5d53865fe28a8d2e6ad60555..b895eba8d35869cd22ecb50ed08668e3dd51e604 100644 --- a/bob/bio/base/config/examples/pca_atnt_legacy.py +++ b/bob/bio/base/config/examples/pca_atnt_legacy.py @@ -1,24 +1,16 @@ # from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector, AlgorithmAdaptor -import bob.db.atnt + +### DATABASE +import bob.bio.face from bob.bio.base.pipelines.vanilla_biometrics.legacy import DatabaseConnector +database = DatabaseConnector(bob.bio.face.database.AtntBioDatabase(original_directory="./atnt"), protocol="Default") -database = DatabaseConnector(bob.db.atnt.Database(), protocol="Default") from sklearn.pipeline import Pipeline, make_pipeline -from sklearn.decomposition import PCA - from bob.pipelines.mixins import CheckpointMixin, SampleMixin -from bob.bio.base.mixins import CheckpointSampleLinearize -from bob.bio.base.mixins.legacy import LegacyProcessorMixin - - -class CheckpointSamplePCA(CheckpointMixin, SampleMixin, PCA): - """ - Enables SAMPLE and CHECKPOINTIN handling for https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html - """ - - pass +from bob.bio.base.mixins.legacy import LegacyProcessorMixin, LegacyAlgorithmMixin +from bob.bio.base.transformers import CheckpointSampleLinearize, CheckpointSamplePCA #### PREPROCESSOR LEGACY ### @@ -48,7 +40,6 @@ face_cropper = functools.partial( from bob.pipelines.mixins import mix_me_up - preprocessor = mix_me_up((CheckpointMixin, SampleMixin), LegacyProcessorMixin) from bob.pipelines.mixins import dask_it @@ -75,7 +66,5 @@ from bob.bio.base.pipelines.vanilla_biometrics.biometric_algorithm import ( class CheckpointDistance(BiometricAlgorithmCheckpointMixin, Distance): pass - - algorithm = CheckpointDistance(features_dir="./example/") # algorithm = Distance() diff --git a/bob/bio/base/config/examples/pca_mobio-male.py b/bob/bio/base/config/examples/pca_mobio-male.py index 4d3e71a89556183a6f01d0098b94ab13c5162078..440d4e97d1c46e4e41c52f49f84ebaff768a8fdf 100644 --- a/bob/bio/base/config/examples/pca_mobio-male.py +++ b/bob/bio/base/config/examples/pca_mobio-male.py @@ -7,12 +7,15 @@ import bob.bio.face from bob.bio.base.mixins.legacy import LegacyProcessorMixin, LegacyAlgorithmMixin from bob.bio.base.pipelines.vanilla_biometrics.legacy import LegacyBiometricAlgorithm +from bob.bio.base.transformers import CheckpointSamplePCA import os -base_dir = "/idiap/temp/tpereira/mobio/pca" -#base_dir = "./example" +#base_dir = "/idiap/temp/tpereira/mobio/pca" +base_dir = "./example" +### DATABASE + original_directory=rc['bob.db.mobio.directory'] annotation_directory=rc['bob.db.mobio.annotation_directory'] database = DatabaseConnectorAnnotated(bob.bio.face.database.mobio.MobioBioDatabase( @@ -26,13 +29,8 @@ from sklearn.pipeline import Pipeline, make_pipeline from sklearn.decomposition import PCA from bob.pipelines.mixins import CheckpointMixin, SampleMixin -from bob.bio.base.mixins import CheckpointSampleLinearize +from bob.bio.base.transformers import CheckpointSampleLinearize -class CheckpointSamplePCA(CheckpointMixin, SampleMixin, PCA): - """ - Enables SAMPLE and CHECKPOINTIN handling for https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html - """ - pass @@ -63,10 +61,9 @@ extractor = Pipeline(steps=[ ('1',CheckpointSampleLinearize(features_dir=os.path.join(base_dir,"extractor1"))), ('2',CheckpointSamplePCA(features_dir=os.path.join(base_dir,"extractor2"), model_path=os.path.join(base_dir,"pca.pkl"))) ]) -extractor = dask_it(extractor, npartitions=48) +#extractor = dask_it(extractor, npartitions=48) from bob.bio.base.pipelines.vanilla_biometrics.biometric_algorithm import Distance, BiometricAlgorithmCheckpointMixin class CheckpointDistance(BiometricAlgorithmCheckpointMixin, Distance): pass algorithm = CheckpointDistance(features_dir=base_dir) -#algorithm = Distance() diff --git a/bob/bio/base/pipelines/vanilla_biometrics/biometric_algorithm.py b/bob/bio/base/pipelines/vanilla_biometrics/biometric_algorithm.py index 735e7699d587464125fd5e8eb6dae25a81592fad..5853582d87a43e61b06926bd817546ebf15b192e 100644 --- a/bob/bio/base/pipelines/vanilla_biometrics/biometric_algorithm.py +++ b/bob/bio/base/pipelines/vanilla_biometrics/biometric_algorithm.py @@ -135,7 +135,6 @@ class BiometricAlgorithm(object): for subprobe_id, (s, parent) in enumerate(zip(data, sampleset.samples)): # Creating one sample per comparison subprobe_scores = [] - for ref in [ r for r in biometric_references if r.key in sampleset.references ]: diff --git a/bob/bio/base/pipelines/vanilla_biometrics/legacy.py b/bob/bio/base/pipelines/vanilla_biometrics/legacy.py index 2ab9b5532b342dd09b016a41a44d6abf8d0b1cef..e2a700fba760d4f77cf1c18d23dba83ea48345ff 100644 --- a/bob/bio/base/pipelines/vanilla_biometrics/legacy.py +++ b/bob/bio/base/pipelines/vanilla_biometrics/legacy.py @@ -186,7 +186,7 @@ class DatabaseConnector: references=[str(m)], ) else: - probes[o.id].references.append(m) + probes[o.id].references.append(str(m)) return list(probes.values())