一种基于块匹配的自适应快速运动估计计算法

来源 :计算机时代 | 被引量 : 0次 | 上传用户:csss2
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:块匹配运动估计算法是实时视频编解码技术的研究重点。为降低视频编码中运动估计的计算复杂度,考虑到现实序列运动矢量的分布存在方向性,文章提出了基于块匹配的自适应快速运动估计算法。该算法在运动估计的初始阶段,利用相邻宏块间的空间相关性来预测初始搜索点的位置,使搜索起点更接近理想的最优匹配点;在搜索过程中引入具有方向特征的非对称十字形搜索模型,加快了搜索速度。实验结果表明该算法具有很好的性能。
  关键词:运动估计;非对称十字形算法;中心偏置;块匹配
  
  0 引言
  
  降低帧间的冗余是视频数据压缩的关键,而实现这一步的重要环节是运动估计和运动补偿。运动估计的目的在于降低视频数据的时间冗余。块匹配算法(BMA)是成功应用于视频压缩的运动估计方法之一,它已成为视频编码与标准(如ITU-T H.261、H.263、MPEG-1、2、4)中不可缺少的部分。目前,能够很好地降低帧间冗余的算法是全搜索块匹配算法,但是该算法由于巨大的计算量而很难满足实时应用要求。后来出现了许多快速块匹配算法,如:二维对数法(TDL)、三步搜索法(3SS)、新三步搜索法(N3SS)、四步法(4SS)、基于块的梯度下降搜索法(BBGDS)、菱形搜索法(DS)以及六边形搜索算法(HEXBS)等,这些算法或是搜索步长过长或是模型单一,易使搜索陷入局部最小。
  最近出现了一种“非对称十字形搜索(UDCS)”算法,该算法考虑图像序列的中心偏置特性,在搜索的初始阶段采用大、小十字搜索模型。在搜索过程中,该算法还采用非对称的水平或垂直十字模型以适应现实序列具有对象或场景运动的方向性的特点。由于很好地考虑了中心偏置特性和运动方向性的特点,UDCS在保持图像质量的前提下大大降低了运动估算的复杂度。本文将该算法的主要思想引入到预测法中,提出了“自适应的非对称十字形搜索(A-UDCS)”算法。
  
  1 自适应搜索算法
  
  由于运动矢量的概率分布具有中心偏置特性,因此在各种非预测的基于块的快速运动估计算法中,都是以搜索窗的中心为搜索起点的。然而,“运动矢量概率分布的中心偏置特性”是一个统计结果,它特别适合小运动量的图像序列,而对于大运动量的图像序列,其中心偏置特性就比较差。也就是说,有些序列的运动矢量并不一定集中在搜索窗的中心范围内。图1(a)是Garden序列的运动矢量(以搜索窗中心为参考中心)概率分布情况。从图中可以看出,Garden的运动矢量大量集中在(1,0)点(占42.4%),主要分布在(1,0)点、(2,0)点和(3,0)点(共占77.1%)。运动矢量的概率分布相对(0,0)点整体偏移,搜索窗中心的菱形区域内的运动矢量的分布概率为68.2%,其中心偏置特性比较差。
  为了使搜索起点更接近最优匹配点,出现了先预测、再搜索的方法。只要选择合适的搜索模型和终止准则进行搜索,使用该方法最终可以获得具有足够精度的运动矢量。预测法能显著减少搜索点的数目,降低计算量。图1(b)是Garden序列的运动矢量(以预测的搜索起点为参考中心)概率分布情况,其运动矢量绝大部分在(0,0)点(占66.2%)、(1,0)点(占10%)及(-1,0)点(占5,3%),以预测的搜索起点为中心的菱形区域的运动矢量的分布概率为90,7%。由此可见,以预测的搜索起点为参考中心的运动矢量分布的“中心偏置特性”(这里称之为“预测点偏置特性”)要远好于以搜索窗中心为参考中心的中心偏置特性。显然,小运动量图像序列的预测点偏置特性也好于中心偏置特性,因此,在预测的基础上进行搜索将比在没有预测的情况下进行的搜索能更快地获得最优匹配点。
  

  
  2 自适应的非对称十字形搜索算法(A-UDCS)
  
  2.1 搜索起始点和搜索方向的预测
  运动对象和场景的整体性和视频运动的连续性决定了视频图像序列在时域和空域里必然存在相关性,因此,在空域预测中可以作以下两个假设:①相邻宏块包含相同的视频对象或场景;②相邻的宏块具有相同或相似的运动特征。根据这两个假设,当前块的运动矢量可利用与其相邻块的运动矢量来预测。实验证明,当前宏块与其左、上、上右三个相邻宏块的运动关系最为密切,且使用左、上、上右三个相邻宏块的运动矢量的中值来作为当前宏块的运动矢量的预测值可获得较佳效果。也就是说,若当前块相邻的左、上、上右三宏块的运动矢量为MVleft、MVabove和MVabove-right,则预测运动矢量MVainent可用(1)式表达:
  MVcurrent=median(MVleft,MVabove,MVabove-right) (1)
  在预测到起始搜索点之后,进一步确定最小BDM点成为关键。由于现实运动序列的运动矢量在整体上呈十字形分布,即其水平运动和垂直运动几率大,并且具有极强的沿中心水平和垂直轴偏置分布的方向性,因此,可以将宏块的运动分为水平运动和垂直运动两个方向。如果在搜索前知道宏块的运动方向并在搜索过程中使用带方向性的搜索模型,将会提高搜索效率。图2(a)是一个水平臂比垂直臂长的搜索模型,称为水平十字搜索模型(HCSP),它在水平方向上的移动速度快于垂直方向。将其用于对具有水平运动特征的宏块的运动估计,既可以加快水平方向上的搜索速度,还可以减少对不必要的点(垂直方向上的点)的匹配,从而减少匹配点的数目。因此,HCSP更适合对具有水平运动特征的运动矢量的搜索。同理,图2(b)是垂直十字搜索模型(VCSP),它更适合搜索在垂直方向上的运动矢量。
  

 
  为了在搜索的初始阶段选择正确的搜索模型,需要先预测宏块的运动方向。根据当前宏块与相邻宏块间的密切相关性可知,当前宏块运动方向的预测可由已预测的运动矢量获得。设预测运动矢量的坐标为MVcunrent=(VxVy),其与水平直线的夹角为θ(0≤θ<π/2),其值可用公式(2)表达。
  

 
  如果θ小于π/4,则认为当前宏块的运动方向为垂直方向;如果θ大于或等于π/4,那么当前宏块在水平方向上运动,属于水平运动。
  
  2.2 自适应搜索过程
  A-UDCS采用三个搜索模型(如图2):小十字搜索模型(SCSP)、水平十字搜索模型(HCSP)和垂直十字搜索模型(VCSP)。在本算法中,首先预测出自适应搜索的搜索起点和宏块的运动方向,然后根据预测的方向选择适当的搜索模型,在搜索过程中根据次最优点的轨迹纠正预测方向并调整搜索模型直到获得最优匹配点。A-UDCS的具体搜索步骤如下:
  (1)在搜索的初始阶段,通过预测获得自适应搜索的搜索 起点和宏块的运动方向。根据运动方向(即θ的值)选择初始搜索模型进行块匹配。如果为垂直方向,应选择VCSP;如果为水平方向,则选择HCSP。进入下一步。
  (2)通过匹配获得最小BDM点,如果该点在中心,则进入第三步;如果该点不在中心,则以最小BDM点为中心,以连续两个最小BDM点的相对位置关系来重新选择搜索模型:如果两个最小BDM点在水平方向上,选择HCSP;如果两个最小BDM点在垂直方向上,则选择VCSP,并重复本步骤。
  (3)以最小BDM点为中心,选择SCSP进行块匹配,并将得到的最小BDM点视为最优匹配点,自适应搜索结束。搜索过程如图3所示。
  

  
  3 实验结果
  
  实验使用了多个图像序列来验证所提出的算法的性能,包括American(CIF)、Foreman(CIF)、Garden(SIF)及Football(SIF)各100帧。在测试过程中,以平均绝对差和(sAD)作为BDM标准,宏块大小为16×16,搜索窗口为w=±7。
  

 
  表1给出了在不同图像序列下各种算法的平均搜索点数和各算法相对全搜索算法的搜索速度比。从表中可以看出,A-UDCS比UDCS算法搜索点数少1.032至4.446点,平均少搜索2.94点,相对UDCS算法速度提高26.99%;而A-UDCS比DS算法平均少搜索9.144点,相对DS算法速度提高53.48%。各算法平均搜索点数总体表现为:A-UDCS  

   
  4 结束语
  
  与UDCS相比,A-UDCS利用预测法使算法在搜索的初始阶段就已接近最优匹配点,减少了进一步搜索点的数目。它与传统算法的不同点在于,考虑到了现实序列运动矢量分布的方向性,在搜索过程中根据运动特征选择适当的搜索模型增强了局部搜索的方向性,避免了搜索的盲目性。经测试,A-UDCS比UDCS显示出更为优良的性能。与DS比较,A-UDCS在降低计算代价的同时,保证了PSNR值(图像质量)基本不发生明显的变化,而对运动规律强的序列,A-UDCS表现更好。
