下面以打开摄像头显示每帧为例:
import numpy as np
import cv2
cap = cv2.VideoCapture(0) #创建一个VideoCapture对象,此处插上摄像头,参数设置为0
while(True):
#逐帧捕获
ret, frame = cap.read() #第一个参数返回一个布尔值(True/False),代表有没有读取到图片;第二个参数表示截取到一帧的图片
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame', gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
#当一切结束后,释放VideoCapture对象
cap.release()
cv2.destroyAllWindows()
- ord('q'):返回q对应的Unicode码对应的值,q对应的Unicode数值为113。
- cv2.waitKey(1):返回与按下键值对应的32位整数。
- 0xFF:0xFF是一个位掩码,它将左边的24位设置为0。因为ord()在0和255之间返回一个值,因为您的键盘只有一个有限的字符集。
因此,一旦应用了掩码,就可以检查它是否是相应的键。