导入opencv并获取numpy.core.multiarray导入失败

Posted

技术标签:

【中文标题】导入opencv并获取numpy.core.multiarray导入失败【英文标题】:Importing opencv and getting numpy.core.multiarray failed to import 【发布时间】:2015-03-25 07:54:45 【问题描述】:

尝试安装 OpenCV 并遇到尝试导入 cv2 会导致此输出的问题 -

    RuntimeError: module compiled against API version 9 but this version of numpy is 7

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

我在 Windows 7 x64、Python v 2.7.9 上运行 谢谢!

【问题讨论】:

你是如何安装 numpy 和 opencv 的? 我按照此处的说明使用预构建的二进制文件:docs.opencv.org/trunk/doc/py_tutorials/py_setup/… ImportError: numpy.core.multiarray failed to import的可能重复 【参考方案1】:

我使用 Python 3.7 @ RPI 4。

为了正确安装 opencv,我必须安装下面列出的库。 (并非每个软件包都实际安装,请求后)

关于 Numpy,我认为应该坚持使用最新版本。

对我来说有效的是卸载现有版本 1.16.2 并坚持使用当前稳定的 1.21.2。

此处缺少库的 *** 主题:ImportError: libcblas.so.3: cannot open shared object file: No such file or directory。

【讨论】:

【参考方案2】:

在你的环境中你可以试试这个命令:

conda 卸载 numpy

conda install -c conda-forge numpy

【讨论】:

【参考方案3】:

我遇到了类似的问题,我通过降级我的 numpy 版本解决了它。

我所做的是:

pip install opencv-python
pip uninstall numpy
pip install numpy=1.18

这对我有用

Python 3.7 opencv-python 4.4.0.46 numpy 1.18.0

【讨论】:

【参考方案4】:

如果您使用的是 ubuntu 仿生海狸,请尝试运行:sudo apt-get install python-numpy 有同样的问题,通过运行上述命令解决。 希望对你有帮助

【讨论】:

【参考方案5】:

linux:sudo apt-get install python-numpy

【讨论】:

好的。但其他提议的解决方案在 linux 上对我不起作用,所以我认为它可能值得分享 :)【参考方案6】:

万一

pip install -U numpy

不起作用(即使使用 sudo),您可能需要确保您使用的是正确版本的 numpy.我有同样的“numpy.core.multiarray 导入失败”问题,但这是因为我为我使用的 Python 版本安装了 1.6,即使我一直安装 1.8 并假设它安装在正确的目录中。

我在我的 Mac 终端中使用以下命令发现了错误的 numpy 版本:

python -c "import numpy;print numpy.version;print numpy.file";

这个命令给了我我正在使用的 numpy 的版本和位置(原来是 1.6.2)。我去了这个位置并手动将其替换为 1.8 的 numpy 文件夹,这解决了我的“numpy.core.multiarray 无法导入”问题。希望有人觉得这很有用!

【讨论】:

【参考方案7】:

错误是告诉你你有一个过时的 numpy 版本。如果你使用pip 安装东西,你可以简单地运行 pip install numpy -U,或者从他们的网站下载适当的版本。

【讨论】:

除此之外,包含 Python >2.7.9 pip,您可以运行 python -m pip install --upgrade numpy 工作就像一个魅力,谢谢!还必须安装 Microsoft Visual C++ Compiler for Python。

以上是关于导入opencv并获取numpy.core.multiarray导入失败的主要内容,如果未能解决你的问题,请参考以下文章

Numpy 和 OpenCV

Android Studio 导入OpenCV 并调试运行face-detection例子

python无法导入opencv,因为它找不到libjpeg.8.dylib

为啥 PyCharm 不导入/检测从源代码编译和安装的 OpenCV?

OpenCV配置(Java)

如何使用opencv制作全景照片