基于块内降采样的avs-m视频编码快速运动估计方法

文档序号:7644862阅读:336来源:国知局
专利名称:基于块内降采样的avs-m视频编码快速运动估计方法
技术领域
本发明涉及多媒体应用中的视频压缩技术领域,特别涉及一种基于块内降采样的AVS-M视频编码快速运动估计方法。所述“AVS-M”全称为“数字音视频移动多媒体国家标准”。
背景技术
自1948年C.E.Shannon提出信源编码理论以来,人们对图像压缩编码技术进行了广泛的研究。经过近六十年的研究和发展,出现了大量的视频压缩技术和方法,包括预测编码、矢量编码、变换编码、熵编码、基于对象的形状编码以及小波变换编码、分形编码等。根据视频压缩方法所采用的信源模型,这些压缩技术可以分为两大类基于内容的编码方法和基于波形的编码方法。
基于波形的编码采用了把预测编码和变换编码组合起来的基于块的混合编码方法。为了减少编码的复杂性,使视频编码操作易于执行,采用混合编码方法时,首先把一幅图像分成固定大小的块,例如块8×8(即每块8行,每行8个象素)、块16×16(每块16行,每行16个象素)等等,然后对块进行压缩编码处理。
预测编码是数据压缩最有效的手段之一。视频中一帧图像内的数据相关性使得对于某个数据块可以利用其相邻块的数据信息进行预测,仅保留原始象素与预测象素之差,从而减小或消除空间冗余,此为帧内预测;视频中相邻图像帧之间的时间相关性使得数据块可以利用其相邻图像帧(参考帧)进行预测,仅保留原始象素与预测象素之差,消除或减小空间相关性,此为帧间预测。
通常,在实现帧间预测时,对于每一个块划分,需要在参考帧中相应的搜索范围内查找最匹配的参考块,确定最匹配的块的准则主要有MSE(MeanSquared Error)、MAE(Mean Absolute Error)和SAD(Sum of AbsoluteDifference)三种,其定义分别如式(1)、(2)和(3)式所示。
MSE=1N2Σi=0M-1Σj=0N-1(Ci,j-RMV(i,j))2---(1)]]>MAE=1N2Σi=0M-1Σj=0N-1|Ci,j-RMV(i,j)|---(2)]]>
SAD=Σi=0M-1Σj=0N-1|Ci,j-RMV(i,j)|---(3)]]>其中,C表示待编码视频帧中的象素点的值;R表示参考帧中的象素点的值;M、N分别表示块大小中的象素点行数和列数,i、j分别表示第一个求和号的行取值和第二个求和号的列取值;MV(i,j)表示在参考帧中相对于(i,j)的位置偏移。
相对而言,SAD准则最为简单,在H.261、H.263、H.264和MPEG-1、MPEG-2、MPEG-4等国际食品压缩标准中都推荐使用SAD准则。虽然采用SAD准则较其他准则简单,但在匹配过程中,计算量还是非常大的,这主要是因为以下几点1、块匹配过程中,每个宏块(大小为16×16)需要划分成多种子块模式(例如16×16、16×8、8×16、8×8)进行搜索;2、每种块划分要在参考帧的给定范围内进行搜索,这个范围导致每个块的匹配搜索次数随着搜索点的增加而增加;3、通常运动搜索要在多于一个参考帧中进行。
以CIF格式(大小为352×288)的视频编码为例,若考虑四种块划分模式(例如16×16、16×8、8×16、8×8),在参考帧中的搜索范围为±32个象素点,参考帧为2帧,对于一帧视频,实现基于SAD准则的运动搜索需要做(22×18)×(33×33)×4×2=3449952次的减法操作、3449952绝对值操作和3449951次加法操作,对于帧率为25帧/秒的视频序列编码,计算量是相当庞大的。
在已有的运动搜索快速算法中,通常是通过采用某种及早停止准则,在搜索过程中尽可能的省略不可能是最优匹配的搜索点和块划分模式的方法。即使这样做由于在块内还是采用象素点全采样的方式进行运算,因此其计算量仍相当庞大。因此,如何从其它角度来减少搜索过程中的计算量,且所提出的算法可以很好地与现有的快速运动搜索算法结合,以进一步减小计算复杂性,是本发明作重研究的问题。

