一个视频,本质上就是按每秒多少张图片来播放的。一张图片就是一帧,因此,在处理视频中,可能需要了解视频的FPS,帧数,总的时间是多少,方便后续处理。教程如下:
关键函数:video.get()
代码如下:
1234567891011 | import cv2video= cv2.VideoCapture('football.mp4') # 当成功打开视频时video.isOpened()返回True,否则返回Falseif video.isOpened(): # 帧速率 fps = video.get(5) # 视频文件的帧数 FrameNumber =video.get(7) # 帧速率/视频总帧数 是时间,单位s time = FrameNumber/fpsprint("帧速率",fps,"帧数",FrameNumber,"时间(s)",time) |
该视频结果显示: 帧速率 30.0 帧数 357.0 时间(s) 11.9
详解:
1.video.isOpened()
当成功打开视频时video.isOpened()返回True,否则返回False
2.video.get(5)
该函数可以获取视频的相关信息,具体数字用法如下:
0:CV_CAP_PROP_POS_MSEC 视频文件的当前位置(以毫秒为单位)或视频捕获时间戳。
1:CV_CAP_PROP_POS_FRAMES 接下来要解码/捕获的帧的基于0的索引。
2:CV_CAP_PROP_POS_AVI_RATIO 视频文件的相对位置:0 – 电影的开始,1 – 电影的结尾。
3:CV_CAP_PROP_FRAME_WIDTH 视频流中帧的宽度。
4:CV_CAP_PROP_FRAME_HEIGHT 视频流中帧的高度。
5:CV_CAP_PROP_FPS 帧速率。
6:CV_CAP_PROP_FOURCC 编解码器的4字符代码。
7:CV_CAP_PROP_FRAME_COUNT 视频文件中的帧数。
8:CV_CAP_PROP_FORMAT 返回的Mat对象的格式 retrieve() 。
9:CV_CAP_PROP_MODE 指示当前捕获模式的特定于后端的值。
10:CV_CAP_PROP_BRIGHTNESS 图像的亮度(仅适用于相机)。
11:CV_CAP_PROP_CONTRAST 图像对比度(仅适用于相机)。
12:CV_CAP_PROP_SATURATION 图像的饱和度(仅适用于相机)。
13:CV_CAP_PROP_HUE 图像的色调(仅适用于相机)。
14:CV_CAP_PROP_GAIN 图像的增益(仅适用于相机)。
15:CV_CAP_PROP_EXPOSURE 曝光(仅适用于相机)。
16:CV_CAP_PROP_CONVERT_RGB 布尔标志,指示是否应将图像转换为RGB。
17:CV_CAP_PROP_WHITE_BALANCE_U 白平衡设置的U值(注意:目前仅支持DC1394 v 2.x后端)
18:CV_CAP_PROP_WHITE_BALANCE_V 白平衡设置的V值(注意:目前仅支持DC1394 v 2.x后端)
19:CV_CAP_PROP_RECTIFICATION 立体摄像机的整流标志(注意:目前仅支持DC1394 v 2.x后端)
20:CV_CAP_PROP_ISO_SPEED摄像机 的ISO速度(注意:目前仅支持DC1394 v 2.x后端)
21:CV_CAP_PROP_BUFFERSIZE 存储在内部缓冲存储器中的帧数(注意:目前仅支持DC1394 v 2.x后端)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)