一种应用于视频压缩且基于块积分的快速运动估计方法

文档序号:7859766阅读:160来源:国知局
专利名称:一种应用于视频压缩且基于块积分的快速运动估计方法
技术领域
本发明涉及视频压缩技术领域,尤其涉及一种在视频压缩中应用块积分技术的运动估计方法。
背景技术
视频序列的相邻帧存在大量冗余信息。视频压缩广泛使用运动估计技术,以降低该冗余,从而实现视频数据的压缩。当视频相邻帧间出现相似内容时,运动估计利用运动矢量来取代该相似内容,将大量像素点阵数据转为运动矢量以及相似内容间的残差,其中运动矢量由两个数值(水平分量、垂直分量)构成,残差则很可能包含有大量零值;由此,进行视频编码时所需的存储随之降低。换言之,在视频压缩中采用运动估计技术,可以使得在大多数情况下视频质量无严重下降,同时减少视频数据的大小。
请参阅图I。图I给出现有运动估计技术的示意图。如前所述,运动估计的目的是寻找视频相邻帧(例如参考帧110以及当前帧120)之间的冗余信息,对其进行压缩处理。参考帧110中包含有备选宏块115,而当前帧包含有当前宏块125。如图I所示,当前帧120被划分为多个宏块,将以上宏块与参考帧110中搜索范围130内的备选宏块进行块匹配。当搜索确定参考帧110中的备选宏块115与当前帧120中的当前宏块125具有最佳匹配度时(如图示例,参考帧110以及当前帧120分别包含有一颗五角星),以上两宏块之间的移动矢量被称做运动矢量140。在视频压缩算法中,运动矢量140取代当前帧120中的当前宏块125。同时当前宏块125与产生最佳匹配的备选宏块115之间的残差也被保留。当需要对视频进行解码时,参考帧110的宏块115,配合运动矢量140,以及残差,可以完整重建当前帧 120。块匹配过程有两个要素一是,预设的误差度量机制,用以判定当前宏块125与备选宏块115的相似程度;二是,在搜索范围130内寻找运动矢量140的搜索策略,用以提高运动估计的计算效率。在视频压缩技术领域中,块匹配的二要素具有较大的变化空间。误差度量机制以及搜索策略,皆可依据使用者对于计算效率以及精准度需求而折衷选择。首先,关于误差度量机制。在视频压缩技术中,目前使用最广泛的方法为绝对误差总和(SAD),其实现方法如图2所示将当前宏块220的每一个像素与备选宏块210的对应像素进行绝对误差计算,得到像素间绝对误差230。当前宏块220上所有像素位置的绝对误差230求和,即可得到当前宏块220与备选宏块210之间的误差度量。在度量误差时,还包含有一个内在因素宏块尺寸。适当的宏块尺寸,可以有效提高运动矢量的精准度。在早期视频压缩标准中,如较为流行的MPEG2、MPEG4等,宏块的尺寸为16*16像素。在目前具有主导地位的视频压缩标准H. 264/AVC中,宏块的尺寸由固定改进为可变,其可变尺寸如图3所示(主要包括了 7种宏块尺寸):16*16像素宏块310,16*8像素宏块320,8*16像素宏块330,8*8像素宏块340(也称作亚宏块),8*4像素宏块350,4*8像素宏块360,4*4像素宏块370。其中后三者仅在8*8像素宏块340存在时可以使用。其次,关于搜索策略。MPEG2参考模型采取的是三步搜索(TSS) ;MPEG4参考模型采取的是钻石搜索(Diamondsearch);H. 264/AVC參考模型JM推荐的方法为非均匀多六边形网格搜索(UMHEX)和改进的预测式区域捜索(EPZS)。以上方法均为对应的视频压缩技术具体实现时普遍应用的方法。基于块匹配的运动估计技术,可以有效获取当前宏块在參考帧中最为相似的备选宏块,进而通过运动矢量和残差实现信息的压缩。但是,基于块匹配的运动估计是ー个计算量较大的过程,运动搜索技术即为解决这ー问题而产生的。特别的,当前流行的札264/AVC标准有效提高了视频压缩的精准度,然而其选用的7种宏块尺寸的不同组合方式,产生了复杂的匹配过程,使得运动估计时块匹配的计算量倍増。非均匀多六边形网格捜索(UMHEX)和改进的预测式区域捜索(EPZS)可在一定程度上缓解计算量过大的问题,但这仍是ー种单因素的改善方法。经实验测算,基于块匹配的运动估计计算量占到整个视频压缩计算量的30-70% (依不同情況)。若能结合误差度量机制进行改进,可进ー步改善视频压縮,尤其是运动估计方法的计算效率。如同前面所描述的,绝对误差总和是当前视频压缩技术中最为广泛使用的方法; 如图2所示,其误差度量方式是通过逐点计算获得的。基于宏块的运动估计技术,包括最流行的视频标准MPEG2、MPEG4、H. 264/AVC等,必然涉及大量的块匹配操作,产生巨大的计算量。特别的,H. 264/AVC标准采用如图3所示的7种宏块尺寸,不同宏块尺寸的不同组合方式将产生大量的宏块模式,误差度量的计算次数倍増。合理优化视频压缩中的块匹配计算过程,可以有效提高视频压缩技术的计算速度。本发明使用块积分预计算的方法,在误差度量时反复调用块积分的预计算结结果,从而大幅減少单次块匹配时误差度量所需计算量,而且本发明可经由ー个简单的算法产生。

