我正在尝试使用 OpenCV 从图像中提取 SURF 描述符。我正在使用 OpenCV 2.4 和 Python 2.7,但我很难找到任何提供有关如何使用这些函数的任何信息的文档。我已经能够使用以下代码来提取特征,但我找不到任何明智的方法来提取描述符:
import cv2
img = cv2.imread("im1.jpg")
img2 = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
surf = cv2.FeatureDetector_create('SURF')
detector = cv2.GridAdaptedFeatureDetector(surf, 50) # max number of features
fs = detector.detect(img2)
我尝试提取描述符的代码是:
import cv2
img = cv2.imread("im3.jpg")
sd = cv2.FeatureDetector_create("SURF")
surf = cv2.DescriptorExtractor_create("SURF")
keypoints = []
fs = surf.compute(img, keypoints) # returns empty result
sd.detect(img) # segmentation faults
有没有人有任何做这种事情的示例代码,或指向任何提供示例的文档的指针?