一种基于cfrfs数字视频压缩编码的方法

文档序号:7645443阅读:180来源:国知局
专利名称:一种基于cfrfs数字视频压缩编码的方法
技术领域
本发明涉及一种基于CFRFS数字视频压縮编码的方法,具体来说, 涉及一种在数字视频压縮编码中利用具有近圆形可伸縮环搜索模板的快 速搜索算法,通过改善运动估计的效率来提高编码器性能的方法。
背景技术
视频序列实际上是一个静止图像的序列,当它们以每秒不小于24帧 的速度连续显示的时候,由于人眼的视觉暂留效应,看起来就是连续的 图像。因此,在一般情况下,相邻帧间的内容实际相差不多(除了场景 切换等),有很大一部分甚至是完全一样的,所以帧与帧之间存在着很大 的时间相关性,即时间冗余(Temporal Redundancy)。早在视频图像出现 的时候,人们就己经意识到视频信号在时间域上存在着冗余,多年以来, 人们一直不断在数字图像压縮的领域进行研究,并在理论和实际应用中 都取得了很大的成果,目前在视频编码技术中主要包括三大类运动补 偿以去除时间域的冗余;变换编码以去除空间域的冗余;熵编码以去除 统计上的冗余。通过运动估计可以有效的去除时间冗余,保留帧间的有 用信息,大幅度提高视频压縮的效率。运动估计的效率高低将对压縮全 过程产生重大影响。运动估计的作用就是要尽量使预测的运动矢量精确, 以减少帧与帧之间的冗余,并使重建的图像接近原始图像。
目前,国际电信联盟(ITU)和国际标准化组织(ISO)公布的视频 压縮编码标准有MEPG系列以及H,26x系列。这些压縮标准的实现,首 先是要去除视频序列中的空间和时间上的冗余。DCT变换是一种无损恢 复的可逆数学变换,所以经常被用在去除视频信号的空间冗余上;在去 除视频信号的时间冗余上,则是通过运动估计和运动补偿来完成。运动 估计对编码器的性能的影响十分的明显,有实验表明在搜索范围为16时, 运动矢量搜索占用了 93%的CPU时间。可见运动估计在整个编码过程 中消耗时间最多。因此,运动估计速度的提高是整个编码速度提高的关 键。此外,由运动补偿原理可知,所寻找的运动矢量是否精确,将对恢 复图像的质量产生决定性影响。
由于运动估计中的块匹配法在算法时间复杂度和预测精度上都有较 好的表现,故目前的视频压縮算法如MEPG-1, MEPG-2, MEPG-4以 及H.264等都采用基于块匹配的运动估计算法来进行运动矢量的预测。 因此,寻找更加快速,更加精确的块匹配运动估计算法,仍然是人们不 断努力追逐的目标。
基于块匹配的运动估计方法,假设图像序列的最小运动单位是若干 相邻像素的集合(即块,Block)。根据先验的运动模型在相邻帧间进行全 匹配,计算最优匹配下的块运动参数,从而得到运动场的粗略估计。基 于块匹配的运动估计算法的性能取决于以下三个因素l.搜索策略;2.匹 配准则;3.搜索范围参数。其复杂度亦由上述三个因素决定。显然,通过 选择适当的搜索策略、减少匹配准则的复杂性或縮短搜索距离可以降低 块匹配算法的复杂性。这就决定了基于块匹配的运动估计算法研究必须 解决以下几个问题搜索起点的选择、匹配准则、块匹配算法(BMA)。为了更好地理解本发明的原理,有必要对块匹配法的原理、块匹配 准则作一下回顾。块匹配法是一种非常直观的运动估计算法,它是基于 平移运动的假设来进行运动估计的。在平移运动中,物体上的每一点均 有相同的速度大小和方向,在物体运动的轨迹上,当前时刻所处的位置 是由前一时刻位置偏移得到的。将当前帧划分为互不重叠的二维像素子
块,(例如每块16X16像素),假定每个子块内的像素都做相等的平移运 动,在其相邻帧中相对应的几何位置周围的一定范围内,通过某种匹配 准测,寻找这些像素子块的最佳匹配块。 一旦找到,便将最佳匹配块与 当前块的相对位移(dx, dy),即通常所说的运动矢量(Motion Vector, MV)送出,并传输到接收端。图l给出了块匹配法的原理图。
从块匹配算法的原理可以看到,算法有两个问题需要解决匹配准
则和运动估计方式。运动估计算法中常用的匹配准则有三种平均绝对
误差MAD (Mean Absolute Difference)、均方误差MSE (Mean Square Error)和归一化互相关函数NCCF (Normalized Cross Correlation Fimction)。在一些应用中也使用子采样匹配准则。子采样匹配准则大大 降低了计算复杂度,运算量只有原来的1/4,在一些多候选点算法中,可 以采用子采样匹配准则。匹配准则对匹配的精度影响不是很大。其中SAD 因为不含乘除法便于计算和易于硬件实现,所以获得广泛应用。
目前已经有许多基于块匹配的运动估计算法,如全搜索算法、二 维对数搜索算法、三步搜索算法、新三步搜索算法、四步搜索算法、菱 形搜索算法、六边形搜索算法等,其中由于菱形搜索(Diamond Search, DS)算法的优越性能,该算法已被MPEG-4VM接受。随着MPEG-4的 发展,提出了基于视频对象VO (Video Object)的编码方式。VO是根据
人眼感兴趣的一些特征,如自然视频对象、Sprite对象、2D和3D网格对 象、3D人脸和身体对象、静态纹理对象等等,将图像帧看作不同的VOP (Video Object Plane)组成。因此新的运动估计研究必须是要基于VO的, 这就对现有的算法提出了新的挑战。
UMHexagonS (非对称十字型多层次六边形格点搜索)算法是一种基 于整像素的运动估计算法。它相对于H.264/AVS原有的快速搜索算法可 以节省约卯%的运算量,并且在高码率、大运动的图像序列编码时,可 以保持较好的失真率。由于其良好的性能,该算法目前已经被11264/八¥8 标准正式采用。UMHexagonS算法是一种多层次、分等级的搜索方法, 它包含了四种不同的搜索模式l)初始搜索点的预测;2)非对称十字型 搜索;3)非均匀多层次六边形格点搜索;4)扩展六边形搜索。 UMHexagonS算法搜索过程如图2所示。虽然UMHexagonS算法的性能 非常优越,但其中的第二、三步的搜索点还是非常的多,造成了搜索上 的冗余,而且其每步都使用了不同的搜索模板,和设定了不同的阈值作 为提前终止的判定,使得算法的复杂度大大提高。

