一种在变换域内直接进行转换编码的方法

文档序号:7888952阅读:171来源:国知局
专利名称:一种在变换域内直接进行转换编码的方法
技术领域
本发明涉及一种在变换域内直接进行转换编码的方法,属于视频编码技术领域。
背景技术
作为CDDT (Construction of DCT Domain Transcoder,结构的离散余弦转换编码)节省了逆DCT变换与重新进行DCT(Discrete Cosine Transform,离散余弦变换) 变换的时间,同时,由于结构的简单快速,成为了新的转换编码的研究重点,但是,由于 H. 264(高性能的视频编解码技术)具有更多与其它方法不同的特点,因此,对于H. 264的 CDDT结构的转换编码变得更加困难。I)宏块类型的重新选择。在H. 264中,对宏块的划分采用了树形结构使得H. 264 的编码效率进一步提高,但这使得运动估计与运动补偿的计算变得非常复杂。而H. 264以前的视频编码标准中,对宏块的划分十分简单,在其它标准到H. 264的CDDT结构转换编码中,为了进一步符合H. 264高效编码的特点,同样需要增加宏块编码的类型。但是,在DCT 域内如果做树形结构的运动估计和运动补偿从而选择最优的宏块类型,这将需要非常大的计算量。2)子块运动向量的确定。由于很难在DCT域内通过运动估计和运动补偿来确定最优的宏块类型,因此,各个子块的运动向量同样很难确定。特别是对于更小尺寸的子块,需要更多的运动向量来对应。3)DCT系数的重新确定。H. 264视频标准采用了与以往不一样的DCT变换方式,即整数4x4DCT变换方式。当进行H. 264的转换编码时,需要对以往的DCT系数转换成整数 4x4DCT系数的方式,上一章已经介绍了这种方法。但是,当运动向量变化时,当前块的残差 DCT系数与原来的残差DCT系数变得不同了,需要重新计算运动向量变化后新的块的残差 DCT系数。这些困难给⑶DT结构的H. 264转换编码带来了很大的难度,同时,也严重的影响了⑶DT结构下H. 264转换编码的转换效率。

