我在试着运行这个程序

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


当前回答

几个月前,在使用pip install -U numpy时,我做了一个噩梦,于是我放弃了。我安装c2s和opencv都没有成功。

我在python34上使用numpy ver 1.9.1,在1.9上升级一直在拖延。

因此,我访问https://pypi.python.org/pypi/numpy,找到了我的python3.4的最新numpy版本。

我下载了.whl文件,并将其复制到包含我的python安装的文件夹C:\Python34。

然后我在文件名上运行pip安装,现在我可以自由导入cv2了。

确保在开始之前关闭python,这很明显,但很重要

其他回答

运行此代码为我工作,似乎是版本问题。

pip uninstall numpy

pip install numpy==1.19.3
pip install numpy==1.19.3

这对我来说很管用。

我得到了同样的错误,通过将我的numpy安装从1.7.1更新到1.12.1,问题得到了解决

pip install -U numpy

以下是错误发生时我的cmd序列, 与上面略有不同:

$ python

Python 2.7.12 |Anaconda 4.2.0 (x86_64)| (default, Jul  2 2016, 17:43:17) 

[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

Anaconda is brought to you by Continuum Analytics.

Please check out: http://continuum.io/thanks and https://anaconda.org

>>> import cv2

>>> import numpy as np

>>> from matplotlib import pyplot as plt

如果你想安装一个特定的版本:

pip install numpy==1.8

当我试图让OpenCV与Windows 10上的Python 3.9一起工作时,我找到了一个适合我的解决方案。

对于v2004以后的Windows版本,这是一个已知问题。

简而言之,你需要的NumPY版本是v1.19.3:

pip uninstall numpy

pip install numpy==1.19.3

或者在一个命令中完成,为pip使用——force-重装标志:

pip install --force-reinstall numpy==1.19.3