30

我刚刚在我的 Windows 7 机器上安装了 OpenCV。结果,我得到了一个新目录:

C:\OpenCV2.2\Python2.7\Lib\site-packages

在这个目录中,我有两个文件:cv.libcv.pyd.

然后我尝试使用opencv来自 Python 的。我执行以下操作:

import sys
sys.path.append('C:\OpenCV2.2\Python2.7\Lib\site-packages')
import cv

结果,我收到以下错误消息:

File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified module could not be found.

我究竟做错了什么?

添加

正如这里推荐的那样,我已将 的内容复制C:\OpenCV2.0\Python2.6\Lib\site-packagesC:\Python26\Lib\site-packages. 它没有帮助。

添加 2

我的环境变量具有以下值:

Path=C:\Program Files\MiKTex\miktex\bin;C:\OpenCV2.2\bin;C:\Python26;
PYTHONPATH=C:\OpenCV2.2\Python2.7\Lib\site-packages

我需要改变什么吗?我需要添加一些东西吗?

添加 3

我认为我的问题很笼统:如何使用图书馆?可能我需要在某个地方找到一个 *.ddl 文件?那么我需要使用包含这个文件的目录的名称作为一些环境变量的值吗?或者也许我需要使用sys.addpath?我还需要知道调用库的方式与包含该库的文件的名称有什么关系。

增加了 4

有趣的是,当我输入 时import cv,我得到:

ImportError: DLL load failed: The specified module could not be found.

但是当我输入时,import opencv我得到:

ImportError: No module named opencv

增加了 5

有人建议我使用不一致的python版本。更详细地说,OpenCV 尝试使用 Python2.7,而我有 Python2.6。所以,我已经安装了 Python 2.7。它有所作为。现在我没有旧的错误消息,但我有一个新的:

ImportError: numpy.core.multiarray failed to import
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: numpy.core.multiarray failed to import

增加了 6

我已经通过安装 numpy. 花了一些时间,因为我没有意识到不同版本的Python对应有不同的numpy安装程序。一些细节可以在我对我自己问题的回答中找到(见下文)。

4

4 回答 4

15

问题已解决。已完成以下步骤:

  1. 已安装新版本的 python(2.7 版)。
  2. 之后我仍然无法运行 OpenCV,因为我的 numpy 库有一些问题。
  3. 我厌倦了安装 numpy,但安装程序没有看到我的新版本 Python。
  4. 我删除了旧版本的 Python 以及 Path 系统变量中旧版本的链接。
  5. 之后 numpy 安装程序无法完成安装。
  6. 我意识到我需要运行另一个与 Python 2.7 关联的 numpy 安装程序。可以在这里找到。
  7. 最后一切正常。我能够“导入简历”。
于 2011-02-23T14:37:38.450 回答
5

我怀疑你遇到了和我一样的问题。如果您有 64 位版本的 Python,它无法加载 32 位 DLL。OpenCV 目前只提供 32 位二进制文​​件。如果您想要 64 位 .pyd 和 .dll 文件,您必须自己编译它们。OpenCV Wiki 上有一些说明,但不适合胆小的人。预计会有大量的时间投资。

最简单的解决方案是:

  1. 卸载 64 位 Python
  2. 安装 32 位发行版。

PythonXY 发行版包括 pyopencv——一组很好的 OpenCV 钩子。唯一的限制是它是 32 位的,所以不要计划用它来处理千兆像素的天文数据!;)

如果您必须拥有 64 位版本,请按照这些说明获取 OpenCV 以使用 Visual Studio 2010 进行编译。关于 stackoverflow 的讨论描述了使用 VC Express 构建 64 位应用程序。

编辑: OpenCV 现在附带 64 位 Python 二进制文件。.dll 文件需要放在路径中的某个位置(我将它们放在脚本文件夹中),而 .pyd 文件需要放在您的站点包目录中。

于 2011-02-20T13:53:32.183 回答
3

我在将 OpenCV 与 Python 交互时遇到了麻烦,我四处寻找帮助。这对我有用。我基本上遵循了这篇文章: http: //opencvpython.blogspot.com/2012/05/install-opencv-in-windows-for-python.html。下载并解压 OpenCV 2.4.6 后,您基本上会得到一个名为“opencv”的文件夹,里面有一堆东西。导航到构建->python->2.7。在里面,只有一个名为“cv2.pyd”的文件。我复制了这个文件并将其粘贴到“python-2.7.5\Lib\site-packages”中。我实际上正在使用 Spyder IDE,它工作正常。在 python 解释器中,输入“import cv”对我有用。

于 2013-07-26T00:25:21.433 回答
0

也许你应该编辑你的环境变量
右键单击“我的电脑”或类似的东西,单击属性。

在属性窗口中单击高级选项卡。
然后,环境变量按钮。
改变路径。

于 2011-02-17T15:21:26.460 回答