Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python访问网络摄像头?_Python_Webcam - Fatal编程技术网

如何使用Python访问网络摄像头?

如何使用Python访问网络摄像头?,python,webcam,Python,Webcam,我想从Python访问我的网络摄像头 我尝试使用扩展(),但对我来说效果不太好,我必须解决一些问题,例如分辨率>320x230时有点慢,有时它会毫无理由地返回None 有没有更好的方法从Python访问我的网络摄像头?gstreamer可以处理网络摄像头输入。如果我记得很清楚的话,它有python绑定 OpenCV支持从网络摄像头获取数据,默认情况下,它附带Python包装器,您还需要安装numpy,OpenCV Python扩展(称为cv2)才能工作。 从2019年起,您可以使用pip安装这两

我想从Python访问我的网络摄像头

我尝试使用扩展(),但对我来说效果不太好,我必须解决一些问题,例如分辨率>320x230时有点慢,有时它会毫无理由地返回
None


有没有更好的方法从Python访问我的网络摄像头?

gstreamer可以处理网络摄像头输入。如果我记得很清楚的话,它有python绑定

OpenCV支持从网络摄像头获取数据,默认情况下,它附带Python包装器,您还需要安装
numpy
,OpenCV Python扩展(称为
cv2
)才能工作。 从2019年起,您可以使用pip安装这两个库:
pip安装numpy
pip安装opencv python

复制自以下内容的示例:


约翰·蒙哥马利的答案很好,但至少在Windows上,它漏掉了一行

vc.release()
以前

cv2.destroyWindow("preview")
如果没有它,相机资源将被锁定,并且在python控制台关闭之前无法再次捕获

import cv2 as cv

capture = cv.VideoCapture(0)

while True:
    isTrue,frame = capture.read()
    cv.imshow('Video',frame)
    if cv.waitKey(20) & 0xFF==ord('d'):
        break

capture.release()
cv.destroyAllWindows()

0请澄清您需要支持哪些操作系统。另请参阅:和:
padsp streamer-q-c/dev/video0-f rgb24-f stereo-r 24-s 1280x720-t 00:10-o测试。avi
将以24 fps记录10秒的高清网络摄像头,并将其另存为test.avi。(请注意,padsp只是用于确保在较新的Ubuntu版本下捕获音频。)如果您从wheel安装,则有Python 3支持。我成功地使用了本教程:您还必须释放相机,否则即使窗口关闭也会打开:vc.release()
import cv2 as cv

capture = cv.VideoCapture(0)

while True:
    isTrue,frame = capture.read()
    cv.imshow('Video',frame)
    if cv.waitKey(20) & 0xFF==ord('d'):
        break

capture.release()
cv.destroyAllWindows()