![](/img/trans.png)
[英]How do i access my webcam with python (Django) from the browser with the help of HTML and Javascript?
[英]How do I access my webcam in Python?
我想从 Python 访问我的网络摄像头。
我尝试使用VideoCapture扩展( tutorial ),但这对我来说效果不是很好,我不得不解决一些问题,例如分辨率 >320x230 时它有点慢,有时它会无缘无故地返回None
。
有没有更好的方法从 Python 访问我的网络摄像头?
OpenCV 支持从网络摄像头获取数据,默认情况下带有 Python 包装器,您还需要安装numpy
才能使 OpenCV Python 扩展名(称为cv2
)工作。 截至 2019 年,您可以使用 pip 安装这两个库: pip install numpy
pip install opencv-python
有关将 OpenCV 与 Python 结合使用的更多信息。
使用 opencv 和 python 从 Displaying webcam feed复制的示例:
import cv2
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
vc.release()
cv2.destroyWindow("preview")
我想从 Python 访问我的网络摄像头。
我尝试使用VideoCapture扩展(教程),但这对我来说效果不佳,我不得不解决一些问题,例如分辨率 >320x230 时有点慢,有时它会无缘无故地返回None
。
有没有更好的方法可以从 Python 访问我的网络摄像头?
gstreamer 可以处理网络摄像头输入。 如果我没记错的话,有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 <-- 指摄像头,替换为文件路径读取视频文件
cv.waitKey(20) & 0xFF==ord('d') <-- 按下键时销毁窗口
我唯一使用的是VideoCapture,你已经提到过你不喜欢它(尽管我没有遇到任何问题;你遇到了什么错误?)
我在过去或现在都找不到任何替代方案,所以你可能会被困在使用VideoCapture,或者找到一个不错的C库并为它编写一个Python包装器(这可能比你愿意放入它的工作更多) )。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.