2015-06-15 48 views
0

我只有一個小問題,正確的資源。 我正在使用opencv 2.4.8,我無法找到合適的資源knnMatch()。我試過以下哪些方法不起作用:OpenCV - 方法'knnMatch'無法解析

#include "opencv2/core/core.hpp" 
#include <opencv2/nonfree/features2d.hpp> 
#include "opencv2/nonfree/nonfree.hpp" 
#include <opencv2/ml/ml.hpp> 
//#include "opencv2/features2d/features2d.hpp" 
//#include <opencv2/legacy/legacy.hpp> 

有人可以說我正確的資源嗎?谷歌也沒有幫助我。

試圖找到兩個描述的3場比賽最接近與關鍵點:

Ptr<DescriptorMatcher> matcher; 
matcher.knnMatch(descriptorsLeft, descriptorsRight,3); 
+0

你能說明錯誤發生在哪裏嗎? – Elried

+0

@Elried:我試圖找到兩個關鍵點描述符的3個最近匹配:Ptr 匹配器; \t matcher.knnMatch(descriptorsLeft,descriptorsRight,3); – attenbe

回答

0

您使用的是Ptr<DescriptorMatcher>所以你應該取消對它的引用,以調用方法...

matcher.knnMatch(descriptorsLeft, descriptorsRight,3); //error 
matcher->knnMatch(descriptorsLeft, descriptorsRight,3); // should be better