发明内容
针对以上的不足,本发明提出了一种基于CFRFS数字视频压縮编码 的方法,在编码过程中,首先用基于块的运动估计算法根据已经编码的 参考帧对块进行预测,得到的运动矢量确定当前块和最佳匹配块之间的 位移;然后,对预测误差进行正交变化并量化变化后得到的系数;最后 用可变长编码把量化后得到的系数转化为二进制码字。本发明在原有的 UMHexagonS算法的基础上,通过不同模板的选择,减少算法的搜索点,
在保证精确度的情况下,以期达到更快的搜索速度。
针对UMHexagonS算法的缺点,本发明在以下几个方面做出了改进: 初始搜索范围的选择本发明提出了在块匹配搜索的初始阶段使用
中心菱形区域的搜索模板。我们选择的菱形半径为2,使用这种模板既可
以保证较小的误差,又可以大大减少搜索点数。
近圆形算法模板的选择通过对多种搜索算法模板的比较,我们可 以得到这样一种结论从方形模板到菱形模板再到六边形模板,其形状 依次逼近圆形,其搜索的性能也依次提高。本发明提出一种由八个点组 成的近圆形的搜索模板,近圆形模板的半径还可以根据图像运动的特点 来选取,用于满足不同剧烈程度的图像运动需求。
可伸縮环的搜索根据不同剧烈程度的图像运动,近圆形模板分为 内外两种不同大小的环。内环的小圆形模板半径为RA,大圆形模板的半 径为Rb,根据阈值比较的结果选择合适大小的模板进行下一步的搜索。
阈值的设定阈值设定的基本原则是"足够好就停止搜索"。在搜索 的过程中,不一定要求每次都要找到最精确的匹配点,允许一定程度的 误差,对最终结果的影响有可能是微不足道的,但却会令搜索的速度有 较大的提高。本发明的算法中,在提前终止和可伸縮模板的选择上都要 用到阈值的设定。(1)提前终止准则首先对预测搜索中心进行小菱形
搜索,得到最小的SAD点,同时设定一个可以调整的阈值TA,如果该 SAD但小于Ta,则可以认为该点是最佳匹配点,停止搜索,得到运动矢 量。(2)可伸縮模板选择准则如果上一步所得的SAD值不小于阈值TA, 则需要进行进一步的搜索,设定另一个阈值TB,如果Ta^SAD〈Tb,则下 一步搜索选择小圆形模板;如果SAD^TB,则下一步搜索选择大圆形模板。
本发明的有益效果实验表明,本发明提出的基于CFRFS数字视频 压縮编码的方法与UMHexagonS方法在图像质量上有相近的效果,但是 在速度上有显著的提高,因此该方法对于数字视频领域具有重要意义, 在网络实时视频监控等实时性要求较高的视频压縮编码领域将会有相当 广泛的应用。


