opencv-python获取视频属性并检测视频的平均亮度

1 安装

pip install opencv-python
pip install pillow

2 获取视频属性

以下是opencv-python可以获取视频的相关信息,可以通过从0开始的序号获取

Property identifier Explanation
CV_CAP_PROP_POS_MSEC 视频文件的当前位置(以毫秒为单位)或视频捕获时间戳
CV_CAP_PROP_POS_FRAMES 接下来要解码/捕获的帧的基于0的索引
CV_CAP_PROP_POS_AVI_RATIO 视频文件的相对位置:0 - 电影的开始,1 - 电影的结尾
CV_CAP_PROP_FRAME_WIDTH 视频流中帧的宽度
CV_CAP_PROP_FRAME_HEIGHT 视频流中帧的高度
CV_CAP_PROP_FPS 帧速率
CV_CAP_PROP_FOURCC 编解码器的4字符代码
CV_CAP_PROP_FPS 帧速率
CV_CAP_PROP_FPS 帧速率
CV_CAP_PROP_FRAME_COUNT 视频文件中的帧数
CV_CAP_PROP_FORMAT 返回的Mat对象的格式 retrieve()
CV_CAP_PROP_MODE 指示当前捕获模式的特定于后端的值
CV_CAP_PROP_BRIGHTNESS 图像的亮度(仅适用于相机)
CV_CAP_PROP_CONTRAST 图像对比度(仅适用于相机)
CV_CAP_PROP_SATURATION 图像的饱和度(仅适用于相机)
CV_CAP_PROP_HUE 图像的色调(仅适用于相机)
CV_CAP_PROP_GAIN 图像的增益(仅适用于相机)
CV_CAP_PROP_EXPOSURE 曝光(仅适用于相机)
CV_CAP_PROP_CONVERT_RGB 布尔标志,指示是否应将图像转换为RGB
CV_CAP_PROP_WHITE_BALANCE_U 白平衡设置的U值(注意:目前仅支持DC1394 v 2.x后端)
CV_CAP_PROP_WHITE_BALANCE_V 白平衡设置的V值(注意:目前仅支持DC1394 v 2.x后端)
CV_CAP_PROP_RECTIFICATION 立体摄像机的整流标志(注意:目前仅支持DC1394 v 2.x后端)
CV_CAP_PROP_ISO_SPEED 摄像机 的ISO速度(注意:目前仅支持DC1394 v 2.x后端)
CV_CAP_PROP_BUFFERSIZE 存储在内部缓冲存储器中的帧数(注意:目前仅支持DC1394 v 2.x后端)

3 获取图像亮度的方法

# 1. 转换图像到灰度,返回平均像素亮度
def compute_brightness1(image):
    im = Image.open(image).convert('L')
    stat = ImageStat.Stat(im)
    return stat.mean[0]

# 2. 转换图像到灰度,返回RMS像素亮度
def compute_brightness2(image):
   im = Image.open(image).convert('L')
   stat = ImageStat.Stat(im)
   return stat.rms[0]

# 3. 平均像素,然后转换为“可感知的亮度”
def compute_brightness3(image):
   im = Image.open(image)
   stat = ImageStat.Stat(im)
   r,g,b = stat.mean
   return math.sqrt(0.241*(r**2) + 0.691*(g**2) + 0.068*(b**2))

# 4. 像素的均方根,然后转换为“感知亮度”
def compute_brightness4
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值