基于h264运动估计算法的初始点获取方法及装置的制作方法

文档序号:7734640阅读:209来源:国知局
专利名称:基于h264运动估计算法的初始点获取方法及装置的制作方法
技术领域
本发明涉及视频编码领域,尤其涉及一种基于H264(即,H. 264)运动估计算法的初始点获取方法及装置、终端设备。
背景技术
H. 264标准并不明确规定一个编码器应该如何实现,而是规定一个编了码的视频比特流的句法和该比特流的解码方法,在实现上具有较大的灵活性。H. 264标准一般采用变换和预测的混合编码法。运动估计,就是根据运动对象的空间相关性和时间相关性,通过相邻帧或是相邻块的运动矢量来估计当前宏块的运动矢量,通过该运动矢量找到搜索中心,再通过运动搜索算法找出最佳匹配块,然后保留运动矢量和残差帧数据。常见的固定模式运动估计算法有三步搜索法(TSQ、二维对数法(TDLQ、共轭方向搜索法(CDQ、四步搜索法(FSQ、菱形搜索法(DQ ,MVFAST算法、PMVFAST算法和非对称十字型多层次六边形格点搜索(UMHexagoM)算法。其中,UMHexagonS算法采用了不同搜索模版混合的方法,能够很好地适用各种运动场景,具有良好的性能和较少的运算量。传统的运动估计算法通常都是以本帧所在的视频序列为参考,通过对前后帧的时间和空间相关性进行运动估计。大多数的优化工作也建立在此基础上,例如,初始点预测优化和搜索路径优化。在相关技术中,提供了一种基于矢量加权中值滤波的快速分层运动估计算法,该算法运用加权的算法来处理相邻的块的运动矢量,所得运动矢量可保护上层运动估算中出错的矢量,提高了运动估计的精确性。在相关技术中,还提供了一种自适应确定搜索范围的方法,该方法利用运动矢量场的空域,时域相关性动态计算搜索范围,提高了运动场景变化时的运动估计的灵活性。但是,以上二种算法在摄像头发生移动时,运动估计不够准确。在视频的采集过程中,经常发生摄像头移动的情况,摄像头的移动致使采集到的视频场景的移动。然而,已有的视频编码只能通过帧之间的智能分析辨别场景的变化,这样会导致在运动估计过程中搜索起始点不够精确。

发明内容
本发明的主要目的在于提供一种基于H. 264运动估计算法的初始点获取方案,以至少解决上述相关技术中在摄像头发生移动时运动估计不够精确的问题。为了实现上述目的,根据本发明的一种方面,提供了一种基于H. 264运动估计算法的初始点获取方法。根据本发明的基于H. 264运动估计算法的初始点获取方法,包括以下步骤在初始点预测时,获取摄像头的运动状态,根据摄像头的运动状态确定视频场景的运动矢量;将视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量,并根据最终预测矢量和待预测块的坐标获得初始点的坐标。
优选地,获取摄像头的运动状态包括通过安装在摄像头上的磁力跟踪器的接收器获取摄像头的六自由度数据,并依据摄像头的六自由度数据得到摄像头的运动状态。优选地,摄像头的六自由度数据包括摄像头的空间坐标和摄像头的空间旋转角度。优选地,根据摄像头的运动状态确定视频场景的运动矢量包括根据摄像头的运动状态判断视频场景是否移动;在视频场景移动的情况下,确定视频场景的运动矢量。优选地,将视频场景的运动矢量和运动估计矢量合成之前,还包括通过前两参考宏块的运动估计得到当前宏块的运动估计矢量。优选地,根据最终预测矢量和待预测块的坐标获得初始点的坐标之后,该方法还包括使用非对称十字型多层次六边形格点搜索算法的搜索路径对初始点进行运动搜索, 以找出前一帧对应宏块的最佳匹配块。优选地,视频场景的运动矢量为场景变化时的视频序列的运动矢量。为了实现上述目的,根据本发明的另一方面,还提供了一种基于H. 264运动估计算法的初始点获取装置。根据本发明的基于H. 264运动估计算法的初始点获取装置,包括获取模块,用于在初始点预测时,获取摄像头的运动状态,根据摄像头的运动状态确定视频场景的运动矢量;合成模块,用于将视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量;确定模块,用于根据最终预测矢量和待预测块的坐标获得初始点的坐标。优选地,获取模块还用于通过安装在摄像头上的磁力跟踪器的接收器获取摄像头的六自由度数据,并依据摄像头的六自由度数据得到摄像头的运动状态。为了实现上述目的,根据本发明的再一方面,还提供了一种终端设备。根据本发明的终端设备,包括上述的基于H. 264运动估计算法的初始点获取装置。通过本发明,采用通过磁力跟踪器获取摄像头的运动状态的方式,解决了相关技术中在摄像头发生移动时运动估计不够精确的问题,节约了运动估计时间,提高了搜索效率。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明实施例的基于H. 264运动估计算法的初始点获取方法的流程图;图2是根据本发明实施例的基于H.沈4运动估计算法的初始点获取装置的结构框图;图3是根据本发明实施例一的场景移动的对比示意图;图4是根据本发明实施例一的矢量对称示意图;图5是根据本发明实施例二的算法流程图;图6是根据本发明实施例二的foreman序列每帧平均估计时间的示意图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。根据本发明实施例,提供了一种基于H. 264运动估计算法的初始点获取方法。图1 是根据本发明实施例的基于H. 264运动估计算法的初始点获取方法的流程图,如图1所示, 包括以下步骤步骤S102,在初始点预测时,获取摄像头的运动状态,根据摄像头的运动状态确定视频场景的运动矢量;步骤S104,将视频场景的运动矢量和非对称十字型多层次六边形格点搜索 (UMHexagonS)算法的运动估计矢量合成,得到最终预测矢量;步骤S106,根据最终预测矢量和待预测块的坐标获得初始点的坐标。通过上述步骤,采用通过磁力跟踪器获取摄像头的运动状态的方式,解决了相关技术中在摄像头发生移动时运动估计不够精确的问题,节约了运动估计时间,提高了搜索效率。优选地,在步骤S102中,可以通过安装在摄像头上的磁力跟踪器的接收器获取摄像头的六自由度数据,并依据摄像头的六自由度数据得到摄像头的运动状态。该方法可以提高获取摄像头移动的精度。优选地,摄像头的六自由度数据包括摄像头的空间坐标和摄像头的空间旋转角度。优选地,在步骤S102中,根据摄像头的运动状态确定视频场景的运动矢量包括 根据摄像头的运动状态判断视频场景是否移动;在视频场景移动的情况下,确定视频场景的运动矢量。该方法可以提高系统的有效性。优选地,在步骤S104之前,可以通过前两参考宏块的运动估计得到当前宏块的运动估计矢量。优选地,在前两参考宏块预测得到当前宏块的运动估计矢量和摄像头移动造成场景运动矢量之后,可以使用非对称十字型多层次六边形格点搜索算法的搜索路径进行运动搜索,以找出最佳匹配块。该方法可以提高系统的效率。优选地,上述视频场景的运动矢量为场景变化时的视频序列的运动矢量。对应于上述方法,本实施例还提供了一种基于H. 264运动估计算法的初始点获取装置。图2是根据本发明实施例的基于H. 264运动估计算法的初始点获取装置的结构框图,如图2所示,该装置20包括获取模块22,用于在初始点预测时,获取摄像头的运动状态,根据摄像头的运动状态确定视频场景的运动矢量;合成模块对,耦合至获取模块22,用于将视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量;确定模块26,耦合至合成模块24,用于根据最终预测矢量和待预测块的坐标获得初始点的坐标。通过上述装置,采用通过磁力跟踪器获取摄像头的运动状态的方式,解决了相关技术中在摄像头发生移动时运动估计不够精确的问题,节约了运动估计时间,提高了搜索效率。
优选地,获取模块22还用于通过安装在摄像头上的磁力跟踪器的接收器获取摄像头的六自由度数据,并依据摄像头的六自由度数据得到摄像头的运动状态。优选地,磁力跟踪器可以包括发射器、接收器和计算单元。根据本发明实施例,还提供了一种终端设备,包括上述的基于H. 264运动估计算法的初始点获取装置。下面结合优选实施例和附图对上述实施例的实现过程进行详细说明。实施例一在运动估计中可知,场景的移动和运动矢量具有相关性,本实施例通过磁力跟踪器获取摄像头运动的状态,并提供给运动估计算法参考,可在场景发生变化时,精确地预测搜索起始点,从而节约运动估计时间,提高搜索效率。在实施过程中,磁力跟踪器可以由发射器、接收器、计算单元构成,由它获得一个六自由度位置数据。将磁力跟踪器的接收端安装在摄像头上,通过对六自由度数据的处理可获取摄像头的运动产生的运动矢量。图3是根据本发明实施例一的场景移动的对比示意图,如图3所示,左侧一列为摄像头静止状态下拍摄水平向右移动小汽车的相邻三帧,右侧一列为摄像头在第三帧时,水平向右移动状态下拍摄小汽车(速度因素同左侧一列)的相邻三帧。比较图3两列图片可知,MVl = MV2 = MV3 > MV4。即,当摄像头以小车相同方向移动时,相同速度的小车运动矢量反映在视频序列中变小了 ;当摄像头速度大于小车速度时,相同速度的小车运动矢量反映在视频序列中甚至可以反方向。定义Frame (M,N)为图4中M行N列的帧,则Frame (3,2)中小车块根据参考帧 Frame (1,2) ,Frame (2, 2)所得的小车块所在的位置应为Frame (3,1)中的位置。定义MVeamera =MV2-MV4,则MV。amCTa就为摄像头状态改变反映在图像上的运动矢量。当MV4 < 0,S卩,由于摄像头的运动,小车在视频序列中向实际运动方向的反方向运动。此时,根据UMhexagonS 算法所得运动矢量仍为MV2,即仍认为视频序列中的小车按实际运动方向运行,从而导致运动搜索所得求和绝对误差(Sum of Absolute Difference,简称为SAD)局部最小值概率增大。假设通过磁力跟踪器获取的场景运动产生的矢量为MVa,而通过运动估计算法得到当前块Currentblock估计运动矢量为MVb,根据矢量的合成算法可得到运动矢量MVc = F(MVa,MVb),即公式(1)
权利要求
1.一种基于H. 264运动估计算法的初始点获取方法,其特征在于,包括以下步骤在初始点预测时,获取摄像头的运动状态,根据所述摄像头的运动状态确定视频场景的运动矢量;将所述视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量,并根据所述最终预测矢量和待预测块的坐标获得所述初始点的坐标。
2.根据权利要求1所述的方法,其特征在于,获取所述摄像头的运动状态包括通过安装在所述摄像头上的所述磁力跟踪器的接收器获取所述摄像头的六自由度数据,并依据所述摄像头的六自由度数据得到所述摄像头的运动状态。
3.根据权利要求2所述的方法,其特征在于,所述摄像头的六自由度数据包括所述摄像头的空间坐标和所述摄像头的空间旋转角度。
4.根据权利要求1所述的方法,其特征在于,根据所述摄像头的运动状态确定所述视频场景的运动矢量包括根据所述摄像头的运动状态判断所述视频场景是否移动;在所述视频场景移动的情况下,确定所述视频场景的运动矢量。
5.根据权利要求1所述的方法,其特征在于,将所述视频场景的运动矢量和所述运动估计矢量合成之前,还包括通过前两参考宏块的运动估计得到当前宏块的所述运动估计矢量。
6.根据权利要求1所述的方法,其特征在于,根据所述最终预测矢量和待预测块的坐标获得所述初始点的坐标之后,还包括使用所述非对称十字型多层次六边形格点搜索算法的搜索路径对所述初始点进行运动搜索,以找出前一帧对应宏块的最佳匹配块。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述视频场景的运动矢量为场景变化时的视频序列的运动矢量。
8.一种基于H. 264运动估计算法的初始点获取装置,其特征在于,包括获取模块,用于在初始点预测时,获取摄像头的运动状态,根据所述摄像头的运动状态确定视频场景的运动矢量;合成模块,用于将所述视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量;确定模块,用于根据所述最终预测矢量和待预测块的坐标获得所述初始点的坐标。
9.根据权利要求8所述的装置,其特征在于,所述获取模块还用于通过安装在所述摄像头上的所述磁力跟踪器的接收器获取所述摄像头的六自由度数据,并依据所述摄像头的六自由度数据得到所述摄像头的运动状态。
10.一种终端设备,其特征在于,包括权利要求8或9所述的初始点获取装置。
全文摘要
本发明公开了一种基于H264运动估计算法的初始点获取方法及装置,该方法包括以下步骤在初始点预测时,通过磁力跟踪器获取摄像头的运动状态,根据摄像头的运动状态确定视频场景的运动矢量;将视频场景的运动矢量和非对称十字型多层次六边形格点搜索算法的运动估计矢量合成,得到最终预测矢量,并根据最终预测矢量和待预测块的坐标获得初始点的坐标。通过本发明节约了运动估计时间,提高了搜索效率。
文档编号H04N7/26GK102263958SQ20111021088
公开日2011年11月30日 申请日期2011年7月26日 优先权日2011年7月26日
发明者朱凯迪 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1