模块未找到错误:没有名为'cv2'的模块。

13

我已经在解决这个错误很长时间了。我有Python 3.6和Python 2.7。我尝试在Python 2.7和Python 3.6中分别安装opencv 2和3。我知道我使用的Python解释器,并且可以在需要时进行交换。

当我运行Python解释器并编写import cv2时,它确实能导入它。但是当我从命令提示符中运行代码时,它会显示ModuleNotFoundError: No module named 'cv2'。 该模块已安装。cv2.pyd文件位于C:\Python27\Lib\site-packages中。我附上了一个屏幕截图,显示了Python27中的模块

enter image description here

我使用了pip install opencv-python。我从不同站点下载了该模块并手动复制粘贴到正确的文件夹中。但都没有起作用,现在我真的很缺乏想法。

编辑:我在Windows 10上通过anaconda安装了python 3.6,并直接安装了python 2.7。两者都设置了其变量路径。


这适用于Python 2还是Python 3,或者两者都不支持?你尝试过在脚本中传递pip的绝对路径吗? - Jean-François Fabre
1
我已经从不同网站下载了这个模块并手动复制粘贴到正确的文件夹中。什么??为什么??这不是应该的做法。 - sascha
@Jean-FrançoisFabre适用于python3而不是python 2。我正在运行的代码只适用于python 2。 - hkhan
@sascha 我知道!!!现在你可以理解我有多么沮丧去做这件事了。 - hkhan
最简单的实验:使用与您可以手动导入cv2的相同的python,如果您有一个一行的test.py,其中包含import cv2,那么python test.py会产生导入错误吗? - Dave W. Smith
https://dev59.com/9rHma4cB1Zd3GeqPFg6B - Tevin Mukudi
4个回答

20

在Windows 10中,您可以安装它为

pip install opencv-python

这将允许您导入 cv2 模块。


5
面对在Windows 10上相同的问题,我从Python扩展包非官方Windows二进制文件下载了OpenCV二进制文件。请在该页面上搜索opencv并下载适用于您系统的正确.whl文件,然后使用pip进行安装。例如,在我的系统上,打开cmd窗口后,我输入了以下命令。
pip install opencv_python-3.4.1-cp36-cp36m-win_amd64.whl

我随后打开了 Python,以下命令可行:
import cv2
print(cv2.__version__)

更多信息可在此Mark Jay视频中获取。

:D


无法工作。我从上面提到的链接下载了最新的.whl文件并进行了安装。当我执行import cv2时,它仍然找不到它。所以我在代码中添加了这一行来指向已安装的位置。然后我成功地导入了cv2,但是当我尝试使用imread参数时,出现了错误“AttributeError:module'module' cv2'没有属性'imread'”。有任何想法是我做错了什么吗? - JKC
这个答案有帮助吗 SO:a/47859122 - SpeedCoder5
1
OpenCV现在构建了官方python包。 opencv-python是其中的标准包,所有这些包都包含基本模块,一些包含贡献模块,而一些则省略了GUI功能。请安装其中一个包。 - Christoph Rackwitz

2

@SpeedCoder5的解决方案仅适用于Windows用户。然而,我正在使用macOS(特别是macOS Monterey),并且我成功通过在VS Code中使用Jupyter Notebook扩展(Python 3.9)来解决了这个问题,在我安装cv2之后。

pip install opencv-python

screenshot of jupyter notebook oj vscode


这是与2.5年前的另一个答案相同的建议。pip install ... 应该在所有平台上都能正常工作,也许可以尝试使用 pip3 - Christoph Rackwitz

0
在我的情况下,我使用的是一个太旧的pip版本,即10.0.1。 我通过以下命令将其升级到最新版本: py -3.7 -m pip install --upgrade pip 这样我就得到了适用于Python 3.7的pip 23.2.1。
然后我再次运行以下命令: py -3.7 -m pip install opencv-python
这次它成功了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接