bob issueshttps://gitlab.idiap.ch/groups/bob/-/issues2023-03-15T19:47:51Zhttps://gitlab.idiap.ch/bob/docs/-/issues/10Installation default instructions2023-03-15T19:47:51ZTiago de Freitas PereiraInstallation default instructionsWe need to discuss how's going to be the default installation 'modus-operandi' for individual packages.
We were discussing to make the default installation via `buildout`, something along these lines:
```shell
$ git clone https://gitla...We need to discuss how's going to be the default installation 'modus-operandi' for individual packages.
We were discussing to make the default installation via `buildout`, something along these lines:
```shell
$ git clone https://gitlab.idiap.ch/bob/[MY-PACKAGE]
$ cd [MY-PACKAGE]
$ bdt create -vv [MY-PACKAGE] .
$ conda activate [MY-PACKAGE]
$ buildout
$ echo "HAVE FUN"
```
What do you think? ping @andre.anjos @amohammadi @ydayer @lcolboishttps://gitlab.idiap.ch/bob/bob.learn.linear/-/issues/13Shall we archive this package?2022-02-14T15:24:44ZTiago de Freitas PereiraShall we archive this package?Hi @bob,
I'm moving forward with the redefinition of our pipelines using Dask (https://gitlab.idiap.ch/bob/bob.pipelines and https://gitlab.idiap.ch/bob/bob.bio.base/merge_requests/180) .
It's a good opportunity to think which packages...Hi @bob,
I'm moving forward with the redefinition of our pipelines using Dask (https://gitlab.idiap.ch/bob/bob.pipelines and https://gitlab.idiap.ch/bob/bob.bio.base/merge_requests/180) .
It's a good opportunity to think which packages worth to keep and which not; think about our short time for the maintenance of those packages and in the amount of people interested in doing so
I would like to open the discussion if we should keep this package alive.
In short, this package has the following Linear Trainers:
- bob.learn.linear.PCATrainer: Stable implementation in https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html
- bob.learn.linear.FisherLDATrainer: Stable implementation in https://scikit-learn.org/0.16/modules/generated/sklearn.lda.LDA.html
- bob.learn.linear.WCCNTrainer: With a quick search, didn't find a stable implementation of it
- bob.learn.linear.WhiteningTrainer: With a quick search, didn't find a stable implementation of it, BUT it's really simple to have a python implementation of it if necessary
- bob.learn.linear.CGLogRegTrainer: Stable implementation in https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html **WARNING** The regularization implemented in scikit-learn is different from ours, but I think it's ok.
- bob.learn.linear.BICTrainer: With a quick search, didn't find a stable implementation of it (does anyone use this one?)
- bob.learn.linear.GFKTrainer: There's no stable implementation of this one, BUT we can archive it, no problem.
Thanks for any feedbackhttps://gitlab.idiap.ch/bob/bob.ip.base/-/issues/6floating point exception (core dump) in DCTFeatures when block_size and block...2018-08-18T15:19:01ZAmir MOHAMMADIfloating point exception (core dump) in DCTFeatures when block_size and block_overlap are equalTo reproduce:
```python
>>> from bob.ip.base import DCTFeatures
>>> extractor = DCTFeatures(10, (14,14), (14,14), False, False)
>>> from bob.io.base.test_utils import datafile
>>> import bob.io.image
>>> import bob.io.base
>>> path = dat...To reproduce:
```python
>>> from bob.ip.base import DCTFeatures
>>> extractor = DCTFeatures(10, (14,14), (14,14), False, False)
>>> from bob.io.base.test_utils import datafile
>>> import bob.io.image
>>> import bob.io.base
>>> path = datafile('grace_hopper.png', 'bob.io.image')
>>> img = bob.io.base.load(path)
>>> import bob.ip.color
>>> gray = bob.ip.color.rgb_to_gray(img)
>>> gray.shape
(600, 512)
>>> dct = extractor(gray)
```https://gitlab.idiap.ch/bob/bob.learn.linear/-/issues/14Severe bug in LDA (default algorithm)2021-09-14T16:25:15ZAndré AnjosSevere bug in LDA (default algorithm)The default algorithm in this package is wrong. We cannot use symmetric to evaluate the eigenvalue decomposition of $Sw^-1 Sb$, because that multiplication is not guaranteed symmetric.
We should always be using `pinv`. There should be...The default algorithm in this package is wrong. We cannot use symmetric to evaluate the eigenvalue decomposition of $Sw^-1 Sb$, because that multiplication is not guaranteed symmetric.
We should always be using `pinv`. There should be no other option.
References:
* https://gitlab.idiap.ch/bob/bob.learn.linear/-/blob/master/bob/learn/linear/include/bob.learn.linear/lda.h#L49
* https://gitlab.idiap.ch/bob/bob.learn.linear/-/blob/master/bob/learn/linear/cpp/lda.cpp#L137Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.ip.base/-/issues/14GeomNorm and extrapolate_mask require different mask types2021-02-24T10:43:10ZManuel Günthersiebenkopf@googlemail.comGeomNorm and extrapolate_mask require different mask typesWhen looking at the two functions `GeomNorm.process` and `extrapolate_mask` for color images, two different mask types are required:
- `GeomNorm` takes a 3D mask: https://gitlab.idiap.ch/bob/bob.ip.base/-/blob/a9109e06264f2e28ece3b131da...When looking at the two functions `GeomNorm.process` and `extrapolate_mask` for color images, two different mask types are required:
- `GeomNorm` takes a 3D mask: https://gitlab.idiap.ch/bob/bob.ip.base/-/blob/a9109e06264f2e28ece3b131da9babb0365b6f36/bob/ip/base/include/bob.ip.base/GeomNorm.h#L99 (implementation here: https://gitlab.idiap.ch/bob/bob.ip.base/-/blob/a9109e06264f2e28ece3b131da9babb0365b6f36/bob/ip/base/include/bob.ip.base/GeomNorm.h#L166)
- `extrapolate_mask` takes a 2D mask: https://gitlab.idiap.ch/bob/bob.ip.base/-/blob/a9109e06264f2e28ece3b131da9babb0365b6f36/bob/ip/base/include/bob.ip.base/Affine.h#L445
This is a bit inconsequent. I am not sure, why `GeomNorm` requires a 3D mask for color images. Each pixel will have the same visibility independent of the color channel. Thus, I would propose to reduce the mask for `GeomNorm` to 2D. We can also have the possibility to have both 2D and 3D masks, in case you require backward compatibility (which I could understand).Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.extension/-/issues/28Automatic docstring generator should adopt one of "Napoleon" styles2019-09-04T13:12:40ZAndré AnjosAutomatic docstring generator should adopt one of "Napoleon" stylesWhen we wrote our documentation generator in [documentation.h](bob/extension/include/bob.extension/documentation.h), there was not a set standard for documenting functions in sphinx. Since release 1.3 (which is now required by most of ou...When we wrote our documentation generator in [documentation.h](bob/extension/include/bob.extension/documentation.h), there was not a set standard for documenting functions in sphinx. Since release 1.3 (which is now required by most of our software), there is:
http://www.sphinx-doc.org/en/stable/ext/napoleon.html
The napoleon extension is already loaded by most of our software, so it makes sense that the generator follows one of the docstring standards defined on that manual page. Some of our python-based docstrings already follow the "Google" style:
http://www.sphinx-doc.org/en/stable/ext/example_google.html#example-google
It would be good to get the C++ docs matching that.May 2017 HackathonPavel KORSHUNOVPavel KORSHUNOVhttps://gitlab.idiap.ch/bob/bob.pipelines/-/issues/16Run dask+SGE backend without SETSHELL = starvation2020-05-16T12:47:09ZTiago de Freitas PereiraRun dask+SGE backend without SETSHELL = starvationIt's being a while we have this issue, but I've never materialized it here.
When a script that uses dask+SGE backend is executed at Idiap without a `SETSHELL grid`, the script hangs forever waiting for a worker.
We need to, i-) either t...It's being a while we have this issue, but I've never materialized it here.
When a script that uses dask+SGE backend is executed at Idiap without a `SETSHELL grid`, the script hangs forever waiting for a worker.
We need to, i-) either throw an exception once `qsub` fails to be executed or ii-) do like it's done in gridtk (triggers this automatically).https://gitlab.idiap.ch/bob/bob.io.video/-/issues/19Deprecation in favour of imageio (and imageio-ffmpeg)2022-01-26T08:15:33ZAndré AnjosDeprecation in favour of imageio (and imageio-ffmpeg)@bob: I think it is time to deprecate this package. We have been maintaining this for a long time and it very often requires effort to keep it up.
The package (imageio)[https://github.com/imageio/imageio] seems well documented and main...@bob: I think it is time to deprecate this package. We have been maintaining this for a long time and it very often requires effort to keep it up.
The package (imageio)[https://github.com/imageio/imageio] seems well documented and maintained, and contains a plugin for reading video files through (ffmpeg in frames)[https://github.com/imageio/imageio-ffmpeg], as we do, aside supporting all video formats we do, via the same, or similar libraries.
I propose we just move the effort to maintaining the conda-forge feedstocks (https://github.com/conda-forge/imageio-feedstock/, https://github.com/conda-forge/imageio-ffmpeg-feedstock/) instead.
Please comment.https://gitlab.idiap.ch/bob/bob.bio.video/-/issues/22`test_video_like_container` fails on ARM2022-03-04T14:26:12ZTiago de Freitas Pereira`test_video_like_container` fails on ARMLook at https://gitlab.idiap.ch/bob/bob.bio.video/-/jobs/251433#L2788
https://gitlab.idiap.ch/bob/bob.bio.video/-/jobs/251433Look at https://gitlab.idiap.ch/bob/bob.bio.video/-/jobs/251433#L2788
https://gitlab.idiap.ch/bob/bob.bio.video/-/jobs/251433Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.pipelines/-/issues/28Logging level does not propogate to workers2020-11-27T18:16:28ZAmir MOHAMMADILogging level does not propogate to workersWhen I run a script in verbose mode with dask, the debug logs are not printed in worker logs.When I run a script in verbose mode with dask, the debug logs are not printed in worker logs.Bob 9.0.0Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/37Follow-up from "Sample Loaders able to handle certain type of annotations..."2020-12-05T20:18:47ZTiago de Freitas PereiraFollow-up from "Sample Loaders able to handle certain type of annotations..."The following discussion from !81 should be addressed:
- [ ] @amohammadi started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/81#note_59086):
> I suggest creating a base class for this or some kind of d...The following discussion from !81 should be addressed:
- [ ] @amohammadi started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/81#note_59086):
> I suggest creating a base class for this or some kind of documentation or tests to make sure all face dbs have these attributes.Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.pad.face/-/issues/40Could move video processing tools to bob.bio.video2022-06-03T15:09:12ZLaurent COLBOISCould move video processing tools to bob.bio.videoThere are some very nice tools for video processing such as
`bob.pad.face.transformer.VideoToFrames`
or
`bob.pad.face.database.database.delayed_video_load` which are not PAD specific and would gain in visibility if moved to `bob.bio.video`.There are some very nice tools for video processing such as
`bob.pad.face.transformer.VideoToFrames`
or
`bob.pad.face.database.database.delayed_video_load` which are not PAD specific and would gain in visibility if moved to `bob.bio.video`.Laurent COLBOISLaurent COLBOIShttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/44Filename extension of ARface database is undefined2021-04-08T06:37:35ZManuel Günthersiebenkopf@googlemail.comFilename extension of ARface database is undefinedWhen downloading the images of the AR face database from its original site: https://www2.ece.ohio-state.edu/~aleix/ARdatabase.html The images are stored in `.raw` format. Depending on which format was used to convert the files, different...When downloading the images of the AR face database from its original site: https://www2.ece.ohio-state.edu/~aleix/ARdatabase.html The images are stored in `.raw` format. Depending on which format was used to convert the files, different file name extensions need to be provided for the arface database interface: https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/fdf454e829c320df1747cbbbcd050be9f6a26b34/bob/bio/face/config/database/arface.py#L10
Currently, this extension is fixed to `.png`. It would be optimal if we could have a resource parameter to update this extension in case people stored images in a different format -- as it is the case at Idiap, where `.ppm` was used.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.devtools/-/issues/43Paralellization of the `bdt gitlab relase`2021-10-06T09:11:39ZTiago de Freitas PereiraParalellization of the `bdt gitlab relase`Hi guys,
Our release procedure could be optimized by some simple parallelization.
Basically, the task is to find the packages that can be deployed at the same time
I could use the outcome of this feature https://gitlab.idiap.ch/bob/bob...Hi guys,
Our release procedure could be optimized by some simple parallelization.
Basically, the task is to find the packages that can be deployed at the same time
I could use the outcome of this feature https://gitlab.idiap.ch/bob/bob.extension/issues/62 to do that
What do you think?Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/50Many baselines don't run against ATNT2021-07-09T12:24:46ZAmir MOHAMMADIMany baselines don't run against ATNTI have tested 2 so far:
```
$ bob bio pipelines vanilla-biometrics atnt lda
bob.bio.face.config.baseline.helpers@2021-05-18 17:17:07,852 -- WARNING: Annotation type None is not supported. Input images will be fully scaled.
Traceback (mos...I have tested 2 so far:
```
$ bob bio pipelines vanilla-biometrics atnt lda
bob.bio.face.config.baseline.helpers@2021-05-18 17:17:07,852 -- WARNING: Annotation type None is not supported. Input images will be fully scaled.
Traceback (most recent call last):
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/wrappers.py", line 483, in _fit
self.estimator = self.estimator.fit(X, y, **fit_params)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/wrappers.py", line 201, in fit
self.estimator = self.estimator.fit(X, **kwargs)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/transformers/algorithm.py", line 62, in fit
training_data = split_X_by_y(X, y)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/transformers/__init__.py", line 9, in split_X_by_y
for x1, y1 in zip(X, y):
TypeError: 'NoneType' object is not iterable
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "bin/bob", line 22, in <module>
sys.exit(bob.extension.scripts.main_cli())
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/script/vanilla_biometrics.py", line 205, in vanilla_biometrics
execute_vanilla_biometrics(
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/vanilla_biometrics.py", line 148, in execute_vanilla_biometrics
_ = compute_scores(post_processed_scores, dask_client)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/vanilla_biometrics.py", line 23, in compute_scores
result = result.compute(scheduler=dask_client)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/base.py", line 284, in compute
(result,) = compute(self, traverse=False, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/base.py", line 566, in compute
results = schedule(dsk, keys, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 560, in get_sync
return get_async(
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 503, in get_async
for key, res_info, failed in queue_get(queue).result():
File "~/temp/conda/envs/hardening/lib/python3.8/concurrent/futures/_base.py", line 432, in result
return self.__get_result()
File "~/temp/conda/envs/hardening/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
raise self._exception
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 545, in submit
fut.set_result(fn(*args, **kwargs))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 237, in batch_execute_tasks
return [execute_task(*a) for a in it]
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 237, in <listcomp>
return [execute_task(*a) for a in it]
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 228, in execute_task
result = pack_exception(e, dumps)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 223, in execute_task
result = _execute_task(task, data)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/core.py", line 121, in _execute_task
return func(*(_execute_task(a, cache) for a in args))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/wrappers.py", line 485, in _fit
raise RuntimeError(
RuntimeError: Something went wrong when fitting SampleWrapper(estimator=AlgorithmTransformer(instance=<bob.bio.base.algorithm.LDA object at 0x7fd497421d90>,
projector_file='~/temp/bob.bio.base.legacy_cache/lda/Projector.hdf5'),
fit_extra_arguments=(), transform_extra_arguments=()) from DaskWrapper(estimator=SampleWrapper(estimator=AlgorithmTransformer(instance=<bob.bio.base.algorithm.LDA object at 0x7fd497421d90>,
projector_file='~/temp/bob.bio.base.legacy_cache/lda/Projector.hdf5'),
fit_extra_arguments=(),
transform_extra_arguments=()))
```
```
$ bob bio pipelines vanilla-biometrics atnt facenet-sanderberg
bob.bio.face.config.baseline.helpers@2021-05-18 17:17:23,185 -- WARNING: Annotation type None is not supported. Input images will be fully scaled.
Traceback (most recent call last):
File "bin/bob", line 22, in <module>
sys.exit(bob.extension.scripts.main_cli())
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/script/vanilla_biometrics.py", line 205, in vanilla_biometrics
execute_vanilla_biometrics(
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/vanilla_biometrics.py", line 148, in execute_vanilla_biometrics
_ = compute_scores(post_processed_scores, dask_client)
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/vanilla_biometrics.py", line 23, in compute_scores
result = result.compute(scheduler=dask_client)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/base.py", line 284, in compute
(result,) = compute(self, traverse=False, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/base.py", line 566, in compute
results = schedule(dsk, keys, **kwargs)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 560, in get_sync
return get_async(
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 503, in get_async
for key, res_info, failed in queue_get(queue).result():
File "~/temp/conda/envs/hardening/lib/python3.8/concurrent/futures/_base.py", line 432, in result
return self.__get_result()
File "~/temp/conda/envs/hardening/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
raise self._exception
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 545, in submit
fut.set_result(fn(*args, **kwargs))
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 237, in batch_execute_tasks
return [execute_task(*a) for a in it]
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 237, in <listcomp>
return [execute_task(*a) for a in it]
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 228, in execute_task
result = pack_exception(e, dumps)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/local.py", line 223, in execute_task
result = _execute_task(task, data)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/dask/core.py", line 121, in _execute_task
return func(*(_execute_task(a, cache) for a in args))
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/abstract_classes.py", line 59, in enroll_samples
retval.append(self._enroll_sample_set(k))
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/abstract_classes.py", line 66, in _enroll_sample_set
data = [s.data for s in sampleset.samples]
File "~/git/bob.project.hardening/src/bob.bio.base/bob/bio/base/pipelines/vanilla_biometrics/abstract_classes.py", line 66, in <listcomp>
data = [s.data for s in sampleset.samples]
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/sample.py", line 136, in __getattribute__
return super().__getattribute__(name)
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/sample.py", line 151, in data
return self._load()
File "~/temp/conda/envs/hardening/lib/python3.8/site-packages/bob/pipelines/wrappers.py", line 86, in __call__
self.output = self.func(X)
File "~/git/bob.project.hardening/src/bob.bio.face/bob/bio/face/embeddings/tf2_inception_resnet.py", line 75, in transform
return _transform(X)
File "~/git/bob.project.hardening/src/bob.bio.face/bob/bio/face/embeddings/tf2_inception_resnet.py", line 61, in _transform
raise ValueError(
ValueError: Image shape (160, 160, 5) not supported. Expected (None, 160, 160, 3)
```https://gitlab.idiap.ch/bob/bob.bio.face/-/issues/55Follow-up from "Feature extractors"2021-06-15T17:07:39ZTiago de Freitas PereiraFollow-up from "Feature extractors"The following discussion from !112 should be addressed:
- [ ] @lcolbois started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/112#note_63462): (+1 comment)
> Could this implement a `memory_demanding` mec...The following discussion from !112 should be addressed:
- [ ] @lcolbois started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/112#note_63462): (+1 comment)
> Could this implement a `memory_demanding` mechanism like in the other frameworks ?https://gitlab.idiap.ch/bob/bob.measure/-/issues/62Visualization in a plot with several curves2020-08-07T08:20:18ZHatef OTROSHIVisualization in a plot with several curvesHi,
I was trying to plot ROC curves of several models with `bob bio roc`. Since there are many curves in a plot, it is hard to understand each one and distinguish them. Below, you can find a sample of such plot:
![magma](/uploads/dc3090...Hi,
I was trying to plot ROC curves of several models with `bob bio roc`. Since there are many curves in a plot, it is hard to understand each one and distinguish them. Below, you can find a sample of such plot:
![magma](/uploads/dc30907b6bc6a3cbbf6c4a13e2d4f08a/magma.png)
I was wondering how I can achieve a better visualization. If we use `--line-styles` option in `bob bio roc` we will have a result as below which is still not clear:
![magma_line](/uploads/6b9e27f89c35dd54c946a0fd5ba48290/magma_line.png)
I was searching if I could find a better color map and change the color map of `matplotlib`. Inspired by [this plot](https://stackoverflow.com/a/35971096), I changed the color map by replacing [this line](https://gitlab.idiap.ch/bob/bob.measure/-/blob/master/bob/measure/utils.py#L141) in `bob.measure` with `cmap = pyplot.cm.get_cmap(name='gist_ncar')`- only changing the color map. Here is the result:
![gist_ncar](/uploads/fb6e7a5b3a442c1c355e6b92ded0cef8/gist_ncar.png)
And if I use `--line-styles` option as well, it results the following plot while the above plot is still more clear:
![gist_ncar_line](/uploads/988767d0c726939fad088b31e7c0ead4/gist_ncar_line.png)https://gitlab.idiap.ch/bob/bob.bio.face/-/issues/56Follow-up from "Feature extractors"2021-06-16T14:37:01ZTiago de Freitas PereiraFollow-up from "Feature extractors"The following discussion from !112 should be addressed:
- [ ] @mguenther started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/112#note_63485): (+5 comments)
> I do not think that this is a good idea to ...The following discussion from !112 should be addressed:
- [ ] @mguenther started a [discussion](https://gitlab.idiap.ch/bob/bob.bio.face/-/merge_requests/112#note_63485): (+5 comments)
> I do not think that this is a good idea to have a default cropping for faces here, since all networks require a different cropping. Instead of using some obscure default cropping which might generate very bad features for the given network, I would rather recommend to raise an exception in case that we do not have eye locations.
>
> Note also that the `dnn_default_cropping` does not seem to be imported in this file.
Raise a warning during face-cropTiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.bio.face/-/issues/59Introduce usage documentation for deep learning modules2022-01-19T15:48:19ZManuel Günthersiebenkopf@googlemail.comIntroduce usage documentation for deep learning modulesThe two students who introduced the deep learning frameworks also wrote some documentation on how to use their new modules. For some reason, these did not make it into the current package, but I have a copy of it.
Since the structure of...The two students who introduced the deep learning frameworks also wrote some documentation on how to use their new modules. For some reason, these did not make it into the current package, but I have a copy of it.
Since the structure of the modules has changed, we might need to update the documentation accordingly.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.measure/-/issues/65Error margins on cross validation protocols2021-08-02T08:10:25ZAmir MOHAMMADIError margins on cross validation protocolsMany experiments come with K-Fold cross validation protocols.
Currently, we only have support for displaying the numerical metrics using the `multi-metrics` command.
However, support for plotting ROC and DET curves with proper error marg...Many experiments come with K-Fold cross validation protocols.
Currently, we only have support for displaying the numerical metrics using the `multi-metrics` command.
However, support for plotting ROC and DET curves with proper error margins are missing.
Scikit-learn has an example for ROC with +-1 std in https://scikit-learn.org/stable/auto_examples/model_selection/plot_roc_crossval.html
but this might not be the best approach.
Moreover, in our multi-metrics, we also use mean and std to show errors.