无法访问内置网络摄像头Python

时间:2017-06-12 09:53:41

标签: python-3.x opencv numpy

我正在尝试访问我的笔记本电脑网络摄像头,而且从我看到的情况来看,我需要使用cv2软件包。我是从PyPi下载的,但该文件的内容似乎缺少很多内容,因为它只有__init__.pycv2.cp36-win32.pydopencv_ffmpeg320.dll。因此,每当我尝试使用VideoCaptureimwrite之类的内容时,它都会说它无法找到对它们的引用。

当我运行应用程序时,收到以下错误消息:

ImportError: numpy.core.multiarray failed to import
Traceback (most recent call last):
  File "C:/Users/RedCode/PycharmProjects/FunApps/ImageFile.py", line 1, in <module>
    import cv2
  File "C:\Users\RedCode\AppData\Local\Programs\Python\Python36-32\lib\site-packages\cv2\__init__.py", line 7, in <module>
    from . import cv2
ImportError: numpy.core.multiarray failed to import

我已经安装并导入了numpy软件包,但它没有解决问题所以我猜这不是问题的实际原因,所以我确定它必须与cv2软件包有关。

我现在使用的代码如下:

import cv2
import numpy

cv2.namedWindow("preview")
vc = cv2.VideoCapture(0)

if vc.isOpened(): # try to get the first frame
    rval, frame = vc.read()
else:
    rval = False

while rval:
    cv2.imshow("preview", frame)
    rval, frame = vc.read()
    key = cv2.waitKey(20)
    if key == 27: # exit on ESC
        break
cv2.destroyWindow("preview") 

如果有任何帮助,我也会使用Python 3.6和Windows 10。

如何让我的应用程序运行?

2 个答案:

答案 0 :(得分:4)

在您的情况下,您可以使用以下命令解决问题:

pip install -U numpy 

检查现有包裹:

pip show numpy

通过以下方式升级:

pip install numpy --upgrade

如果仍有错误,请检查路径:

> import numpy
> print numpy.__path__

答案 1 :(得分:0)

您必须安装最新版本的numpy。使用命令pip install numpy --upgrade或者您可以从http://www.lfd.uci.edu/~gohlke/pythonlibs/下载轮盘文件。只需检查您的python版本和平台并下载必要的wheel文件。接下来使用pip来安装wheel文件。