Updated by Alexander Shishkov about 13 years ago
Hello, all.
I am trying to match surf features using gpu knnMatch function.
Although it looks like working well, often all features are mismatched given consecutive frames.
Please have a look at the following test video.
http://www.youtube.com/watch?v=9gKrKRcXKVs
In addition this is part of my code.
==========================code start=========================
surf(img0, GpuMat(), [[GpuMat]](), keypoints0GPU, descriptors0GPU);
surf(img1, GpuMat(), [[GpuMat]](), keypoints1GPU, descriptors1GPU);
..
..
filteredMatches.clear();
vector<vector<DMatch> > matches12, matches21;
gpu_matcher.knnMatch(descriptors0GPU,descriptors1GPU,matches12,1,Mask,false); gpu_matcher.knnMatch(descriptors1GPU,descriptors0GPU,matches21,1,Mask,false);
..
..
drawMatches(g_pImg_A, keypointsr0, g_pImg_B, keypointsr1, filteredMatches, img_matches,MachedDrawColor,KeypointsDrawColor);
cv::imshow(MatchwindowName, img_matches);
==========================code end =============================
Is there any issue on Brute_force_matcher.cpp while matching real-time or matching between different number of descriptors?
Thank you in advance.
My opencv2.2 revision is 5099 and CUDA2.3 driver on Ubuntu10.04.
I am trying to match surf features using gpu knnMatch function.
Although it looks like working well, often all features are mismatched given consecutive frames.
Please have a look at the following test video.
http://www.youtube.com/watch?v=9gKrKRcXKVs
In addition this is part of my code.
==========================code start=========================
surf(img0, GpuMat(), [[GpuMat]](), keypoints0GPU, descriptors0GPU);
surf(img1, GpuMat(), [[GpuMat]](), keypoints1GPU, descriptors1GPU);
..
..
filteredMatches.clear();
vector<vector<DMatch> > matches12, matches21;
gpu_matcher.knnMatch(descriptors0GPU,descriptors1GPU,matches12,1,Mask,false); gpu_matcher.knnMatch(descriptors1GPU,descriptors0GPU,matches21,1,Mask,false);
..
..
drawMatches(g_pImg_A, keypointsr0, g_pImg_B, keypointsr1, filteredMatches, img_matches,MachedDrawColor,KeypointsDrawColor);
cv::imshow(MatchwindowName, img_matches);
==========================code end =============================
Is there any issue on Brute_force_matcher.cpp while matching real-time or matching between different number of descriptors?
Thank you in advance.
My opencv2.2 revision is 5099 and CUDA2.3 driver on Ubuntu10.04.