Windows:已安装OpenCV,但在Python中出现“无法导入cv2”错误

时间:2020-08-05 08:26:15

标签: python python-3.x opencv anaconda

我意识到在SO上有很多类似的问题,我一直在浏览它们,但到目前为止在他们的解决方案中没有发现任何成功。

我正在使用:

  • Anaconda 1.9.12
  • Python 3.8.3
  • Windows 10

我通过以下方式安装了opencv:

pip install opencv-python

当我这样做

conda list

我可以看到以下内容:

opencv                    4.0.1            py38h2a7c758_0
opencv-python             4.3.0.36                 pypi_0    pypi
opencv-python-headless    4.3.0.36                 pypi_0    pypi

还有

py-opencv                 4.0.1            py38he44ac1e_0

因此似乎已安装了opencv。但是,当我编写python代码时,我有:

import cv2

我收到“无法导入cv2”错误。

这可能与Anaconda如何管理安装和环境有关,但是我认为一切都已在自定义环境下安装,因为那是我一直在做的事情。

注意:我还尝试了其他命令,例如

conda install -c conda-forge opencv

看起来像他们成功了,但随后我仍然遇到错误。

3 个答案:

答案 0 :(得分:2)

您似乎已安装了三个不同的Open CV发行版。这可能是造成冲突的原因。 pyimagesearch - pip install opencv上有一篇文章,概述了可以为Open CV安装的不同pip软件包之间的区别。 opencv-python和opencv-python-headless相似,但是opencv-python用于具有GUI的系统,而无头用于没有GUI的系统。

我已使用Anaconda在Windows计算机上复制了这些步骤,并可以确认已安装Open CV并成功运行。

Open CV Windows Versions

我遵循的步骤:

  • 打开Anaconda提示
  • 如果使用venv,请输入conda activate myenv
  • 仍然在Anaconda提示符下,运行pip install opencv-python
  • 使用conda list时,您应该会看到一个打开的简历。

在您的情况下,如果您想使用opencv-python,我将尝试删除opencv-python-headless和opencv。要使用pip删除,请使用以下命令:

pip uninstall package name

否则,可能值得在Anaconda中建立一个新的虚拟环境,然后从那里干净安装opencv-python。

我用过:

  • Anaconda Navigator 1.9.12
  • Python 3.7.7
  • Windows 10

答案 1 :(得分:0)

opencv与python 3不兼容。尝试在Ananconda中安装opencv3。我希望它能工作。

您可以尝试

conda install -c menpo opencv=3

答案 2 :(得分:0)

我最终在基本的conda环境而不是自定义环境(例如,conda install opencv)上完成了所有工作,然后它开始工作。我猜某些东西在我的自定义环境中配置不正确,或者缺少做某事的能力(由于权限?)。