带宽压缩中复杂纹理的多模式两级选择预测方法与流程

文档序号:20884732发布日期:2020-05-26 17:25阅读:201来源:国知局
带宽压缩中复杂纹理的多模式两级选择预测方法与流程

本发明涉及一种压缩技术领域,特别涉及一种带宽压缩中复杂纹理的多模式两级选择预测方法。



背景技术:

随着公众对视频质量需求的不断提高,视频的图像分辨率也随之成倍数的增加,由此使视频图像的数据量十分巨大,需要占用较多的存储空间和传输带宽,在这种情况下,利用芯片内的带宽压缩技术来提高图像的存储空间和传输带宽就显得尤为必要。

带宽压缩技术的目标是用较小的逻辑面积成本,尽可能的提高压缩倍数,减少双倍速率同步动态随机存储器(doubledatarate,简称ddr)的占用。预测模块作为带宽压缩的一个重要模块,是利用图像相邻像素间存在的空间冗余度,根据邻近像素信息对当前像素值进行预测,预测差值的标准差要远小于原始图像数据的标准差,因此对预测差值进行编码,更有利于使图像数据的理论熵达到最小,从而达到提高压缩效率的目的。

然而,当待压缩图像的纹理复杂多变时,根据固定不变的预测模式来预测待压缩图像的复杂纹理区域时,往往会造成所采用预测模式可能只适用某些区域,而对另一些区域并不适用,从而造成这些区域的预测编码得不到精确的参考,导致理论极限熵得不到最大化的降低,影响预测模块的预测质量。采用多种预测模式预测后再去选择最优的预测模式又会增加巨大的运算量,影响预测速度。因此,在待压缩图像的纹理复杂多变时,提供一种更加灵活适用且能进行快速选择预测模式的预测方法以实现所有纹理区域的高质量预测成为亟需解决的问题。



技术实现要素:

因此,为解决现有技术存在的技术缺陷和不足,本发明提出一种带宽压缩中复杂纹理的多模式两级选择预测方法。

具体地,本发明一个实施例提出的一种带宽压缩中复杂纹理的多模式两级选择预测方法,包括:

将待编码视频图像划分成多个宏块,并确定待编码像素分量;

计算当前编码宏块的宏块梯度;

在梯度-预测模式查找表中,根据当前编码宏块的宏块梯度确定当前编码宏块的梯度级别,并根据梯度级别确定多种待预测模式;

采用每种待预测模式对当前编码宏块进行预测,得到每种待预测模式下的一组预测残差;

根据每种待预测模式下的一组预测残差计算每种待预测模式下的主观差异;

比较多种待预测模式下的多个主观差异,确定当前编码宏块的最优预测方法,得到一组最优预测残差。

基于此,本发明具备如下优点:

本发明实施例的带宽压缩中复杂纹理的多模式两级选择预测方法,采用了两级选择策略,在预测前通过计算宏块的梯度判断宏块的纹理复杂度,选择出适用该纹理复杂度的多个待预测模式,在预测后再通过比较不同预测模式的主观差异,进一步选择出针对该宏块的最优预测方法,对于复杂纹理图像,可根据图像不同区域纹理特征的不同,自适应地选择最优的预测方法,预测效果更优,进一步降低了理论极限熵。

通过以下参考附图的详细说明,本发明的其它方面和特征变得明显。但是应当知道,该附图仅仅为解释的目的设计,而不是作为本发明的范围的限定,这是因为其应当参考附加的权利要求。还应当知道,除非另外指出,不必要依比例绘制附图,它们仅仅力图概念地说明此处描述的结构和流程。

附图说明

下面将结合附图,对本发明的具体实施方式进行详细的说明。

图1为本发明实施例提供的带宽压缩中复杂纹理的多模式两级选择预测方法的流程图;

图2为本发明实施例提供的一种梯度-预测模式查找表示意图;

图3为本发明另一实施例提供的一种梯度-预测模式查找表示意图;

图4为本发明实施例提供的一种带宽压缩中自适应一级分割预测方法流程图;

图5(a)、图5(b)和图5(c)为发明实施例提供的对当前编码宏块的3种分割方式示意图;

图6为本发明实施例提供的一种当前编码宏块采用水平分割方式的预测流程图;

图7为本发明实施例提供的一种当前编码宏块采用水平分割方式的比特数计算流程图;

图8为本发明实施例提供的一种当前编码宏块采用水平分割方式的加权值计算流程图;

图9为本发明实施例提供的一种当前编码宏块采用垂直分割方式的预测流程图;

图10为本发明实施例提供的一种当前编码宏块采用垂直分割方式的比特数计算流程图;

