镜头边界检测(上)| 学习笔记

简介: 快速学习镜头边界检测(上),介绍了镜头边界检测(上)系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【高校精品课-华中科技大学 -智能媒体计算镜头边界检测(上)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/811/detail/15698


镜头边界检测(上)


内容介绍

一、前言

二、镜头变换

三、切变和渐变

、镜头边界检测的一般流程

 

一、前言

我们继续讲解基于内容的视频分析,本小节镜头变换检测再讲解视频的分层组织时,已经了解到镜头是视频里最小的语义单元它是指摄像机一次操作拍下连续的图像


二、镜头变换

既然视频是由多个镜头拍摄组成的那么在两个镜头之间一定是有变化的。那么镜头变换就是一段连续的视频图像序列变换到另一段连续视频图像序列。两个镜头拼接在一起,要检测边界点在哪。

镜头变换类型通常有两种一种是切变( Abrupt Transition ),也叫突变,它是发生在两帧视频之间相当于两个镜头直接衔接,即上一个镜头的位置和下一个镜头的首帧相连。另一种是渐变 Gradual Transition ),即从前面一个镜头逐渐过渡到下一个镜头里。这里面还有很多种类型,比如说淡入淡出、隐现、滑入等等。淡入就是一帧慢慢的进来淡出前面的镜头慢的消失。后面会有详细的示例讲解这些类型。

图片1.png

镜头边界检测通常叫做 SBD ( Shot Boundary Detection ),在上个世纪90年代到2010年其实很多人在做这检测算法截至目前,大家基本上攻克了切变检测,但是没有办法做到百分之百的渐变检测。

 

三、切变和渐变

1.切变

切变是指当前图像下一幅图像快速代替人的视觉上可以感觉到一个突然的变化。可以想一下,摄像机先拍我再拍你这两个镜头的拼在一起相邻的两一定有一个变化在切变里,镜头变换发生在两帧之间,在帧间差别比较上会出现一个尖峰( Peak )。

计算相邻两的差别在同一个镜头内部所拍摄的内容是连续之间的差是非常小的而在切变相邻两帧边界上他们是不连续的内容是不一样的因此两之间的差别就要远远大于我们同一个镜头内部两帧差。这实际上是检测切变的理论基础,即镜头内帧间的差别小而变换的相邻两的差别大

比如说(如下图),第三和第四这块发了切片,它没有过度 

图片2.png

2.渐变

渐变是在帧间差别上没有一个可检测的尖峰存在,变换发生在多帧之间。容易与物体或摄像机运动相混淆。大家看个例子(如下图),第一图像和最后一帧图像,它的内容是发生了变化的,但这两个镜头之间是逐渐过渡的。

图片3.png

一个镜头内部相邻两差别小在过渡时的差别也不够大,它没有一个明显的峰值。这时检测就需要想办法找到变化的规律这样才能把渐变找到检测峰值是没用的,因为他没有峰值出现这时要对多进行帧间差别计算从而寻找它变化的规律

3.其他类型

常见的10镜头变换类型,有切变、淡入淡出、隐现、翻页、拉近、滑入、弹入弹出、上拉下拉、翻转、旋转等。前面两种已经有所了解,我们可以在 PPT 中设置各种放映模式,它所产生的特殊效果就相当于是镜头的变化效果。视频编辑工具里也可以做多种镜头变换模式其实有上百种镜头组合变换模式,常见的是这些。视频镜头拼接的特殊效果是为了让我们的视觉上看上去更加炫酷但实际上,当反向去图像的角度检测时就困难了

下图是淡入淡出的例子,左边是前面的图象慢慢地消失后面的图像慢慢地出现前一个镜头就过渡到后一个镜头了。右边是淡出的例子,前一个图像慢慢地消失,后一个出现

图片4.png

下图是隐现和滑入。隐现是前一个镜头的内容慢慢地变得不清晰而下一个镜头的内容凸显出来后一个是滑入,可以从左到右滑也可以从右向左滑。

图片5.png

 

四、镜头边界检测的一般流程

镜头边界检测的一般流程首先是视觉内容表示(特征提取)。无论是切变里找到峰值还是渐变里找变化的规律都要想办法把视觉内容提取出来这就是通常说的特征提取

