bob issueshttps://gitlab.idiap.ch/bob/bob/-/issues2016-08-04T09:28:17Zhttps://gitlab.idiap.ch/bob/bob/-/issues/44Exception Raising with HDF5-related file manipulation ends in segfault2016-08-04T09:28:17ZAndré AnjosException Raising with HDF5-related file manipulation ends in segfault*Created by: anjos*
This example will trigger it:
```python
import bob
f = bob.io.HDF5File('test.hdf5', 't')
f.set('bla', 3)
del f
m = bob.machine.LinearMachine(3,3)
# saving on read-only file, exception is raised and then Pyth...*Created by: anjos*
This example will trigger it:
```python
import bob
f = bob.io.HDF5File('test.hdf5', 't')
f.set('bla', 3)
del f
m = bob.machine.LinearMachine(3,3)
# saving on read-only file, exception is raised and then Python segfaults on exit()
m.save(bob.io.HDF5File('test.hdf5'))
```v1.0https://gitlab.idiap.ch/bob/bob/-/issues/40Unit test for SIFT features extraction based on VLFeat fails on Ubuntu 12.04 ...2016-08-04T09:28:08ZAndré AnjosUnit test for SIFT features extraction based on VLFeat fails on Ubuntu 12.04 32bits*Created by: laurentes*
There is currently an issue with the test of the *SIFT* features under *Ubuntu 12.04 32 bits*. For unknown reason, the *SIFT* descriptors computed by *Ubuntu 12.04 32 bits* are different from the reference one ge...*Created by: laurentes*
There is currently an issue with the test of the *SIFT* features under *Ubuntu 12.04 32 bits*. For unknown reason, the *SIFT* descriptors computed by *Ubuntu 12.04 32 bits* are different from the reference one generated with *Ubuntu 10.04 32 bits*. This happens despite the fact that we are using the exact same version of *VLFeat 0.9.14* (last release), and that *VLFeat* has almost no external dependence:
```
$ ldd /usr/lib/libvl.so
linux-gate.so.1 => (0x00b52000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00412000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0073c000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00174000)
/lib/ld-linux.so.2 (0x00b8b000)
```
Tracking the problem, it likely originates from the keypoint detection, as there is no such an issue with the *Dense SIFT* features, which also relies on *VLFeat*. I guess that some of them are slightly below the threshold to be considered as keypoints on 12.04 but slightly above on 10.04. This is particularly annoying as this then shift the whole keypoints, making the comparison of the descriptors tough.
There are three possible options:
- Remove the test, considering that this is a VLFeat issue
- Add additional references and checking that one of them matches the values generated
- Add a more clever test. which will allow some keypoints more (or less), and able to still match the descriptors in such a situation.
Personally, I will go for the first one.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/38VLFeat is not detected despite installation2016-08-04T09:28:03ZAndré AnjosVLFeat is not detected despite installation*Created by: anjos*
From my understanding of the cmake file, we should see a printout when VLFeat is detected on the system:
```
Found VLFeat: /usr/lib/libvlfeat.so
```
But we don't seem to see this line ever. Could you make sur...*Created by: anjos*
From my understanding of the cmake file, we should see a printout when VLFeat is detected on the system:
```
Found VLFeat: /usr/lib/libvlfeat.so
```
But we don't seem to see this line ever. Could you make sure that it is properly detected and reported?v1.0https://gitlab.idiap.ch/bob/bob/-/issues/37Sphinx generates URL to non-existing `source code` pages in the documentation...2016-08-04T09:28:01ZAndré AnjosSphinx generates URL to non-existing `source code` pages in the documentation when using the plot extension with inline code*Created by: laurentes*
The plot extension of sphinx is always generating a *source code* URL when using the `.. plot::` directive. This is particularly annoying when inline python code is used after this directive, as sphinx will still...*Created by: laurentes*
The plot extension of sphinx is always generating a *source code* URL when using the `.. plot::` directive. This is particularly annoying when inline python code is used after this directive, as sphinx will still generate an URL pointing to a file which does not exist. There are two potential solutions:
- Either we find a way to disable the generation of the *source code* URL. I've looked at the sphinx documentation without success so far.
- Or we should always create an external python file which will be used by the `.. plot::` directive.
This currently affects the tutorial about the *measure* submodule of Bob.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/36Consecutive uses of HDF5File on the same file can crash your script2016-08-04T09:27:57ZAndré AnjosConsecutive uses of HDF5File on the same file can crash your script*Created by: anjos*
The following piece of code will crash under Ubuntu 10.04.
```python
import numpy
import bob
A = numpy.array(range(4), 'int8').reshape(2,2)
f = bob.io.HDF5File('testfile1.hdf5', 'w')
for k in range(1000): f...*Created by: anjos*
The following piece of code will crash under Ubuntu 10.04.
```python
import numpy
import bob
A = numpy.array(range(4), 'int8').reshape(2,2)
f = bob.io.HDF5File('testfile1.hdf5', 'w')
for k in range(1000): f.set('my_float_%d' % k, 3.1416)
#del f #this makes everything work fine
f = bob.io.HDF5File('testfile1.hdf5', 'r') #read only
f.read('my_float_999') # reads float
del f
```v1.0https://gitlab.idiap.ch/bob/bob/-/issues/34inconsistent function naming convention2016-08-04T09:27:53ZAndré Anjosinconsistent function naming convention*Created by: siebenkopf*
Currently, there are different ways, python functions are called. One type uses CamelCase, whereas other types use under_score_names. Since the default python ways seems to be under_scores, we should rename the ...*Created by: siebenkopf*
Currently, there are different ways, python functions are called. One type uses CamelCase, whereas other types use under_score_names. Since the default python ways seems to be under_scores, we should rename the camelCase functions in the API.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/33New databases "casia_fasd" and "nuaa" do not work with dbmanage.py2016-08-04T09:27:51ZAndré AnjosNew databases "casia_fasd" and "nuaa" do not work with dbmanage.py*Created by: anjos*
Please integrate those ASAP. Check other implemented drivers like the "iris" database or the "replay" database.*Created by: anjos*
Please integrate those ASAP. Check other implemented drivers like the "iris" database or the "replay" database.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/32Tests failing on Ubuntu 12.04 LTS 32 bits2016-08-04T09:27:49ZAndré AnjosTests failing on Ubuntu 12.04 LTS 32 bits*Created by: laurentes*
The three following tests are failing on Ubuntu 12.04 LTS 32 bits:
- cxx-ip-facenorm
- python-trainer-rprop-main
- python-face_verification-bancasmall-main
In all three cases, this seems to be caused by numer...*Created by: laurentes*
The three following tests are failing on Ubuntu 12.04 LTS 32 bits:
- cxx-ip-facenorm
- python-trainer-rprop-main
- python-face_verification-bancasmall-main
In all three cases, this seems to be caused by numerical issues. In particular, "python-face_verification-bancasmall-main" makes use of facenorm.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/31Add a new command to check if the data of a database are in place2016-08-04T09:27:47ZAndré AnjosAdd a new command to check if the data of a database are in place*Created by: laurentes*
It seems that such a command would be useful to check that a folder containing a database has the expectated file organization.*Created by: laurentes*
It seems that such a command would be useful to check that a folder containing a database has the expectated file organization.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/30Order of the eigenvalues with FisherLDA2016-08-04T09:27:43ZAndré AnjosOrder of the eigenvalues with FisherLDA*Created by: laurentes*
Following the introduction of the doctest, it seems that the behaviour of our FisherLDA implementation is currently platform dependent: the order of the returned eigenvalues and eigenvectors differs from one plat...*Created by: laurentes*
Following the introduction of the doctest, it seems that the behaviour of our FisherLDA implementation is currently platform dependent: the order of the returned eigenvalues and eigenvectors differs from one platform to another one. This might be caused by a different behaviour of the LAPACK implementations. We need to fix the problem ASAP.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/29bob.ip.Rotate needs a review2016-08-04T09:27:41ZAndré Anjosbob.ip.Rotate needs a review*Created by: siebenkopf*
The bob.ip.Rotate class needs a mayor revision. First, it expects the rotation angle in degrees (which is rather uncommon), but this is documented nowhere. The resulting rotated image is assumed to be of type fl...*Created by: siebenkopf*
The bob.ip.Rotate class needs a mayor revision. First, it expects the rotation angle in degrees (which is rather uncommon), but this is documented nowhere. The resulting rotated image is assumed to be of type float, even when the input image is uint8. I am not sure if this behavior is intended.
Furthermore, its function bob.ip.Rotate.getOutputShape(image,angle) does not use the angle member variable, but requires the angle to be specified again. There are two solutions for this last problem. Either the class is removed and only the two functions bob.ip.rotate(image,image,angle) and bob.ip.getRotatedShape(image,angle) are preserved, or the getRotatedShape(image) function uses the angle member variable. I vote for the first solution since this would mimic the bob.ip.scale(image,image,scale) function.
v1.0https://gitlab.idiap.ch/bob/bob/-/issues/28Temporary files not being erased2016-08-04T09:27:39ZAndré AnjosTemporary files not being erased*Created by: anjos*
After running bob's test suite, lots of files seem not to be erased from the temporary directory. We should verify this as soon as possible.*Created by: anjos*
After running bob's test suite, lots of files seem not to be erased from the temporary directory. We should verify this as soon as possible.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/26Bob installation documentation needs to be rewritten2016-08-04T09:27:34ZAndré AnjosBob installation documentation needs to be rewritten*Created by: siebenkopf*
In the "Using bob" section of the "Installation" section of the documentation still the bin/shell.py is called. This should be replaced by the current way to call python, namely bin/python. Also, the mentioned b...*Created by: siebenkopf*
In the "Using bob" section of the "Installation" section of the documentation still the bin/shell.py is called. This should be replaced by the current way to call python, namely bin/python. Also, the mentioned bin/bob_config.py is no longer existent.
Additionally, it might be a good idea to include the BobMaker here (maybe marked to be used only Idiap-internally, if this is the case).v1.0https://gitlab.idiap.ch/bob/bob/-/issues/25cblas, clapack and LAPACK2016-08-04T09:27:32ZAndré Anjoscblas, clapack and LAPACK*Created by: laurentes*
In the early years, we've got rid of the usage of C functions from cblas and clapack, calling the Fortran functions from LAPACK directly. This is not reflected in the external/cblasConfig.cmake, which still requi...*Created by: laurentes*
In the early years, we've got rid of the usage of C functions from cblas and clapack, calling the Fortran functions from LAPACK directly. This is not reflected in the external/cblasConfig.cmake, which still requires cblas.h and clapack.h to exist.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/24euklidean_distance should be renamed2016-08-04T09:27:30ZAndré Anjoseuklidean_distance should be renamed*Created by: laurentes*
I've nothing against the beautiful german language, but it would be better to stick to English for the Bob project. Furthermore, the function euklidean_distance() in python/math/lib/__init__.py should be renamed ...*Created by: laurentes*
I've nothing against the beautiful german language, but it would be better to stick to English for the Bob project. Furthermore, the function euklidean_distance() in python/math/lib/__init__.py should be renamed to something like euclidean_distance().v1.0https://gitlab.idiap.ch/bob/bob/-/issues/23ffmpeg 0.8 on Ubuntu 12.04 deprecates some symbols2016-08-04T09:27:28ZAndré Anjosffmpeg 0.8 on Ubuntu 12.04 deprecates some symbols*Created by: anjos*
Our bindings to ffmpeg need a revamp. The VideoReader compilation reports:
```
/home/andre/work/bob/cxx/io/src/VideoReader.cc: In member function ‘void bob::io::VideoReader::open()’:
/home/andre/work/bob/cxx/io/...*Created by: anjos*
Our bindings to ffmpeg need a revamp. The VideoReader compilation reports:
```
/home/andre/work/bob/cxx/io/src/VideoReader.cc: In member function ‘void bob::io::VideoReader::open()’:
/home/andre/work/bob/cxx/io/src/VideoReader.cc:128:7: warning: ‘int av_find_stream_info(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:128:38: warning: ‘int av_find_stream_info(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:129:5: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:129:36: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:147:5: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:147:36: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:163:5: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:163:36: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:168:7: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:168:37: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:169:5: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:169:36: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:228:3: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:228:34: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc: In member function ‘void bob::io::VideoReader::const_iterator::init()’:
/home/andre/work/bob/cxx/io/src/VideoReader.cc:346:7: warning: ‘int av_find_stream_info(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:346:40: warning: ‘int av_find_stream_info(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1412) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:377:7: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:377:41: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc: In member function ‘void bob::io::VideoReader::const_iterator::reset()’:
/home/andre/work/bob/cxx/io/src/VideoReader.cc:463:5: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoReader.cc:463:38: warning: ‘void av_close_input_file(AVFormatContext*)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1580) [-Wdeprecated-declarations]
```
Where as the VideoWriter.cc reports:
```
/home/andre/work/bob/cxx/io/src/VideoWriter.cc: In member function ‘AVStream* bob::io::VideoWriter::add_video_stream()’:
/home/andre/work/bob/cxx/io/src/VideoWriter.cc:229:8: warning: ‘AVStream* av_new_stream(AVFormatContext*, int)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1604) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoWriter.cc:229:38: warning: ‘AVStream* av_new_stream(AVFormatContext*, int)’ is deprecated (declared at /usr/include/libavformat/avformat.h:1604) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoWriter.cc: In member function ‘void bob::io::VideoWriter::open_video()’:
/home/andre/work/bob/cxx/io/src/VideoWriter.cc:300:7: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
/home/andre/work/bob/cxx/io/src/VideoWriter.cc:300:28: warning: ‘int avcodec_open(AVCodecContext*, AVCodec*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4034) [-Wdeprecated-declarations]
```v1.0https://gitlab.idiap.ch/bob/bob/-/issues/18ZT Norm returns NaN when the standard deviation of the scores is equal to 02016-08-04T09:27:19ZAndré AnjosZT Norm returns NaN when the standard deviation of the scores is equal to 0*Created by: laurentes*
The current ZT-Norm implementation doesn't check whether the standard deviation of the input scores (B, C, and D matrices of scores) is 0 or not. This leads to NaN normalized scores. We need to introduce some fur...*Created by: laurentes*
The current ZT-Norm implementation doesn't check whether the standard deviation of the input scores (B, C, and D matrices of scores) is 0 or not. This leads to NaN normalized scores. We need to introduce some further checks to deal with the problemv1.0https://gitlab.idiap.ch/bob/bob/-/issues/17Database documentation should include expected filesystem mapping2016-08-04T09:27:17ZAndré AnjosDatabase documentation should include expected filesystem mapping*Created by: anjos*
In order go make our current DB API and practices useful, we should precisely document what is the expected layout expected by each database in Bob.*Created by: anjos*
In order go make our current DB API and practices useful, we should precisely document what is the expected layout expected by each database in Bob.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/16Loading an hdf5 Arrayset requires write access2012-02-29T14:05:48ZAndré AnjosLoading an hdf5 Arrayset requires write access*Created by: laurentes*
Loading an .hdf5 file as an Arrayset with read permission but without write permission generates the following runtime error:
<pre><code>
bob.io.Arrayset('/idiap/temp/pmotlic/TEMP.2/MOBIO/DATA/f007/f007_04_r06_...*Created by: laurentes*
Loading an .hdf5 file as an Arrayset with read permission but without write permission generates the following runtime error:
<pre><code>
bob.io.Arrayset('/idiap/temp/pmotlic/TEMP.2/MOBIO/DATA/f007/f007_04_r06_i0_0.hdf5')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
RuntimeError: Call to HDF5 C-function 'H5Fopen' returned '-1'. HDF5 error statck follows:
</code></pre>
whereas it works fine for Array or using bob.io.load:
<pre><code>
bob.io.Array('/idiap/temp/pmotlic/TEMP.2/MOBIO/DATA/f007/f007_04_r06_i0_0.hdf5')
Array float64@(351, 60)
bob.io.load('/idiap/temp/pmotlic/TEMP.2/MOBIO/DATA/f007/f007_04_r06_i0_0.hdf5')
array([[ -1.23146095e+01, -7.83866215e+00, 1.74252892e+01, ...,
-2.80604903e-02, -3.33320588e-01, 1.99772105e-01],
[ -1.34626703e+01, -8.39167404e+00, 1.67254601e+01, ...,
1.30144298e-01, -1.32815793e-01, 2.55901814e-01],
[ -7.23934698e+00, -3.61744595e+00, 1.45476503e+01, ...,
9.95570198e-02, 2.48753905e-01, 1.26341403e-01],
...,
[ -1.02341805e+01, -3.34847593e+00, 1.06275997e+01, ...,
1.29639900e+00, 3.63285094e-01, 1.51863798e-01],
[ -6.78214598e+00, 2.78683591e+00, 1.41695900e+01, ...,
7.74318576e-01, 8.26705305e-04, 6.93367869e-02],
[ -7.07084513e+00, 1.43504307e-01, 1.79709702e+01, ...,
-2.10530292e-02, -2.02032804e-01, -1.68551896e-02]])
</code></pre>
If I copy the file to get write permission, then the loading can be done correctly:
<pre><code>
bob.io.Arrayset('/idiap/home/lelshafey/f007_04_r06_i0_0.hdf5')
Arrayset[351] float64@(60,)
</code></pre>
I guess there is a write flag which is set incorrectly in the hdf5 support part.v1.0https://gitlab.idiap.ch/bob/bob/-/issues/14Clicking "Issues" gives 404 error if not logged in to github2016-08-04T09:27:11ZAndré AnjosClicking "Issues" gives 404 error if not logged in to github*Created by: Waldo000000*
From the Bob homepage (http://idiap.github.com/bob/), clicking on "Issues" (http://github.com/idiap/bob/issues) or "GitHub" (http://github.com/idiap/bob) both result in a 404 error. The user has to first go to ...*Created by: Waldo000000*
From the Bob homepage (http://idiap.github.com/bob/), clicking on "Issues" (http://github.com/idiap/bob/issues) or "GitHub" (http://github.com/idiap/bob) both result in a 404 error. The user has to first go to github.com and log in, then return to the Bob homepage.
Suggested fixes:
1) The user should be able to log in directly from the Bob homepage, or
2) Rather than 404, the user should be issued with a more informative error & instructionsv1.0