图11为本发明实施例提供的一种当前编码宏块采用垂直分割方式的加权值计算流程图;

图12为本发明实施例提供的一种当前编码宏块采用不分割方式的预测流程图;

图13为本发明实施例提供的一种当前编码宏块采用不分割方式的比特数计算流程图;

图14为本发明实施例提供的一种当前编码宏块采用不分割方式的加权值计算流程图;

图15为本发明实施例提供的一种自适应模板预测方法的流程图。

图16为本发明实施例提供的一种第一自适应模板的表位示意图。

图17为本发明实施例提供的一种当前编码宏块的参考宏块示意图。

图18为本发明实施例提供的一种第二自适应模板的表位示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。

本发明实施例的方法,通过采用两级选择策略,即采用梯度选择法和主观差异比较法在多种预测模式中自适应选择出适用图像不同区域的最优预测方法进行预测残差的计算。

实施例一

参见图1,图1为本发明实施例提供的带宽压缩中复杂纹理的多模式两级选择预测方法的流程图。该多模式两级选择预测方法包括如下步骤:

s1、将待编码视频图像划分成多个宏块,并确定待编码像素分量。

在本发明的一个实施例中,在待编码视频图像像素区域内,用cij代表待编码像素,ij为待编码像素的位置索引。将待编码视频图像划分为x个相同的宏块mbx,编码前,将对该x个宏块逐一进行编码预测。每个宏块均包含二维像素阵列,共m个像素,m≥4,例如m=4×4或m=8×2或m=16×16等。对第x个宏块mbx中的m个像素进行顺序编号为0、1、2、...m...、m-1。例如当每个宏块包含4×4个像素,第x个宏块mbx中的16个像素进行顺序编号为0、1、2、...m...、16。设定待编码视频图像的每个像素包含n个像素分量,待编码像素分量为第n个像素分量。例如待编码视频图像的每个像素包含3个像素分量rgb,或包括4个像素分量rgbw,或包含3个像素分量yuv,或包含4个像素分量cmyk。

s2、计算当前编码宏块的宏块梯度;

在本发明实施例中,首先计算当前编码宏块中每个待编码像素的待编码像素分量的像素梯度像素梯度为编号m的待编码像素的待编码像素分量值与其周围最邻近的4个像素的待编码像素分量值的梯度的平均值,计算公式如下:

其中,表示位于待编码视频图像ij位置处的像素cij即在第x个宏块mbx中编号为m的待编码像素cm的待编码像素分量值,分别为cm的四个邻近像素的待编码像素分量值,abs为绝对值运算符。

值得一提的是,上述待编码像素cm的四个邻近像素可能全部与待编码像素cm同时位于当前编码宏块内,也可能其中一部分位于当前编码宏块内,另一部分位于当前编码宏块的相邻宏块中。

当前编码宏块的宏块梯度为当前编码宏块中所有像素的像素梯度的平均值,计算公式如下:

s3、在梯度-预测模式查找表中,根据当前编码宏块的宏块梯度确定当前编码宏块的梯度级别,并根据梯度级别确定多种待预测模式;

参见图2,图2为本发明实施例提供的梯度-预测模式查找表示意图。在本发明实施例中,预先设计一个梯度-预测模式查找表,该梯度-预测模式查找表中,包含t个梯度级别:g1、g2、g3、...、gt,每个梯度级别可设定具有相同的梯度跨度,也可以设定为具有不同的梯度跨度。例如设定每个梯度级别具有相同的梯度跨度,为其中,为待编码视频图像的最大像素分量值,可根据待编码视频图像的像素深度bitdepth的值获得。根据公式(2)计算得到当前编码宏块的宏块梯度后,在梯度-预测模式查找表中,首先查找当前编码宏块的宏块梯度对应的梯度级别,再根据梯度级别找到对应的预测模式编号。

参见图3,图3为本发明另一实施例提供的梯度-预测模式查找表示意图。在本发明实施例中,待编码视频图像的像素深度为bitdepth=8,则最大像素分量值为则设计梯度-预测模式查找表时,可设计4个梯度级别,每个梯度级别具有相同的梯度跨度为δgrad=64。梯度-预测模式查找表中共提供了9种备选的预测模式。根据公式(2)计算得到当前编码宏块的宏块梯度为在梯度-预测模式查找表中,得到该宏块梯度属于2级,且2级梯度对应的预测模式包括03号-自适应一级分割预测模式和04号-自适应模板预测模式,将其确定为该当前编码宏块的两种待预测模式。

s4、采用每种待预测模式对当前编码宏块进行预测,得到每种待预测模式下的一组预测残差;

