使用opencv自带的VideoCapture()函数定义摄像头对象,其参数0表示第一个摄像头,一般就是笔记本的内建摄像头。
cap = cv2.VideoCapture(0)
在while循环中,利用摄像头对象的read()函数读取视频的某帧,并显示,然后等待1个单位时间,如果期间检测到了键盘输入q,则退出,即关闭窗口。
while(1):
 # get a frame
 ret, frame = cap.read()
 # show a frame
 cv2.imshow("capture", frame)
 if cv2.waitKey(1) & 0xFF == ord('q'):
 break调用release()释放摄像头,调用destroyAllWindows()关闭所有图像窗口。
cap.release() cv2.destroyAllWindows()
完整代码
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while(1):
 # get a frame
 ret, frame = cap.read()
 # show a frame
 cv2.imshow("capture", frame)
 if cv2.waitKey(1) & 0xFF == ord('q'):
 break
cap.release()
cv2.destroyAllWindows()#摄像头并显示轮廓
import cv2
cap = cv2.VideoCapture(0)
i=0
while(1):
 ret, frame = cap.read()
 img_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
 img_gb = cv2.GaussianBlur(img_gray, (5, 5), 0)
 edges = cv2.Canny(img_gb, 100 , 200)
 cv2.imshow("capture", edges)
 if cv2.waitKey(1) & 0xFF == ord('q'): 
 break
cap.release()
cv2.destroyAllWindows()