首页 > 编程问答 >在Spyder(Python 3.6)中导入cv2时出现导入错误

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

时间:2024-07-22 05:18:41浏览次数:14  
标签:python python-3.x opencv spyder

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

>>>import cv2

>>>

时 IDLE,它显示它已安全安装并运行。

现在我正在使用 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

ImportError:DLL加载失败:%1不是有效的Win32应用程序。

我有两个问题,我是否必须为 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 行,in

导入 cv2

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

如何解决此问题?

正确的版本应该是什么为 Spyder 3.6 安装 opencv 的文件,保存位置应该在哪里,我应该把

文件放在哪里? cv2.pyd 感谢任何帮助。

不,我想知道应该是什么为Python 3.6安装正确版本的opencv,并且假设我有spyder包(即winpython包)附带的更新的numpy,我应该在winpython文件夹中的哪里安装并保存正确的文件opencv?

No I want to know what should be the correct version of opencv to be installed for Python 3.6 and provided I have an updated numpy that comes with the spyder package i.e winpython package, where should I install and save the correct file opencv in the winpython folder?


以下是解决 Spyder 中“导入 cv2 时出错”问题的分步指南,以及解决特定情况的说明:

了解问题

在 Python 2.7 中安装了 OpenCV,并且它在的系统范围内运行良好(从 IDLE 测试时)。但是,Spyder 使用的是与的系统 Python 2.7 安装不同的 Python 3.6 环境,并且该环境尚未安装 OpenCV。将 cv2.pyd 文件从的 Python 2.7 目录复制到的 Python 3.6 目录不起作用,因为该文件并非为此 Python 版本和架构构建的。

解决方案

以下是使用 Spyder 在 Python 3.6 中正确安装 OpenCV 的方法:

  1. 检查的 Spyder 环境:
  2. 打开 Spyder 并运行以下代码以检查正在使用的 Python 和 NumPy 版本: ```python import sys import numpy

    print("Python 版本:", sys.version) print("NumPy 版本:", numpy. version ) ``` * 确保 Python 版本为 3.6.x,并且 NumPy 也是为 Python 3.6 安装的最新版本。

  3. 使用 pip 安装 OpenCV(推荐):

  4. 为 Spyder 打开终端或提示符: 大多数 Python IDE(包括 Spyder)都有一个集成终端。查找标题为“终端”、“控制台”或类似名称的窗格或选项卡。
  5. 在终端中,运行以下命令: bash pip install opencv-python
  6. 此命令将下载并安装与的 Python 3.6 版本兼容的 OpenCV 包。

  7. 测试安装:

  8. 在 Spyder 中重新启动内核或控制台: 这可以确保更改生效。
  9. 再次运行导入语句: python import cv2

如果仍然遇到问题:

  • 验证的路径: 在的 Spyder 控制台中,键入 import sys print(sys.path) 。确保的 Python 3.6 环境的 site-packages 目录位于该列表中。
  • 重新安装 NumPy: 在尝试安装 OpenCV 之前,请尝试运行 pip install --upgrade numpy
  • 特定于发行版的安装: 如果使用的是 Anaconda 或 WinPython 等发行版,请查阅其文档以获取有关安装 OpenCV 包的说明。它们可能具有特定的软件包版本或建议的安装程序。

通过按照这些步骤,可以解决 Python 3.6 环境中 Spyder 中的 OpenCV 导入错误。

标签:python,python-3.x,opencv,spyder
From: 51077327

相关文章

  • Python + VS Code 调试器:可视化我的程序当前正在执行的源代码中的位置?
    当我使用VSCodePython调试器时:我可以执行我的程序,以便编辑器将我逐行带到源代码中的任何位置(跳转到相关文件/如果尚未打开则将其打开)目前的执行情况是?是的,VSCode的Python调试器可以让你逐行执行代码,并实时显示当前执行的位置。以下是操作方法:1.设置断点:......
  • 如何立即取消使用 Ollama Python 库生成答案的 Asyncio 任务?
    我正在使用Ollama通过OllamaPythonAPI从大型语言模型(LLM)生成答案。我想通过单击停止按钮取消响应生成。问题在于,只有当响应生成已经开始打印时,任务取消才会起作用。如果任务仍在处理并准备打印,则取消不起作用,并且无论如何都会打印响应。更具体地说,即使单击按钮后,此函数......
  • 使用 np.array 索引过滤 Python 列表
    谁能向我解释一下列表self.data如何使用numpy索引数组selec_idx进行索引/过滤?完整的课程可在https://github.com/kaidic/LDAM-DRW/blob/master/imbalance_cifar.pydefgen_imbalanced_data(self,img_num_per_cls):new_data=[]n......
  • 尝试在cmd(python)中安装turtle
    当我在cmd中编写pipinstallturtle后,这条消息出现在我面前。有人知道该怎么办吗?C:\>pipinstallturtleCollectingturtleUsingcachedturtle-0.0.2.tar.gz(11kB)ERROR:Commanderroredoutwithexitstatus1:command:'C:\Users\Bruger\App......
  • Python + Polars:如何有效地“fill_null”仅 DataFrame 的某些列?
    例如,假设我只想fill_null(strategy="zero")DataFrame的数字列。我当前的策略是这样做:final_df=df.select(cs.exclude(cs.numeric()))final_df.with_columns(df.select(cs.numeric()).fill_null(strategy="zero"))是否有替代的、更惯用或更有效的方法来实现我......
  • 如何找到 Windows 上 Python 的安装位置?
    我想找出我的Python在Windows上的安装路径。例如:C:\Python25如何找到Python的安装位置?在Windows上查找Python安装位置的方法有很多种:1.使用where命令(推荐方法):打开命令提示符(cmd)。输入以下命令并按回车键:wherepython......
  • Python Pandas:如何解析没有行结尾的 CSV
    如何解析没有行结尾的CSV文件?示例数据sep=;Id;Date;1;1980-02-29;2;1980-03-10;3;;可以使用lineterminator参数指定行终止符来解析没有行尾的CSV文件。在这种情况下,你可以将lineterminator设置为一个空字符串('')。以下是使用......
  • Python 中的 azure.ai.translation.document - 无法使用当前权限访问源文档位置
    我在使用Python中的azure.ai.translation.document库时遇到问题。我已经在Azure中设置了翻译服务以及带有两个容器的Blob存储。我已使用“用户委托密钥”创建了SAS连接。一种用于源(读取/列表),一种用于目标(写入/列表)。例如我尝试运行Python程序,但源b......
  • 博文标题:探索Python中的元编程:装饰器的魔法
    引言在Python的世界里,装饰器(Decorators)是一种非常强大的特性,它允许程序员在不修改原始函数代码的情况下,为函数添加新的功能。这种机制不仅增强了代码的可读性和可维护性,还提供了高度的灵活性和扩展性。本文将深入探讨装饰器的基本概念、工作原理以及如何利用它们来简化和......
  • 使用Python 和 Selenium 抓取 酷狗 音乐专辑 附源码
    在这篇博客中,我将分享如何使用Python和Selenium抓取酷狗音乐网站上的歌曲信息。我们将使用BeautifulSoup解析HTML内容,并提取歌曲和专辑信息。准备工作首先,我们需要安装一些必要的库:pipinstallrequestsbeautifulsoup4selenium代码实现以下是完整的代码:importosi......