s5、根据每种待预测模式下的一组预测残差计算每种待预测模式下的主观差异;

s6、比较多种待预测模式下的多个主观差异,确定当前编码宏块的最优预测方法,得到一组最优预测残差。

实施例二

参见图4,图4为本发明实施例提供的一种带宽压缩中自适应一级分割预测方法流程图。本发明实施例在实施例一的基础上,当步骤s3中确定的当前编码宏块的待预测模式包括自适应一级分割预测模式时,步骤s4还包括以下步骤:

s41、采用三种分割方式将当前编码宏块分割为若干子宏块,其中,三种分割方式包括:水平分割、垂直分割和不分割。

参见图5,图5为发明实施例提供的对当前编码宏块的3种分割方式示意图。图5(a)为水平分割方式,当前编码宏块被分割为2个子宏块,分别为上宏块11和下宏块12,其中上宏块11和下宏块12分别包括m1个像素。图5(b)为垂直分割方式,当前编码宏块被分割为2个子宏块,分别为左宏块21和右宏块22,其中左宏块21和右宏块22分别包括m2个像素。图5(c)为不分割方式,当前编码宏块包括1个子宏块,为当前编码宏块本身,包含m个像素。

s42、分别确定每种分割方式下当前编码宏块中像素的参考像素,并计算当前编码宏块中像素的待编码像素分量的一组分割预测残差,得到当前编码宏块的三组分割预测残差。

在本发明实施例中,水平分割方式下,计算得到当前编码宏块的一组第一分割预测残差垂直分割方式下,计算得到当前编码宏块的一组第二分割预测残差不分割方式下,计算得到当前编码宏块的一组第三分割预测残差

s43、分别计算每种分割方式下当前编码宏块的比特数,得到当前编码宏块的三个比特数;

在本发明实施例中,当前编码宏块的三个比特数包括水平分割方式下的第一比特数bit_ud、垂直分割方式下的第二比特数bit_lr、不分割方式下的第三比特数bit_int。

s44、根据每种分割方式下得到的一组分割预测残差和比特数计算每种分割方式的加权值,得到当前编码宏块的三个加权值分别为水平分割方式下的第一加权值weight_ud、垂直分割方式下的第二加权值weight_lr、不分割方式下的第三加权值weight_int。

s45、比较当前编码宏块的三个加权值,将最小加权值对应的分割方式作为当前编码宏块的最优分割方式,对应的参考像素作为最优参考像素,即第一参考像素,对应的一组分割预测残差作为当前编码宏块的一组第一预测残差

本发明实施例的带宽压缩中自适应一级分割预测方法通过当前区域像素分量值间的相关性进行预测,利用本发明的算法对比水平分割、垂直分割、不分割三种情况的压缩数据量,选择最优的分割方式进行预测残差的计算。对于复杂纹理图像处理时,预测效果好、处理效率高,且能够降低理论极限熵。

实施例三

本发明实施例在实施例二的基础上,当采用水平分割方式,将当前编码宏块分割为上宏块11和下宏块12,其中上宏块11和下宏块12分别包含m1和m2个像素,优选地,m1=m2。

参见图6,图6为本发明实施例提供的一种当前编码宏块采用水平分割方式的预测流程图。步骤s42包括:

s4201、在上宏块的所有像素的待编码像素分量中,确定上宏块最小像素分量原始值,该上宏块最小像素分量原始值对应的像素作为上宏块的参考像素;

s4202、计算上宏块的每个像素的待编码像素分量的原始值和上宏块最小像素分量原始值的差值得到上宏块中每个像素的待编码像素分量的第一分割预测残差;

s4203、在下宏块的所有像素的待编码像素分量中,确定下宏块最小像素分量原始值,该下宏块最小像素分量原始值对应的像素作为下宏块的参考像素;

s4204、计算下宏块的每个像素的待编码像素分量的原始值和下宏块最小像素分量原始值的差值得到下宏块中每个像素的待编码像素分量的第一分割预测残差。

参见图7,图7为本发明实施例提供的一种当前编码宏块采用水平分割方式的比特数计算流程图。步骤s43包括:

s4301、在上宏块的所有像素的待编码像素分量中,确定上宏块的最大像素分量原始值和最小像素分量原始值;

s4302、计算上宏块的最大像素分量原始值和最小像素分量原始值的差值,并得到表示该差值的上宏块第一最少比特数;

s4303、在下宏块的所有像素的待编码像素分量中,确定下宏块的最大像素分量原始值和最小像素分量原始值;

s4304、计算下宏块的最大像素分量原始值和最小像素分量原始值的差值,并得到表示该差值的下宏块第一最少比特数;

