def test_csv_file_list_dev_only_metadata(): dataset = CSVDataset( name="example_csv_filelist", dataset_protocol_path=example_dir, protocol="protocol_only_dev_metadata", ) assert len(dataset.background_model_samples()) == 8 assert check_all_true(dataset.background_model_samples(), DelayedSample) assert np.alltrue( ["metadata_1" in s.__dict__ for s in dataset.background_model_samples()] ) assert np.alltrue( ["metadata_2" in s.__dict__ for s in dataset.background_model_samples()] ) assert len(dataset.references()) == 2 assert check_all_true(dataset.references(), SampleSet) assert np.alltrue( ["metadata_1" in s.__dict__ for s in dataset.references()] ) assert np.alltrue( ["metadata_2" in s.__dict__ for s in dataset.references()] ) assert len(dataset.probes()) == 10 assert check_all_true(dataset.probes(), SampleSet) assert np.alltrue(["metadata_1" in s.__dict__ for s in dataset.probes()]) assert np.alltrue(["metadata_2" in s.__dict__ for s in dataset.probes()]) assert np.alltrue(["references" in s.__dict__ for s in dataset.probes()])
def test_csv_file_list_dev_only(): dataset = CSVDataset( name="example_csv_filelist", dataset_protocol_path=example_dir, protocol="protocol_only_dev", ) assert len(dataset.background_model_samples()) == 8 assert check_all_true(dataset.background_model_samples(), DelayedSample) assert len(dataset.references()) == 2 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.probes()) == 10 assert check_all_true(dataset.probes(), SampleSet)
def run(filename): dataset = CSVDataset( name="example_csv_filelist", dataset_protocol_path=filename, protocol="protocol_dev_eval", csv_to_sample_loader=make_pipeline( CSVToSampleLoaderBiometrics( data_loader=bob.io.base.load, dataset_original_directory="", extension="", ), AnnotationsLoader( annotation_directory=annotation_directory, annotation_extension=".json", annotation_type="json", ), ), ) assert len(dataset.background_model_samples()) == 8 assert check_all_true(dataset.background_model_samples(), DelayedSample) assert len(dataset.references()) == 2 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.probes()) == 8 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.references(group="eval")) == 6 assert check_all_true(dataset.references(group="eval"), SampleSet) assert len(dataset.probes(group="eval")) == 13 assert check_all_true(dataset.probes(group="eval"), SampleSet) assert len(dataset.all_samples(groups=None)) == 47 assert check_all_true(dataset.all_samples(groups=None), DelayedSample) # Check the annotations for s in dataset.all_samples(groups=None): assert isinstance(s.annotations, dict) assert len(dataset.reference_ids(group="dev")) == 2 assert len(dataset.reference_ids(group="eval")) == 6 assert len(dataset.groups()) == 3
def test_csv_file_list_atnt(): dataset = CSVDataset( name="atnt", dataset_protocol_path=atnt_protocol_path, protocol="idiap_protocol", ) assert len(dataset.background_model_samples()) == 200 assert len(dataset.references()) == 20 assert len(dataset.probes()) == 100 assert len(dataset.all_samples(groups=["train"])) == 200 assert len(dataset.all_samples(groups=["dev"])) == 200 assert len(dataset.all_samples(groups=None)) == 400
def test_lst_file_list_dev_eval_sparse(): dataset = CSVDataset( name="example_filelist", dataset_protocol_path=legacy_example_dir, protocol="", csv_to_sample_loader=LSTToSampleLoader( data_loader=bob.io.base.load, dataset_original_directory="", extension="", ), is_sparse=True, ) assert len(dataset.background_model_samples()) == 8 assert check_all_true(dataset.background_model_samples(), DelayedSample) assert len(dataset.references()) == 2 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.probes()) == 8 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.references(group="eval")) == 2 assert check_all_true(dataset.references(group="eval"), SampleSet) assert len(dataset.probes(group="eval")) == 8 assert check_all_true(dataset.probes(group="eval"), SampleSet) assert len(dataset.all_samples(groups=None)) == 44 assert check_all_true(dataset.all_samples(groups=None), DelayedSample) assert len(dataset.reference_ids(group="dev")) == 2 assert len(dataset.reference_ids(group="eval")) == 2 assert len(dataset.groups()) == 3
def test_csv_file_list_dev_eval_sparse(): annotation_directory = os.path.realpath( bob.io.base.test_utils.datafile( ".", __name__, "data/example_csv_filelist/annotations" ) ) dataset = CSVDataset( name="example_csv_filelist", dataset_protocol_path=example_dir, protocol="protocol_dev_eval_sparse", csv_to_sample_loader=make_pipeline( CSVToSampleLoaderBiometrics( data_loader=bob.io.base.load, dataset_original_directory="", extension="", ), AnnotationsLoader( annotation_directory=annotation_directory, annotation_extension=".json", annotation_type="json", ), ), is_sparse=True, ) assert len(dataset.background_model_samples()) == 8 assert check_all_true(dataset.background_model_samples(), DelayedSample) assert len(dataset.references()) == 2 assert check_all_true(dataset.references(), SampleSet) probes = dataset.probes() assert len(probes) == 8 # here, 1 comparisons comparison per probe for p in probes: assert len(p.references) == 1 assert check_all_true(dataset.references(), SampleSet) assert len(dataset.references(group="eval")) == 6 assert check_all_true(dataset.references(group="eval"), SampleSet) probes = dataset.probes(group="eval") assert len(probes) == 13 assert check_all_true(probes, SampleSet) # Here, 1 comparison per probe, EXPECT THE FIRST ONE for i, p in enumerate(probes): if i == 0: assert len(p.references) == 2 else: assert len(p.references) == 1 assert len(dataset.all_samples(groups=None)) == 48 assert check_all_true(dataset.all_samples(groups=None), DelayedSample) # Check the annotations for s in dataset.all_samples(groups=None): assert isinstance(s.annotations, dict) assert len(dataset.reference_ids(group="dev")) == 2 assert len(dataset.reference_ids(group="eval")) == 6 assert len(dataset.groups()) == 3