发明内容
本发明提供一种基于块内降采样的AVS-M视频编码快速运动估计方法,其目的是在保证编码质量与最优搜索算法相当的前提下降低运动搜索和块匹配的计算复杂度,减少搜索最优匹配块的软件执行时间,实现更高的编码效率。
为达到上述目的,本发明采用的技术方案是一种基于块内降采样的AVS-M视频编码快速运动估计方法,其创新在于在采用SAD准则进行块匹配的视频压缩算法中,对于所定义的任意一种矩阵排列的M×N象素块划分模式,通过块内间隔采样象素点的采样方式进行计算,即在块内象素点矩阵排列中,按间隔的方式对每行和每列中的象素点进行采样,并按下列公式(A)或者公式(B)进行计算SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A)]]>SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B)]]>式中,C表示待编码视频帧中的象素点的值;R表示参考帧中的象素点的值;M、N分别表示块大小中的象素点行数和列数,i、j分别表示第一个求和号的行取值和第二个求和号的列取值;MV(i,j)表示在参考帧中相对于(i,j)的位置偏移。
上述方案中所述象素块划分模式可以定义为以下四种之一(1)、M×N象素块划分模式为块16×16,即每块16行,每行16个象素。
(2)、M×N象素块划分模式为块16×8,即每块16行,每行8个象素。
(3)、M×N象素块划分模式为块8×16,即每块8行,每行16个象素。
(4)、M×N象素块划分模式为块8×8,即每块8行,每行8个象素。
本发明的主要思想是在采用SAD准则进行块匹配的视频压缩算法中,通过块内象素降采样来减小计算复杂性。在已有的采用SAD准则的运动搜索算法中,每一种块划分中的所有象素点都参与运算,而在本发明中,通过间隔采样象素点进行计算。
由于上述技术方案运用,本发明与现有技术相比具有下列优点和效果1、本发明相对于全采样SAD方法,是在不改变视频编码流程的框架的前提下有效减小计算量,因此仍然保留了SAD的特点。
2、本发明相对于全采样SAD方法,基于降采样的搜索算法的计算复杂性大大降低,降低幅度可以达到50%;峰值信噪比PSNR略微有所降低,但其视觉质量几乎没有变化;码率略微有所增加。总体上,编码效率有很大的提高。
3、将本方法应用于AVS-M(数字音视频移动多媒体国家标准)标准代码中块类型为16×16、16×8、8×16、8×8的块划分运动搜索并与全采样SAD方法进行实验对比测试,见图5~图8,可以验证本发明的优点和积极效果。


