一种帧间预测编码方法及装置与流程

文档序号:12754417阅读:190来源:国知局
一种帧间预测编码方法及装置与流程

本发明涉及视频编码技术领域,特别涉及一种帧间预测编码方法及装置。



背景技术:

众所周知,视频图像数据之间有着很强的相关性,也就是说有大量的冗余信息。帧间预测编码就是利用时域已经编码的参考图像中的块,对当前待编码块的进行预测,得到预测值,然后将待编码块的值和预测值之差进行编码。帧间预测编码通常包括,前向预测、后向预测、对称预测和双向预测。对于前向预测、后向预测只需要一个前向或者后向参考帧,而对称预测和双向预测需要前向参考帧和后向参考帧。

通常,在现代的块基运动补偿混合DCT变换的视频编码框架中,双向加权可以认为是加权参数为(1/2,1/2),那么前向的加权参数是(1,0),后向加权参数是(0,1)。在H.264双向编码中,采用的是分开编码,对于待编码帧的待编码块来说,假设编码参数是3个,分别为1/2,1/3,1/4,待编码块的前向参考帧和后向参考帧分别对应3个加权参数,前向参考帧和后向参考帧的加权参数要从9(3*3)种方式中进行选择,实际预测过程中可能存在前向加权参数和后向加权参数均为1/3的情况,显然这样的加权参数是不合理的,会造成帧间预测编码的准确性较低。



技术实现要素:

本发明实施例的目的在于提供一种双向加权预测编码方法及装置,以提高帧间预测编码的准确性。

为达到上述目的,本发明实施例公开了一种帧间预测编码方法,所述方法包括:

利用编码器将待编码帧划分为多个待编码块;

针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块;

确定所述前向编码块对应的第一加权参数;

确定包含所述前向编码块的参考图像的基于整体亮度的第二加权参数,以及确定包含所述后向编码块的参考图像的基于整体亮度的第三加权参数;

根据所述第一加权参数,确定所述后向编码块对应的第四加权参数;

根据所述第一加权参数、所述第二加权参数、所述第三加权参数、所述第四加权参数,确定该待编码块的预测实际加权参数;

利用所述预测实际加权参数,对该待编码块进行预测编码。

优选的,所述针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块,包括:

针对每一待编码块,采用运动搜索技术,确定该待编码块对应的前向编码块和后向编码块。

优选的,所述确定所述前向编码块对应的第一加权参数,包括:

根据所述前向编码块和所述后向编码块,计算预先设置的每一前向加权参数对应的预测块;

计算所述待编码块和每一预测块的残差值;

将绝对值最小的残差值对应的前向加权参数,确定为第一加权参数。

优选的,确定参考图像的基于整体亮度的加权参数,包括:

根据所述参考图像的所有像素点的亮度值以及像素点总数,确定所述参考图像的基于整体亮度的加权参数。

优选的,确定参考图像的基于整体亮度的加权参数,包括:

根据所述待编码图像、所述参考图像以及最小残差技术,确定所述参考图像的基于整体亮度的加权参数。

优选的,所述根据所述第一加权参数,确定所述后向编码块对应的第四加权参数,包括:

根据所述第一加权参数以及公式:第四加权参数=1-第一加权参数,确定所述后向编码块对应的第四加权参数。

为达到上述目的,本发明实施例公开了一种帧间预测编码装置,所述装置包括:

划分模块,用于利用编码器将待编码帧划分为多个待编码块;

第一确定模块,用于针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块;

第二确定模块,用于确定所述前向编码块对应的第一加权参数;

第三确定模块,用于确定包含所述前向编码块的参考图像的基于整体亮度的第二加权参数,以及确定包含所述后向编码块的参考图像的基于整体亮度的第三加权参数;

第四确定模块,用于根据所述第一加权参数,确定所述后向编码块对应的第四加权参数;

第五确定模块,用于根据所述第一加权参数、所述第二加权参数、所述第三加权参数、所述第四加权参数,确定该待编码块的预测实际加权参数;

