bob issueshttps://gitlab.idiap.ch/groups/bob/-/issues2016-11-11T10:56:17Zhttps://gitlab.idiap.ch/bob/bob.measure/-/issues/23TypeError: underlying read() should have returned a bytes-like object, not 'str'2016-11-11T10:56:17ZAmir MOHAMMADITypeError: underlying read() should have returned a bytes-like object, not 'str'@mguenther your recent changes in bob.measure has broken the nightlies. Please investigate.
https://gitlab.idiap.ch/bob/bob.nightlies/builds/28023@mguenther your recent changes in bob.measure has broken the nightlies. Please investigate.
https://gitlab.idiap.ch/bob/bob.nightlies/builds/28023Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.measure/-/issues/24Bug in ROC curves2016-11-29T17:06:37ZChristopher FINELLIBug in ROC curvesI obtained a strange ROC curve using the evaluate.py script of Bob. The weird thing is the fact the curve doesn't cross the upper right corner (that is the 100%-100% coordinate) and it should be like this. Oleg and me already looked for ...I obtained a strange ROC curve using the evaluate.py script of Bob. The weird thing is the fact the curve doesn't cross the upper right corner (that is the 100%-100% coordinate) and it should be like this. Oleg and me already looked for the source of the issue and we think the problem is coming from the FAR and CAR computation. In our case, we have scores going from 0.0 to some positive value (1.0 being the maximum) and the higher, the more likely we match. We didn't check but it seems like it happens some genuine scores are 0.0 and they are not count when the threshold is defined to 0.0, causing the decay in the CAR when the FAR is 100%. I don't know if there is the same problem to the coordinate 0%-0% since the plot is in log scale.
I could have reported the plot but I wasn't be able to share the score files. Just explain me how to proceed if needed.
[ROC_curves.pdf](/uploads/3d5898691624bf4757357aad42b626e9/ROC_curves.pdf)Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob/-/issues/165Can't write one-element ndarray in HDF52017-01-27T15:49:13ZAndré AnjosCan't write one-element ndarray in HDF5*Created by: siebenkopf*
When I try to write a single-element numpy.ndarray to HDF5File, and read it again, the type of the variable changes:
```
> import bob, numpy
> f = bob.io.HDF5File("t.hdf5", "w")
> a = numpy.ndarray((1,),...*Created by: siebenkopf*
When I try to write a single-element numpy.ndarray to HDF5File, and read it again, the type of the variable changes:
```
> import bob, numpy
> f = bob.io.HDF5File("t.hdf5", "w")
> a = numpy.ndarray((1,), dtype=numpy.int)
> type(a)
type 'numpy.ndarray'
> f.set("a", a)
> b = f.read("a")
> type(b)
type 'int'
```
The point is that it works well with 2-element arrays, and I want to write ndarrays of different sizes (also with a single element). Currently, this is not supported.https://gitlab.idiap.ch/bob/bob.measure/-/issues/22farfrr core dumps if one of the input sets (negatives or positives) is empty2017-02-01T15:01:27ZAndré Anjosfarfrr core dumps if one of the input sets (negatives or positives) is emptyJust noted this by accident. Is this the supposed behaviour? Maybe we should introduce a check at some point.Just noted this by accident. Is this the supposed behaviour? Maybe we should introduce a check at some point.André AnjosAndré Anjoshttps://gitlab.idiap.ch/bob/bob.measure/-/issues/17evaluate.py segfaults with no error2017-02-01T15:01:27ZAmir MOHAMMADIevaluate.py segfaults with no errorI realized that when one of the score files are empty, the `evaluate.py` from `bob.bio.base` segfaults with no error. But the segfaults probably comes from here.I realized that when one of the score files are empty, the `evaluate.py` from `bob.bio.base` segfaults with no error. But the segfaults probably comes from here.Tiago de Freitas PereiraTiago de Freitas Pereirahttps://gitlab.idiap.ch/bob/bob.measure/-/issues/21Four and Five column format must be specified by the user, although it could ...2017-04-09T14:34:54ZManuel Günthersiebenkopf@googlemail.comFour and Five column format must be specified by the user, although it could be automatically estimatedSo far, the user has two different functions to load/process score files, depending on the format. On the other hand, @amohammadi has implemented a way of automatically estimating the score file format: https://gitlab.idiap.ch/bob/bob.me...So far, the user has two different functions to load/process score files, depending on the format. On the other hand, @amohammadi has implemented a way of automatically estimating the score file format: https://gitlab.idiap.ch/bob/bob.measure/blob/master/bob/measure/load.py#L315, so that the user does not need to specify the format anymore. I think, we should provide generic functions for similar tasks, too, i.e., having:
* [ ] `bob.measure.load.scores(filename, ncolumns=None)`
* [ ] `bob.measure.load.split(filename, ncolumns=None)`
* [ ] `bob.measure.load.cmc(filename, ncolumns=None)`
These functions should use the same way of handling `ncolumns=None`.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.bio.vein/-/issues/14Unused/Maintenance branches2017-06-21T10:14:20ZAndré AnjosUnused/Maintenance branchesWe have a bunch of branches in this project which have not been merged for some time now:
- bh_vein_vein
- biowave
- biowave_temp
- ijcb_stuff
Could you please clean-up/remove unused branches, @onikisins?We have a bunch of branches in this project which have not been merged for some time now:
- bh_vein_vein
- biowave
- biowave_temp
- ijcb_stuff
Could you please clean-up/remove unused branches, @onikisins?Olegs NIKISINSOlegs NIKISINShttps://gitlab.idiap.ch/bob/bob.measure/-/issues/28Updated API in `bob.math` requires update in this package, too2017-06-30T10:08:32ZManuel Günthersiebenkopf@googlemail.comUpdated API in `bob.math` requires update in this package, tooSee bob/bob.math!13See bob/bob.math!13https://gitlab.idiap.ch/bob/bob.bio.base/-/issues/84Using `skip_xyz = True` at configuration does not prevent `verify.py` script ...2017-07-13T09:00:44ZAndré AnjosUsing `skip_xyz = True` at configuration does not prevent `verify.py` script to ask for `xyz` configurationThis got me by surprise. I have a simple configuration file:
```python
sub_directory = 'stitched-crop0000-mc3-mm1515'
skip_preprocessing = True
preprocessed_directory = '/idiap/temp/aanjos/fv3d/stitched-crop0000-mc3-ncorr/preprocessed'...This got me by surprise. I have a simple configuration file:
```python
sub_directory = 'stitched-crop0000-mc3-mm1515'
skip_preprocessing = True
preprocessed_directory = '/idiap/temp/aanjos/fv3d/stitched-crop0000-mc3-ncorr/preprocessed'
skip_extraction = True
extracted_directory = '/idiap/temp/aanjos/fv3d/stitched-crop0000-mc3-ncorr/extracted'
from bob.bio.vein.algorithm import MiuraMatch
algorithm = MiuraMatch(ch=15, cw=15)
```
I'd expect that the `verify.py`, in this case, ignores settings for `preprocessor` and `extractor` since those phases are skipped anyway. But it does not seem to be the case - it still wants a configuration even if it is not going to use it.
Am I doing something terribly wrong here?Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/85Only 4-column score files can be written2017-07-18T15:57:39ZManuel Günthersiebenkopf@googlemail.comOnly 4-column score files can be writtenSo far, only 4-column score files can be written. The problem is that sometimes you might need to have the `model_id` for the gallery in you score files. These are currently ignored.So far, only 4-column score files can be written. The problem is that sometimes you might need to have the `model_id` for the gallery in you score files. These are currently ignored.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.io.matlab/-/issues/4reading a cell is not supported and it should be mentioned in the documentation.2017-07-18T16:03:26ZAmir MOHAMMADIreading a cell is not supported and it should be mentioned in the documentation.Here is the error:
```
terminate called after throwing an instance of 'std::runtime_error'
what(): unknown data type (dtype: unknown (0); shape: [1,13233]; size: 0 bytes) for object named `0' at file `./results/LightenedCNN_C_lfw.m...Here is the error:
```
terminate called after throwing an instance of 'std::runtime_error'
what(): unknown data type (dtype: unknown (0); shape: [1,13233]; size: 0 bytes) for object named `0' at file `./results/LightenedCNN_C_lfw.mat'
```
Steps to reproduce:
```python
from bob.io import matlab
matlab.read_varnames('./results/LightenedCNN_C_lfw.mat')
```
where the file is in [here](https://github.com/AlfredXiangWu/face_verification_experiment/blob/master/results/LightenedCNN_C_lfw.mat).
I will update this issue as I debug more.Amir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.ip.qualitymeasure/-/issues/2PyPI classifiers stop deployment2017-07-19T13:51:47ZAndré AnjosPyPI classifiers stop deploymentThe license tag is wrong at `setup.py`. Please use the precise value as indicated here:
https://gitlab.idiap.ch/bob/bob.admin/tree/master/templates
Which should be:
```text
License :: OSI Approved :: GNU General Public License v3 (GPL...The license tag is wrong at `setup.py`. Please use the precise value as indicated here:
https://gitlab.idiap.ch/bob/bob.admin/tree/master/templates
Which should be:
```text
License :: OSI Approved :: GNU General Public License v3 (GPLv3)
```
And **not** as is currently:
```text
License :: OSI Approved :: GPL General Public Licence (GPLv3)
```
@dgeissbuhler, please fix this and re-release v1.0.1David GEISSBUHLERDavid GEISSBUHLER2017-07-19https://gitlab.idiap.ch/bob/bob.db.msu_mfsd_mod/-/issues/5Videos are not rotated correctly2017-07-25T08:23:10ZAmir MOHAMMADIVideos are not rotated correctlySome video files should be rotated by the rotation code is wrong:
https://gitlab.idiap.ch/bob/bob.db.msu_mfsd_mod/blob/259eb4ee58754cec99c256adee10835f471f6f5a/bob/db/msu_mfsd_mod/models.py#L292Some video files should be rotated by the rotation code is wrong:
https://gitlab.idiap.ch/bob/bob.db.msu_mfsd_mod/blob/259eb4ee58754cec99c256adee10835f471f6f5a/bob/db/msu_mfsd_mod/models.py#L292Amir MOHAMMADIAmir MOHAMMADIhttps://gitlab.idiap.ch/bob/bob.ip.base/-/issues/7GeomNorm bindings cannot be used with color images2017-07-25T12:29:33ZManuel Günthersiebenkopf@googlemail.comGeomNorm bindings cannot be used with color imagesIn the bindings of `GeomNorm`, both gray and color images are allowed: https://gitlab.idiap.ch/bob/bob.ip.base/blob/master/bob/ip/base/geom_norm.cpp#L315
However, only the gray level version is called: https://gitlab.idiap.ch/bob/bob.ip...In the bindings of `GeomNorm`, both gray and color images are allowed: https://gitlab.idiap.ch/bob/bob.ip.base/blob/master/bob/ip/base/geom_norm.cpp#L315
However, only the gray level version is called: https://gitlab.idiap.ch/bob/bob.ip.base/blob/master/bob/ip/base/geom_norm.cpp#L256
This results in an unreadable error message, when I try to use a color image:
```
>>> import bob.ip.base, numpy
>>> img = numpy.ndarray((3,128,128), numpy.uint8)
>>> res = numpy.ndarray((3,64,64), numpy.float64)
>>> geom = bob.ip.base.GeomNorm(0., 1., (128,128), (64,64))
>>> geom.process(img, res, (64,64))
RuntimeError: bob.ip.base.GeomNorm - cannot process image: C++ exception caught: 'array dimensions do not match 0 != 128'
```
The bindings need to be fixed.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.pad.face/-/issues/2Add database "configurations" for each baseline database2017-07-27T13:08:29ZAndré AnjosAdd database "configurations" for each baseline databaseThis would make the command-line really sweet and short:
```sh
spoof.py replay-mobile lbp-svm –vv --parallel=16
```
The `replay-mobile` configuration in this case would include settings for `database`, `protocol` and `groups` so the us...This would make the command-line really sweet and short:
```sh
spoof.py replay-mobile lbp-svm –vv --parallel=16
```
The `replay-mobile` configuration in this case would include settings for `database`, `protocol` and `groups` so the user does not have to do it.Olegs NIKISINSOlegs NIKISINS2017-08-06https://gitlab.idiap.ch/bob/bob.pad.face/-/issues/3Remove `./bin/` notation from all documentation2017-07-27T13:08:32ZAndré AnjosRemove `./bin/` notation from all documentationIt is clearer and more future-proof if we remove the `./bin/` from all command lines. When the conda package will be ready (soon now), the `./bin/` stuff will be deprecated.It is clearer and more future-proof if we remove the `./bin/` from all command lines. When the conda package will be ready (soon now), the `./bin/` stuff will be deprecated.Olegs NIKISINSOlegs NIKISINS2017-08-06https://gitlab.idiap.ch/bob/bob.pad.face/-/issues/4Current stable builds are failing because of `nose` in `requirements.txt`2017-07-27T13:08:34ZAndré AnjosCurrent stable builds are failing because of `nose` in `requirements.txt`Please remove `nose` from `requirements.txt` and put it in `test-requirements.txt`. That should fix the problem.Please remove `nose` from `requirements.txt` and put it in `test-requirements.txt`. That should fix the problem.Olegs NIKISINSOlegs NIKISINS2017-08-06https://gitlab.idiap.ch/bob/bob.bio.spear/-/issues/28The unit tests of bob.bio.spear are failing in bob.nightlies2017-07-28T09:00:08ZOlegs NIKISINSThe unit tests of bob.bio.spear are failing in bob.nightliesThe extra-builds in bob.nightlies are failing. The details on the error are given below.
Probably, this is related to the changes made in bob.bio.base, here:
https://gitlab.idiap.ch/bob/bob.bio.base/merge_requests/80
Thank you for you...The extra-builds in bob.nightlies are failing. The details on the error are given below.
Probably, this is related to the changes made in bob.bio.base, here:
https://gitlab.idiap.ch/bob/bob.bio.base/merge_requests/80
Thank you for your help!
@mguenther if you think the bug is not related to changes in bob.bio.base, please, re-assign the issue. Thanks!
```
======================================================================
ERROR: bob.bio.spear.test.test_databases.test_timit
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/lib/python2.7/site-packages/bob/bio/spear/test/test_databases.py", line 102, in test_timit
check_database(database, groups=('dev',))
File "/home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/lib/python2.7/site-packages/bob/bio/base/test/test_database_implementations.py", line 27, in check_database
assert len(database.all_files()) > 0
File "/home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/lib/python2.7/site-packages/bob/bio/base/database/filelist/query.py", line 209, in all_files
raise ValueError("ZT score files are requested, but no such files are defined in group %s for protocol %s", group, self.protocol)
ValueError: ('ZT score files are requested, but no such files are defined in group %s for protocol %s', 'dev', '2')
----------------------------------------------------------------------
Ran 13 tests in 63.195s
FAILED (errors=1)
(06:39:18.319) Error: Command Failed "/home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/bin/coverage run --source=bob.bio.spear /home/gitlab-runner/builds/0d638152/0/bob/bob.nightlies/build-prefix/bin/nosetests -sv bob.bio.spear"
(06:39:18.321) Error: Command Failed "./_ci/test.sh"
ERROR: Job failed: exit status 1
```Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.bio.base/-/issues/86In evaluate.py, there is no way of using both 4- and 5-column score files2017-07-30T17:05:13ZManuel Günthersiebenkopf@googlemail.comIn evaluate.py, there is no way of using both 4- and 5-column score filesSince `bob.measure` allows to automatically predict the score file format, we should use this property, instead of requiring the user to specify the format on command line.Since `bob.measure` allows to automatically predict the score file format, we should use this property, instead of requiring the user to specify the format on command line.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.comhttps://gitlab.idiap.ch/bob/bob.ip.base/-/issues/8extrapolate_mask only considers 2D images and cannot be applied to color images2017-08-02T08:57:02ZManuel Günthersiebenkopf@googlemail.comextrapolate_mask only considers 2D images and cannot be applied to color imagesCurrently, the `extrapolate_mask` function only takes 2D (gray) images, but no color images. Many other related functions, for example, `rotate` works on color images.
Currently, I use a work-around for color images, for example:
```
# ...Currently, the `extrapolate_mask` function only takes 2D (gray) images, but no color images. Many other related functions, for example, `rotate` works on color images.
Currently, I use a work-around for color images, for example:
```
# get data
import numpy, bob.ip.base
image = numpy.ndarray((100,100), numpy.uint8)
rotated = numpy.ndarray(bob.ip.base.rotated_output_shape(image, 45))
imask = numpy.ones((100,100), numpy.bool)
omask = numpy.ones(rotated.shape, numpy.bool)
# rotate image
bob.ip.base.rotate(image, imask, rotated, omask, 45)
# extrapolate border
for i in range(3):
bob.ip.base.extrapolate_mask(omask, rotated)
```
However, this does not work for the second way of extrapolation, where random noise is added.
When adding this noise to the three color components individually, weired color effects might occur.
Having a function to only modify the intensity of the color might be a better solution.Manuel Günthersiebenkopf@googlemail.comManuel Günthersiebenkopf@googlemail.com