如何在 anaconda 中获取 opencv_contrib 模块

how to get opencv_contrib module in anaconda

谁能告诉我获取 anaconda contrib 模块的命令

我需要那个模块 匹配 = flann.knnMatch(des1,des2,k=2) 到 运行 正确

抛出的错误是 cv2.error: ......\modules\python\src2\cv2.cpp:163: error: (-215) 数据通常应为 NULL!在函数中 NumpyAllocator::allocate

另外我使用的是 Anaconda openCV version 3,绝对不想切换到较低版本 P.S。正如在许多地方建议的那样,编辑文件 cv2.cpp 选项不适用于 anaconda。

你可以试试这个:https://anaconda.org/michael_wild/opencv-contrib

To install this package with conda run:

conda install -c michael_wild opencv-contrib 

这些 anaconda 包包括 contrib 带有基础 OpenCV3 的模块。虽然文件列表说它目前仅供 Windows 使用!

我建议在您的 anaconda 环境中安装 pip,然后执行以下操作:pip install opencv-contrib-python。这将 opencv 和 opencv-contrib.

Anaconda 支持 pip install 将软件包安装到 conda 环境中。您可以从这个著名的 Unofficial Windows Binaries for Python Extension Packages 网站下载 OpenCV 3.2.0opencv_contrib。请参阅下面的文件名以获取正确的版本。然后在Anaconda Promptwindow中输入命令安装包:

对于 Python 3.5 和 64 位 Windows:

pip install opencv_python‑3.2.0+contrib‑cp35‑cp35m‑win_amd64.whl

对于 Python 3.6 和 64 位 Windows:

pip install opencv_python‑3.2.0+contrib‑cp36‑cp36m‑win_amd64.whl

Anaconda 存储库中的大多数 OpenCV 3.2.0 软件包没有具体说明它们是否带有 opencv_contribpip install 方法更简单且经过验证,请参阅 。唯一的缺点是 conda list 不会在那里显示 pip 已安装的包,但实际上它是。

但是,如果您想在 conda install 上试用,下面是为 Python 3.5 或 3.6 安装 OpenCV 3.2.0 的命令,但可能 没有 opencv_contrib.

conda install -c conda-forge opencv=3.2.0 

希望对您有所帮助。

这对我有用 Windows 10 on Anaconda 5.3 with python 3.6

conda install -c conda-forge opencv

问题很旧,但我想用最新信息更新答案。我的 Anaconda 版本是 2019.10,构建频道是 py_37_0 。我使用了 pip install opencv-python==3.4.2.17pip install opencv-contrib-python==3.4.2.17。现在它们在 Anaconda 导航器中也作为已安装的软件包可见,我能够使用专利方法,如 SIFT 等。

conda-forge 中有 repo,其中包括 opencv-contribhttps://github.com/conda-forge/opencv-feedstock

使用方法:

conda install --channel=conda-forge libopencv opencv py-opencv

如果您 运行 遇到 Numpy 错误,请尝试固定更新版本(Numpy)。