s4305、根据上宏块第一最少比特数、下宏块第一最少比特数计算得到水平分割方式下当前编码宏块的第一比特数为:

bit_ud=m1×bit_minup+m1×bit_mindown+2×bitdepth(3)

其中,bit_minup为上宏块的第一最少比特数,bit_mindown为下宏块的第一最少比特数,bitdepth为当前编码宏块的原始数据的比特深度。

参见图8,图8为本发明实施例提供的一种当前编码宏块采用水平分割方式的加权值计算流程图。步骤s44包括:

s4401、在当前编码宏块中,根据每个像素的待编码像素分量的第一分割预测残差计算每个像素的待编码像素分量的第一重建值

s4402、计算每个像素的待编码像素分量的第一重建值和原始值的差值,得到当前编码宏块中每个像素的待编码像素分量的第一重建差值

s4403、计算当前编码宏块中m个第一重建差值的和,得到当前编码宏块的第一重建差值和值

第一重建差值和值计算公式如下:

s4404、根据当前编码宏块的第一比特数和第一重建差值和值计算当前编码宏块的第一加权值weight_ud。

根据公式(1)和公式(2)得到的第一比特数和第一重建差值和值,当前编码宏块的第一加权值weight_ud计算公式如下:

其中,a和b的取值可以是预先设定的固定值,也可以灵活调整大小,进一步地,a+b=1,优选地,a=b=0.5。

实施例四

本发明实施例在实施例二或实施例三的基础上,当采用垂直分割方式,将当前编码宏块分割为左宏块21和右宏块22,其中左宏块21和右宏块22分别包含m3和m4个像素,优选地,m3=m4。

参见图9,图9为本发明实施例提供的一种当前编码宏块采用垂直分割方式的预测流程图。步骤s42包括:

s4211、在左宏块的所有像素的待编码像素分量中,确定最小像素分量原始值,该最小像素分量原始值对应的像素作为左宏块的参考像素;

s4212、计算左宏块的每个像素的待编码像素分量的原始值和最小像素分量原始值的差值得到左宏块中每个像素的待编码像素分量的第二分割预测残差;

s4213、在右宏块的所有像素的待编码像素分量中,确定最小像素分量原始值,该最小像素分量原始值对应的像素作为右宏块的参考像素;

s2214、计算右宏块的每个像素的待编码像素分量的原始值和最小像素分量原始值的差值得到右宏块中每个像素的待编码像素分量的第二分割预测残差。

参见图10,图10为本发明实施例提供的一种当前编码宏块采用垂直分割方式的比特数计算流程图。步骤s43包括:

s4311、在左宏块的所有像素的待编码像素分量中,确定左宏块的最大像素分量原始值和最小像素分量原始值;

s4312、计算左宏块的最大像素分量原始值和最小像素分量原始值的差值,并得到表示该差值的左宏块第二最少比特数;

s4313、在右宏块的所有像素的待编码像素分量中,确定右宏块的最大像素分量原始值和最小像素分量原始值;

s4314、计算右宏块的最大像素分量原始值和最小像素分量原始值的差值,并得到表示该差值的右宏块第二最少比特数;

s4315、根据左宏块第二最少比特数、右宏块第二最少比特数计算得到垂直分割方式下当前编码宏块的第二比特数为:

bit_lr=m2×bit_minleft+m2×bit_minright+2×bitdepth(6)

其中,bit_minlef为左宏块的第二最少比特数,bit_minright为右宏块的第二最少比特数,bitdepth为当前编码宏块的原始数据的比特深度。

参见图11,图11为本发明实施例提供的一种当前编码宏块采用垂直分割方式的加权值计算流程图。步骤s44包括:

s4411、在当前编码宏块中,根据每个像素的待编码像素分量的第二分割预测残差计算每个像素的待编码像素分量的第二重建值

s4412、计算每个像素的待编码像素分量的第二重建值和原始值的差值,得到当前编码宏块中每个像素的待编码像素分量的第二重建差值

s4413、计算当前编码宏块中m个第二重建差值的和,得到当前编码宏块的第二重建差值和值

第二重建差值和值计算公式如下:

s4414、根据当前编码宏块的第二重建差值和值和第二比特数计算当前编码宏块的第二加权值weight_lr。

根据公式(4)和公式(5)得到的第二比特数和第二重建差值和值,当前编码宏块的第二加权值weight_lr计算公式如下:

其中,a和b的取值同公式(5)。

实施例五

本发明实施例在实施例二至实施例四任一基础上,当采用不分割方式,当前编码宏块包括m个像素。

参见图12,图12为本发明实施例提供的一种当前编码宏块采用不分割方式的预测流程图。步骤s42包括:

