当前位置: 首页 > 专利查询>郑州大学专利>正文

基于QoE控制的计算量可感知的运动估计算法制造技术

技术编号:9768599 阅读:188 留言:0更新日期:2014-03-16 00:48
本发明专利技术涉及基于QoE控制的计算量可感知的运动估计算法,对移动设备上的实时视频编码,设计了一个带有两个体验维度的QoE计算模型,让用户可以在视频的质量和时长之间进行选择和调节,并应用在了所提出来的一种新型的计算量可感知的运动估计算法里面。该算法采用的是单遍扫描处理流程,利用块的初始匹配误差信息和对应的失真增益信息将块分为四类,将一帧的计算量分成了基本层和增益层两个部分,分别对四类块进行分配,同时采用了提前终止检测和计算量分配调整策略。实验结果表明,该算法能够更加精确地对计算量进行分配,以及所构造的QoE计算模型具有实用性。

【技术实现步骤摘要】
基于QoE控制的计算量可感知的运动估计算法
本专利技术涉及IT行业,具体的说是一种基于QoE控制的计算量可感知的运动估计算法。
技术介绍
运动估计是视频编码过程中消耗时间最多的一个功能模块,也一直被作为视频编码研究的重点部分。在移动应用环境中,当手机等移动设备的电能消耗以及处理能力发生改变时,编码器复杂性所控制的重点就在于如何控制运动估计的复杂性。随着新一代视频编码标准HEVC的推出,这一问题显得更为突出。传统的运动估计算法有全搜索算法(FS)、三步搜索算法(TSS)、四步搜索算法(FSS)、菱形搜索算法(DS)等。它们有这样一个特点:如果没有足够的计算量将会导致无法完成一帧的运动估计,使得一帧后面的块无法被处理。这导致它们无法适应计算资源有限和变化的移动应用环境。Tai等人最早提出了计算量可感知的概念,通过对所有块同时进行处理,每次把计算量分配给匹配误差最大的块来进行运动估计。但每次把计算量分配给匹配误差最大的块并不总是有效的。Yang等人为块的每次搜索建立了一个优先级,根据优先级的大小进行计算量的分配。这两种方法采用的都是多遍扫描处理流程,不能够利用相邻块的信息。Huang等人提出了一种单遍扫描处理流程方案,从而可以利用相邻块的信息,并采用了自适应搜索策略。Lin等人采用的也是单遍扫描处理流程,结合前一帧对应块的运动矢量信息把块分为三类,根据前一帧块的分类信息将计算量分配到三类块中。这种大粒度的信息参考很容易导致参考信息的非有效性造成大范围的影响。在移动设备上,用户追求的体验维度有视频的质量和时长,但上面这些算法仅仅只是考虑了视频质量。为了提供更佳的用户体验,即让用户可以在视频的质量和时长之间进行选择和调节,本专利技术设计了一个QoE计算模型用于指导这个过程的进行,并将此模型应用在了所提出来的一种采用单遍扫描处理流程的新型的计算量可感知的运动估计算法里面。
技术实现思路
本专利技术所要解决的技术问题是克服现有技术的不足,提供一种监控视频系统的关键帧提取方法,本专利技术解决其技术问题所采用的技术方案是:本专利技术包括两个部分:帧级别计算量分配和块级别计算量分配,其特征在于帧级别计算量分配有两个限制,一个是视频质量的平滑性,另一个是计算资源的节省性,视频质量的平滑性限制用来保证不同视频帧之间的补偿质量的变化尽可能要小,计算资源的节省性限制则是用来在搜索候选匹配块时,终止那些不必要的计算量使用,由于采用的块级别计算量分配算法会严格控制计算量不会被超额使用,为了方便与其他方法进行比较,采用的是为每一帧分配固定的计算量,其中块级别计算量分配,首先是把块分成四类,把一帧可使用的计算量划分成基本层和增益层两个部分,然后根据块的类别分别进行基本层和增益层计算量的分配;对块进行分类的方法:利用到前一帧的失真增益,当前帧的每个块都有一个预测运动矢量指向前一帧的某个块,而被指向的每个块都对应着一个失真增益,该失真增益是它的初始匹配误差与最终匹配误差之间的差值,如果当前块的预测运动矢量所指向的块覆盖了前一帧中多个块,则该块对应的失真增益是所覆盖块的失真增益的加权和,用Beblock表示当前块所对应的失真增益:其中,Beb_pre_i表示所覆盖块i的失真增益,权重因子ωi则对应所覆盖块i的面积占的比例,用Difb_initial表示块的初始匹配误差,则四类块是按如下方式进行定义的:其中,Classblock表示当前块的所属分类,dths表示一个块的初始匹配误差过小的阈值,dthl表示一个块的初始匹配误差过大的阈值,bth表示一个块的失真增益是大还是小的分隔点;块级别计算量分配算法:块级别计算量分配首先是将一帧可使用的计算量分成基本层和增益层两个部分,基本层计算量所占的比例是α(0<α<1),基本层计算量被分配给所有的四类块,而每块所分得的基本层计算量是根据其初始匹配误差进行分配的,用Cb_base表示一个块所分得的基本层计算量:其中,Cbase_available表示一帧中基本层可用的计算量,Numb_nopro表示一帧中未被处理的块的数量,AvgDif表示一帧中已经被处理过的块的平均初始匹配误差,增益层计算量也被分配给所有的四类块,而每块所分得的增益层计算量是根据其失真增益进行分配的,用Cb_benefit表示一个块所分得的增益层计算量:其中,Cbenefit_total表示一帧中增益层总的计算量,Betotal_pre表示一帧中总的失真增益,另外,为了减少所采用的失真增益信息的非有效性所带来的影响,当第1类块和第2类块的某一步搜索得到的最佳运动矢量是预测运动矢量,该块很有可能已经达到了全局最优,为了减少计算量的不必要使用,便停止对该块的搜索,当第2类块和第3类块的最后一步搜索的失真增益比大于β(0<β<1),该步的失真增益比表示失真减少量所占的比例,则增加计算量以进行更多一步的搜索,当第4类块的连续两步搜索的失真增益比都小于γ(0<γ<1),则立即停止对该块的搜索,为了使搜索策略更具一般性,实验中采用的运动估计算法是菱形搜索算法,并将预测运动矢量作为初始搜索点,为了加快搜索速度,也采用了其他一些传统的加速策略,比如说当一个块的部分匹配误差大于最小匹配误差的时候,便停止对该块匹配误差的计算。本专利技术QoE计算模型是对于在手机等移动设备上的视频应用,用户通常有视频的质量和时长两个体验维度追求,并且这两个体验维度是相互矛盾的,需要在它们之间制定一个平衡点。为了提供更佳的用户体验,这就需要用户来参与这个平衡点的制定,因此就需要一种QoE计算模型来指导整个过程的进行。构造QoE计算模型通常的做法是:首先找到影响用户体验的参数,然后统计用户的体验评价,最后在QoE和这些参数之间建立一种映射关系。建立映射关系可以采用随机神经网络,也可以采用指数关系或者对数关系。而所构造的QoE计算模型的最大价值就在于它的实施应用,若只是进行一些简单的体验报告,还不如直接对用户做份问卷调查更有效。本专利技术所构造的QoE计算模型主要用于指导所提出来的一种新型的计算量可感知的运动估计算法,让用户可以在视频的质量和时长之间进行选择和调节。为了在视频的质量和时长之间制定一个基准,本专利技术选择了手机等移动设备上的计算资源利用率和电量状态两个参数,并将它们的值相等时作为基准。用Dexperience表示用户所追求的体验维度:Dexperience=Ucomputation-Scharge(5)其中,Ucomputation表示手机等移动设备的计算资源利用率,Scharge表示手机等移动设备的电量状态。在具体实施操作中,Ucomputation采用的是CPU当前时钟频率和最高时钟频率的比值,而通过DVFS技术可以很容易地对CPU时钟频率进行调整控制。当Dexperience大于0时,表明用户追求的体验维度是视频质量;当Dexperience小于0时,表明用户追求的体验维度是视频时长。为了定量地描述两个体验维度,本专利技术所构造的QoE计算模型为两个体验维度分别提供了100个数字值让用户进行选择,用SQoE来表示。当用户体验维度追求的是视频质量时,通过DVFS技术将Ucomputation调整到当前值与1之间所选SQoE的百分比;当用户体验维度追求的本文档来自技高网
...
基于QoE控制的计算量可感知的运动估计算法

