bob issueshttps://gitlab.idiap.ch/groups/bob/-/issues2022-05-31T08:57:22Zhttps://gitlab.idiap.ch/bob/bob.pad.face/-/issues/47Vanilla-pad baseline does not run2022-05-31T08:57:22ZChristophe ECABERTVanilla-pad baseline does not runFollowing the [documentation](https://www.idiap.ch/software/bob/docs/bob/docs/master/bob/bob.pad.base/doc/vanilla_pad_intro.html#running-a-biometric-experiment-with-vanilla-pad), the vanilla-pad baseline can be invoked with:
```python
b...Following the [documentation](https://www.idiap.ch/software/bob/docs/bob/docs/master/bob/bob.pad.base/doc/vanilla_pad_intro.html#running-a-biometric-experiment-with-vanilla-pad), the vanilla-pad baseline can be invoked with:
```python
bob pad vanilla-pad replay-attack svm-frames -o results -vv
```
This leads to the following exception:
```python
Traceback (most recent call last):
File "/remote/idiap.svm/temp.biometric03/cecabert/bob_beta/src/bob.pipelines/bob/pipelines/wrappers.py", line 808, in _fit
self.estimator = self.estimator.fit(X, y, **fit_params)
File "/remote/idiap.svm/temp.biometric03/cecabert/bob_beta/src/bob.pipelines/bob/pipelines/wrappers.py", line 337, in fit
self.estimator = self.estimator.fit(X, **kwargs)
File "/remote/idiap.svm/temp.biometric03/cecabert/mambaforge/envs/bob_deps/lib/python3.10/site-packages/sklearn/svm/_base.py", line 190, in fit
X, y = self._validate_data(
File "/remote/idiap.svm/temp.biometric03/cecabert/mambaforge/envs/bob_deps/lib/python3.10/site-packages/sklearn/base.py", line 581, in _validate_data
X, y = check_X_y(X, y, **check_params)
File "/remote/idiap.svm/temp.biometric03/cecabert/mambaforge/envs/bob_deps/lib/python3.10/site-packages/sklearn/utils/validation.py", line 964, in check_X_y
X = check_array(
File "/remote/idiap.svm/temp.biometric03/cecabert/mambaforge/envs/bob_deps/lib/python3.10/site-packages/sklearn/utils/validation.py", line 794, in check_array
raise ValueError(
ValueError: Found array with dim 4. Estimator expected <= 2.
```
The `fit` method of the SVM classifier is expecting its input to be `(n_samples, n_features)` which is not what is provided by the `VideoToFrames` transformer. One possible solution would be to add an intermediate step between the two operations to flatten the data.https://gitlab.idiap.ch/bob/bob.pipelines/-/issues/41Expanding samples on the fly2022-05-31T13:53:53ZAnjith GEORGEanjith.george@idiap.chExpanding samples on the flyI have a usecase where I want to expand one image to multiple images in the `pipelinesimple`. Essentially, I can create
a transformer which can operate directly on samples, which takes in a `SampleSet` with one image and return a `Sampl...I have a usecase where I want to expand one image to multiple images in the `pipelinesimple`. Essentially, I can create
a transformer which can operate directly on samples, which takes in a `SampleSet` with one image and return a `SampleSet` with `n` samples.
I managed to make it work, when every thing is in memory (with `-m` option), and checkpointing is a problem since there are new samples. I can create new keys on the fly, what do you think is the best way to go about this.
@amohammadi @tiago.pereira @ydayerhttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/183Heterogeneous pipelines for identification2022-05-31T13:54:33ZAnjith GEORGEanjith.george@idiap.chHeterogeneous pipelines for identificationI am trying to run a face recognition pipline where the pipeline for enrollment and probes are different, basically my enrollment part has one step extra. Currently I have created a new heterogeneous pipeline which takes in two different...I am trying to run a face recognition pipline where the pipeline for enrollment and probes are different, basically my enrollment part has one step extra. Currently I have created a new heterogeneous pipeline which takes in two different pipelines as the inputs. I think its not very efficient, since there are common components in both of the pipelines (Iresnet in my case). I think it would be cleaner, if there is a transform which can do things conditionally, meaning, if it sees that the sample is from the enrollment set then apply the transform and skup it if its not from enrollment. Adding the group attribute at the csvloader level might solve this, so that I can do the filtering in this transform.
Any suggestions welcome.https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/182Unable to run the pipeline after the last update of bob.bio.base2022-05-03T16:26:00ZYu LinghuUnable to run the pipeline after the last update of bob.bio.baseThe latest version of bob.bio.base does not support to run any `simple` or `score-norm` pipeline. Below is the example error message:
```
▶ ./bin/bob bio pipeline simple rfw-idiap arcface-insightface -vvv -o idiap_arcface
Warning: entr...The latest version of bob.bio.base does not support to run any `simple` or `score-norm` pipeline. Below is the example error message:
```
▶ ./bin/bob bio pipeline simple rfw-idiap arcface-insightface -vvv -o idiap_arcface
Warning: entry point could not be loaded. Contact its author for help.
Traceback (most recent call last):
File "/local/scratch/linghu/miniconda3/envs/bob.paper.frice2/lib/python3.8/site-packages/click_plugins/core.py", line 37, in decorator
group.add_command(entry_point.load())
File "/local/scratch/linghu/miniconda3/envs/bob.paper.frice2/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2450, in load
return self.resolve()
File "/local/scratch/linghu/miniconda3/envs/bob.paper.frice2/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2456, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/__init__.py", line 1, in <module>
from . import ( # noqa: F401
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/algorithm/__init__.py", line 1, in <module>
from .Algorithm import Algorithm
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/algorithm/Algorithm.py", line 10, in <module>
from .. import utils
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/utils/__init__.py", line 12, in <module>
from .io import * # noqa: F401,F403
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/utils/io.py", line 13, in <module>
from bob.bio.base import database
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/database/__init__.py", line 1, in <module>
from . import filelist # noqa: F401
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/database/filelist/__init__.py", line 2, in <module>
from .query import FileListBioDatabase
File "/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/database/filelist/query.py", line 10, in <module>
from .. import BioFile, ZTBioDatabase
ImportError: cannot import name 'BioFile' from partially initialized module 'bob.bio.base.database' (most likely due to a circular import) (/local/scratch/linghu/bob.bio.face/src/bob.bio.base/bob/bio/base/database/__init__.py)
```https://gitlab.idiap.ch/bob/bob.pad.face/-/issues/46Nightlies failing because of this one2022-05-02T18:15:24ZTiago de Freitas PereiraNightlies failing because of this one
https://gitlab.idiap.ch/bob/nightlies/-/jobs/266637
```
======================================================================
FAIL: Failure: AssertionError (File: not found: /Users/gitlab/builds/6eE8C-FW/1/bob/nightlies/miniconda/co...
https://gitlab.idiap.ch/bob/nightlies/-/jobs/266637
```
======================================================================
FAIL: Failure: AssertionError (File: not found: /Users/gitlab/builds/6eE8C-FW/1/bob/nightlies/miniconda/conda-bld/bob.pad.face_1651233096650/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/python3.9/site-packages/bob/pad/face/test/data/real_client001_android_SD_scene01.mp4)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/gitlab/builds/6eE8C-FW/1/bob/nightlies/miniconda/conda-bld/bob.pad.face_1651233096650/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/lib/python3.9/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
```
I think it's just an issue with the MANIFEST.https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/45ISV dask implementation is not efficient and workers run out of memory2022-05-09T13:00:47ZAmir MOHAMMADIISV dask implementation is not efficient and workers run out of memoryThe Great DeprecationAmir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.pad.face/-/issues/45Quality measure Python implementation2022-06-03T15:09:41ZAmir MOHAMMADIQuality measure Python implementationAlso code needs to be re-written to run fast.Also code needs to be re-written to run fast.The Great Deprecationhttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/80Cannot specify original directory and extension for most of the databases any...2022-05-25T09:16:16ZManuel Günthersiebenkopf@googlemail.comCannot specify original directory and extension for most of the databases anymoreWhile in previous database implementations, it was relatively straightforward to utilize the database interface in order to load pre-extracted features, in the new database interfaces this is no longer possible, for two reasons:
1. Ther...While in previous database implementations, it was relatively straightforward to utilize the database interface in order to load pre-extracted features, in the new database interfaces this is no longer possible, for two reasons:
1. There is no simple way of providing the database interface with the directory where to read the data from. For example, in an old interface (LFW), we can still set:https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/c7ee7213f83f62b1e36685290e1defd10fea2c20/bob/bio/face/database/lfw.py#L90, while this option does no longer exist in newer interfaces: https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/c7ee7213f83f62b1e36685290e1defd10fea2c20/bob/bio/face/database/scface.py#L30, although it should be relatively straightforward to implement that since the default value is used just a few lines below: https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/c7ee7213f83f62b1e36685290e1defd10fea2c20/bob/bio/face/database/scface.py#L47. It should be simple to re-expose this option to the user.
2. The filename extension is by default empty: https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/c7ee7213f83f62b1e36685290e1defd10fea2c20/bob/bio/face/database/scface.py#L50, and there is no possibility to change that on the constructor. But even if we would expose the extension similarly to the directory name, we would still be in trouble since the default loader just **appends** the extension rather than ** replacing** it: https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/406f2da1faadacd4d4fe4e36e5a0010d78557513/bob/bio/base/database/csv_dataset.py#L145
The main issue with 2. is that someone has decided to ignore our old behavior to store keys without filename extension, and just added the original extension to the key. For example, running:
```
import bob.bio.face
db = bob.bio.face.database.SCFaceDatabase(protocol="far")
samples = db.all_samples()
print(samples[0].key)
```
will print `filename.JPG` instead of `filename` (without extension).
So, what I would propose is (the least amount of changes, anything else would require to re-create all the CSV-based databases):
- [ ] Expose the `original_directory` and `original_extension` parameters for all databases to the user, keeping their default values as they currently are.
- [ ] Change the line in https://gitlab.idiap.ch/bob/bob.bio.base/-/blob/406f2da1faadacd4d4fe4e36e5a0010d78557513/bob/bio/base/database/csv_dataset.py#L145 to replace the extension with the given one (if one is given) rather than appending it to the filename.
Any objection?https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/180It is not possible to run experiments without dask wrapper2022-04-26T12:06:41ZAmir MOHAMMADIIt is not possible to run experiments without dask wrapperNot using dask is useful especially when you want to debug your code. With the current implementation, this is not possible.Not using dask is useful especially when you want to debug your code. With the current implementation, this is not possible.Amir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/nightlies/-/issues/61bob.ip.binseg Tests hang, Job Failed #2655822022-05-12T13:37:25ZAmir MOHAMMADIbob.ip.binseg Tests hang, Job Failed #265582Job [#265582](https://gitlab.idiap.ch/bob/nightlies/-/jobs/265582) failed for e03c39bce11c74e60373f99d6098d3bf7f75c4b6:
Looking at macOS builds, most probably the hanging test is:
```
ip/binseg/test/test_cli.py::test_experiment_stare_wi...Job [#265582](https://gitlab.idiap.ch/bob/nightlies/-/jobs/265582) failed for e03c39bce11c74e60373f99d6098d3bf7f75c4b6:
Looking at macOS builds, most probably the hanging test is:
```
ip/binseg/test/test_cli.py::test_experiment_stare_with_multiprocessing PASSED [ 58%]
```André AnjosAndré Anjoshttps://gitlab.idiap.ch/bob/bob.pad.base/-/issues/43The documentation of the file list database is outdated2022-05-04T13:26:04ZTiago de Freitas PereiraThe documentation of the file list database is outdatedDuring the workshop, we spotted the documentation of the file list database interface (https://www.idiap.ch/software/bob/docs/bob/bob.pad.base/master/vanilla_pad_features.html) is outdated.
It doesn't match with what is currently implem...During the workshop, we spotted the documentation of the file list database interface (https://www.idiap.ch/software/bob/docs/bob/bob.pad.base/master/vanilla_pad_features.html) is outdated.
It doesn't match with what is currently implemented.
ping @ydayer @amohammadiYannick DAYERYannick DAYERhttps://gitlab.idiap.ch/bob/bob.devtools/-/issues/96Issue with dask distributed and click >=8.1.02022-06-27T14:26:59ZTiago de Freitas PereiraIssue with dask distributed and click >=8.1.0We need to bump our dask, distributed versions because of this issue.
https://github.com/dask/distributed/pull/6018
ping @hotroshiWe need to bump our dask, distributed versions because of this issue.
https://github.com/dask/distributed/pull/6018
ping @hotroshihttps://gitlab.idiap.ch/bob/bob.io.base/-/issues/23Drop ALL C++ code from this code.2022-04-25T15:23:49ZTiago de Freitas PereiraDrop ALL C++ code from this code.This package (**in practical terms, which means the features we use the most**) has three base functionalities.
1. With the support of `bob.io.image` it reads and writes images (bob.io.base.load and bob.io.base.save)
2. Reads and writes...This package (**in practical terms, which means the features we use the most**) has three base functionalities.
1. With the support of `bob.io.image` it reads and writes images (bob.io.base.load and bob.io.base.save)
2. Reads and writes HDF5 files with matrices with the command `bob.io.base.load` and `bob.io.base.save`.
3. Support to read and write complex HD5 files
I'll rewire the bob.io.base API to
1. use imageio for reading and writing image formats (solving 1);
2. use h5py for reading and writing hdf5 files (solving 2);
3. rewrite pieces of code that use the complex HD5 files using h5py (solving issue 3).
Sounds reasonable enough?
ping @amohammadi @ydayer @flavio.tarsetti @mguenther @lcolboisThe Great Deprecationhttps://gitlab.idiap.ch/bob/bob.fusion.base/-/issues/11Can we archive this package?2022-04-28T05:50:20ZTiago de Freitas PereiraCan we archive this package?The last activity here was in July 2020 (https://gitlab.idiap.ch/bob/bob.fusion.base/-/commit/1e3a80315285c13a1570615b919398d412e51edb).
All the other commits on top of this one were maintenance commits.
Is there any project benefiting ...The last activity here was in July 2020 (https://gitlab.idiap.ch/bob/bob.fusion.base/-/commit/1e3a80315285c13a1570615b919398d412e51edb).
All the other commits on top of this one were maintenance commits.
Is there any project benefiting from this?
Thankshttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/179Pass post_process_samples, biometric_references, and probe_samples together2022-05-25T07:04:24ZYu LinghuPass post_process_samples, biometric_references, and probe_samples togetherIt would be better to have a function that let the `post_processor` choose what samples it needs, i.e. pass `post_process_samples`, `biometric_references`, and `probe_samples` into the function together regardless of Z-norm or T-norm, in...It would be better to have a function that let the `post_processor` choose what samples it needs, i.e. pass `post_process_samples`, `biometric_references`, and `probe_samples` into the function together regardless of Z-norm or T-norm, instead of pass specific samples according to the `post_processor`.
![Screenshot_2022-04-13_095243](/uploads/c0723480507a0f31767228cd878014e5/Screenshot_2022-04-13_095243.png)Yu LinghuYu Linghuhttps://gitlab.idiap.ch/bob/bob.fusion.base/-/issues/10NIghtlies failing because of this one2022-04-14T14:23:53ZTiago de Freitas PereiraNIghtlies failing because of this onehttps://gitlab.idiap.ch/bob/nightlies/-/jobs/264456
Does anyone uses this package?https://gitlab.idiap.ch/bob/nightlies/-/jobs/264456
Does anyone uses this package?https://gitlab.idiap.ch/bob/bob.pad.face/-/issues/44Nightlies failing because of this one2022-04-12T18:10:12ZTiago de Freitas PereiraNightlies failing because of this one....... so much work....... so much workhttps://gitlab.idiap.ch/bob/nightlies/-/issues/60Nightlies failing because of this one2022-04-12T16:27:56ZTiago de Freitas PereiraNightlies failing because of this one....... so much work....... so much workhttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/79background samples in LFW2022-04-13T15:08:39ZHatef OTROSHIbackground samples in LFWHi,
As there is no background sample in LFW, it seems that the `background_model_samples` needs to be an empty list, but it is `[0]` now in [bob/bio/face/database/lfw.py#L339](https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/master/bob/...Hi,
As there is no background sample in LFW, it seems that the `background_model_samples` needs to be an empty list, but it is `[0]` now in [bob/bio/face/database/lfw.py#L339](https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/master/bob/bio/face/database/lfw.py#L339)
ping @tiago.pereiraTiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.pad.base/-/issues/42NIghtlies failing because of this one2022-04-12T07:39:58ZTiago de Freitas PereiraNIghtlies failing because of this onehttps://gitlab.idiap.ch/bob/nightlies/-/jobs/264177
It seems a sphinx error.https://gitlab.idiap.ch/bob/nightlies/-/jobs/264177
It seems a sphinx error.