8

我正在尝试使用 OpenCV 在 python 中实例化一个 SURF 对象,如此处所述但发生了这种情况:

>>> import cv2
>>> cv2.__version__
'2.4.0'
>>> cv2.SURF()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'SURF'

有谁知道为什么会发生这种情况,或者 OpenCV 的 Python 版本中是否缺少 SURF?

4

1 回答 1

9

这是一个回归,应该在下一次库更新中修复。

但 SURF 并不是真的缺席。您仍然可以通过通用包装器访问它:

surf_detector = cv2.FeatureDetector_create("SURF")
surf_descriptor = cv2.DescriptorExtractor_create("SURF")

更新: cv2.SURF()在 OpenCV 2.4.1 中恢复

于 2012-05-22T21:26:43.667 回答