s4221、在当前编码宏块的所有像素的待编码像素分量中,确定最小像素分量原始值,该最小像素分量原始值对应的像素作为当前编码宏块的参考像素;

s4222、计算当前编码宏块的每个像素的待编码像素分量的原始值和最小像素分量原始值的差值得到当前编码宏块中每个像素的待编码像素分量的第三分割预测残差。

参见图13,图13为本发明实施例提供的一种当前编码宏块采用不分割方式的比特数计算流程图。步骤s43包括:

s4321、在当前编码宏块的所有像素的待编码像素分量中,确定最大像素分量原始值和最小像素分量原始值;

s4322、计算当前编码宏块的最大像素分量原始值和最小像素分量原始值的差值,并得到表示该差值的第三最少比特数;

s4323、根据当前编码宏块的第三最少比特数计算得到不分割方式下当前编码宏块的第三比特数为:

bit_int=m×bit_min+bitdepth(9)

其中,bit_min为当前编码宏块的第三最少比特数,bitdepth为当前编码宏块的原始数据的比特深度。

参见图14,图14为本发明实施例提供的一种当前编码宏块采用不分割方式的加权值计算流程图。步骤s44包括:

s4421、在当前编码宏块中,根据每个像素的待编码像素分量的第三分割预测残差计算每个像素的待编码像素分量的第三重建值

s4422、计算每个像素的待编码像素分量的第三重建值和原始值的差值,得到当前编码宏块中每个像素的待编码像素分量的第三重建差值

s4423、计算当前编码宏块中m个第三重建差值的和,得到当前编码宏块的第三重建差值和值

第三重建差值和值计算公式如下:

s4424、根据当前编码宏块的第三重建差值和值和第三比特数计算当前编码宏块的第三加权值weight_int。

根据公式(7)和公式(8)得到的第三比特数和第三重建差值和值,当前编码宏块的第三加权值weight_int计算公式如下:

其中,a和b的取值同公式(5)。

实施例六

本发明实施例在实施例二至实施例五的基础上,通过步骤s41~s44,得到了当前编码宏块在水平分割方式下的第一加权值、垂直分割方式下的第二加权值、不分割方式下的第三加权值。在步骤s45中,比较第一加权值weight_ud、第二加权值weight_lr、第三加权值weight_int,选择其中最小值对应的分割方式作为最优分割方式。例如,

当第一加权值weight_ud最小时,选择水平分割方式为最优分割方式,选择对应的参考像素作为第一参考像素,对应的一组第一分割预测残差作为一组第一预测残差

当第二加权值weight_lr最小时,选择垂直分割方式为最优分割方式,选择对应的参考像素作为第一参考像素,对应的一组第二分割预测残差作为一组第一预测残差

当第三加权值weight_int最小时,选择不分割方式为最优分割方式,选择对应的参考像素作为第一参考像素,对应的一组第三分割预测残差作为一组第一预测残差

最终得到当前编码宏块的一组第一预测残差为

实施例七

参见图15,图15为本发明实施例提供的自适应模板预测方法的流程图。本发明实施例在实施例一至实施例六任一基础上,当步骤s3中确定的当前编码宏块的待预测模式包括自适应模板预测模式时,步骤s4还包括以下步骤:

s461、创建第一自适应模板,定义表位数量及表位序号。

参见图16,图16为本发明实施例提供的第一自适应模板的表位示意图。定义第一自适应模板包含l个表位,l≥4,每个表位的大小与宏块大小相同,即包含m个单元格,每个单元格对应一个参考像素pl,m。每个表位的m个单元格记录1个宏块的m个像素的待编码像素分量的重建值,编号l的表位记录的某1个宏块的m个像素的待编码像素分量的重建值为例如定义第一自适应模板包含16个表位,对该16个表位从0到15进行编号,设定序号越小,优先级越高,即优先级高的表位中的m个重建值将优先作为当前编码宏块中m个当前编码像素的待编码像素分量编码预测的参考值。

s462、从待编码视频图像的多个宏块中选择l个宏块中的像素的待编码像素分量的重建值初始化填充至第一自适应模板。

第一自适应模板的初始状态为空,在第一自适应模板的l个表位中需要初始化填充l组重建值,l组重建值从待编码视频图像中从前到后选择其中l个宏块中的像素的待编码像素分量的重建值。具体为:从序号为0的表位开始,在其填充第1个宏块的待编码像素分量的1组重建值,之后每次填充下一个宏块的1组重建值时,仍填充至0表位,并将第一自适应模板中已填充的表位的重建值向后顺序移位。并且,在每次填充前,需要对待填充宏块如第x1个宏块mbx1中像素的待编码像素分量的重建值根据如下公式(1)检测其与第一自适应模板中已填充的每个表位中的重建值的一致性。

