Windows:Python + OpenCV + Qt:“import cv2”给出“dll not found”错误

时间:2016-06-19 12:58:42

标签: python qt opencv dll

当我尝试在Python(v3.4)中使用OpenCV(v3.1.0)时遇到问题。为了使事情变得更复杂,OpenCV使用“contrib”包和Qt支持(v5.5)构建。

这就是我所做的(这本身就有一些陷阱,但这些都超出了这个问题的范围):

  1. 安装所需的软件
    1. 我安装了WinPython(v3.4.4,64位版本)
    2. 我安装了cmake(v3.6.0)
  2. 下载来源
    1. 我从GIT repo下载了Qt源代码
    2. 我从GIT repo下载了OpenCV来源
    3. 我从GIT repo
    4. 下载了OpenCV“contrib”来源
  3. 构建资源 - >发布,64位(!)
    1. 从源头构建Qt
    2. 从源代码构建OpenCV(使用“contrib”模块)
  4. cmake(OpenCV 3.1.0 for python 3)已经负责将“cv2.pyd”复制到“your / python / folder / Lib / site-modules”目录。

    现在我遇到的问题是从python调用“import cv2”会出现错误“

    >>> import cv2
    Traceback (most recent call last):
      File "<pyshell#0>", line 1, in <module>
    import cv2
    ImportError: DLL load failed: Module not found
    

    如何找出缺少哪个模块以及如何解决?

2 个答案:

答案 0 :(得分:1)

您可能不想做的只是adding paths that are likely needed to your environment variables

找出缺失内容的方法:

  1. 下载DependencyWalker
  2. 使用dependency walker打开您的“cv2.pyd”
  3. 分析您的文件(选择文件时自动启动)
  4. 点击“F9”,使其显示所需DLL的完整路径
  5. 检查哪些DLL文件丢失
  6. 将它们复制到这些文件夹
  7. 对我来说,就是python / cv2.pyd搜索到cv2.pyd所在文件夹中的所有Qt DLL的情况。

    我只是将它们复制到那里就是这样。

答案 1 :(得分:0)

对于Windows:

第1步。从https://www.python.org/downloads/下载python安装程序 ,请双击该文件以安装python并检查是否如给定图像中所示将python添加到PATH的选项。

As shon in image

步骤2。从unofficial site下载文件“ numpy‑1.15.4 + mkl‑cp27‑cp27m‑win32.whl”。

转到该文件的位置打开命令提示符,然后键入-

pip install numpy‑1.15.4+mkl‑cp27‑cp27m‑win32.whl

现在转到python IDLE并输入:

import numpy

应该没有错误。

第3步。从unofficial site下载文件“ scipy‑1.2.1‑cp27‑cp27m‑win32.whl”。

转到该文件的位置打开命令提示符,然后键入-

pip install scipy‑1.2.1‑cp27‑cp27m‑win32.whl

现在转到python IDLE并输入:

import scipy

应该没有错误。

第4步:从unofficial site下载文件“ opencv_python‑2.4.13.7‑cp27‑cp27m‑win32.whl”。

转到该文件的位置打开命令提示符,然后键入-

pip install opencv_python‑2.4.13.7‑cp27‑cp27m‑win32.whl

现在转到python IDLE并输入:

import cv2

它应该没有错误,表示opencv已在Windows中成功安装。