零基础入门机器视觉(六)
简单的调用摄像头并保存
先放几个编码器
1)cv.VideoWrite_fourcc(‘I’, ‘4’, ‘0’, ‘2’): 这个选项时一个未压缩的YUE颜色编码,是4:2:0色度子采样。这种编码具有很好的兼容性,但是会产生较大的文件,文件的扩展名为 .avi (这个一般是常用的)
2)cv.VideoWrite_fourcc(‘P’, ‘I’, ‘M’, ‘1’):这个选项是MPEG-1编码类型,文件的扩展名为 .avi
3)cv.VideoWrite_fourcc(‘X’, ‘V’, ‘I’, ‘D’):该选项为MPEG-4编码类型,如果希望得到的视频大小为平均值,推荐使用此选项,文件的扩展名为 .avi
4)cv.VideoWrite_fourcc(‘T’, ‘H’, ‘E’, ‘O’):该选项是Ogg Vorbis, 文件的扩展名为 .ogv
5)cv.VideoWrite_fourcc(‘F’, ‘L’, ‘V’, ‘1’):该选项是一个Flash视频,文件的扩展名为 .flv
这些你根本不用记,你只需要知道有这么些东西就行了,需要用的时候查看就行了
先上代码
保存视频
captrue = cv.VideoCapture(0)
fps = 30 #帧数
size = (int(captrue.get(cv.CAP_PROP_FRAME_WIDTH)), int(captrue.get(cv.CAP_PROP_FRAME_HEIGHT)))
video = cv.VideoWriter('123.avi', cv.VideoWriter_fourcc('I','4', '2', '0'), fps, size)
success,frame = captrue.read()
num = 10 * fps - 1 #这里的 数字 10 表示的是调用摄像头并保存的时间
while success and num > 0:
video.write(frame)
success, frame = captrue.read()
num -= 1
captrue.release()
cv.VideoCaptrue(0)在之前介绍过,就不再提了
cv.ViderWriter(参数1,参数2, 参数3,参数4)
{
1)参数1表示的是待存储视频的名称
2)参数2表示指定文件的编码器
3)参数3表示的是图片的帧数
4)参数4表示的是视频的尺寸
}
然后就通过VideoWrite()保存每一帧就行了
好了,这些就没啥要说的了
上一篇: Java零基础(循环结构)
下一篇: java学习笔记(5)