编码模块,用于利用所述预测实际加权参数,对该待编码块进行预测编码。

优选的,所述第一确定模块,具体用于:

针对每一待编码块,采用运动搜索技术,确定该待编码块对应的前向编码块和后向编码块。

优选的,所述第二确定模块包括:第一计算子模块、第二计算子模块、确定子模块,

所述第一计算子模块,用于根据所述前向编码块和所述后向编码块,计算预先设置的每一前向加权参数对应的预测块;

所述第二计算子模块,用于计算所述待编码块和每一预测块的残差值;

所述确定子模块,用于将绝对值最小的残差值对应的前向加权参数,确定为第一加权参数。

优选的,确定参考图像的基于整体亮度的加权参数,包括:

根据所述参考图像的所有像素点的亮度值以及像素点总数,确定所述参考图像的基于整体亮度的加权参数。

优选的,确定参考图像的基于整体亮度的加权参数,包括:

根据所述待编码图像、所述参考图像以及最小残差技术,确定所述参考图像的基于整体亮度的加权参数。

优选的,所述第四确定模块,具体用于:

根据所述第一加权参数以及公式:第四加权参数=1-第一加权参数,确定所述后向编码块对应的第四加权参数。

由上述的技术方案可见,本发明实施例提供的一种帧间预测编码方法及装置,所述方法包括:利用编码器将待编码帧划分为多个待编码块;针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块;确定所述前向编码块对应的第一加权参数;确定包含所述前向编码块的参考图像的基于整体亮度的第二加权参数,以及确定包含所述后向编码块的参考图像的基于整体亮度的第三加权参数;根据所述第一加权参数,确定所述后向编码块对应的第四加权参数;根据所述第一加权参数、所述第二加权参数、所述第三加权参数、所述第四加权参数,确定该待编码块的预测实际加权参数;利用所述预测实际加权参数,对该待编码块进行预测编码。

应用本发明实施例提供的技术方案,通过前向编码块的前向加权参数确定后向编码块对应的后向加权参数,而不用从加权参数中选取后向加权参数,避免了现有技术在加权参数中选取后向加权参数的不合理会导致预测编码的准确性较低的问题。因此,提高了帧间预测编码的准确性。

当然,实施本发明的任一方法或装置必不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种帧间预测编码方法的流程示意图;

图2为本发明实施例提供的一种帧间预测编码装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为解决现有技术问题,本发明实施例提供了一种帧间预测编码方法及装置,以下分别进行详细说明。

需要说明的是,编码器把待编码的图像均匀分为互相不重叠的基本编码单元,最大为64*64,对每个基本编码单元按照从上到下、从左到右的顺序编码。实际操作中,可以将基本编码单元直接作为一个编码单元进行编码,还可以将基本编码单元按照四叉树划分为编码单元,编码单元可以再次划分为编码块。

本发明实施例提供的帧间预测编码方法及装置,主要是针对对称预测和双向预测两种预测方式,当前的待编码帧包含前向参考帧列表和后向参考帧列表,参考帧列表又包含多个参考帧。针对每一个待编码的块,搜索前向编码块和后向编码块,根据预设的加权参数,选取最佳的加权参数进行编码,当参考图像具有亮度变化时,还需要根据亮度变化值进行加权预测。

图1为本发明实施例提供的一种帧间预测编码方法的流程示意图,包括如下步骤:

S101,利用编码器将待编码帧划分为多个待编码块。

S102,针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块。

具体的,针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块,可以针对每一待编码块,采用运动搜索技术,确定该待编码块对应的前向编码块和后向编码块。

S103,确定所述前向编码块对应的第一加权参数。

具体的,确定所述前向编码块对应的第一加权参数,可以根据所述前向编码块和所述后向编码块,计算预先设置的每一前向加权参数对应的预测块;计算所述待编码块和每一预测块的残差值;将绝对值最小的残差值对应的前向加权参数,确定为第一加权参数。

