我在试着运行这个程序

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,我只是不知道哪里出了问题?


当前回答

如果你卸载并重新安装或安装了更新,但它仍然不能工作,特别是如果你用cx_freeze打包:

尝试在导入cv2之前先导入numpy来更改代码。

其他回答

我也犯了同样的错误。问题是您可能创建了一个名为numpy.py的文件。该文件可能与numpy库一致。因此,删除numpy.py文件,问题就解决了。

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

我在我的树莓4系统中遇到了这个错误。 我在开发一个使用opencv的Django后端。

解决我问题的是:

Sudo PIP install numpy==1.23.0

Raspberry信息:Linux raspberrypi 5.15.61-v7l+

Python版本:3.9

希望这能帮助到一些人。

我在使用repo中的requirements.txt所建议的numpy版本时出现了相同的错误。当我试图“导入熊猫作为pd”时,出现了这个错误。然后解决方案是将numpy版本升级到1.15.2,因为需求中建议的版本与pandas不匹配。我用pip卸载了现有的numpy版本,并重新安装了新版本。

pip install numpy==1.15.2 

希望这对大家有所帮助

在我的D:驱动器(C:运行在SSD上)安装python和opencv后,我也遇到了同样的错误。问题似乎是我的执行路径在numpy文件夹内。你可以检查这是否是这段代码的问题:

import numpy
numpy.version.version

如果它检索到与执行路径相关的任何错误,则从其他地方执行原始代码。这解决了无法加载numpy.core.multiarray的错误