【问题标题】:xfeatures2d not found in OpenCV on Ubuntu在 Ubuntu 上的 OpenCV 中找不到 xfeatures2d
【发布时间】:2017-07-26 05:12:36
【问题描述】:

我使用的是 OpenCV 3.2.0 版,但在此找不到 xfeatures2d。有什么办法可以将它安装到相同版本的 OpenCV 上?

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

【问题讨论】:

  • 您是否也安装了opencv_contrib?这些模块已在 opencv 3 中移动,请参阅pyimagesearch.com/2015/07/16/…
  • @EdChum 是的,我也安装了 opencv_contrib。
  • 似乎opencv_contrib 模块在您的安装中不起作用。您是否安装了 Anaconda 以使用您的 OpenCV 运行 Python(2.73.6?)?

标签: python opencv ubuntu sift


【解决方案1】:

我遇到了同样的问题。 SURF 和 SIFT 不是 OpenCV 主要 repo 模块的一部分。相反,它们在 opencv_contrib 文件夹中可用。 opencv_contrib 的 README 文件清楚地说明了如何在 opencv_contrib 中安装模块。

cd <opencv_build_directory>
cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory>
make -j5

另请注意,如果您使用的是 OpenCV 3.2,这些模块将安装在 Python3 上。

【讨论】:

    【解决方案2】:

    http://www.pyimagesearch.com/2015/06/22/install-opencv-3-0-and-python-2-7-on-ubuntu/ 此链接包含安装 opencv 3 和 opencv_contrib 所需的所有步骤。

    如果在完成上述链接中提到的所有步骤后 xfeatures2d 仍无法正常工作,请为 opencv_contrib 克隆 https://github.com/opencv/opencv_contrib.git

    【讨论】:

      【解决方案3】:

      对于 cv2 版本 '4.5.2' 和 '4.5.1' 有效!

      sift = cv2.SIFT_create()
      kp = sift.detect(gimg,None)
      img=cv2.drawKeypoints(gimg,kp,img)
      plt.imshow(img)
      

      感谢https://stackoverflow.com/a/65790734/14578749

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-11-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-22
        • 1970-01-01
        • 2011-08-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多