S104,确定包含所述前向编码块的参考图像的基于整体亮度的第二加权参数,以及确定包含所述后向编码块的参考图像的基于整体亮度的第三加权参数。

具体的,确定参考图像的基于整体亮度的加权参数,可以根据所述参考图像的所有像素点的亮度值以及像素点总数,确定所述参考图像的基于整体亮度的加权参数。

具体的,确定参考图像的基于整体亮度的加权参数,可以根据所述待编码图像、所述参考图像以及最小残差技术,确定所述参考图像的基于整体亮度的加权参数。

S105,根据所述第一加权参数,确定所述后向编码块对应的第四加权参数。

具体的,确定后向编码块对应的第四加权参数,可以根据所述第一加权参数以及公式:第四加权参数=1-第一加权参数,确定所述后向编码块对应的第四加权参数。

S106,根据所述第一加权参数、所述第二加权参数、所述第三加权参数、所述第四加权参数,确定该待编码块的预测实际加权参数。

S107,利用所述预测实际加权参数,对该待编码块进行预测编码。

本领域技术人员可以理解的是,待编码帧首先划分为基本编码单元,基本编码单元可以经过四叉树划分为四个编码单元,四个编码单元还可以进行独立划分,可以得到大小是8*8、8*16、16*8或16*16的编码块,针对每一个基本编码单元采取上从到下、从左到右的编码顺序进行。本发明实施例中编码块只要能满足编码要求即可,不对编码块的大小加以限定。

实际使用中,每一待编码块要从前向参考帧列表和后向参考帧列表中搜索与之相匹配的块,即前向编码块和后向编码块。通常,采用运动搜索技术确定前向编码块和后向编码块。运动搜索技术为现有技术,本发明实施例在此不对其进行赘述。

示例性的,编码器预先设置的前向加权参数为:1/3、2/3、1/4、1/2、3/4,待编码块L0的前向编码块和后向编码块为L1、L2,以前向加权参数1/3对应的预测块P1为例,P1=1/3*L1+(1-1/3)*L2,依次计算P2、P3、P4、P5。将得到的5个预测块的值与待编码块L0相减,假设得到的残差值分别为P1=0.15、P2=0.12、P3=0.11、P4=0.03、P5=-0.005,绝对值最小的是P5对应的-0.005,则将3/4确定为第一加权参数。

在前向编码块和后向编码块所在的参考图像具有光线强度变化时,需要将参考图像的亮度值也进行编码。所以,需要计算出有关参考图像的整体亮度的加权参数。实际使用中,可以将图像所有亮度值加起来获得亮度值的总和,然后用亮度值的总和除以所有的像素数,得到亮度加权参数。示例性的,参考图像的像素点个数为10,10个像素点的亮度值之和为11,则亮度加权参数为11/10,即1.1。或者,将待编码帧和两幅参考图像先进行降采样,变成较小的图像,选择一个亮度加权参数,将它与参考图像相乘得到加权参考图像,并将图像分块,然后对当前图像的每个块,在加权参考图像中搜索相匹配的块,获得预测残差值并取其平方之和;通过变换不同的亮度加权参数,获得对应的残差值平方之和,选择使残差平方和最小的亮度加权参数作为参考图像的亮度加权参数,对应的前向参考图像和后向参考图像的整体亮度加权参数为W1、W2。上述两种获得整体亮度加权参数的方法为现有技术,本发明实施例不做赘述。

本领域技术人员可以理解的是,在S103中,确定了前向编码块对应的第一加权参数,以确定的3/4为例,则后向编码块对应的第二加权参数是1-3/4=1/4。

实际应用中,前向编码块和后向编码块所在的参考图像通常是有光线强度变化的,所以对待编码块的编码不仅跟加权参数有关还跟参考图像的亮度有关,实际的加权参数为(3/4*W1,1/4*W2)。假设W1=1.1、W2=1.2,实际的加权参数为(0.825,0.3)。将实际加权参数(0.825,0.3)结合前向编码块和后向编码块,获得预测块和待编码块的残差值,对残差值进行编码。当图像没有光线强度的变化时,整体亮度的加权参数为1。