【技术保护点】
基于QoE控制的计算量可感知的运动估计算法,包括两个部分:帧级别计算量分配和块级别计算量分配,其特征在于帧级别计算量分配有两个限制,一个是视频质量的平滑性,另一个是计算资源的节省性,视频质量的平滑性限制用来保证不同视频帧之间的补偿质量的变化尽可能要小,计算资源的节省性限制则是用来在搜索候选匹配块时,终止那些不必要的计算量使用。由于采用的块级别计算量分配算法会严格控制计算量不会被超额使用,为了方便与其他方法进行比较,采用的是为每一帧分配固定的计算量。其中块级别计算量分配,首先是把块分成四类,把一帧可使用的计算量划分成基本层和增益层两个部分,然后根据块的类别分别进行基本层和增益层计算量的分配;对块进行分类的方法:利用到前一帧的失真增益,当前帧的每个块都有一个预测运动矢量指向前一帧的某个块,而被指向的每个块都对应着一个失真增益,该失真增益是它的初始匹配误差与最终匹配误差之间的差值,如果当前块的预测运动矢量所指向的块覆盖了前一帧中多个块,则该块对应的失真增益是所覆盖块的失真增益的加权和,用Beblock表示当前块所对应的失真增益:Beblock=Σiωi&CenterDot;Beb_pre_i(i>0)---(1)其中,Beb_pre_i表示所覆盖块i的失真增益,权重因子ωi则对应所覆盖块i的面积占的比例,用Difb_initial表示块的初始匹配误差,则四类块是按如下方式进行定义的:Classblock=1ifDifb_initial≤dths2ifdths<Difb_initial≤dthl3ifDifb_initial>dthlandBeblock≤bth4ifDifb_initial>dthlandBeblock>dth---(2)其中,Classblock表示当前块的所属分类,dths表示一个块的初始匹配误差过小的阈值,dthl表示一个块的初始匹配误差过大的阈值,bth表示一个块的失真增益是大还是小的分隔点;块级别计算量分配算法:块级别计算量分配 首先是将一帧可使用的计算量分成基本层和增益层两个部分,基本层计算量所占的比例是α(0Cb_base=Cbase_availableNumb_nopro·Difb_initialAvgDif---(3)其中,Cbase_available表示一帧中基本层可用的计算量,Numb_nopro表示一帧中未被处理的块的数量,AvgDif表示一帧中已经被处理过的块的平均初始匹配误差,增益层计算量也被分配给所有的四类块,而每块所分得的增益层计算量是根据其失真增益进行分配的,用Cb_benefit表示一个块所分得的增益层计算量:Cb_benefit=Cbenefit_total·BeblockBetotal_pre---(4)其中,Cbenefit_total表示一帧中增益层总的计算量,Betotal_pre表示一帧中总的失真增益,另外,为了减少所采用的失真增益信息的非有效性所带来的影响,当第1类块和第2类块的某一步搜索得到的最佳运动矢量是预测运动矢量,该块很有可能已经达到了全局最优,为了减少计算量的不必要使用,便停止对该块的搜索,当第2类块和第3类块的最后一步搜索的失真增益比大于β(0<β<1),该步的失真增益比表示失真减少量所占的比例,则增加计算量以进行更多一步的搜索,当第4类块的连续两步搜索的失真增益比都小于γ(0<γ<1),则立即停止对该块的搜索,为了使搜索策略更具一般性,实验中采用的运动估计算法是菱形搜索算法,并将预测运动矢量作为初始搜索点,为了加快搜索速度,也采用了其他一些传统的加速策略,比如说当一个块的部分匹配误差大于最小匹配误差的时候,便停止对该块匹配误差的计算。...

【技术特征摘要】
1.基于QoE控制的计算量可感知的运动估计算法,包括两个部分:帧级别计算量分配和块级别计算量分配,其特征在于帧级别计算量分配有两个限制,一个是视频质量的平滑性,另一个是计算资源的节省性,视频质量的平滑性限制用来保证不同视频帧之间的补偿质量的变化尽可能要小,计算资源的节省性限制则是用来在搜索候选匹配块时,终止那些不必要的计算量使用,块级别计算量分配算法严格控制计算量不会被超额使用,帧级别计算量分配算法为每一帧分配固定的计算量,把一帧可使用的计算量划分成基本层和增益层两个部分,当进行块级别计算量分配时,把块分成四类,根据块的类别分别进行基本层和增益层计算量的分配;对块进行分类的方法:利用到前一帧的失真增益,当前帧的每个块都有一个预测运动矢量指向前一帧的某个块,而被指向的每个块都对应着一个失真增益,该失真增益是它的初始匹配误差与最终匹配误差之间的差值,如果当前块的预测运动矢量所指向的块覆盖了前一帧中多个块,则该块对应的失真增益是所覆盖块的失真增益的加权和,用Beblock表示当前块所对应的失真增益:其中,Beb_pre_i表示所覆盖块i的失真增益,i>0,权重因子ωi则对应所覆盖块i的面积占的比例,用Difb_initial表示块的初始匹配误差,则四类块是按如下方式进行定义的:其中,Classblock表示当前块的所属分类,dths表示一个块的初始匹...

【专利技术属性】
技术研发人员:周兵周艳杰吴飞吴亚平
申请(专利权)人:郑州大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利