Python OpenCV 获取视频文件的常用属性
程序员文章站
2022-05-16 14:07:26
...
OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的IPP进行加速处理。
引自 *_OpenCV
OpenCV提供了python支持,需要在环境中安装支持
pip install opencv
但是在py程序中进行import opencv
却会报错,正确的方式应该是
import cv2
打开音频文件封装到cv2.VideoCapture()对象里
vc = cv2.VideoCapture(r'E:\Test\historyimg.flv')
接下来就可以通过这个对象获得这个音频文件的一些属性,属性通过vc对象.get(propld)
来实现,propld
是一个int值,int值不方便记忆,OpenCV定义了表意的常量(Python并没有常量这个概念,只是用大写表示,看起来像是其他语言中的常量)来指代数字,比如CAP_PROP_FPS=5
,这样就可以比较方便的获得属性
eg.
print(vc.get(cv2.CAP_PROP_FPS)) # 获取帧频
# 等价于
print(vc.get(5) # 获取帧频
其他常用属性
参数 propld 功能 cv2.CAP_PROP_POS_MSEC 0 视频文件的当前位置(以毫秒为单位)或视频捕获时间戳 cv2.CAP_PROP_POS_FRAMES 1 基于0的索引将被解码/捕获下一帧 cv2.CAP_PROP_POS_AVI_RATIO 2 视频文件的相对位置:0 - 视频的开始,1 - 视频的结束 cv2.CAP_PROP_FRAME_WIDTH 3 帧的宽度 cv2.CAP_PROP_FRAME_HEIGHT 4 帧的高度 cv2.CAP_PROP_FPS 5 帧速 cv2.CAP_PROP_FOURCC 6 4个字符表示的视频编码器格式 cv2.CAP_PROP_FRAME_COUNT 7 帧数 cv2.CAP_PROP_FORMAT 8 byretrieve()返回的Mat对象的格式 cv2.CAP_PROP_MODE 9 指示当前捕获模式的后端特定值 cv2.CAP_PROP_BRIGHTNESS 10 图像的亮度(仅适用于相机) cv2.CAP_PROP_CONTRAST 11 图像对比度(仅适用于相机) cv2.CAP_PROP_SATURATION 12 图像的饱和度(仅适用于相机) cv2.CAP_PROP_HUE 13 图像的色相(仅适用于相机) cv2.CAP_PROP_GAIN 14 图像的增益(仅适用于相机) cv2.CAP_PROP_EXPOSURE 15 曝光(仅适用于相机) cv2.CAP_PROP_CONVERT_RGB 16 表示图像是否应转换为RGB的布尔标志 cv2.CAP_PROP_WHITE_BALANCE 17 cv2.CAP_PROP_RECTIFICATION 18 立体摄像机的整流标志
参考文献
上一篇: 足三里,原来还有这个功效,你一定不知道!