一种基于x264压缩视频的镜头分割方法

文档序号:8546449阅读:375来源:国知局
一种基于x264压缩视频的镜头分割方法
【技术领域】
[0001] 本发明属于视频镜头分割领域,具体涉及一种基于X264压缩视频的镜头分割方 法。
【背景技术】
[0002] 随着多媒体、互联网技术的发展,一方面,人们足不出户就可方便地享受到视频点 播、在线观看等各种服务,对视频服务的要求越来越高。另一方面,媒体行业长期以来带给 人们信息和娱乐,海量的存储也使得媒体资产管理的重要性日益突出。镜头分割技术对于 以上两方面问题的解决都具有重要的意义。首先,镜头分割技术是基于视频内容检索的第 一步也是最重要的步骤之一,其准确性将直接影响到后续处理的效果。其次,在媒体资料编 目中,镜头分割技术依据内容差异自动找出镜头切换点,供编目人员选择,大大提高了编目 系统的自动化程度。
[0003] 镜头是组成视频的基本单元,同时也是基于内容的视频处理的基本单元。视频数 据是由一系列在时间上连续的图像组成。在一个镜头的内部,图像之间在内容上的相关性 比较强,而不同镜头中的图像之间在内容上的相关性比较弱。镜头分割则是对视频中的镜 头边界进行检测,找出镜头切换点,将视频分割成更加易于处理的部分。通常情况下,根据 镜头转换的快慢,可将其分为突变转换和渐变转换。
[0004] 镜头分割方法可以分为两大类:基于非压缩域的方法和基于压缩域的方法。基于 非压缩域的镜头分割方法需要首先将压缩视频进行解压,然后再进行处理,这大大降低了 镜头分割的效率。与基于非压缩域的方法相比,基于压缩域的方法无需完全解压,具有处理 数据量少、速度快、实时性高、特征提取方便等优点。
[0005] 基于压缩域的镜头分割方法主要针对两类压缩视频:MPEG压缩视频和H. 264/AVC 压缩视频。基于MPEG压缩视频的镜头分割算法主要包括基于DCT系数的方法、基于DC图 的方法和基于运动矢量的方法等。与MPEG压缩编码标准相比,H. 264/AVC产生了一些不同 之处,比如支持不同大小和形状的宏块分割、支持多参考帧预测估计等。这些新特性在带来 了优异的压缩性能和网络适用性的同时,也使得上述这些基于MPEG压缩视频的镜头分割 算法不再适用于H. 264/AVC压缩视频。基于H. 264/AVC压缩视频的镜头分割算法主要包括 基于宏块绝对数量的方法、基于宏块比例的方法和基于宏块比特分配的方法等。基于宏块 绝对数量的方法在压缩码流上直接提取帧图像中每个宏块的预测编码模式。对于不同类 型的帧分别统计相应的帧内预测编码宏块数、前向预测编码宏块数以及后向预测编码宏块 数,通过相邻两帧之间不同预测编码模式宏块的绝对数量与预先设定的阈值的关系来判定 镜头分割点的存在。基于宏块绝对数量的方法存在一个明显的弊端,对于不同分辨率的视 频,其宏块的绝对数量会发生很大变化。基于宏块比例的方法是基于宏块绝对数量方法的 一种改进,它通过将统计的采用各类预测编码模式宏块的百分比与预先设定的阈值进行比 较,进而判定出镜头分割点的存在。由于发生了镜头切换,帧内预测宏块和帧间预测宏块在 码流中的比特分配情况是不同的。基于宏块比特分配的方法是将一帧图像中帧内预测宏块 编码所用的比特数与其帧间预测宏块编码所用的比特数求比值得到比特分配情况,再与预 先设定的阈值进行比较,判定出镜头分割点的存在。
[0006] 对于H.264/AVC压缩视频的镜头分割,多采用基于宏块比例的方法。图1给出了 两种镜头分割情况的示意图。
[0007] (1)镜头分割发生在I帧或P帧(如图1中的C点、d点所示)
[0008] 由于镜头转换,该I帧或者P帧与前面B帧的图像内容将存在较大差异。此时,B 帧中的宏块将多数采用前向预测模式。如果镜头切换发生在P帧,那么该P帧中的宏块将 多数采用帧内预测模式。
[0009]⑵镜头分割发生在B帧
[0010] 若镜头转换发生在第一个B帧(如图1中的a点所示),由于镜头转换,该B帧与 前面的I帧或P帧的图像内容将存在较大差异。同理,该B帧的后面一帧同样为B帧,这两 个B帧属于同一镜头。所以这两个B帧中的宏块将多数采用后向预测模式。
[0011] 若镜头转换发生在第二个B帧(如图1中的b点所示),那么前面的一帧同样是B 帧。由于镜头转换,这两个B帧的图像内容将存在较大差异。因此第一个B帧中的宏块将 多数采用前向预测模式,而第二个B帧中的宏块将多数采用后向预测模式。
[0012] 该方法要求镜头分割前已知视频GOP(GroupofPictures,图像组)的结构。若视 频编码时G0P的结构发生变化,则该方法将不再适用。此外,若发生镜头渐变,上述规律变 化亦不明显。
[0013] 由于受到高复杂度的影响,H. 264/AVC有时难以进行实时应用。而X264作为 H. 264/AVC的一种简化实现,舍弃了一些H. 264/AVC的新特征以降低计算复杂度,在不显著 降低压缩性能的前提下进行优化,以提高算法效率。X264在实际中得到了广泛的应用。
[0014] X264按照视频内容划分G0P,如图2所示。其中keyint表示G0P的最大长度, min_keyint表示G0P的最小长度,visual_difference表示综合考虑场景差异以及计算复 杂度等方面而得到的编码代价,scenecut表示编码代价的阈值。视频的第一帧为IDR帧, 即可即使编码帧,向后(沿显示顺序时间递增的方向)移动min_keyint距离,对当前帧计 算visual_difference〇若visual_difference大于scenecut,则判定视步员场景发生了变 化,即插入一个IDR帧。若visual_difference小于scenecut,贝丨」需要比较当前移动距离与 keyint的关系。若移动距离达到keyint,则插入一个普通的I帧。若移动距离小于keyint, 则向后移动一帧,继续比较visual_difference和scenecut的大小关系。同理,每当插入 一个IDR帧或I帧,贝需要向后移动min_keyint距离。
[0015] X264压缩视频的GOP没有固定的长度和结构,传统压缩域镜头分割方法并不适 用。此外,X264提供I帧、P帧和B帧三种帧类型。经过大量实验发现,B帧的作用为最大 限度地提高压缩性能,镜头突变不会发生在B帧。因而,X264压缩视频需要一种系统的镜 头分割方法。

