繁体   English   中英

在 Spyder(Python 3.6)中导入 cv2 时导入错误

[英]Import error while importing cv2 in Spyder(Python 3.6)

我已经在 windows 操作系统中安装了 opencv 3.0.0。 我已经运行该应用程序并将其成功安装在C:\驱动器中,并且还在C:\Python27\Lib\site-packages中复制了cv2.pyd文件,正如我在几个教程视频和我的 Python 2.7.5 Shell 中看到的那样即当我输入时空闲

>>>导入cv2

>>>

它表明它已安全安装并运行。

现在我使用的是 Spyder 3.6,因为这是我的机器学习程序可用的最新版本,但是如果我按照上述步骤操作,它会显示错误

ModuleNotFoundError:没有名为“cv2”的模块

现在我在路径中复制相同的cv2.pyd文件

C:\Users\Chirantan\Documents\WinPython\python-3.6.5.amd64\Lib\site-packages

但是现在的错误是

文件“ipython-input-36-c8ec22b3e787”,第 1 行,位于

导入cv2

导入错误:DLL 加载失败:%1 不是有效的 Win32 应用程序。

我有 2 个问题,我是否必须为 Spyder 3.6 安装单独的 opencv 并将其安装在C:\Users\Chirantan\Documents\WinPython

并将cv2.pyd文件复制到C:\Users\Chirantan\Documents\WinPython\python-3.6.5.amd64\Lib\site-packages

在这种情况下,它显示错误

文件“ipython-input-36-c8ec22b3e787”,第 1 行,位于

导入cv2

导入错误:DLL 加载失败:%1 不是有效的 Win32 应用程序。

我该如何解决这个问题?

为 Spyder 3.6 安装的 opencv 的正确版本应该是什么?它应该保存在哪里?我应该把cv2.pyd文件放在这里吗?

任何帮助表示赞赏。

不,我想知道应该为 Python 3.6 安装的 opencv 的正确版本应该是什么,前提是我有一个更新的 numpy,它随 spyder 包一起提供,即 winpython 包,我应该在哪里安装正确的文件 opencv 并将其保存在 winpython 文件夹中?

转到https://pypi.org/project/opencv-python/

并复制pip install opencv-python

现在打开C:\\Users\\XYZ\\...\\WinPython文件夹并打开WinPython命令提示符这是里面的文件夹WinPython

这里粘贴pip install opencv-python并按回车

接下来输入pip install opencv-contrib-python并按回车键。

瞧! 您的 opencv 已安装。 打开你的 Python 3.6.5 Shell 并输入

>>> 导入 cv2

>>>

它已成功安装!

打开 Anaconda 提示符,然后输入命令

pip install opencv-python

对于 anaconda 3,这对我来说很好用。

它对我来说效果很好。 答案是需要将cv2.pyd文件放入您的虚拟环境。 需要放在两个envs文件夹下,

第一个在.dll文件夹下,第二个在Lib/site-packages

获取cv2.pyd

从此链接下载 在此处输入链接描述,然后解压缩下载文件

您将获得 opencv 文件夹,然后进入 opencv 文件夹,例如

Downloads\\opencv\\build\\python\\2.7并根据您的系统架构在文件夹结构中更深一层; 32 或 64 窗口版本

Copy cv2.pyd重要提示:cv2.pyd文件复制到您的envs ,您需要将cv2.pyd重命名为 _ cv2.pyd

我发现这对我有用。 我正在使用 windows10、python 11 和 spyder 5.4 如果您不使用 pip 安装来安装 opencv-python,它会起作用,但使用 python 和 spyder 中默认出现的那个!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM