I tried the demo codes with the AKAZE, and it worked well. But when i want to use KAZE, it gives back this error: Assertion failed ((type == CV_8U && dtype == CV_32S) || dtype == CV_32F) in cv::batchDistance
I used this: Ptr<kaze> kaze = KAZE::create(); kaze->detectAndCompute(img1, noArray(), kpts1, desc1); kaze->detectAndCompute(img2, noArray(), kpts2, desc2);
BFMatcher matcher(NORM_HAMMING);
And the code gives back error, if i use matcher.match(desc1, desc2, matches); or matcher.knnMatch(desc1, desc2, nn_matches, 2); Where matches is vector<dmatch> and nn_matches is vector< vector<dmatch> >.
Can u tell me, how can i match KAZE descriptors?