发明内容
本发明的目的在于针对现有技术的不足,提供一种应用于视频压缩且基于块积分的快速运动估计方法。该方法对块匹配过程中大量出现的度量操作进行优化,从而实现快速运动估计。本发明的目的是通过以下技术方案来实现的一种应用于视频压缩且基于块积分的快速运动估计方法,它包括以下步骤(I)在视频压缩的运行过程中,取当前时刻需要被压缩的视频内容作为当前帧;对上一时刻压缩完毕的视频帧进行解码重构,所得视频内容作为參考帧;(2)将当前帧划分为多个n*n块,针对每个块进行积分的预计算,n为2或者4,得到当前帧的块积分;(3)取參考帧,针对每个像素,取其为左上顶点的n*n块,针对每个块进行积分的预计算;得到參考帧的块积分;(4)根据步骤2和步骤3所得的当前帧和參考帧的块积分,使用基于块的绝对误差总和度量当前宏块与备选宏块间的误差;(5)依据运动矢量捜索策略,选择匹配误差最小的运动矢量,完成运动估计依据所用运动矢量捜索策略给出的路径,逐一块匹配当前宏块和备选宏块,最终获得与当前宏块匹配误差最小的备选宏块,二者之间的位移即为压缩所需的运动矢量。本发明的有益效果是,本发明利用构造块积分,在运动估计前期进行预计算,运动估计过程中反复利用预计算的結果。本发明使得基于宏块的运动估计更加有效,从而提高视频压缩整体的计算效率。对比已有技术具有以下显著效果I.不同于运动矢量搜索策略技术对计算量的优化,本发明通过构造块积分,消除块匹配过程中大量误差度量时存在的计算冗余,可以显著提高块匹配本身的计算效率。2.该块匹配的误差度量方法可以与任何运动矢量搜索策略相结合,方便为现有的视频编解码系统采纳。


