我在试着运行这个程序

import cv2
import time

cv.NamedWindow("camera", 1)

capture = cv.CaptureFromCAM(0)

while True:
    img = cv.QueryFrame(capture)
    cv.ShowImage("camera", img)
    if cv.WaitKey(10) == 27:
        break
cv.DestroyAllWindows()

但我有numpy的问题,我使用pyschopy与opencv一起使用。 我一直得到的问题是这个错误报告:

RuntimeError:根据API版本7编译的模块,但是numpy的这个版本是6 回溯(最近一次调用): 文件“C:\Users\John\Documents\EyeTracking\Programs\GetImage.py”,第一行,在 进口cv2 ImportError: numpy.core.multiarray导入失败

我在psychopy文件夹中有numpy-1.6.1-py2.7,我只是不知道哪里出了问题?


当前回答

在我的例子中,这个问题是因为我安装了两个python(2.7和3.5),而pip只在3.5 python目录中安装numpy,与我使用的pip版本无关。

我通过显式指定目标安装目录解决了这个问题:

pip install --target c:\apps\python-2.7\Lib\site-packages numpy

其他回答

对我来说,这个错误出现在使用conda安装pygrib并导入它时。

conda install -c conda-forge numpy

解决了问题。

在试图导入Pytorch时遇到这种情况。解决方法是反复卸载或删除numpy,直到我的Ubuntu上没有任何版本,然后安装最新版本。在我的情况下,pip遇到访问被拒绝的权限错误,可能是因为与conda冲突。

执行sudo pip uninstall numpy命令。如果它拒绝从<location>中删除包(确保它是特定包的位置,而不是所有包-这是不可逆的),运行sudo rm -r <location>。重复以上步骤,直到第一个命令不起任何作用,并且import numpy无法在Python shell中找到包。

使用pip安装numpy。

卸载现有numpy 安装opencv-python可以解决这个问题

我得到了同样的错误,并能够通过更新我的numpy安装到1.8.0来解决它:

pip install -U numpy

我可以通过将python更新到3.8来解决这个问题。我和卡特琳娜一起用Macbook Air。我在更新TensorFlow之后就遇到了这个问题。更新后,在卸载和安装numpy几次后,错误没有消失。

最后,我从python网站下载了python3.8包并安装。然后我安装了numpy,它工作了。