我在http://opencv.willowgarage.com/documentation/python/feature_detection.html
阅读了OpenCV SURF手册“ExtractSURF”据我了解,此功能会自动在图像上查找SURF功能。
在许多情况下,用户希望将这些功能(通过其他算法检测到)提供给此功能,以获取这些点的SURF描述符。 但我认为函数(ExtractSURF)不支持这一点。我对吗??它用SURF功能修复了它
这有什么决议吗?
由于
答案 0 :(得分:1)
您希望opencv 2.3附带的示例名为find_obj.py 它位于opencv \ samples \ python2 samples目录中。
这是在cv2和python中使用SURF的一个很好的例子。
有关特征检测器的文档位于:http://opencv.itseez.com/modules/features2d/doc/common_interfaces_of_feature_detectors.html#surffeaturedetector
答案 1 :(得分:0)
是,但不是OpenCV python API。 在C ++中使用SurfDescriptorExtractor。
答案 2 :(得分:0)
根据手册OPENCV文件,功能" extractSURF"格式如下:
cv.ExtractSURF(图像,掩码,存储,参数) - > (关键点,描述符)
答案 3 :(得分:0)
从OpenCV文档中,SIFT和SURF特征检测算法都支持此功能:
C++: void SURF::operator()(InputArray img, InputArray mask, vector<KeyPoint>& keypoints, OutputArray descriptors, bool useProvidedKeypoints=false)
C++: void SIFT::operator()(InputArray img, InputArray mask, vector<KeyPoint>& keypoints, OutputArray descriptors, bool useProvidedKeypoints=false)
参数是&#34; useProvidedKeypoints&#34;其中
布尔标志。如果是,则不运行关键点检测器。 相反,使用提供的关键点矢量和算法 只计算他们的描述符。&#34;
所以,在这种情况下,如果你已经有一些你感兴趣的点,你可以将它们输入到函数中,它将相应地返回这些点的计算描述符(在这种情况下不运行关键点检测器)