简介:
文章中使用jupyter来编写代码
关键词解释:都是简便回答
#创建窗口
cv2.namedWindow('video',cv2.WINDOW_NORMAL)
#设置窗口的大小
cv2.resizeWindow('video',900,600)
#获取摄像头
cap = cv2.VideoCapture(0)
#将视频进行每秒钟在显示多少张
cv2.waitKey()
#显示数据
cv2.imshow('video',frame)
#释放资源
cap.release()
#结束窗口
cv2.destroyAllWindows()
1、获取摄像头代码展示
#视频本质上就是一幅一幅图片组成的
import cv2
#创建窗口
cv2.namedWindow('video',cv2.WINDOW_NORMAL)
#设置窗口的大小
cv2.resizeWindow('video',900,600)
#获取摄像头
cap = cv2.VideoCapture(0)
#循环读取摄像头每一帧
while True:
ret,frame = cap.read()
#ret做判断
if not ret:
break
#显示数据
cv2.imshow('video',frame)
key = cv2.waitKey(10)
if key ==ord('q'):
break
#释放资源
cap.release()
#结束窗口
cv2.destroyAllWindows()
运行后展示,这里有点暴露就不完全展示了
2、读取视频并播放,几乎和摄像头代码完全一致,就是将
cap = cv2.VideoCapture('./123.mp4')里面的0更换成视频文件
# 视频本质上就是一幅一幅图片组成的
import cv2
#创建窗口
cv2.namedWindow('video',cv2.WINDOW_NORMAL)
#设置窗口的大小
cv2.resizeWindow('video',900,600)
#读取视频
cap = cv2.VideoCapture('./123.mp4')
#循环读取摄像头每一帧
while True:
ret,frame = cap.read()
#ret做判断
if not ret:
break
#显示数据
cv2.imshow('video',frame)
#这里是将视频切成一张张的图片来进行给我们展示
#这里计算规则,不然视频会加速播放,或者很慢
#如果视频是30帧率那就是1000//30就是正常播放的速度
key = cv2.waitKey(1000//30)
if key ==ord('q'):
break
#释放资源
cap.release()
#结束窗口
cv2.destroyAllWindows()
展示效果