实际应用中,加权参数的获得方式,可以采用设置一个参数N,假设N=4,则具体加权参数为:(0,1)、(1/4,3/4)、(1/2,1/2)、(3/4,1/4)、(1,0)。还可以将待编码块所在的待编码帧与前向编码块和后向编码块所在的前向参考帧和后向参考帧进行绑定,当下次编码的时候,如果待编码帧仍对应该前向参考帧和后向参考帧,则直接调用N,获得加权参数。

通常,N的获得方式可以采用:预先进行设置;或者,将待编码帧中的每一块与前向参考帧和后向参考帧进行多次迭代,通常N的取值范围是3以上,鉴于对编码效率的影响,N的值一般不会超过10。可以将N写入待编码帧的帧头、或者写在编码参数组合中。

当参数为(0,1)和(1,0)时,具体对应后向预测和前向预测,本发明实施例不做赘述。

可见,应用本发明图1所示的实施例,通过前向编码块的前向加权参数确定后向编码块对应的后向加权参数,而不用从加权参数中选取后向加权参数,避免了现有技术在加权参数中选取后向加权参数的不合理会导致预测编码的准确性较低的问题。因此,提高了帧间预测编码的准确性。

图2为本发明实施例提供的一种帧间预测编码装置的结构示意图,可以包括:划分模块201、第一确定模块202、第二确定模块203、第三确定模块204、第四确定模块205、第五确定模块206、编码模块207。

划分模块201,用于利用编码器将待编码帧划分为多个待编码块。

第一确定模块202,用于针对每一待编码块,确定该待编码块对应的前向编码块和后向编码块。

具体的,实际应用中,第一确定模块202,可以用于:针对每一待编码块,采用运动搜索技术,确定该待编码块对应的前向编码块和后向编码块。

第二确定模块203,用于确定所述前向编码块对应的第一加权参数。

具体的,实际应用中,第二确定模块203可以包括:第一计算子模块、第二计算子模块、确定子模块(图中未示出),其中,

第一计算子模块,用于根据所述前向编码块和所述后向编码块,计算预先设置的每一前向加权参数对应的预测块;

第二计算子模块,用于计算所述待编码块和每一预测块的残差值;

确定子模块,用于将绝对值最小的残差值对应的前向加权参数,确定为第一加权参数。

第三确定模块204,用于确定包含所述前向编码块的参考图像的基于整体亮度的第二加权参数,以及确定包含所述后向编码块的参考图像的基于整体亮度的第三加权参数。

具体的,实际应用中,确定参考图像的基于整体亮度的加权参数,可以根据所述参考图像的所有像素点的亮度值以及像素点总数,确定所述参考图像的基于整体亮度的加权参数。

具体的,实际应用中,确定参考图像的基于整体亮度的加权参数,可以根据所述待编码图像、所述参考图像以及最小残差技术,确定所述参考图像的基于整体亮度的加权参数。

第四确定模块205,用于根据所述第一加权参数,确定所述后向编码块对应的第四加权参数。

具体的,实际应用中,第四确定模块205,可以用于:根据所述第一加权参数以及公式:第四加权参数=1-第一加权参数,确定所述后向编码块对应的第四加权参数。

第五确定模块206,用于根据所述第一加权参数、所述第二加权参数、所述第三加权参数、所述第四加权参数,确定该待编码块的预测实际加权参数。

编码模块207,用于利用所述预测实际加权参数,对该待编码块进行预测编码。

可见,应用本发明图2所示的实施例,通过前向编码块的前向加权参数确定后向编码块对应的后向加权参数,而不用从加权参数中选取后向加权参数,避免了现有技术在加权参数中选取后向加权参数的不合理会导致预测编码的准确性较低的问题。因此,提高了帧间预测编码的准确性。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1