图I为现有运动估计技术的不意图;图2为现有的绝对误差总和方法的示意图;图3为视频压缩标准H. 264/AVC的7种宏块尺寸示意图;图4为本发明基于块积分的绝对误差总和的实施方式的示意图;图5为本发明运动估计方法的实施方式的流程图。
具体实施例方式在说明书及权利要求书中使用了某些词汇来称呼特定的元件。本领域的技术人员应可理解,硬件制造商可能会用不同的名词来称呼同一个元件。本说明书及权利要求书并不以名称的差异来作为区分元件的方式,而是以元件的功能差异来作为区分标准。在通篇说明书及权利要求书中所提及的“包含”是开放式词语,故应解释成“包含但不限定于”。在本发明的实施方式中,块的大小取为n*n像素,其中η为2或者4。该块尺寸的设置方法使得本发明可以与现有采纳MPEG2、MPEG4、H. 264/AVC等标准的视频编解码方案完全兼容。请参阅图4。图4所示为本发明构建块积分的实施方式的示意图。图中的希腊字母Sigma表示η*η块的积分430。假设预计算时,所有的参考帧410和当前帧420的块都进行了积分预计算,则进行一次误差度量所需的计算量为Μ次减法,M次绝对值,以及M-I次加法;Μ为宏块内块的数量。若采用图2所示的绝对误差总和,则进行一次误差度量所需的计算量为Ν次减法,N次绝对值,以及N-I次加法;Ν为宏块内像素的数量。根据本发明划分块的方式,若η=4,则有Ν=4*4*Μ,即宏块内像素数量是块数量的16倍。对应的,进行一次误差度量时,块方式的计算量是像素方式的1/16。由此可见,采取块方式下,误差度量的计算量大大降低。本发明的实施方式中,有两个代价首先,相比于绝对误差总和,本发明的代价之一是预计算代价。然而,参照图4,预计算仅需计算参考帧每一像素对应块积分430,以及当前帧宏块对应的块积分440。由于该计算是一次性的,且可重用的,对于运动估计方法整体无显著影响。其次,由于块匹配时采用的是基于块的绝对误差总和,相比于原始的绝对误差总和方式,精度会略有下降。本发明进行了实施方式的检测,当η=4时,将本发明的基于块积分的快速运动估计方法与基于像素的原始绝对误差总和的方法进行比较。结果表明,针对目前流行的H. 246/AVC标准,在分别采纳非均匀多六边形网格搜索(UMHEX)和改进的预测式区域搜索(EPZS)时,计算效率分别提高200%及70%;同时,两种方式下精度下降均在PSNR-0. 5db以内。科学研究表明,人类视觉对该精度损失程度不敏感。请参阅图5。图5所示为本发明运动估计方法的实施方式的方法流程图。本发明应用于视频压缩且基于块积分的快速运动估计方法包含有以下步骤步骤I :在视频压缩的运行过程中,取当前时刻需要被压缩的视频内容作为当前帧;对上一时刻压缩完毕的视频帧进行解码重构,所得视频内容作为参考帧。该步骤中,视频压缩可以采用MPEG2、MPEG4、H. 264/AVC等任何以宏块为基本编码单位的标准。解码重构过程如下宏块分为Intra和Inter两种类型。对于Intra宏块,先对压缩后的宏块数据进行熵解码,然后对获得的数据进行反量化以及反变换(MPEG2及MPEG4为反DCT变换,H. 264/AVC为反整数变换)即可获得重构数据。对于Inter宏块,压缩后的数据为残差和运动矢量,Inter宏块重构分三步第一步,对残差数据进行熵解码,然后进行反量化和反变换(MPEG2及MPEG4为反DCT变换,H. 264/AVC为反整数变换)以获得该宏块的残差块;第二步,根据运动矢量,在本宏块所对应的参考帧上获得预测块;第三步,将残差块与预测块相加,即可获得重构的Inter宏块。
步骤2 :将当前帧划分为多个n*n块,针对每个块进行积分的预计算,η为2或者4。该步骤是一个块匹配执行前的预计算过程。首先将当前帧划分为多个η*η的图像块(η为2或者4,在MPEG2、MPEG4、H. 264/AVC标准中建议选择数值4)。对每个图像块进行积分——对图像块内所有像素位置的灰度进行求和运算,获得图像块的灰度值总和,即积分值。具体公式如下
η ηs = ΣΣ5(0);
/=1 /=1其中S为积分值,B为图像块。该步骤预计算完成后,可得积分图贞,其分辨率为(w/n) X (h/n), w为当前巾贞像素宽度,h为当前巾贞像素高度,其每一像素位置上的数值为所划分的像素块的积分值。步骤3 :取参考帧,针对每个像素,取其为左上顶点的n*n块,针对每个块进行积分的预计算,η为2或者4。该步骤同样是一个块匹配执行前的预计算过程,积分计算过程与步骤2相似。与步骤2不同之处在于,步骤2是在较低的空间分辨率上进行积分(逐块),该步骤是在较高的空间分辨率上进行积分(逐像素)。其原因是运动估计(图I所示)搜索运动矢量时,参考帧110被扫描,该扫描分辨率是逐像素的。该步骤中,像素块是以参考帧图像中每一像素为左上顶点的η*η块。该步骤预计算完成后,可得积分图其分辨率为wXh, w为参考巾贞像素宽度,h为参考帧像素高度,其每一像素位置上的数值为像素块的积分值。步骤4 :根据步骤2和步骤3所得的当前帧和参考帧的块积分,使用基于块的绝对误差总和度量当前宏块与备选宏块间的误差。该步骤描述一次块匹配计算的过程。取当前帧的当前宏块和参考帧的备选宏块。当前宏块是当前帧中需要进行运动估计的宏块,备选宏块是参考帧中依搜索策略选择(见步骤5)的用于匹配的宏块。当前宏块与备选宏块间的误差D通过下面的公式进行度量
ο=ΣΣΙ%· (A j) —(i x n, J x 巧)|;
i j其中i,j为当前宏块在贞中所覆盖的像素块积分值的位置索引;,J-为备选宏块在S 贞中所覆盖的像素块积分值的位置索引,其选取由运动搜索策略决定(见步骤5)。步骤5 :依据选定的运动矢量捜索策略,选择匹配误差最小的运动矢量,完成运动估计。此处的运动矢量捜索策略可以为任意方法。 该步骤中,运动矢量捜索策略可以采用所属视频压缩标准采纳的方案。通常,MPEG2为三步搜索(TSS)、MPEG4为钻石搜索(Diamond search),H. 264/AVC为非均匀多六边形网格搜索(UMHEX)和改进的预测式区域搜索(EPZS)。依据所用搜索策略给出的路径,逐ー块匹配当前宏块和备选宏块,最終获得与当前宏块匹配误差最小的备选宏块,二者之间的位移即为压缩所需的运动矢量。根据本发明的实施方式,其掲示一种应用在视频压缩且使用块积分的快速运动估计方法。获取当前帧,执行块划分;对上述块执行块积分;获取參考帧,对其所有像素逐一执行块积分;获取当前帧的当前宏块;对參考帧的备选宏块与上述当前宏块执行块匹配操作,其中上述块匹配操作包含有根据块积分对上述当前宏块和上述备选宏块进行误差度量。每ー块的大小为n*n像素,且每ー块为积分的基本単元。块匹配操作的误差度量衍生自上述块积分,包含有误差度量算法的最小単位为块;误差度量公式为基于块的绝对误差总和。块匹配操作匹配的对象为宏块,包含有MPEG2、MPEG4规定的宏块尺寸;H. 264/AVC规定的宏块尺寸。
权利要求
1.一种应用于视频压缩且基于块积分的快速运动估计方法,其特征在于,它包括以下步骤 (1)在视频压缩的运行过程中,取当前时刻需要被压缩的视频内容作为当前帧;对上一时刻压缩完毕的视频帧进行解码重构,所得视频内容作为参考帧; (2)将当前帧划分为多个n*n块,针对每个块进行积分的预计算,n为2或者4,得到当前帧的块积分; (3)取参考帧,针对每个像素,取其为左上顶点的n*n块,针对每个块进行积分的预计算;得到参考帧的块积分; (4)根据步骤2和步骤3所得的当前帧和参考帧的块积分,使用基于块的绝对误差总和度量当前宏块与备选宏块间的误差; (5)依据运动矢量搜索策略,选择匹配误差最小的运动矢量,完成运动估计依据所用运动矢量搜索策略给出的路径,逐一块匹配当前宏块和备选宏块,最终获得与当前宏块匹配误差最小的备选宏块,二者之间的位移即为压缩所需的运动矢量。
2.根据权利要求I所述应用于视频压缩且基于块积分的快速运动估计方法,其特征在于,所述步骤I中,所述解码重构过程具体如下宏块分为Intra和Inter两种类型;对于Intra宏块,先对压缩后的宏块数据进行熵解码,然后对获得的数据进行反量化以及反变换即可获得重构数据;对于Inter宏块,压缩后的数据为残差和运动矢量,Inter宏块重构分三步第一步,对残差数据进行熵解码,然后进行反量化和反变换以获得该宏块的残差块;第二步,根据运动矢量,在本宏块所对应的参考帧上获得预测块;第三步,将残差块与预测块相加,即可获得重构的Inter宏块。
3.根据权利要求I所述应用于视频压缩且基于块积分的快速运动估计方法,其特征在于,所述步骤2包括以下子步骤 (2. I)将当前帧划分为多个n*n的图像块; (2. 2)对每个图像块进行积分对图像块内所有像素位置的灰度进行求和运算,获得图像块的灰度值总和,即积分值;具体公式如下 1=1 j=i 其中,S为积分值,B为图像块,i,j分别为像素位置的行索引和列索引;(2. 3)步骤2. I和2. 2完成后,可得积分图S 贞,其分辨率为(w/n) X (h/n),w为当前帧像素宽度,h为当前帧像素高度,其每一像素位置上的数值为所划分的像素块的积分值。
4.根据权利要求I所述应用于视频压缩且基于块积分的快速运动估计方法,其特征在于,所述步骤3包括以下子步骤 (3. I)以参考帧图像中每一像素为左上顶点的n*n块; (3. 2)对每个图像块进行积分对图像块内所有像素位置的灰度进行求和运算,获得图像块的灰度值总和,即积分值;具体公式如下 s = HB(Uh !=1 J=I 其中,S为积分值,B为图像块,i, j分别为像素位置的行索引和列索引; (3. 3)步骤3. I和3. 2完成后,可得积分图S贞,其分辨率为wXh, w为参考巾贞像素宽度,h为参考帧像素高度,其每一像素位置上的数值为像素块的积分值。
5.根据权利要求I所述应用于视频压缩且基于块积分的快速运动估计方法,其特征在于,所述步骤4具体为取当前帧的当前宏块和参考帧的备选宏块,当前宏块是当前帧中需要进行运动估计的宏块,备选宏块是参考帧中依搜索策略选择的用于匹配的宏块;当前宏块与备选宏块间的误差D通过下面的公式进行度量 其中,i,j分别为当前宏块在Ssim中所覆盖的像素块积分值的位置的行索引和列索弓l,i',j'分别为备选宏块在S贞中所覆盖的像素块积分值的行索引和列索引。
全文摘要
本发明公开了一种应用于视频压缩且基于块积分的快速运动估计方法,该方法包含获取当前帧,执行块划分;对上述块执行块积分。获取参考帧,对其所有像素逐一执行块积分,获取当前帧的当前宏块;对参考帧的备选宏块与上述当前宏块执行块匹配操作,其中上述块匹配操作包含有根据块积分对上述当前宏块和上述备选宏块进行误差度量;本发明对基于宏块运行运动估计的视频压缩方法可优化计算效率,同时保持视频压缩质量。
文档编号H04N7/26GK102801982SQ201210327840
公开日2012年11月28日 申请日期2012年9月7日 优先权日2012年9月7日
发明者李娜, 詹小四 申请人:浙江外国语学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1