
Python中怎么调用摄像头
Python中调用摄像头可以使用opencv库来实现。
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
下面是一个Python使用opencv调用摄像头的例子,有详细的注释,希望对各位有帮助:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import cv2
#采用opencv的库函数去调用摄像头
import time
cap=cv2.VideoCapture(0)
#cv2.VideoCapture(0)代表调取摄像头资源,其中0代表电脑摄像头,1代表外接摄像头(usb摄像头)
cap.set(3,900)
cap.set(4,900)
# cap.set()设置摄像头参数:3:宽 4:高
while (cap.isOpened()):
#cap.isOpened()返回布尔值,来查看是否摄像头初始化成功
ret_flag, Vshow = cap.read()
#cap.read()返回两个值,第一个值为布尔值,如果视频正确,那么就返回true, 第二个值代表图像三维像素矩阵
cv2.imshow( 'Capture' , Vshow)
k=cv2.waitKey(1)
#重中之重,这个必须有,这个获取字母,但是一直不能通过,即等待一定时间内的用户反馈,如果用户没有按下按键,则继续等待循环。
Waitkey(0):等待按键
Waitkey(1):等待1毫秒,没有继续刷新
Waitkey(100):等待用户100毫秒,没有继续刷新
且实现这个按下q的功能,必须是在opencv窗口中才能实现,而不是在terminal中
if k==ord( 's' ):
print( '222222' )
print(cap.get(3))
print(cap.get(4))
elif k==ord( 'q' ):
print( '完成' )
break
print( '摄像头捕获成功' )
# pass
# time.sleep(1)
cap.release()
cv2.destoryAllWindows()
|
更多技术请关注Python视频教程。