Ask Your Question
2

Feature extraction not reproducible

asked 2013-05-22 04:04:59 -0600

BK gravatar image

Within a program I've written, I'm reading jpg-images using cv::imread() and extract Sift-features afterwards.

I recently updated OpenCV from version 2.4.1 to 2.4.4, but since that day, the feature extraction is not reproducible any more: The number of extracted features, feature locations and descriptors differ when executing my software multiple times (with constant input-parameters, of course)

Tests with Surf or Orb result in equal behaviour.

edit retag flag offensive close merge delete

Comments

2

Please post sample code that shows the problem.

Notas gravatar imageNotas ( 2013-05-22 04:55:42 -0600 )edit
1

I had the same problem updating from 2.3.1 to 2.4.2, see here: http://answers.opencv.org/question/1730/are-surf-feature-descriptors-computed-differently/. And again from 2.4.1 to 2.4.4. Really annoying.

Ben gravatar imageBen ( 2013-05-22 07:01:39 -0600 )edit

1 answer

Sort by ยป oldest newest most voted
1

answered 2013-06-13 02:48:42 -0600

BK gravatar image

Found the root of the problem:

I used OpenMP to extract features from multiple images in parallel and to compare them against expected results (which were previously calculated and saved).

Hereby, I did not assure the correct order of loading: E.g.: Features from image A were extracted in thread 1 and compared with the expected results of image B (and vice versa).

edit flag offensive delete link more

Question Tools

Stats

Asked: 2013-05-22 04:04:59 -0600

Seen: 436 times

Last updated: Jun 13 '13