其他文献
摘要:使用ETL过程将数据源数据装载到数据仓库,大多数时候是向数据仓库中追加数据,但有时也需要删除一些数据,以维持数据仓库中数据的正确性。文章结合Oracle ETL工具的装载特点提出了一种对增量数据进行预处理的方法,以实现有删除数据的ETL装载,并给出了具体的设计。  关键词:增量ETL;增量数据;数据仓库;增量维护算法    0 引言    数据仓库中的ETL(Extract,Transfor
期刊
摘要:研究了在SAP(System,Applications and Products in Data Processing)R/3表单开发过程中实现自定义结构数据传递的问题。提出了一种高效实用的方法,并给出了简单的程序范例。使用该方法,可以避免采用常规方法需要在ABAPDictionary中创建大量结构的问题,减轻了后期维护的工作量,也提高了开发的效率。  关键词:SAP;表单;自定义结构数据;
期刊
摘要:阐述了Oracle10g中最新推出的Flashback在实际环境中的应用与实践。通过闪回特性工作原理的基本描述以及闪回查询、表闪回、删除闪回、数据库闪回这四种闪回功能的实际应用,使读者对Oracle10g中的Flashback特性有更深入的了解。  关键词:数据库:Oracle10g;Flashback;闪回    0 引言    Flashback是Oracle10g最新推出的新特性,通过
期刊
摘要:分析了目前中小企业信息化需求,在此基础上,设计了适应中小企业个性需求的信息化解决方案。应用文中所提出的平台架构,可以快速构建出相应的应用系统。  关键词:中小企业;信息化;Web服务;.NET    0 引言    信息技术的广泛应用,使得信息在以计算机技术为主导的自动化、网络化管理中成为生产与交换的重要资源。虽然,新的信息服务企业不断出现,还产生了一些新的服务模式和形态,但由于自身特点的限
期刊
摘要:通过论述制造网格资源管理和计算经济的特点,指出计算经济可以适应制造网格资源管理的特征和需求:提出了一种基于计算经济的制造网格资源管理框架,强调以经济为基础合理分配有限的资源,为不同服务质量需求的应用提供服务,提高资源的使用效率。此管理框架采用层次模型。文章详细论述了各层的功能,并讨论了该框架中的资源发现模式和交易模式。  关键词:制造网格;资源管理;计算经济;层次模型    0 引言    
期刊
摘要:计算机系统的补丁管理已经成为计算机系统安全的一个重要组成部分。在现有技术下,如何完整、规范地为需要严格与Internet隔离的内联网计算机用户分发和安装补丁是一个较为突出的问题。文章在微软免费的WSUS(Windows Server Update Services)服务基础上,开发出一套基于Windows平台的内联网补丁管理系统,弥补了WSUS系统的不足,提出了一种解决该问题的方案,并已经在
期刊
摘要:简要介绍了农村劳动力技能培训系统的UML分析设计,给出了系统的用例图、总体结构图和类图,并对部分系统的动态行为用顺序图和状态图进行了描述。该系统已投入实际运行,效果良好,对同类软件的开发具有参考价值。  关键词:农村劳动力技能培训系统;UML;用例图;类图    0 引言    农村劳动力技能培训是将农村部分富余劳动力通过培训和岗前培训转移到非农领域就业,该工作主要是以政府推动、学校主办、部
期刊
摘要:服务器控件是ASP.NET的一个重要组成部分,它为用户快速开发Web应用程序提供了支持。文章介绍了服务器控件数据绑定组件的创建及获取数据的过程,详细阐述了通过执行SQL语句将数据绑定到服务器控件的三种方法及它们在Code-behind页面中的调用方式。这种基于组件的开发方式使编程模块化,提高了开发效率,保证了应用程序的质量和可维护性。  关键词:ASP.NET;服务器控件;数据绑定;组件  
期刊
摘要:CommonKADS是支持结构化知识工程的方法。它为开发一个基于知识的系统提供了一套完整的方法框架。文章介绍了CommonKADS知识工程方法,并应用该理论方法研究了知识工程的需求分析过程和知识模型建模技术。结合对当前大学外语教学现状的分析和运用网络教育来支持大学外语教学的设想,建立了相关的学习评价系统模型,为网络外语教学系统的进一步开发做出了积极的探索。  关键词:知识工程;CommonK
期刊
摘要:XScale体系结构以高性价比、低功耗等特点已被广泛应用到智能手机、PDA和网络产品中。文章着重分析了XScale体系结构的特性,并针对该体系结构详细介绍了在开发过程中可能使用到的与运算、处理器以及编程相关的优化策略。  关键词:嵌入式处理器;XScale;超级流水线;优化策略    0 引言    随着计算机多媒体技术及无线通信技术的发展,嵌入式系统的应用已成为生活中不可或缺的部分。不同于
期刊