特征提取里要想办法度量的不变性,即一个镜头内的帧内容的变化(物体或相机的运动)不敏感。摄像机对着有动作,同时也在慢慢地走动或是晃动但是他在一个镜头内部你的检测算法应该对这样的变化有容忍度的。如果我一动,便判断是另外一个镜头,这说明判断的方法不够好。另外对于不同镜头的帧内容的变化要敏感。从一个摄像机换到另外一个镜头拍还没检测出来,这也是失效的。镜头内部内容的变化不敏感但是要对两个镜头之间的内容变化要这东西说起来容易做起来就难了尤其是检测变或者不变。

要如何区分一个镜头是在镜头内部还是在镜头外部呢?如果摄像机不动而我在动我的动其实相对于整个的画面来讲是局部的比如说ppt没有动而我在动这说明他是一个镜头如果 PPT 和我同时都变化了,可以考虑是另外一个镜头用一个数学公式来表达的话(如图)。

图片6.png

其中 fn 是视频帧, Ψ 是特征提取函数 Zn 是提取的视频帧 fn 的特征。不同的变换算法实际上是 Ψ 不同,即用什么样的算法就把带到 Ψ 里面去

然后是连续信号的构造,即相似性度量。第一步计算连续两帧特征之间的距离连续信号相邻两求差别,可根据以下公式计算(如图),其中 K 为特征数量, p 为 Lp-norm 范数。

图片7.png

如此便可以度量是镜头内部还是外部看这两条曲线(如图)。

图片8.png

左图突然出现了一个峰值这说明是一个切变,这个峰值前面的水平波动是一个镜头内部然后转换到另外一个镜头内部时,它又变得很平滑了就是检测的

右图曲线没有一个明显的峰值,而是逐渐增大,然后逐渐减小,这说明有一个渐变的规律,这就是渐变检测,这是一般性的

然后是连续信号分类,即镜头边界识别,可以通过预先设定的阈值对信号进行分类。如果镜头内部帧之间的距离为常数并且接近于0或小于特定的阈值,说明是在一个镜头内部而切发生在两之间,帧间距离接近于1而渐变在多帧之间逐渐变化,取值01之间,不同的渐变它的曲线波形式是不一样。

相关文章
|
5月前
|
图形学
【unity小技巧】实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)
【unity小技巧】实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)
80 1
|
前端开发 JavaScript
神奇的滤镜!巧妙实现内凹的平滑圆角
神奇的滤镜!巧妙实现内凹的平滑圆角
275 0
神奇的滤镜!巧妙实现内凹的平滑圆角
|
机器学习/深度学习 算法 计算机视觉
镜头边界检测(下)| 学习笔记
快速学习镜头边界检测(下),介绍了镜头边界检测(下)系统机制, 以及在实际应用过程中如何使用。
镜头边界检测(下)| 学习笔记
|
机器学习/深度学习 开发者
镜头边界检测(中)| 学习笔记
快速学习镜头边界检测(中),介绍了镜头边界检测(中)系统机制, 以及在实际应用过程中如何使用。
镜头边界检测(中)| 学习笔记
|
存储 编解码 计算机视觉
图像和视频中的颜色(下)| 学习笔记
快速学习图像和视频中的颜色(下),介绍了图像和视频中的颜色(下)系统机制, 以及在实际应用过程中如何使用。
图像和视频中的颜色(下)| 学习笔记
|
开发者
图像和视频中的颜色(上)| 学习笔记
快速学习图像和视频中的颜色(上),介绍了图像和视频中的颜色(上)系统机制, 以及在实际应用过程中如何使用。
图像和视频中的颜色(上)| 学习笔记
|
存储 编解码 图形学
数字图像基础(下)| 学习笔记
快速学习数字图像基础(下),介绍了数字图像基础(下)系统机制, 以及在实际应用过程中如何使用。
数字图像基础(下)| 学习笔记
|
存储 编解码 算法
数字图像基础(上)| 学习笔记
快速学习数字图像基础(上),介绍了数字图像基础(上)系统机制, 以及在实际应用过程中如何使用。
数字图像基础(上)| 学习笔记
|
算法 大数据 开发者
变换编码(上)| 学习笔记
快速学习变换编码(上),介绍了变换编码(上)系统机制, 以及在实际应用过程中如何使用。
 变换编码(上)| 学习笔记
|
Web App开发 算法 计算机视觉
变换编码(下)| 学习笔记
快速学习变换编码(下),介绍了变换编码(下)系统机制, 以及在实际应用过程中如何使用。
变换编码(下)| 学习笔记