OpenCV在Windows上安装opencv_contrib

时间:2016-05-30 05:10:07

标签: python opencv opencv-contrib

我正在使用 OpenCV 3.1.0 Python 2.7.11 Windows 10。我想构建额外的模块( opencv_contrib )进入OpenCV。

我按照此GitHub中的步骤进行操作。

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

当我输入cmake _DOPENCV_EXTRA_MODULES_PATH=C:\opencv_contrib\opencv_contrib/modules C:\opencv\sources时,会出现错误

enter image description here

我正在寻求帮助如何解决它。谢谢。

6 个答案:

答案 0 :(得分:27)

  

更新29-5-2017:这也适用于OpenCV 3.2.0-dev。现在使用Visual   Studio 2015或2017没有错误

     

cv2.pyd现在自动移至site-packages。您只需要复制DLL。

我已经制作了一个关于如何从头开始编译和构建自己的OpenCV 3.1.0-dev的教程。它简单而有条理,非常适合我。如果您有时间重新编译OpenCV,请查看tutorial

要遵循的步骤是:

  1. 安装Visual Studio 2013
  2. 安装CMake
  3. github
  4. 下载opencv和opencv_contrib
  5. 创建一个目录opencv-3.1.0-dev,并在此目录中创建另一个名为build的目录,另一个名为sourcespaths将为opencv-3.1.0-dev\buildopencv-3.1.0-dev\sources
  6. 解压缩opencv-master.zipopencv_contrib-master.zip
  7. 在步骤4中创建的sources目录中,粘贴opencvopencv_contrib目录
  8. 打开CMake并提供两个路径,一个用于构建目录,另一个用于源目录
  9. cmake

    1. 配置,会出现很多以红色突出显示的行。
    2. configure

      1. 出现这些行之前,您必须指定编译器。 (还可根据需要选择正确的位版本,相同的程序适用于32位和64位)
      2. compiler

        1. 选择您想要构建的内容,但最重要的是提供非免费模块的路径。
        2. extra modules

          1. 再次按配置,新行将以红色突出显示。
          2. 确保在按生成之前取消选中BUILD_opencv_contrib_world。
          3. new

            1. 使用CMake的最后一步是按生成
            2. 在继续之前确保generating is done
            3. generating done

              1. 打开空的构建,你会发现一堆文件。最重要的文件是OpenCV.sln。右键单击此.sln文件,然后使用CMake中使用的visual studio 2013打开它。
              2. the sln file

                请耐心等待,接下来需要花费很多时间。

                1. 使用下图中的顺序构建3个文件。将模式更改为Release。这些步骤大约需要10到15分钟。
                2. build

                  1. 复制所有.dll个文件[显示在opencv-3.1.0-dev\build\bin\Release]和cv2.pyd,然后将其粘贴到site-packages的{​​{1}}目录中。
                  2. 验证构建是否打开Python并执行Pyhton27\Lib\site-packages。如果没有错误,请执行import cv2,然后您应该获得cv2.__version__
                  3. verification

                    如果有任何不清楚的地方,请观看本答案开头提供的教程。

答案 1 :(得分:15)

对于Python 3.6 / 3.5,您可以使用* .whl(车轮上的Python)模块http://jabber.org/protocol/disco#info

opencv-contrib-python

对于Python 2.7,在一个模块中没有opencv + contrib,但您可以单独安装opencv模块而不使用contrib from here,然后添加pip install opencv_python-3.2.0.7-cp27-cp27m-win_amd64.whl pip install opencv-contrib-python 模块:

opencv-python (3.2.0+contrib)

不要混用opencv + contrib opencv-contrib-python (3.2.0.7)import cv2模块,否则您的“opencv-contrib-python”会停止工作,直到您删除if errorlevel 0 echo something 模块。

答案 2 :(得分:6)

不需要复杂的东西,只需卸载你拥有的opencv版本并执行:

pip install opencv-contrib-python
祝你好运, 琥珀

答案 3 :(得分:3)

foo bar的答案是将opencv_contrib添加到python的最简单方法。但opencv_python-3.2.0.7-cp27-cp27m-win_amd64.whl仅适用于AMD芯片。如果您在英特尔芯片上运行它,您将收到如下错误消息:&#34; XXX不是此平台上支持的轮子&#34;。在这种情况下,您必须使用opencv_python-3.2.0.7-cp27-cp27m-win32.whl。

答案 4 :(得分:1)

您似乎没有安装编译器或找不到它。

我已成功使用本指南:

http://docs.opencv.org/3.0-rc1/d5/de5/tutorial_py_setup_in_windows.html

但是,有必要使用Visual Studio 12 2013,其他版本无效。

答案 5 :(得分:-2)

如果您从此处按照install the pre-build libraries的说明进行操作,那么您将不需要任何编译器。

同一页面包含Installation by Making Your Own Libraries from the Source Files的说明,其中包含使用Visual Studio的示例说明。

我已按原样使用这些说明成功编译了OpenCV 2.4和3.0。

相关问题