python 3.3.0 和 opencv2 中的 SIFT 不起作用

SIFT in python 3.3.0 and opencv2 doesn't work

当前使用版本 cv2 3.3.0.
我无法使用 SURF 和 SIFT 功能。我需要安装 xfeatures2d 才能访问那些缺少的功能。

谁能建议我如何在 opencv 3.3.0 中安装这些附加模块

我收到以下错误

sift = cv2.xfeatures2d.SIFT()
AttributeError: 'module' object has no attribute 'xfeatures2d'

如果您正在使用 Ubuntu,请按照此 link 一步步进行,您将获得所需的东西。 https://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/

对于 windows,请遵循此教程:https://youtu.be/MXqpHIMdKfU 尽管我自己在 windows.

中的安装运气不佳

这没有捷径可走,您必须完成整个过程才能获得 sift 和 surf,因为它位于 opencv contrib 包中,该包在 opencv 中尚不存在,必须单独安装。

我找到了解决我自己问题的方法。

请使用以下代码安装使用 opencv 所需的附加模块:

easy_install opencv-contrib-python

pip install opencv-contrib-python