附图1(a)为块16×16的第一种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图1(b)为块16×16的第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图2(a)为块16×8的第一种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图2(b)为块16×8的第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图3(a)为块8×16的第一种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图3(b)为块8×16的第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图4(a)为块8×8的第一种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图4(b)为块8×8的第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。
附图5~图8为本发明与全采样SAD算法的对比测试结果图。其中,编码标准为AVS移动视频标准AVS-M,编码序列选择具有代表性的四个典型视型序列(一般在测试中使用)News、Foreman、Tempete和Football。编码帧数为250帧,帧率为30帧/秒。图中“Original”表示采用全SAD方法时的编码性能曲线,“Rapid”表示采用了降采样SAD方法编码时的编码性能曲线。
具体实施例方式
下面结合附图及实施例对本发明作进一步描述实施例一图1(a)为块16×16的第一种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。按照图1(a)所示,在采用SAD准则进行块匹配的视频压缩算法中,对于所定义的块16×16(即每块16行,每行16个象素)象素块划分模式,通过块内间隔采样象素点的采样方式进行计算,即在块内象素点矩阵排列中,按间隔的方式对每行和每列中的象素点进行采样,并按下列公式(A)进行计算SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A)]]>式中,C表示待编码视频帧中的象素点的值;R表示参考帧中的象素点的值;M、N分别表示块大小中的象素点行数和列数,i、j分别表示第一个求和号的行取值和第二个求和号的列取值;MV(i,j)表示在参考帧中相对于(i,j)的位置偏移。
由于第一和第二求和号的上限M、N分别取值16,公式(A)变为SAD′=Σi=07Σj=07(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A-1)]]>从以上公式(A-1)中可以看出,图1(a)采样象素点仅选择了块16×16全部象素点的一半,而且选取范围是行与列坐标以奇偶性不同进行组合,即行与列坐标两者中,一个为奇数,另一个为偶数,其核心是两者的奇偶性不同。
图1(b)为块16×16的第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。按照图1(b)所示,在采用SAD准则进行块匹配的视频压缩算法中,对于所定义的块16×16象素块划分模式,通过在块内象素点矩阵排列中,按间隔的方式对每行和每列中的象素点进行采样,并按下列公式(B)进行计算SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B)]]>式中,C表示待编码视频帧中的象素点的值;R表示参考帧中的象素点的值;M、N分别表示块大小中的象素点行数和列数,i、j分别表示第一个求和号的行取值和第二个求和号的列取值;MV(i,j)表示在参考帧中相对于(i,j)的位置偏移。
由于第一和第二求和号的上限M、N分别取值16,公式(B)变为SAD′=Σi=07Σj=07(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B-1)]]>从以上公式(B-1)中可以看出,图1(b)采样象素点仅选择了块16×16全部象素点的一半,而且选取范围是行与列坐标以奇偶性相同进行组合,即行与列坐标两者中,要么两者同时为奇数,要么两者同时为偶数,其核心是两者的奇偶性相同。
图1(a)与图1(b)的区别是在块内象素点矩阵排列中,对应行和对应列的采样象素点相反。
实施例二与实施例一的不同之处是所定义的象素块划分模式为块16×8,即每块16行,每行8个象素。
图2(a)和图2(b)分别为块16×8的第一种和第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。图2(a)与图2(b)的区别是在块内象素点矩阵排列中,对应行和对应列的采样象素点相反。
图2(a)采用的公式为SAD′=Σi=07Σj=03(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A-2)]]>图2(b)采用的公式为SAD′=Σi=07Σj=03(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B-2)]]>其它与实施例一相同,这里不再重复描述。
实施例三与实施例一的不同之处是所定义的象素块划分模式为块8×16,即每块8行,每行16个象素。
图3(a)和图3(b)分别为块8×16的第一种和第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。图3(a)与图3(b)的区别是在块内象素点矩阵排列中,对应行和对应列的采样象素点相反。
图3(a)采用的公式为SAD′=Σi=03Σj=07(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A-3)]]>图3(b)采用的公式为SAD′=Σi=03Σj=07(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B-3)]]>
其它与实施例一相同,这里不再重复描述。
实施例四与实施例一的不同之处是所定义的象素块划分模式为块8×8,即每块8行,每行8个象素。
图4(a)和图4(b)分别为块8×8的第一种和第二种象素点间隔降采样示意图,图中黑色的点表示参与SAD运算的象素点,无色的点不参与运算。图4(a)与图4(b)的区别是在块内象素点矩阵排列中,对应行和对应列的采样象素点相反。
图4(a)采用的公式为SAD′=Σi=03Σj=03(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A-4)]]>图4(b)采用的公式为SAD′=Σi=03Σj=03(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1,2j+1)|)---(B-4)]]>其它与实施例一相同,这里不再重复描述。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
权利要求
1.一种基于块内降采样的AVS-M视频编码快速运动估计方法,其特征在于在采用SAD准则进行块匹配的视频压缩算法中,对于所定义的任意一种矩阵排列的M×N象素块划分模式,通过块内间隔采样象素点的采样方式进行计算,即在块内象素点矩阵排列中,按间隔的方式对每行和每列中的象素点进行采样,并按下列公式(A)或者公式(B)进行计算SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j+1-RMV(2i,2j+1)|+|C2i+1,2j-RMV(2i+1,2j)|)---(A)]]>SAD′=Σi=0M2-1Σj=0N2-1(|C2i,2j-RMV(2i,2j)|+|C2i+1,2j+1-RMV(2i+1+1,2j+1)|)---(B)]]>式中,C表示待编码视频帧中的象素点的值;R表示参考帧中的象素点的值;M、N分别表示块大小中的象素点行数和列数,i、j分别表示第一个求和号的行取值和第二个求和号的列取值;MV(i,j)表示在参考帧中相对于(i,j)的位置偏移。
2.根据权利要求1所述的快速运动估计方法,其特征在于所述M×N象素块划分模式为块16×16,即每块16行,每行16个象素。
3.根据权利要求1所述的快速运动估计方法,其特征在于所述M×N象素块划分模式为块16×8,即每块16行,每行8个象素。
4.根据权利要求1所述的快速运动估计方法,其特征在于所述M×N象素块划分模式为块8×16,即每块8行,每行16个象素。
5.根据权利要求1所述的快速运动估计方法,其特征在于所述M×N象素块划分模式为块8×8,即每块8行,每行8个象素。
全文摘要
一种基于块内降采样的AVS-M视频编码快速运动估计方法,涉及视频压缩技术领域,本发明在采用SAD准则进行块匹配的视频压缩算法中,对块16×16、块16×8、块8×16、块8×8四种块划分模式中的任意一种块,通过块内间隔采样象素点的象素采样方式进行计算,即在块内象素点矩阵排列中,按间隔的方式对每行和每列中的象素点进行采样。相对于全采样SAD方法,本发明将采样的搜索算法的计算复杂性大大降低,降低幅度可以达到50%;峰值信噪比PSNR略微有所降低,但其视觉质量几乎没有变化;码率略微有所增加。总体上,编码效率有很大的提高。
文档编号H04N7/24GK101035282SQ20071002163
公开日2007年9月12日 申请日期2007年4月19日 优先权日2007年4月19日
发明者袁定伍, 刘东华 申请人:苏州鹞鹰数据技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1