【问题标题】:How to make the opencv-contrib module work?如何使 opencv-contrib 模块工作?
【发布时间】:2021-03-17 07:38:50
【问题描述】:

我按照本指南安装 opencv(版本 3.4.4)和 contrib 模块,因为我想使用 SIFT 算法。 https://www.pyimagesearch.com/2018/05/28/ubuntu-18-04-how-to-install-opencv/ 当我注意到安装后它没有按预期工作时,我删除了构建文件夹并再次尝试,但这并不奏效。 我是这样导入的:

import cv2 as cv 

我尝试通过以下方式使用 SIFT(在 python 3.6 中):

sift = cv.SIFT_create()
sift = cv.xfeatures2d.SIFT_create()
sift = cv.SIFT()
sift = cv.xfeatures2d.SIFT()

由于这通常会导致如下错误:属性错误:模块 cv2 没有属性“SIFT_create”(其他 3 个选项也会发生同样的情况),我认为我使用它的方式不正确或安装过程本身不能正常工作。

在这之后,我找到了 pip install opencv-contrib-python 并使用它。完全没有结果。

我非常感谢一些关于如何使 opencv 与 contrib 模块一起工作的提示。

【问题讨论】:

    标签: python python-3.x opencv sift opencv-contrib


    【解决方案1】:

    你可能不得不说cv2.xfeatures2d_SIFT 或类似的。 OpenCV 的模块不一定映射到 python 子模块。

    由于 SIFT 的专利于 2019 年到期,OpenCV 将其从 xfeatures2d (opencv_contrib repo) 移回 features2d (main repo)。请使用最新的 3.4.x 版本或 4.x。

    【讨论】:

      猜你喜欢
      • 2023-04-06
      • 2016-01-31
      • 2015-09-24
      • 2015-07-13
      • 2018-04-17
      • 1970-01-01
      • 2020-05-01
      • 1970-01-01
      • 2015-10-21
      相关资源
      最近更新 更多