Kastor
Kastor

Reputation: 480

How to use FREAK as part of BOW

I've some code running that performs object categorization using the BOW-frame provided by OpenCV.

And as long as I use SIFT or SURF as DescriptorExtractor everything is fine.

Now I want to use FREAK as DescriptorExtractor. As my first step I collect all descriptors of all images. When I use FREAK I must add a conversation descriptor.convertTo(descriptor, CV_32F);, or the cluster method throws an exception. So far so good.

Then as I try to generate my labeled responses for each image using bowide_->compute(image, keypoints, result);

I get an exception OpenCV Error: Assertion failed (queryDescriptors.type() == trainDescCollection[0].type()) in knnMatchImpl, file /home/kastor/Development/opencv-2.4.7/modules/features2d/src/matchers.cpp, line 351 queryDescriptors.type() == trainDescCollection[0].type().

The next step would be to train the SVM. As I said the whole thing works for SIFT and SURF. Any ideas if it is possible to use FREAK in the same manner or if I need to do some more conversion ?

I tried different matchers, but no success.

Thanks in advance

Upvotes: 1

Views: 151

Answers (0)

Related Questions