其中,表示待填充宏块mbx1中像素的待编码像素分量的重建值与第一自适应模板中l表位中已填充的的重建值的一致性参考因子,为待填充宏块mbx1中编号为m的像素的待编码像素分量的原始像素值,为待填充宏块mbx1中编号为m的像素的待编码像素分量的重建值,为第一自适应模板中已填充的编号为l的表位中编号为m的像素的待编码像素分量的重建值,abs为绝对值运算符,d1和d2为权重系数。

设定一阈值为thr0,当时,判断为该待填充宏块中像素的待编码像素分量的重建值与第一自适应模板中已填充的编号为l的表位中像素的重建值不具备一致性,则将该待填充宏块中像素的待编码像素分量的重建值填充至0表位,并将第一自适应模板中已填充的表位的重建值向后顺序移位。

时,判断为该待填充宏块中像素的待编码像素分量的重建值与第一自适应模板中已填充的编号为l的表位中像素的重建值具备一致性,则第一自适应模板不改变,或者将第一自适应模板中已填充的编号为l的表位中像素的重建值替换为该待填充宏块中像素的重建值,第一自适应模板中其他已填充的表位中重建值不变。

根据上述方法,经过至少l次填充,l个表位全部填满。又如图16中所示,包含16个表位的第一自适应模板初始化完成后,l表位记录的重建值为

s463、从待编码视频图像的多个宏块中选择当前编码宏块的参考宏块,将参考宏块中的像素的待编码像素分量的重建值更新至第一自适应模板。

参见图17,图17为本发明实施例提供的当前编码宏块的参考宏块示意图。步骤s462中将待编码视频图像中l个宏块中像素的待编码像素分量的重建值初始化填充至第一自适应模板后,对于待编码视频图像中的其余宏块,比如当前编码宏块如第x2个宏块mbx2,检测其相邻参考方向上的参考宏块mbx2'中像素的待编码像素分量的重建值与第一自适应模板中每个表位中的重建值的一致性。当前编码宏块mbx2的相邻参考方向包括当前编码宏块的正上方、正左方、左上方和右上方,当前编码宏块mbx2的参考宏块mbx2'对应这4个方向分别为上参考宏块、左参考宏块、左上参考宏块和右上参考宏块。一致性检测原理同公式(12),如下公式(13)所示。

其中,表示参考宏块mbx2'中像素的待编码像素分量的重建值与第一自适应模板中l表位中的重建值的一致性参考因子,为参考宏块mbx2'中编号为m的像素的待编码像素分量的原始像素值,为参考宏块mbx2'中编号为m的像素的待编码像素分量的重建值,为第一自适应模板中编号为l的表位中编号为m的像素的待编码像素分量的重建值,abs为绝对值运算符,d1和d2为权重系数。

(1)若当前编码宏块mbx2存在上参考宏块,根据公式(13)检测上参考宏块中像素的待编码像素分量的重建值与第一自适应模板中每个表位中的重建值的一致性:

时,判断为不具备一致性,先将第一自适应模板中所有表位中的重建值从0表位开始向后顺序移位,原15表位中的重建值移除,再将上参考宏块中像素的待编码像素分量的重建值填充至0表位;

时,判断为具备一致性,将第一自适应模板中l表位中像素的重建值与0表位中的重建值对换,第一自适应模板中其他表位中重建值不变。

(2)若当前编码宏块mbx2存在左参考宏块,根据公式(13)检测左参考宏块中像素的待编码像素分量的重建值与第一自适应模板中每个表位中的重建值的一致性:

时,判断为不具备一致性,先将第一自适应模板中所有表位中的重建值从1表位开始向后顺序移位,原15表位中的重建值移除,再将左参考宏块中像素的待编码像素分量的重建值填充至1表位;

时,判断为具备一致性,将第一自适应模板中l表位中像素的重建值与1表位中的重建值对换,第一自适应模板中其他表位中重建值不变。

(3)若当前编码宏块mbx2存在左上参考宏块,根据公式(13)检测左上参考宏块中像素的待编码像素分量的重建值与第一自适应模板中每个表位中的重建值的一致性:

时,判断为不具备一致性,先将第一自适应模板中所有表位中的重建值从2表位开始向后顺序移位,原15表位中的重建值移除,再将左上参考宏块中像素的待编码像素分量的重建值填充至2表位;

时,判断为具备一致性,将第一自适应模板中l表位中像素的重建值与2表位中的重建值对换,第一自适应模板中其他表位中重建值不变。

