BruteForceMatcher<L2<float> > repeats sometimes wrong distances (Bug #1548)


Added by ben - about 13 years ago. Updated almost 13 years ago.


Status:Cancelled Start date:
Priority:Normal Due date:
Assignee:Vadim Pisarevsky % Done:

0%

Category:features2d
Target version:2.4.0
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

Hello,
I use the Opencv-2.3.1a library, compiled with SSE, SSE2, SSSE3, cuda and qt, Ubuntu10.04 and have a intel quad core Q9650.
I used the BruteForceMatcher<L2<float> > and its method match.
I observed that for several requests where to identical vectors were in the query and training set, that they weren't matched with distance 0. I tried some more examples, using only one vector for query and training (the same one), and achieved distances form -nan to 0 and some small >0 like 0.000247 (for example).

Then I tried the same binary from my code on several other machines also having Opencv-2.3.1 (I don't know which configurations were used) and it worked out fine there.
Is there an other dependent library on my machine broken?

If I use BruteForceMatcher<L2<double> > all is fine, also for <L1<float> > there seems to be no problem.


Associated revisions

Revision b2fe053f
Added by Andrey Pavlenko over 11 years ago

Merge pull request #1548 from ilya-lavrenov:ocl_bitwise_not

History

Updated by Alexander Shishkov about 13 years ago

  • Description changed from Hello, I use the Opencv-2.3.1a library, compiled with SSE, SSE2, SSSE3, cuda ... to Hello, I use the Opencv-2.3.1a library, compiled with SSE, SSE2, SSSE3, cuda ... More

Updated by Vadim Pisarevsky almost 13 years ago

We have had a few bug reports from Ubuntu 10.04 users, especially in the case of 64-bit version. Probably, there is some bug in 64-bit gcc backend. Please, try newer version. Also, in SVN trunk BruteForceMatcher<L2<float>> has been replaced with non-template BFMatcher(NORM_L2). Feel free to try it out.

Also, some problems can be due to the optional Eigen use in L2 matcher. If you configured OpenCV to use Eigen, try to re-configure it without Eigen.

So far, I mark this bug as cancelled. Reopen it, if the issue remains with newer compilers and the latest OpenCV.

  • Status changed from Open to Cancelled
  • Assignee changed from Maria Dimashova to Vadim Pisarevsky

Updated by Andrey Kamaev almost 13 years ago

  • Target version set to 2.4.0

Also available in: Atom PDF