欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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 立体摄像机的整流标志

表格引自 opencv python 从摄像头获取视频/从文件获取视频 /保存视频

参考文献

opencv python 从摄像头获取视频/从文件获取视频 /保存视频

相关标签: Python # 小应用