(4)若当前编码宏块mbx2存在右上参考宏块,根据公式(13)检测右上参考宏块中像素的待编码像素分量的重建值与第一自适应模板中每个表位中的重建值的一致性:

时,判断为不具备一致性,先将第一自适应模板中所有表位中的重建值从3表位开始向后顺序移位,原15表位中的重建值移除,再将上参考宏块中像素的待编码像素分量的重建值填充至3表位;

时,判断为具备一致性,将第一自适应模板中l表位中像素的重建值与3表位中的重建值对换,第一自适应模板中其他表位中重建值不变。

s464、利用率失真优化方法从第一自适应模板中选取当前编码宏块的候选表位。

根据步骤s463,对当前编码宏块mbx2确定了其第一自适应模板,第一自适应模板的l个表位中记录了l组重建值,对该l组重建值进行率失真优化,选择出几组候选重建值,即选择出候选表位。率失真优化公式具体如下:

其中,为l表位中重建值的率失真优化值,为当前编码宏块mbx2中编号为m的像素的待编码像素分量的原始像素值,为l表位中编号为m的像素的待编码像素分量的重建值,abs为绝对值运算符,c1和c2为权重系数。

根据公式(14),可得到当前编码宏块mbx2的第一自适应模板的一组率失真优化值为

当l=16时,包含16个值。从16个值中,选择出较小的l′个值,l′≥1,将其对应的l′个参考表位确定为候选表位。例如可选择3个较小的值。将此3个较小的值对应的表位确定为当前编码宏块mbx2的3个候选表位。

s465、根据候选表位创建第二自适应模板。

参见图18,图18为本发明实施例提供的第二自适应模板的表位示意图。对步骤s464中得到的每一个候选表位,对其m个重建值分别计算其预测像素分量值。预测像素分量值根据如下公式计算:

其中,表示l′个候选表位中,编号为l′的表位中编号为m的像素的待编码像素分量的预测像素分量值,w1、w2、w3、w4为一组预测参数。

根据公式(15),l′表位中值是根据编号为l′的表位中编号为m的表格中的重建值与该重建值在该表位中左右相邻的两个重建值进行加权运算后得到。

设定l′表位中第一个像素的待编码像素分量的预测像素分量值

且l′表位中最后一个像素的待编码像素分量的预测像素分量值

通过公式(15)~(17),每给定一组预测参数w1、w2、w3、w4,计算得到一组l′表位的预测像素分量值为

预设预测参数w1、w2、w3、w4有t种不同组合,则可以计算得到t组l′表位的预测像素分量值。对于l′个候选表位,便可以计算得到z=t×l′个表位的预测像素分量值,由这z个表位构成第二自适应模板,并对这z个表位从0到z-1重新进行编号。

优选地,当l′=3,t=4时,z=3×4=12,即第二自适应模板包含12个表位,当m=16时,编号为z的表位记录的16个预测像素分量值如下:

s466、利用率失真优化方法从第二自适应模板中选取当前编码宏块的第一参考表位。

对第二自适应模板的z个表位的预测像素分量值再次进行率失真优化,具体如下:

其中,为编号为z的表位中预测像素分量值的率失真优化值,为当前编码宏块mbx2中编号为m的像素的待编码像素分量的原始像素值,为z表位中编号为m的像素的待编码像素分量的预测像素分量值,abs为绝对值运算符,c3和c4为权重系数。

根据公式(18),可得到当前编码宏块mbx2的第二自适应模板的一组率失真优化值为

从z个中选择一个最优值,即最优率失真优化值,将该最优率失真优化值对应的表位z'表位作为当前编码宏块mbx2的第一参考表位,z'表位中的m个预测像素分量值作为当前编码宏块mbx2中m个像素的待编码像素分量的第一参考值。优选地,最优率失真优化值比如为最小率失真优化值,即的最小值。

s467、在第一参考表位中选择当前编码宏块中每个当前编码像素的第二参考像素,计算一组第二预测残差。

在本发明的一个实施例中,计算第二预测残差时,采用点对点预测方法。cx2,m表示当前编码宏块中的当前编码像素,pz′,m表示第一参考表位z'表位中预测像素分量值对应的第二参考像素。根据点对点映射,将z'表位中编号m的参考像素pz′,m作为当前编码像素cx2,m的第二参考像素,预测像素分量值作为当前编码像素cx2,m的待编码像素分量的第一参考值。则当前编码宏块mbx2中当前编码像素cx2,m的待编码像素分量的第二预测残差为