图1为块匹配法的原理示意图; 图2为UMHexagonS算法的搜索过程示意图; 图3为一个在5X5正方形区域内的运动矢量分布情况示意图; 图4为中心菱形模板和5X5正方形模板中运动矢量的分布情况对比 示意图5为六边形搜索模板和圆形搜索模板的对比示意图6为一个可伸縮的圆形模板示意图7为CFRFS算法起始点预测过程的示意图8为CFRFS算法中心菱形搜索过程的示意图9为CFRFS算法近圆形模板的选择示意图10为CFRFS算法中进行六边形搜索和小菱形搜索的过程示意图11为CFRFS算法的一种可能的搜索过程示意图12为一个典型的视频压縮编码模型示意图13为CFRFS算法的流程图:其中,stepl为采用中值预测法预测 初始搜索点;step2为对预测点进行中心菱形搜索,找出最小SAD的点, 以此作为MBD点;step3为该MBD点的SAD值小于阈值TA; step4为该MBD点的SAD值小于阈值TB; step5为以此MBD点为中心, 使用半径为RA的小圆形进行搜索,找出最小SAD的点,将此点作为下 一步搜索的MBD点;step6为以此MBD点为中心,使用半径为RB的 大圆形进行搜索,找出最小SAD的点,将此点作为下一步搜索的MBD 点;step7为以上一步MBD点为中心,进行六边形搜索,并找出本步 的MBD点;step8为以上一步得到的MBD点为中心,进行小菱形搜 索,直到SAD值最小的点位于菱形的中心位置时,则该点就是本步的 MBD点,也是本次搜索的最佳匹配点,搜索停止;Step9为根据搜索 得到的运动矢量,计算最终的运动矢量。
具体实施例方式
下面结合附图对本发明进行进一步阐述。
一种基于CFRFS数字视频压縮编码的方法,它以UMHexagonS算法 (如图2所示)为基础,改进了现有块匹配运动估计算法(如图1所示), 提出了一种具有近圆形可伸縮环搜索模板的快速搜索算法。 本发明在以下几个方面做出了改进
初始搜索范围的选择本发明提出了在块匹配搜索的初始阶段使用 中心菱形区域的搜索模板。我们选择的菱形半径为2,即图3所示的A、 B、 C禾BD,在此范围内运动矢量的分布概率总和为77.526°/。,超过了 3/4 的覆盖面。使用这种模板既可以保证较小的误差,又可以大大减少搜索 点数。中心菱形搜索的点数只有13个,与UMHexagonS算法所选择的中 心5X5区域全搜索相比减少了 12个,搜索点数减少将近一半,而运动 矢量分布概率只减少了4°/。左右,如图4所示。这种只牺牲极少的精度来 大幅度提高速度的改进是非常有价值的。
近圆形算法模板的选择通过对多种搜索算法模板的比较,我们可 以得到这样一种结论,从方形模板到菱形模板再到六边形模板,其形状 依次逼近圆形,其搜索的性能也依次提高。虽然有统计表明水平方向的 运动比垂直方向的运动相对要多,但是现实中的视频序列具有不确定性, 在运动类型不确定的情况下,各个方向的运动也是有可能的。因此越近 似于圆形的搜索模式会越有利于运动方向的确定,特别是对于搜索的第 一步,圆形的搜索模式可以很好的避免陷入局部最优匹配中。根据这个 推论,在理想状态下,圆形的搜索模板由于具有各向同性,将会达到最 好的搜索效果。因此若能找到一种搜索点更少且接近于圆形的分布的搜 索模板,那么各个搜索点之间信息冗余将会大大减少。因此,本发明提 出一种由八个点组成的近圆形的搜索模板,如图5所示,近圆形模板的 半径还可以根据图像运动的特点来选取(图5中圆形的半径为3),用于 满足不同剧烈程度的图像运动需求。
可伸縮环的搜索根据不同剧烈程度的图像运动,近圆形模板分为 内外两种不同大小的环。内环的小圆形模板半径为RA,大圆形模板的半 径为RB,根据阈值比较的结果选择合适大小的模板进行下一步的搜索,
如图6所示。该搜索策略虽然不能达到像UMHexagonS算法的多层次六 边形搜索那种逐渐逼近的效果,但通过适当的阈值选取和圆形模板半径 的选取就可以很好的弥补这种不足,而且相对于UMHexagonS算法来说, 搜索点的数量大大的减少了,搜索速度可以得到很大的提高。
阈值的设定阈值设定的基本原则是"足够好就停止搜索"。在搜索 的过程中,不一定要求每次都要找到最精确的匹配点,允许一定程度的
误差,对最终结果的影响有可能是微不足道的,但却会令搜索的速度有 较大的提高。阈值的设定是通过牺牲精确度来提高速度,但这种精确度 的降低是在可容忍范围内的。本发明的算法中,在提前终止和可伸縮模 板的选择上都要用到阈值的设定。(1)提前终止准则首先对预测搜索 中心进行小菱形搜索,得到最小的SAD点,同时设定一个可以调整的阈
但Ta,如果该SAD值小于TA,则可以认为该点是最佳匹配点,停止搜 索,得到运动矢量。(2)可伸縮模板选择准则如果上一步所得的SAD 值不小于阈值TA,则需要进行进一步的搜索,设定另一个阈值TB,如果 TA£SAD<TB,则下一步搜索选择小圆形模板;如果SAD^TB,则下一步 搜索选择大圆形模板。
CFRFS算法的流程如下
第一步采用中值预测法,由当前块的三个相邻块决定预测的运动
矢量MVpred,预测得到的点将作为下一步的搜索起始点。如图7所示。
第二步对预测点进行中心菱形搜索,如图8所示,找出最小SAD 的点,以此作为MBD点。对SAD值与TA进行比较,若SAD值小于阈 信Ta,则使用提前终止技术,停止搜索,得到的MBD点就是最佳匹配 块。否则,对SAD值与TB进行比较,若SAD小于阈值TB,则下一步搜 索使用半径为RA的小圆形模板进行搜索;否则,使用半径为RB的大圆 形模板进行搜索,如图9所示。这种选择既保证了小运动矢量的搜索, 又能满足运动比较剧烈的大运动矢量的搜索。
第三步以上一步得到的MBD点为中心,使用小圆形模板(或大圆 形模板)进行搜索,如图9所示。得到的SAD值最小的点就是该步的 MBD点,将作为下一步的搜索中心。 第四步以上一步得到的MBD点为中心,进行六边形搜索(假设上 一步判断得到的是小圆形模板搜索),如图10所示。直到SAD值最小的 点位于六边形的中心位置时,则该点就是该步的MBD点,将作为下一步 的搜索中心。
第五步以上一步得到的MBD点为中心,进行小菱形搜索,如图 IO所示。直到SAD值最小的点位于菱形的中心位置时,则该点就是该步 的MBD点,也是本次搜索的最佳匹配点,搜索停止。
搜索得到的运动矢量为MVse^h,最终的运动矢量由下式表示
MV=MVpred+MVSewh
图11给出了 CFRFS算法的一种可能的搜索过程(小圆形的半径R^4,
大圆形R^6),根据上述流程可以得到整个算法的流程图,如图13所示。
根据算法步骤,可以得到CFRFS算法每次匹配的搜索点数 13 第二步搜索找到匹配点
13+8+3ih+3+An2+l 其他
式中,n,是执行大六边形搜索的次数,n2是执行小菱形搜索的次数, A等于2或3,由小菱形搜索的方向决定。
作为比较,六边形搜索(Hexagon-based Search, HEXBS)算法每次 匹配的搜索点数是7+3n+4,其中n是大六边形搜索的次数。虽然CFRFS 算法在不进行提前终止时的搜索点要比HEXBS算法多,但是有超过77% 的匹配点是集中在半径为2的中心菱形范围内的。因此,只要选择适当 的提前终止判定阈值TA,就可以保证大部分的搜索满足提前终止的条件, 从而大大减少搜索点,提高搜索速度。
在视频图像领域中,图像常用的色彩空间有YUV、 RGB、 YIO等几
13
搜索点数=
种,其中的YUV色彩空间能把图像的大部分信息集中到亮度分量Y上, 而把小部分的信息集中在色度分量U和V上。这样Y、 U、 V三个分量 的相关性很小,可以分别对它们进行编码而不会影响图像质量。由于YUV 色彩空间的这个优点,其被多种图像处理算法所采用。本发明的运动估 计技术的实现也是针对YUV空间的图像序列进行的。因此对于读取进来 的图像,首先要对其所采用的色彩空间进行判断。如果是YUV格式,则 不需要转换,否则就需要进行转换,将其变换到YUV色彩空间中。
YUV的格式4: 4: 4, 4: 2: 2,和4: 2: 0有三种,本发明使用的
格式是YUV4: 2: 0,使用二进制读取原始图像的数据,对于其中的U、 V分量,要减去128后才能得到真正的数据。
图12给出了一个典型的视频编码模型,在编码过程中,首先用基 于块的运动估计算法根据已经编码的参考帧对块进行预测,得到的运动 矢量确定当前块和最佳匹配块之间的位移;然后,对预测误差进行正交 变化并量化变化后得到的系数;最后用可变长编码把量化后得到的系数 转化为二进制码字。
基于CFRFS数字视频压缩编码的方法其基本步骤与图12相同,只 是对其中的运动估计方法进行了改进,采用了一种近圆形可伸縮环的快 速搜索方法。下面将通过图11中的具体例子着重对本发明中的运动估计 方法作进一步地阐述。首先对图像的格式进行转化,得到正确的图像格 式之后,就要对图像进行分块,其中的Y、 U、 V分量分别进行划分,本 算法使用8X8大小的宏块来进行块匹配。获取当前块的相邻8X8宏块 并判断其合法性。使用中值预测法,由当前块的三个相邻块决定预测的 运动矢量MV。red,预测得到的点将作为下一步的搜索起始点。然后对得 到的预测点的中心菱形内的13个点(见图11中第二步的搜索点)进行 搜索,找出最小SAD的点,以此作为MBD点。将该点的SAD值与阈值 Ta迸行比狡,若SAD值小于阈值TA,则使用提前终止技术,停止搜索, 得到的MBD点就是最佳匹配块;否则,再将此点的SAD值与阈值TB 进行比较若SAD小于阈值TB,则以该MBD点为中心,使用半径为 RA的小圆形模板进行搜索;否则,以该MBD点为中心,使用半径为RB 的大圆形模板进行搜索。图ll所示的例子中选择的是小圆形模板,圆形 模板的半径选择为1^=4和1^=6。本步操作以后,从图ll第三步的搜索 点中得到SAD值最小的点,将此点作为MBD点,它是下一步的搜索中 心。接下来以上一步得到的MBD点为中心,进行六边形搜索(见图U 中第四步的搜索点),直到SAD值最小的点位于六边形的中心位置时, 则该点就是本步的MBD点,将作为下一步的搜索中心。最后,以上一步 得到的MBD点为中心,进行小菱形搜索(见图11中第五步的搜索点), 直到SAD值最小的点位于菱形的中心位置时,则该点就是本步的MBD 点,也是本次搜索的最佳匹配点,此时搜索停止。将搜索得到的运动矢 量进行转化以后就得到最终的运动矢量。
权利要求
1、一种基于CFRFS数字视频压缩编码的方法,在编码过程中,首先用基于块的运动估计算法根据已经编码的参考帧对块进行预测,得到的运动矢量确定当前块和最佳匹配块之间的位移;然后,对预测误差进行正交变化并量化变化后得到的系数;最后用可变长编码把量化后得到的系数转化为二进制码字,其特征在于,它以原有的运动估计算法为基础,提出了一种具有近圆形可伸缩环搜索模板的快速搜索算法,其主要步骤包括step1为采用中值预测法预测初始搜索点;step2为对预测点进行中心菱形搜索,找出最小SAD的点,以此作为MBD点;step3为该MBD点的SAD值小于阈值TA;step4为该MBD点的SAD值小于阈值TB;step5为以此MBD点为中心,使用半径为RA的小圆形进行搜索,找出最小SAD的点,将此点作为下一步搜索的MBD点;step6为以此MBD点为中心,使用半径为RB的大圆形进行搜索,找出最小SAD的点,将此点作为下一步搜索的MBD点;step7为以上一步MBD点为中心,进行六边形搜索,并找出本步的MBD点;step8为以上一步得到的MBD点为中心,进行小菱形搜索,直到SAD值最小的点位于菱形的中心位置时,则该点就是本步的MBD点,也是本次搜索的最佳匹配点,搜索停止;Step9为根据搜索得到的运动矢量,计算最终的运动矢量。
2、 根据权利要求1所述的基于CFRFS数字视频压縮编码的方法, 其特征在于,所述l)中中心菱形区域搜索模板的菱形半径为2。
3、 根据权利要求1所述的基于CFRFS数字视频压縮编码的方法, 其特征在于,所述2)中近圆形模板的半径根据图像运动的特点来选取。
4、 根据权利要求1所述的基于CFRFS数字视频压縮编码的方法, 其特征在于,所述4)中阈值的设定标准为(1) 提前终止准则首先对预测搜索中心进行小菱形搜索,得到最 小的SAD点,同时设定一个可以调整的阈值TA,如果该SAD值小于TA, 则可以认为该点是最佳匹配点,停止搜索,得到运动矢量;(2) 可伸縮模板选择准则如果上一步所得的SAD值不小于阈值 TA,则需要进行进一步的搜索,设定另一个阈值TB,如果T^SAD〈Tb, 则下一步搜索选择小圆形模板;如果SAD^Tb,则下一步搜索选择大圆形 模板。
全文摘要
本发明公开了一种基于CFRFS数字视频压缩编码的方法,利用具有近圆形可伸缩环搜索模板的快速搜索算法,通过改善运动估计的效率来提高编码器性能。在编码过程中,首先用基于块的运动估计算法根据已经编码的参考帧对块进行预测,得到的运动矢量确定当前块和最佳匹配块之间的位移;然后,对预测误差进行正交变化并量化变化后得到的系数;最后用可变长编码把量化后得到的系数转化为二进制码字。利用本发明提出的基于CFRFS数字视频压缩编码的方法在速度上有显著的提高,因此该方法对于数字视频领域具有重要意义,在网络实时视频监控等实时性要求较高的视频压缩编码领域将会有相当广泛的应用。
文档编号H04N7/26GK101184233SQ200710032399
公开日2008年5月21日 申请日期2007年12月12日 优先权日2007年12月12日
发明者徐柏群, 汤子成, 罗笑南 申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1