发明内容
本发明提供了一种在变换域内直接进行转换编码的方法,以解决现有技术中CDDT 结构的H. 264转换编码难度大效率低的问题,为此本发明采用如下的技术方案本发明实施例提供了一种在变换域内直接进行转换编码的方法,包括将一个宏块分成4个8*8子块,并获取每个子块的原始运动向量、原始残差和残差倉;根据每个子块的残差能量与设定的阈值的比较结果重新确定宏块的模式以及确定出需要重新估计运动向量的子块;根据所述需要重新估计运动向量的子块相邻的宏块的运动向量以及所述需要重新估计运动向量的子块与相邻的宏块的相关度重新确定运动向量;
根据计算出的原始运动向量确定的预测块的离散余弦变换系数、运动补偿后原始残差的离散余弦变换系数以及所述重新确定的运动向量确定的预测块的离散余弦变换系数重新确定所述需要重新估计运动向量的子块运动补偿后新的残差的离散余弦变换系数, 并根据所述新的残差的离散余弦变换系数和所述重新确定的宏块的模式进行转换编码。本发明实施方式提供的技术方案将通过,有效的利用了当前宏块的运动信息,能更简单有效地选择分块模式,同时结合相邻宏块的相关度进行运动估计,在保持与全模式搜索相近编码性能的同时,减少了计算复杂度,节省了编码时间,从而提高了转换编码的效率。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I是本发明所述的一种在变换域内直接进行转换编码的方法的流程示意图;图2是本发明中一个宏块中4个8*8子块的B1、B2、B3和B4的分布示意图;图3为本发明原始预测块与原始运动向量、重新确定的预测块与重新确定的运动向量,其中灰色块表示预测块;图4为本发明中无模式选择与引入了 16*8模式和8*16模式的DCT域内转换编码的RD性能比较效果图,其中σ -,,表示无模式选择的DCT域内转换编码的RD性能曲线,
▽-,,表示引入了 16*8模式和8*16模式的DCT域内转换编码的RD性能曲线;图5为本发明中无模式选择与引入了 16*8模式、8*16模式和8*8模式的DCT域内转换编码的RD性能比较效果图,其中“ 一σ -,,表示无模式选择的DCT域内转换编码的RD 性能曲线,“_ ▽-,,表示引入了 16*8模式、8*16模式和8*8模式的DCT域内转换编码的RD 性能曲线;图6为本发明实施例中在低码率下无模式选择与引入了 16*8模式、8*16模式和 8*8模式的DCT域内转换编码的RD性能比较效果图,其中“一 ο -,,表示无模式选择的DCT 域内转换编码的RD性能曲线,“_ ▽-,,表示引入了 16*8模式、8*16模式和8*8模式的DCT 域内转换编码的RD性能曲线;图7为本发明实施例中在高码率下无模式选择与引入了 16*8模式、8*16模式和 8*8模式的DCT域内转换编码的RD性能比较效果图,其中“一 ο -,,表示无模式选择的DCT 域内转换编码的RD性能曲线,“_ ▽-,,表示引入了 16*8模式、8*16模式和8*8模式的DCT 域内转换编码的RD性能曲线。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施方式提供的一种在变换域内直接进行转换编码的方法,如图I所示,包括11、将一个宏块分成4个8*8子块,并获取每个子块的原始运动向量、原始残差和
残差能量。12、根据每个子块的残差能量与设定的阈值的比较结果重新确定宏块的模式以及确定出需要重新估计运动向量的子块。进一步,设定阈值的过程首先,根据读取的一帧的离散余弦变换系数计算出8*8 子块的残差的平均能量;然后,将所述8*8子块的残差的平均能量与自适应参数的相乘设定为阈值。具体地,若4个8*8子块均小于所述设定的阈值,则无需重新确定宏块的模式,且 4个8*8子块均无需重新估计运动向量。若4个8*8子块中有3个8*8子块都小于所述设定的阈值,且垂直方向上2个8*8子块的残差能量和大于水平方向上2个8*8子块的残差能量和,则重新确定宏块的模式为16*8帧间预测模式,且确定垂直方向上2个8*8子块需要重新估计运动向量。若4个8*8子块中有3个8*8子块都小于所述设定的阈值,且垂直方向上2个子块的残差能量和小于等于水平方向上2个子块的残差能量和,则重新确定宏块的模式为8*16帧间预测模式,且确定水平方向上2个8*8子块需要重新估计运动向量。 若4个8*8子块中有2个8*8子块都小于所述设定的阈值,且2个8*8子块为垂直方向相邻,则重新确定宏块的模式为16*8帧间预测模式,且确定垂直方向上2个8*8子块需要重新估计运动向量。若4个8*8子块中有2个8*8子块都小于所述设定的阈值,且2个8*8 子块为水平方向相邻,则重新确定宏块的模式为8*16帧间预测模式,确定水平方向上2个 8*8子块需要重新估计运动向量。若所述根据每个子块的残差能量与设定的阈值的比较结果不是上述情形,则重新确定宏块的模式为8*8帧间预测模式,且确定4个8*8子块都需要重新估计运动向量。作为可选的,如图2所示,在像素域内,若BI和B3的残差远大于B2和B4的残差。 如果不重新进行模式选择的话,H. 264的编码效率将比较低。在这种情况下,因为B2和B4 的残差是比较小的,不需要进行运动估计,而BI和B3的残差比较大,因此需要重新进行运动估计;再若B2和B4的残差远大于BI和B3,则只需要对B2和B4重新进行运动估计。上述两种情况都能够把宏块划分为两部分,一部分为BI和B3的子块,另一部分为B2和B4子块。那么这种划分方式即表现为帧间模式中的P16 X 8模式。同理,在像素域内,若BI和B2 的残差远大于B3和B4的残差。如果不重新进行模式选择的话,H. 264的编码效率将比较低。在这种情况下,因为B3和B4的残差是比较小的,不需要进行运动估计,而BI和B2的残差比较大,因此需要重新进行运动估计;再若B3和B4的残差远大于BI和B2,则只需要对B2和B4重新进行运动估计。上述两种情况都能够把宏块划分为两部分,一部分为BI和 B2的子块,另一部分为B3和B4子块。那么这种划分方式即表现为帧间模式中的P8 X 16模式。同理,若BI,B2,B3,B4都比较大,故需要分别对BI,B2,B3,B4四个子块进行运动估计, 这样,降低四个子块原来的残差和,使编码效率提高。实际上,对四个子块分别进行运动估计是将宏块划分为四个部分,那么这种划分方式即表现为H. 264中帧间预测的P8X8模式。13、根据所述需要重新估计运动向量的子块相邻的宏块的运动向量以及所述需要重新估计运动向量的子块与相邻的宏块的相关度重新确定运动向量。
具体地,重新确定的运动向量
权利要求
1.一种在变换域内直接进行转换编码的方法,其特征在于,包括将一个宏块分成4个8*8子块,并获取每个子块的原始运动向量、原始残差和残差能根据每个子块的残差能量与设定的阈值的比较结果重新确定宏块的模式以及确定出需要重新估计运动向量的子块;根据所述需要重新估计运动向量的子块相邻的宏块的运动向量以及所述需要重新估计运动向量的子块与相邻的宏块的相关度重新确定运动向量;根据计算出的原始运动向量确定的预测块的离散余弦变换系数、运动补偿后原始残差的离散余弦变换系数以及所述重新确定的运动向量确定的预测块的离散余弦变换系数重新确定所述需要重新估计运动向量的子块运动补偿后新的残差的离散余弦变换系数,并根据所述新的残差的离散余弦变换系数和所述重新确定的宏块的模式进行转换编码。
2.根据权利要求I所述的方法,其特征在于,所述设定阈值过程,包括根据读取的一帧的离散余弦变换系数计算出8*8子块的残差的平均能量;将所述8*8子块的残差的平均能量与自适应参数的相乘设定为阈值。
3.根据权利要求I所述的方法,其特征在于,所述根据每个子块的残差能量与设定的阈值的比较结果重新确定宏块的模式以及确定出需要重新估计运动向量的子块,包括若4个8*8子块均小于所述设定的阈值,则无需重新确定宏块的模式,且4个8*8子块均无需重新估计运动向量;若4个8*8子块中有3个8*8子块都小于所述设定的阈值,且垂直方向上2个8*8子块的残差能量和大于水平方向上2个8*8子块的残差能量和,则重新确定宏块的模式为16*8 帧间预测模式,且确定垂直方向上2个8*8子块需要重新估计运动向量;若4个8*8子块中有3个8*8子块都小于所述设定的阈值,且垂直方向上2个子块的残差能量和小于等于水平方向上2个子块的残差能量和,则重新确定宏块的模式为8*16帧间预测模式,且确定水平方向上2个8*8子块需要重新估计运动向量;若4个8*8子块中有2个8*8子块都小于所述设定的阈值,且2个8*8子块为垂直方向相邻,则重新确定宏块的模式为16*8帧间预测模式,且确定垂直方向上2个8*8子块需要重新估计运动向量;若4个8*8子块中有2个8*8子块都小于所述设定的阈值,且2个8*8子块为水平方向相邻,则重新确定宏块的模式为8*16帧间预测模式,确定水平方向上2个8*8子块需要重新估计运动向量;若所述根据每个子块的残差能量与设定的阈值的比较结果不是上述情形,则重新确定宏块的模式为8*8帧间预测模式,且确定4个8*8子块都需要重新估计运动向量。
4.根据权利要求I所述的方法,其特征在于,所述根据所述需要重新估计运动向量的子块相邻的宏块的运动向量以及所述需要重新估计运动向量的子块与相邻的宏块的相关度重新确定运动向量MVx,y,包括MVxy=Tound^iMVixy)/=1其中,N为所述需要重新估计运动向量的子块相邻的宏块的数量,为第i个所述需要重新估计运动向量的子块相邻的宏块的运动向量,Pi为第i个所述需要重新估计运动向量的子块与相邻的宏块的相关度。
5.根据权利要求I所述的方法,其特征在于,所述根据计算出的原始运动向量确定的预测块的离散余弦变换系数、运动补偿后原始残差的离散余弦变换系数以及所述重新确定的运动向量确定的预测块的离散余弦变换系数重新确定所述需要重新估计运动向量的子块运动补偿后新的残差的离散余弦变换系数E,。,包括E, C = EC+BP-B, p其中,计算出的原始运动向量确定的预测块的离散余弦变换系数Bp,运动补偿后原始残差的离散余弦变换系数E。,重新确定的运动向量确定的预测块的离散余弦变换系数
全文摘要
一种在变换域内直接进行转换编码的方法,属于视频编码技术领域。本发明首先,获取每个子块的原始运动向量、原始残差和残差能量;然后,根据每个子块的残差能量与设定的阈值的比较结果重新确定宏块的模式以及确定出需要重新估计运动向量的子块,并重新确定运动向量;最后,重新确定所述需要重新估计运动向量的子块运动补偿后新的残差的离散余弦变换系数,并根据所述新的残差的离散余弦变换系数和所述重新确定的宏块的模式进行转换编码。有效的利用了当前宏块的运动信息,能更简单有效地选择分块模式,同时结合相邻宏块的相关度进行运动估计,在保持与全模式搜索相近编码性能的同时,减少了计算复杂度,节省了编码时间,从而提高了转换编码的效率。
文档编号H04N7/50GK102611891SQ20121002672
公开日2012年7月25日 申请日期2012年2月7日 优先权日2012年2月7日
发明者张健, 邓志勇 申请人:中国电子科技集团公司第三研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1