本发明实施例的自适应模板预测方法通过定义自适应模板,并针对不同宏块采用一致性检测方法动态更新自适应模板中的表位数据,同时采用率失真优化算法从自适应模板的多个表位中选择出每个宏块的最优参考表位,进而计算宏块的预测残差。与现有的方法相比,当待压缩图像的纹理较为复杂时,对应不同的纹理区域,可以提供适用的自适应模板供选择,更容易提高当前宏块中的像素与自适应模板中选定的像素匹配的概率,能够提高对复杂纹理区域求预测残差值的精度,进一步降低理论极限熵,增大带宽压缩率。

实施例八

本发明实施例与实施例七的不同在于,步骤s464中选择出的候选表位数量为1个,则将该候选表位直接作为第一参考表位,即不进行步骤s465~s466,直接到达步骤s467。

实施例九

本发明实施例在实施例一至实施例八任一基础上,步骤s5还包括以下步骤:

s51、计算当前编码宏块mbx的第一主观差异

根据步骤s45中得到的第一预测残差,计算当前编码宏块mbx的第一绝对残差和

再根据当前编码宏块mbx的一组第一预测残差计算第一平均绝对残差和计算公式如下:

再根据第一平均绝对残差和计算第一绝对标准差计算公式如下:

此外,再引入一个第一惩罚因子penalty_1,第一惩罚因子的大小根据所采用的非等距采样预测方法的预测性能来配置,例如预测残差的运算速度的快慢、占用资源的多少、或者主观惩罚量等。

根据公式(20)和(22)得到的第一绝对残差和第一绝对标准差以及第一惩罚因子penalty_1,最后根据如下公式计算得到第一主观差异

其中,c1、c2、c3为分场景配置权重系数,且c1+c2+c3=1。若为连续多帧且具有传导效应的场景,如h246参考值压缩,则c2的取值应较大,c1的取值较小;c3的大小根据对预测性能的要求进行配置,比如对运算速度要求较高,则c3的取值应较大。

s52、计算当前编码宏块的第二主观差异。

根据步骤s467得到的第二预测残差,计算当前编码宏块mbx的第二绝对残差和

再根据当前编码宏块mbx的一组第二预测残差计算第二平均绝对残差和计算公式如下:

再根据第二平均绝对残差和计算第二绝对标准差计算公式如下:

此外,再引入一个第二惩罚因子penalty_2,第二惩罚因子的大小根据所采用的自适应窗口预测方法的特性来配置,例如预测残差的运算速度的快慢、占用资源的多少、或者主观惩罚量等。

根据公式(24)和(26)得到的第二绝对残差和第二绝对标准差以及第二惩罚因子penalty_2,最后根据如下公式计算得到第二主观差异

其中,c1、c2、c3为分场景配置权重系数,取值同公式(23)。

实施例九

本发明实施例在实施例一至实施例八任一基础上,在步骤s6中,根据两种预测方法得到的主观差异,即第一主观差异和第二主观差异比较第一主观差异与第二主观差异,选择其中最小值对应的预测方法作为当前编码宏块mbx的最优预测方法,将根据该最优预测方法确定的一组参考像素作为当前编码宏块mbx的一组最优参考像素,将根据该最优预测方法计算得到的一组预测残差作为当前编码宏块mbx的一组最优预测残差。

具体地,若则确定自适应一级分割预测方法为最优预测方法,根据自适应一级分割预测方法得到的一组第一预测残差为当前编码宏块mbx的一组最优预测残差;

则确定自适应模板预测方法为最优预测方法,根据自适应模板预测方法得到的一组第二预测残差为当前编码宏块mbx的一组最优预测残差;

则预设一个默认预测方法,确定该默认预测方法为最优预测方法,根据该默认预测方法得到的一组预测残差为当前编码宏块mbx的一组最优预测残差。默认预测方法可设定为自适应一级分割预测方法,或设定为自适应模板预测方法。

本文中,重建值是指已压缩图像解压端得到的像素分量值,进一步,预测残差加上参考值,即参考像素的对应像素分量值,便可得重建值。

综上所述,本发明实施例的带宽压缩中复杂纹理的多模式两级选择预测方法,采用了两级选择策略,在预测前通过计算宏块的梯度判断宏块的纹理复杂度,选择出适用该纹理复杂度的多个待预测模式,预测之后再通过比较不同预测模式的主观差异,进一步选择出针对该宏块的最优预测方法,对于复杂纹理图像,可根据图像不同区域纹理特征的不同,自适应地选择最优的预测方法,预测效果更优,进一步降低了理论极限熵。

综上所述,本文中应用了具体个例对本发明基于带宽压缩中复杂纹理的多模式两级选择预测方法进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制,本发明的保护范围应以所附的权利要求为准。

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