bob issueshttps://gitlab.idiap.ch/groups/bob/-/issues2022-02-24T17:21:38Zhttps://gitlab.idiap.ch/bob/bob.learn.em/-/issues/35Small changes to the new API needed2022-02-24T17:21:38ZAmir MOHAMMADISmall changes to the new API needed- [ ] rename kmeans_trainer parameter in GMMMachine to `kmeans_machine`
- [ ] make the Kmeans and GMM machines available in `bob.learn.em`.
- ~~[ ] The `__call__` methods are missing.~~
- [ ] load methods are missing
- [ ] setup.py requi...- [ ] rename kmeans_trainer parameter in GMMMachine to `kmeans_machine`
- [ ] make the Kmeans and GMM machines available in `bob.learn.em`.
- ~~[ ] The `__call__` methods are missing.~~
- [ ] load methods are missing
- [ ] setup.py requirements.txt and meta.yaml is not updated.
Some other things that I will add to this issue.
The changes don't need to be addressed now.https://gitlab.idiap.ch/bob/bob.pad.face/-/issues/43Nightlies failing2022-02-22T17:55:07ZTiago de Freitas PereiraNightlies failingNightlies failing because of this one
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257429
Can someone have a look on that?
Thanks
ping @amohammadi @ageorgeNightlies failing because of this one
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257429
Can someone have a look on that?
Thanks
ping @amohammadi @ageorgeAmir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.pad.face/-/issues/42Job Failed #2477962022-02-22T17:55:06ZAmir MOHAMMADIJob Failed #247796Job [#247796](https://gitlab.idiap.ch/bob/nightlies/-/jobs/247796) failed for 36b8adb9f36c2610132f0f90600063379d15a620:
```
Warning, treated as error:
/scratch/builds/bob/nightlies/miniconda/conda-bld/bob.pad.face_1634852412497/_test_env...Job [#247796](https://gitlab.idiap.ch/bob/nightlies/-/jobs/247796) failed for 36b8adb9f36c2610132f0f90600063379d15a620:
```
Warning, treated as error:
/scratch/builds/bob/nightlies/miniconda/conda-bld/bob.pad.face_1634852412497/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/python3.8/site-packages/bob/pad/face/config/replay_mobile.py:docstring of bob.pad.face.config.replay_mobile:13:circular inclusion in "include" directive: ../../../../src/bob/bob.pad.face/doc/links.rst < ../../../../src/bob/bob.pad.face/doc/links.rst < ../_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/python3.8/site-packages/bob/pad/face/config/replay_attack.py:docstring of bob.pad.face.config.replay_attack
```Conda-forge migrationhttps://gitlab.idiap.ch/bob/bob.learn.em/-/issues/33Nightlies failing because of this one2022-02-22T13:48:19ZTiago de Freitas PereiraNightlies failing because of this oneNightlies is failing because of this one.
The issue seems related to HDF5
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257644
https://gitlab.idiap.ch/bob/bob.learn.em/-/jobs/257680
Could you please look at that @ydayer ?
ThanksNightlies is failing because of this one.
The issue seems related to HDF5
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257644
https://gitlab.idiap.ch/bob/bob.learn.em/-/jobs/257680
Could you please look at that @ydayer ?
ThanksYannick DAYERYannick DAYERhttps://gitlab.idiap.ch/bob/bob.learn.em/-/issues/34Does not work with h5py 32022-02-21T18:23:19ZAmir MOHAMMADIDoes not work with h5py 3Job [#257793](https://gitlab.idiap.ch/bob/bob.learn.em/-/jobs/257793) failed for 462d8bda27b8bef01a11f187fbb7ade153a650a0:Job [#257793](https://gitlab.idiap.ch/bob/bob.learn.em/-/jobs/257793) failed for 462d8bda27b8bef01a11f187fbb7ade153a650a0:Amir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.io.base/-/issues/22Does not compile with hdf5 1.122022-02-21T11:37:29ZTiago de Freitas PereiraDoes not compile with hdf5 1.12Compilation issue with HDF5
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257523/raw
Probably related to these bumps
https://gitlab.idiap.ch/bob/bob.devtools/-/merge_requests/273
```
/scratch/builds/bob/nightlies/src/bob/bob.io.base/...Compilation issue with HDF5
https://gitlab.idiap.ch/bob/nightlies/-/jobs/257523/raw
Probably related to these bumps
https://gitlab.idiap.ch/bob/bob.devtools/-/merge_requests/273
```
/scratch/builds/bob/nightlies/src/bob/bob.io.base/bob/io/base/cpp/HDF5Group.cpp: In member function 'herr_t bob::io::base::detail::hdf5::Group::iterate_callback(hid_t, const char*, const H5L_info2_t*)':
/scratch/builds/bob/nightlies/src/bob/bob.io.base/bob/io/base/cpp/HDF5Group.cpp:88:73: error: too few arguments to function 'herr_t H5Oget_info_by_name3(hid_t, const char*, H5O_info2_t*, unsigned int, hid_t)'
88 | herr_t status = H5Oget_info_by_name(self, name, &obj_info, H5P_DEFAULT);
| ^
In file included from /scratch/builds/bob/nightlies/miniconda/conda-bld/bob.io.base_1645283626826/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl/include/H5Apublic.h:22,
from /scratch/builds/bob/nightlies/miniconda/conda-bld/bob.io.base_1645283626826/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl/include/hdf5.h:23,
from /scratch/builds/bob/nightlies/src/bob/bob.io.base/bob/io/base/include/bob.io.base/HDF5Group.h:15,
from /scratch/builds/bob/nightlies/src/bob/bob.io.base/bob/io/base/cpp/HDF5Group.cpp:18:
/scratch/builds/bob/nightlies/miniconda/conda-bld/bob.io.base_1645283626826/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl/include/H5Opublic.h:557:15: note: declared here
557 | H5_DLL herr_t H5Oget_info_by_name3(hid_t loc_id, const char *name, H5O_info2_t *oinfo, unsigned fields,
| ^~~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/bob_io_base.dir/build.make:160: CMakeFiles/bob_io_base.dir/scratch/builds/bob/nightlies/src/bob/bob.io.base/bob/io/base/cpp/HDF5Group.cpp.o] Error 1
```Amir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/174Nightlies failing here2022-02-16T09:30:59ZTiago de Freitas PereiraNightlies failing herePLDA was temporarily removed from `bob.learn.em` with https://gitlab.idiap.ch/bob/bob.learn.em/-/merge_requests/42
we need to remove it from here too.PLDA was temporarily removed from `bob.learn.em` with https://gitlab.idiap.ch/bob/bob.learn.em/-/merge_requests/42
we need to remove it from here too.https://gitlab.idiap.ch/bob/bob.ip.facedetect/-/issues/12Nightlies failling here2022-02-15T15:40:38ZTiago de Freitas PereiraNightlies failling hereSomething with boosting.
I don't understand why this is failing now.
Needs investigation
https://gitlab.idiap.ch/bob/nightlies/-/pipelines/58308Something with boosting.
I don't understand why this is failing now.
Needs investigation
https://gitlab.idiap.ch/bob/nightlies/-/pipelines/58308https://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.learn.em/-/issues/29Cannot succesfully copy kmeans trainers!2022-02-11T15:08:55ZAmir MOHAMMADICannot succesfully copy kmeans trainers!See the code below to reproduce:
```python
In [2]: import bob.learn.em
In [3]: bob.learn.em
Out[3]: <module 'bob.learn.em' from 'src/bob.learn.em/bob/learn/em/__init__.py'>
# bob.learn.em from master
In [4]: trainer1 = bob.learn.em.KMe...See the code below to reproduce:
```python
In [2]: import bob.learn.em
In [3]: bob.learn.em
Out[3]: <module 'bob.learn.em' from 'src/bob.learn.em/bob/learn/em/__init__.py'>
# bob.learn.em from master
In [4]: trainer1 = bob.learn.em.KMeansTrainer()
In [6]: machine = bob.learn.em.KMeansMachine(3, 2)
In [7]: trainer1.reset_accumulators(machine)
In [8]: trainer1.zeroeth_order_statistics
Out[8]: array([0., 0., 0.])
In [9]: trainer2 = bob.learn.em.KMeansTrainer(trainer1)
In [10]: trainer2.zeroeth_order_statistics
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-10-35fe1ff0cedc> in <module>()
----> 1 trainer2.zeroeth_order_statistics
ValueError: cannot convert C++ blitz::Array<float64,1> which doesn't behave (memory contiguous, aligned, C-style) into a pythonic bob.blitz.array
```https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/3KMeans returns NaNs2022-02-11T15:08:46ZAndré AnjosKMeans returns NaNs*Created by: siebenkopf*
I have lately run into a problem, where the ``bob.learn.em.KMeansTrainer`` returns a machine, where some of the means are ``nan``. I have enough training data (several millions), and I want to have 1000 means.
...*Created by: siebenkopf*
I have lately run into a problem, where the ``bob.learn.em.KMeansTrainer`` returns a machine, where some of the means are ``nan``. I have enough training data (several millions), and I want to have 1000 means.
I guess that this problem is related to the fact that some means are under-represented with data (i.e., no data point is assigned for a specific mean). Then, re-computing the means will end up in a division by zero, which turns into ``nan`` values.
To avoid that, it is possible to re-initialize the under-represented mean by selecting the data point that is furthest away from the (other) current means, something like:
```py
# get the maximum distance
furthest_training_sample = numpy.argmax([max(distance(data, mean) for mean in means) for data in training_data])
# assign new mean
new_mean = training_data[furthest_training_sample]
```https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/2Compute the log likelihood blitz::Array<double, 2> - GMMMachine2022-02-11T15:08:31ZAndré AnjosCompute the log likelihood blitz::Array<double, 2> - GMMMachine*Created by: tiagofrepereira2012*
Would be nice in the ``bob::learn::em::GMMMachine`` to have a ``logLikelihood`` method that takes a ``blitz::Array<double, 2>`` as input and not only ``blitz::Array<double, 1>``.*Created by: tiagofrepereira2012*
Would be nice in the ``bob::learn::em::GMMMachine`` to have a ``logLikelihood`` method that takes a ``blitz::Array<double, 2>`` as input and not only ``blitz::Array<double, 1>``.https://gitlab.idiap.ch/bob/bob.learn.em/-/issues/6Test fails with numpy version 1.9.12022-02-11T15:08:22ZAndré AnjosTest fails with numpy version 1.9.1*Created by: siebenkopf*
When compiling against numpy version 1.9.1, one of the tests fail, regardless of the python version: ``bob.learn.em.test.test_plda_trainer.test_plda_EM_vs_Python``; see: https://travis-ci.org/bioidiap/bob.learn....*Created by: siebenkopf*
When compiling against numpy version 1.9.1, one of the tests fail, regardless of the python version: ``bob.learn.em.test.test_plda_trainer.test_plda_EM_vs_Python``; see: https://travis-ci.org/bioidiap/bob.learn.em/jobs/63327282.
However, with the latest numpy version, the test passes again, see: https://travis-ci.org/bioidiap/bob.learn.em/jobs/63453315
Also, with older numpy versions the test seems to pass. So, maybe it is just an issue with this numpy version, and not with ``bob.learn.em``. It would be nice to investigate that further.
Manuelhttps://gitlab.idiap.ch/bob/bob.learn.em/-/issues/30Segmentation fault in e step of ML GMM trainer2022-02-11T15:07:50ZAmir MOHAMMADISegmentation fault in e step of ML GMM trainerHere is code to reproduce:
```python
import pkg_resources
import bob.io.base
import bob.learn.em
data = bob.io.base.load("data.hdf5")
with bob.io.base.HDF5File("machine.hdf5") as f:
machine = bob.learn.em.GMMMachine(f)
trainer = bo...Here is code to reproduce:
```python
import pkg_resources
import bob.io.base
import bob.learn.em
data = bob.io.base.load("data.hdf5")
with bob.io.base.HDF5File("machine.hdf5") as f:
machine = bob.learn.em.GMMMachine(f)
trainer = bob.learn.em.ML_GMMTrainer(True, True, True, 0)
trainer.initialize(machine)
trainer.e_step(machine, data)
```
(data and machine too large to upload here).
The data looks fine:
```python
data.flags
Out[79]:
C_CONTIGUOUS : True
F_CONTIGUOUS : False
OWNDATA : True
WRITEABLE : True
ALIGNED : True
WRITEBACKIFCOPY : False
UPDATEIFCOPY : False
data.dtype
Out[80]: dtype('float64')
data.shape
Out[81]: (23716, 384)
data.min()
Out[82]: -11.06418228149414
data.max()
Out[83]: 10.025330543518066
data.mean()
Out[84]: 0.007353248348100698
data.std()
Out[85]: 2.3619958671051187
```
with this histogram of data: ![hist_data](/uploads/5251473cebc3a0ed64b40105f2e1db7f/hist_data.png)
Looks like one the values becomes `nan` in `bob::math::Log::logAdd`:
```gdb
Catchpoint 2 (exception thrown), __cxxabiv1::__cxa_throw (obj=obj@entry=0x5555560e1050, tinfo=0x7fffe94e07c0 <typeinfo for std::runtime_error>, dest=0x7fffe94331c8 <std::runtime_error::~runtime_error()>)
at /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/work/.build/x86_64-conda_cos6-linux-gnu/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:80
80 /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/work/.build/x86_64-conda_cos6-linux-gnu/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc: No such file or directory.
(gdb) bt
#0 __cxxabiv1::__cxa_throw (obj=obj@entry=0x5555560e1050, tinfo=0x7fffe94e07c0 <typeinfo for std::runtime_error>, dest=0x7fffe94331c8 <std::runtime_error::~runtime_error()>)
at /home/nwani/m3/conda-bld/compilers_linux-64_1560109574129/work/.build/x86_64-conda_cos6-linux-gnu/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:80
#1 0x00007fffe85d9fc9 in bob::math::Log::logAdd (log_a=log_a@entry=-4026.0555379340872, log_b=log_b@entry=-nan(0x8000000000000)) at bob.learn.em/src/bob.math/bob/math/cpp/log.cpp:32
#2 0x00007fffe7bc5923 in bob::learn::em::GMMMachine::logLikelihood_ (this=this@entry=0x555556198c00, x=..., log_weighted_gaussian_likelihoods=...) at bob.learn.em/bob/learn/em/cpp/GMMMachine.cpp:247
#3 0x00007fffe7bcb3e6 in bob::learn::em::GMMMachine::logLikelihood (this=this@entry=0x555556198c00, x=..., log_weighted_gaussian_likelihoods=...) at bob.learn.em/bob/learn/em/cpp/GMMMachine.cpp:233
#4 0x00007fffe7bcc276 in bob::learn::em::GMMMachine::accStatistics (this=this@entry=0x555556198c00, x=..., stats=...) at bob.learn.em/bob/learn/em/cpp/GMMMachine.cpp:317
#5 0x00007fffe7bcc340 in bob::learn::em::GMMMachine::accStatistics (this=0x555556198c00, input=..., stats=...) at bob.learn.em/bob/learn/em/cpp/GMMMachine.cpp:294
#6 0x00007fffe7c2b4cb in bob::learn::em::GMMBaseTrainer::eStep (this=<optimized out>, gmm=..., data=...) at bob.learn.em/bob/learn/em/cpp/GMMBaseTrainer.cpp:41
#7 0x00007fffe7ac6a28 in bob::learn::em::ML_GMMTrainer::eStep (this=0x555555f4ad70, gmm=..., data=...) at bob.learn.em/bob/learn/em/include/bob.learn.em/ML_GMMTrainer.h:61
#8 0x00007fffe7ac7a76 in PyBobLearnEMMLGMMTrainer_e_step (self=0x7fffe9b93fb0, args=0x7fffe9b6ef88, kwargs=0x0) at bob/learn/em/ml_gmm_trainer.cpp:262
#9 0x0000555555665c54 in _PyCFunction_FastCallDict (func_obj=0x7fffe7ea59d8, args=<optimized out>, nargs=2, kwargs=0x0) at /tmp/build/80754af9/python_1564510748219/work/Objects/methodobject.c:231
#10 0x00005555556edabc in call_function (pp_stack=0x7fffffffc7c8, oparg=<optimized out>, kwnames=0x0) at /tmp/build/80754af9/python_1564510748219/work/Python/ceval.c:4851
#11 0x000055555571075a in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>) at /tmp/build/80754af9/python_1564510748219/work/Python/ceval.c:3335
#12 0x00005555556e89b9 in _PyEval_EvalCodeWithName (qualname=0x0, name=<optimized out>, closure=0x0, kwdefs=0x0, defcount=0, defs=0x0, kwstep=2, kwcount=<optimized out>, kwargs=0x0, kwnames=0x0, argcount=<optimized out>,
args=<optimized out>, locals=<optimized out>, globals=<optimized out>, _co=0x7ffff78d4a50) at /tmp/build/80754af9/python_1564510748219/work/Python/ceval.c:4166
#13 PyEval_EvalCodeEx (_co=0x7ffff78d4a50, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kws=0x0, kwcount=0, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0)
at /tmp/build/80754af9/python_1564510748219/work/Python/ceval.c:4187
#14 0x00005555556e975c in PyEval_EvalCode (co=co@entry=0x7ffff78d4a50, globals=globals@entry=0x7ffff7911318, locals=locals@entry=0x7ffff7911318) at /tmp/build/80754af9/python_1564510748219/work/Python/ceval.c:731
#15 0x0000555555769744 in run_mod (mod=<optimized out>, filename=<optimized out>, globals=0x7ffff7911318, locals=0x7ffff7911318, flags=<optimized out>, arena=<optimized out>)
at /tmp/build/80754af9/python_1564510748219/work/Python/pythonrun.c:1025
#16 0x0000555555769b41 in PyRun_FileExFlags (fp=0x555555987770, filename_str=<optimized out>, start=<optimized out>, globals=0x7ffff7911318, locals=0x7ffff7911318, closeit=1, flags=0x7fffffffca6c)
at /tmp/build/80754af9/python_1564510748219/work/Python/pythonrun.c:978
#17 0x0000555555769d43 in PyRun_SimpleFileExFlags (fp=0x555555987770, filename=<optimized out>, closeit=1, flags=0x7fffffffca6c) at /tmp/build/80754af9/python_1564510748219/work/Python/pythonrun.c:419
#18 0x000055555576d833 in run_file (p_cf=0x7fffffffca6c, filename=0x5555558cb0e0 L"test_em.py", fp=0x555555987770) at /tmp/build/80754af9/python_1564510748219/work/Modules/main.c:340
#19 Py_Main (argc=<optimized out>, argv=<optimized out>) at /tmp/build/80754af9/python_1564510748219/work/Modules/main.c:811
#20 0x000055555563788e in main (argc=2, argv=0x7fffffffcc78) at /tmp/build/80754af9/python_1564510748219/work/Programs/python.c:69
```https://gitlab.idiap.ch/bob/bob.bio.face/-/issues/66LFW directories are non-standard2022-02-03T12:53:53ZManuel Günthersiebenkopf@googlemail.comLFW directories are non-standardIt appears that the directory structure for the LFW dataset is set to an idiap-specific location. By default, there is no relative path like this:
https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/ead8c069bafb4024dc15c5df7fdc878aec8bd5f0/b...It appears that the directory structure for the LFW dataset is set to an idiap-specific location. By default, there is no relative path like this:
https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/ead8c069bafb4024dc15c5df7fdc878aec8bd5f0/bob/bio/face/database/lfw.py#L87
When downloading the images from the LFW web page, they get extracted into directories `lfw` or `lfw_funneled` (for the funneled version). In my eyes it would be more sensible to used these directories instead, i.e., use `lfw` when no annotation directory is specified, and use `lfw_funneled` when annotations are provided.
Another way would be to have two distinct entries for `lfw-view2`, such as `lfw-view2-aligned` (funneled images and annotations) and `lfw-view2-raw` (original images, use detectors).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.face/-/issues/76Resource names for databases not listed anywhere2022-01-19T17:04:16ZManuel Günthersiebenkopf@googlemail.comResource names for databases not listed anywhereCurrently, there is no documentation on how to setup databases.
Particularly, it is mentioned nowhere what are the resource names that need to be set in order to get the databases right.
Ideally, a script that would provide any resource...Currently, there is no documentation on how to setup databases.
Particularly, it is mentioned nowhere what are the resource names that need to be set in order to get the databases right.
Ideally, a script that would provide any resource keys automatically would be very helpful.
But AFAIK such a script does not exist and is not easily to be implemented.
Hence, a manual list of parameters, which should be added to the documentation, should be added.
Finally, some parameters of some databases are non-standard.
For example, ARface has a fixed `.ppm` extension, but since ARface can be downloaded in raw format and converted to any other format (I have used `.png`, for example), there should be options to change those, too.https://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.bio.face/-/issues/60Add the possibility to pass a pre-loaded model into embedding base classes.2022-01-19T15:48:19ZManuel Günthersiebenkopf@googlemail.comAdd the possibility to pass a pre-loaded model into embedding base classes.In some cases, deep learning models are instantiated inside of other packages, and it is not possible to pass the paths of the model to be loaded inside of the classes. For these cases, we should add a `model` parameter to the base class...In some cases, deep learning models are instantiated inside of other packages, and it is not possible to pass the paths of the model to be loaded inside of the classes. For these cases, we should add a `model` parameter to the base class constructors, and simply store the models internally, i.e.:
https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/5c0811270bc6129df64cc3a0ef10c35c64010b65/bob/bio/face/embeddings/pytorch.py#L42
https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/5c0811270bc6129df64cc3a0ef10c35c64010b65/bob/bio/face/embeddings/mxnet.py#L33
https://gitlab.idiap.ch/bob/bob.bio.face/-/blob/5c0811270bc6129df64cc3a0ef10c35c64010b65/bob/bio/face/embeddings/tensorflow.py#L53
As the `transform` function always checks if the model is loaded, no further adaptations need to be done. Test code should be implemented, though.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.io.video/-/issues/20Nightlies failing ON ARM because of this one.2022-01-19T13:08:57ZTiago de Freitas PereiraNightlies failing ON ARM because of this one.I think we need make this guy with "!" like the other ones until we decide to fix issues on this platform.I think we need make this guy with "!" like the other ones until we decide to fix issues on this platform.