FeatureDetector::detect() is non-reentrant (Bug #2551)


Added by Milan Poon over 12 years ago. Updated about 12 years ago.


Status:Cancelled Start date:2012-11-19
Priority:Low Due date:
Assignee:Milan Poon % Done:

0%

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

Description

I am using the SIFT feature detector. If detect() is called in multiple threads simultaneously, the program will crash. This issue still persists in 2.4.3.


Associated revisions

Revision 97eac3f3
Added by Andrey Pavlenko almost 11 years ago

Merge pull request #2551 from ilya-lavrenov:ocl_nonfree

History

Updated by Vadim Pisarevsky over 12 years ago

I briefly checked SIFT code and it looks like all the SIFT methods are "const", they do not write to global variables or class members. Can you, please, specify your environment and a piece of code where you call SIFT? I suspect that the problem is not in OpenCV itself.

Also, as a workaround it's possible to create several instances of SIFT.

  • Assignee set to Milan Poon
  • Category set to features2d
  • Priority changed from Normal to Low

Updated by Milan Poon over 12 years ago

My coding mistake. The bug seemed to have been fixed in 2.4.2. Sorry for the trouble.

Updated by Kirill Kornyakov over 12 years ago

Great :)

  • Target version set to 2.4.4
  • Status changed from Open to Cancelled

Updated by Andrey Kamaev about 12 years ago

  • Target version changed from 2.4.4 to 2.4.3.1

Also available in: Atom PDF