【发明内容】

[0016] 本发明的目的在于,根据X264的编码原理,通过提取X264压缩视频的帧类型、宏 块编码模式等码流信息,提供一种基于压缩域的镜头分割方法,对视频中的镜头突变和镜 头渐变进行检测。在保证令人满意的查全率和查准率的基础上,快速实现镜头分割。
[0017] -种基于X264压缩视频的镜头分割方法,包括以下步骤:
[0018] 步骤1,以X264压缩视频的GOP为单位逐帧解码提取帧序号、帧类型和帧内预测宏 块比例。所述帧类型包括I帧、P帧和B帧;所述帧内预测宏块比例是指一帧图像中采用帧 内预测模式编码的宏块数与该帧图像中所有宏块数量的比值。
[0019] 步骤2,对I帧进行镜头检测,根据待测GOP的长度判断当前I帧是否发生镜头突 变。
[0020] 步骤3,以所述待测GOP中所有P帧的帧内预测宏块比例为样本数据,根据样本数 据的波动程度判断是否需要镜头分割。
[0021] 步骤4,基于预测宏块比例进行镜头分割。
[0022] 进一步地,所述步骤2判断当前I帧是否发生镜头突变的方法如下:
[0023] 求相邻两个I帧的序号差值得到待测GOP的长度。将所述GOP长度与GOP的最大 长度keyint进行比较。若所述长度小于keyint,判定当前I帧发生镜头突变。
[0024] 进一步地,所述步骤3根据样本数据的波动程度判断是否需要镜头分割的方法如 下:
[0025] 求出所述样本数据的标准差。若所述标准差小于设定的阈值,说明样本数据的波 动程度较小,表示所述GOP内的画面变化较小,所述GOP中不存在镜头转换,不需要镜头分 害h否则,说明样本数据的波动程度较大,表示所述GOP内的画面变化较大,所述GOP中存在 镜头转换,需要进行镜头分割。
[0026] 进一步地,所述步骤4基于预测宏块比例进行镜头分割的方法如下:
[0027] 设置镜头突变阈值T1和镜头渐变的阈值T2 ;
[0028] 将所述GOP中的帧分为嫌疑帧和正常帧:帧内预测宏块比例大于T2的P帧为嫌疑 帧;帧内预测宏块比例小于T2的P帧和B帧为正常帧。每2个嫌疑帧之间最多允许连续存 在2个正常帧。遍历待测GOP中的所有帧,将其划分成若干片段。所述片段分为两类:一类 为不含正常帧的片段,另一类为含有正常帧的片段;
[0029] 对所述两类不同片段的长度分别设置检测渐变镜头的阈值Tw。将片段长度与相应 的阈值Tw进行比较,若片段长度大于Tw,则判定该片段为一个渐变镜头;否则,如果所述片 段中P帧的帧内预测宏块比例大于T1,则判定该P帧发生了镜头突变。
[0030] 更进一步地,所述镜头突变阈值T1和镜头渐变的阈值T2的设置方法为:如果样本 数据的期望值加〇. 5大于0. 7,则将T1设置为0. 7 ;否则,将T1设置为0. 6。T2等于T1的 值减去0.
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1