一种基于分布特征的shvc空间可伸缩视频编码方法

文档序号:1893580 发布日期:2021-11-26 浏览:17次 >En<

阅读说明:本技术 一种基于分布特征的shvc空间可伸缩视频编码方法 (SHVC (scalable video coding) spatial scalable video coding method based on distribution characteristics ) 是由 汪大勇 解乐乐 王欣 王倩敏 宋丽娟 于 2021-08-25 设计创作,主要内容包括:本发明属于SHVC视频编码领域,具体涉及一种基于分布特征的SHVC空间可伸缩视频编码方法,该方法包括:获取当前编码单元CU的深度,根据CU的深度判断是否跳过,若选择跳过,则选择下一个深度进行编码,若不跳过,则判断当前模式是否为最优模式,若不为最优模式,则采用方向模式预测最优模式,若为最优模式,则根据最优模式判断是否终止划分,若终止划分,则输出划分结果,若不终止划分,则选择下一个深度进行编码;本发明采用了可变步长的折半查找法对方向模式进行预测,解决了对可能性低的方向模式进行哈达玛变换导致的效率低的问题。(The invention belongs to the field of SHVC video coding, and particularly relates to a SHVC spatial scalable video coding method based on distribution characteristics, which comprises the following steps: acquiring the depth of a current coding unit CU, judging whether skipping is performed according to the depth of the CU, if skipping is selected, selecting the next depth for coding, if not, judging whether a current mode is an optimal mode, if not, adopting a direction mode to predict the optimal mode, if so, judging whether division is terminated according to the optimal mode, if so, outputting a division result, and if not, selecting the next depth for coding; the invention adopts a variable step length halving search method to predict the direction mode, and solves the problem of low efficiency caused by Hadamard transformation of the direction mode with low possibility.)

一种基于分布特征的SHVC空间可伸缩视频编码方法

技术领域

本发明属于SHVC视频编码领域,具体涉及一种基于分布特征的SHVC空间可伸缩视频编码方法。

背景技术

数字电视广播、视频会议、无线视频流、智能手机通信等技术在人们的日常生活中得到越来越广泛的应用,因此产生了许多不同的终端设备,而这些终端设备可能具有不同的屏幕分辨率,所以要求视频流必须适应不同屏幕的分辨率;可伸缩高效视频编码(SHVC)是解决这一问题的有效方法。SHVC由一个基本层(BL)和一个或多个增强层(EL)组成。如图1所示,为了适应不同的屏幕分辨率,空间SHVC(SSHVC)采用不同的屏幕分辨率序列对不同的层进行编码,通过选择合适的层,SSHVC可以适应不同屏幕分辨率的各种设备。

在SSHVC中由一个BL和一个或多个EL组成,基本层BL只包括层内预测,而增强层EL进一步包括层间预测;在增强层的层内预测编码过程与HEVC的相同。由于BL与EL的内容相同,但分辨率不同,因此需要对BL进行不采样的预测,即层间预测;相应的模式被表示为层间参考(ILR)模式。由于HEVC的编码过程已经非常复杂,SSHVC需要对其所有的层进行编码,因此必然会有更复杂的编码过程,这将限制其广泛的应用,特别是在无线和实时应用中。因此,降低编码复杂度,提高编码速度显得尤为重要。

现有的一些算法可以在一定程度上提高编码速度,但空间SHVC仍存在一些问题需要解决:1、纹理特征和相关度通常用于预测候选深度;然而,它们与深度选择的联系不够直接;因此,仅使用它们来预测深度选择不能保证获得最佳性能;2、为了提高编码速度,通常采用残差系数来提前终止模式选择;由于没有研究其背后的原理,仅使用残差系数进行提前终止模式选择无法获得最佳性能。

发明内容

为解决以上现有技术存在的问题,本发明提出了一种基于分布特征的SHVC空间可伸缩视频编码方法,该方法包括:

S1:获取当前编码单元的深度,若当前的CU深度为1或者2,则根据增强层ILR模式的残差系数判断是否跳过当前的深度,若跳过,则执行步骤S5,否则,执行步骤S2;

S2:采用GMM-EM方法判断当前CU的ILR模式是否为最优模式,若为最优模式,则执行步骤S4,否则执行步骤S3;

S3:对当前CU的模式进行帧内预测,得到当前CU的最优模式;

S4:根据最优模式的残差系数判断当前CU是否继续划分,若终止划分,则输出CU的划分结果;若继续划分,则获取当前CU的深度,若当前深度为3,则直接跳出划分,得到最终的划分结果,若当前深度不为3,则执行步骤S5;

S5:对当前的CU进行划分,得到四个子CU,将四个子CU执行步骤S1~步骤S4。

优选的,根据残差系数判断是否跳过当前深度的过程包括:对当前编码单元CU进行编码,得到增强层ILR模式的残差系数图;对残差系数图进行划分,得到第一残差系数图和第二残差系数图;分别计算第一残差系数图和第二残差系数图的期望和方差,判断第一残差系数图的期望和方差与第二残差系数图的期望和方差是否有区别,若第一残差系数图的期望、方差和第二残差系数图的期望、方差有区别,则跳过当前深度,否则不跳过当前深度。

进一步的,计算残差系数图的期望和方差的过程包括:残差系数图中的各个系数服从高斯分布,获取划分后的残差系数图的残差系数样本;根据残差系数样本采用极大似然估计算法得到残差系数样本的概率密度函数以及对应的似然函数,根据概率密度函数和似然函数得到分割后的残差系数图的期望和方差。

进一步的,判断第一残差系数图的期望和方差与第二残差系数图的期望和方差是否有区别的过程包括:将第一残差系数图的期望和方差输入到判断条件中,得到第一判断结果;将第二残差系数图的期望和方差输入到判断条件中,得到第二判断结果;将第一判断结果与第二判断结果进行对比,得到判断结果。

进一步的,判断条件为:

其中,表示样本的平均值,μ1表示期望,σ1表示标准差,n表示在每一个部分中的残差系数的数量,sα表示阈值。

优选的,采用GMM-EM方法判断当前CU的ILR模式是否为最优模式的过程包括:保存前一帧和当前帧的各个深度CU的编码方式和率失真代价;根据前一帧和当前帧的CU的编码方式和率失真代价得到每个CU上一帧和当前帧的相邻CU编码方式和率失真代价;采用rec0保存属于ILR模式的率失真代价,采用rec1保存Intra模式的率失真代价;当前CU编码完成ILR模式后,根据rec0和rec1保存的率失真代价得到当前CU采用ILR模式的率失真代价;对当前CU的ILR模式的率失真代价进行GMM变换,得到基于率失真的概率;根据相邻CU的编码方式得到当前CU的基于数量的概率;根据基于率失真的概率和基于数量的概率预测当前CU采用ILR模式的概率;根据该概率结果判断当前CU的ILR模式是否为最优模式。

优选的,对当前CU的模式进行帧内预测的过程包括:采用基于方向模式DM的方法对当前CU的模式进行预测;CU的所有方向模式DM有35个;对CU的模式进行预测的过程包括:

步骤1:选取方向模式DM中的0、1、10以及26进行哈达玛变换,选出DM0和DM1中较小的哈达玛代价HCl,DM10和DM26中较小的哈达玛代价HC2,判断HC1和HC2的大小,若HCl小于HC2,则DM0和DM1为最优DM,执行步骤10,否则执行步骤2;

步骤2:对DM10和DM26中的哈达玛代价进行判断,若DM10的哈达玛代价比小于DM26的哈达玛代价,则执行步骤3,若DM10的哈达玛代价比大于DM26的哈达玛代价,则执行步骤5,否则执行步骤7;

步骤3:对DM8、DM9、DM11以及DM12进行检测,判断DM9、DM11以及DM12的模式种是否存在LMD,若存在,则该模式为最优方向模式,并执行步骤10,否则执行步骤4;

步骤4:对DM2、DM6、DM14以及DM18进行检测,若哈达玛代价最小的DM不在DM2、DM6、DM8、DM12、DM14以及DM18内,则直接执行步骤10;否则采用二分搜索法获取最优DM,并执行步骤9;

步骤5:对DM24、DM25、DM27和DM28进行检测,若DM24、DM25和DM27中存在LMD,则该DM为最优DM,执行步骤10,否则执行步骤6;

步骤6:检测DM18、DM22、DM30和DM34,若哈达玛代价最小的DM不在DM18、DM22、DM8、DM24、DM28、DM30以及DM34内,则直接执行步骤10,否则采用二分搜索法获取最优DM,并执行步骤9;

步骤7:对DM 10和26之外的其他DM进行检测,若DM9、DM10、DM11、DM25、DM26和DM27中存在LMD,则该DM为最优DM,执行步骤10,否则执行步骤8;

步骤8:对DM2、DM6、DM14、DM18、DM22、DM30和DM34进行检测,若哈达玛代价最小的DM不在DM2、DM6、DM8、DM12、DM14、DM18、DM22、DM24、DM28、DM30和DM34内,则直接执行步骤10,否则采用二分搜索法获取最优DM,并执行步骤9;

步骤9:检查具有最小哈达玛代价的DM的中间和其左(右)检查的相邻DM,并选择具有最小哈达玛代价的DM,重复该过程直到DM是LMD,该DM为最优DM,并执行步骤10;

步骤10:DM选择终止。

优选的,根据最优模式的残差系数判断当前CU是否继续划分的过程与根据增强层ILR模式的残差系数判断是否跳过当前的深度的过程相同。

本发明的优点:采用了根据显著性差别提前终止哈达玛变换,以及采用了可变步长的折半查找法对CU的方向模式进行预测选择,解决了对可能性低的方向模式进行哈达玛变换导致的效率低的问题。

附图说明

图1为本发明中现有的SHVC中的基本层和增强层的结果;

图2为本发明的算法流程图;

图3为本发明的残差系数图的分割图;

图4为本发明的相邻CU结构图;

图5为本发明的所有方向模式示意图;

图6为本发明的1类方向模式预测结果示意图;

图7为本发明的可变步长检查和二进制搜索的结果示意图。

具体实施方式

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

一种原始编码的方法,该方法包括:对整个编码单元CU进行编码,得到该编码单元的率失真代价值RDCost,记为C1;将整个编码单元CU进行划分,得到4个深度为1的子CU,对深度为1的子CU进行编码,得到各个子CU的最优率失真代价值RDCost,计算深度为1的子CU的所有最优率失真代价值的和,将该值记为C2;比较C1和C2,取最小值为最优RDCost;若C1小于C2,则当前CU不划分,反之则继续划分;重复上述过程,直到当前CU的深度为3,则停止划分,最终得到当前深度分别为0、1、2、3的最优RDCost。

一种基于分布特征的SHVC空间可伸缩视频编码方法,如图2所示,该方法包括:

S1:获取当前编码单元的深度,若当前CU的深度为1或者2,则根据增强层ILR模式的残差系数判断是否跳过当前的深度,若跳过,则执行步骤S5,否则,执行步骤S2;

S2:采用GMM-EM方法判断当前CU的ILR模式是否为最优模式,若为最优模式,则执行步骤S4,否则执行步骤S3;

S3:对当前CU的模式进行帧内预测,即根据基于方向模式DM的方法对当前CU进行候选方向模式预测,得到当前CU的最优模式;

S4:根据最优模式判断当前CU的深度,若当前深度为0,则执行步骤S5;若当前深度为1或2,则根据最终的残差系数判断是否终止CU划分,若终止划分,输出CU划分结果,否则执行步骤S5;若当前深度为3,则直接跳出划分,得到最终的划分结果;

S5:对当前的CU进行划分,得到四个子CU,将四个子CU执行步骤S1~步骤S4。

根据残差系数判断是否跳过当前深度的过程包括:对当前CU进行编码,在完成ILR模式后得到CU的残差系数图;对残差系数图进行划分,得到第一残差系数图和第二残差系数图;分别计算第一残差系数图和第二残差系数图的期望和方差,并根据假设检验方法判断第一残差系数图和第二残差系数图的期望和方差是否有区别,若有区别则跳过当前深度,否则不跳过当前深度。

可选的,对残差系数图进行划分的方式包括将对残差系数图进行左右划分,得到左半部分残差系数图和右半部分残差系数图;分别计算左半部分残差系数图和右半部分残差系数图的期望和方差,并根据假设检验方法判断两部分之间是否有显著性差别,若有显著差别,则跳过当前编码深度。

可选的,对残差系数图进行划分的方式包括将对残差系数图进行上下划分,得到上半部分残差系数图和下半部分残差系数图;分别计算上半部分残差系数图和下半部分残差系数图的期望和方差,并根据假设检验方法判断两部分之间是否有显著性差别,若有显著差别,则跳过当前编码深度。

优选的,对残差系数图进行划分的方式包括将残差系数图进行左右划分或者上下划分,得到左半部分残差系数图和右半部分残差系数图或者上半部分残差系数图和下半部分残差系数图;分别计算左半部分残差系数图和右半部分残差系数图或者上半部分残差系数图和下半部分残差系数图的期望和方差,并根据假设检验方法判断两部分之间是否有显著性差别,若有显著差别,则跳过当前编码深度。

在SHVC中,每个CTU包括四个深度,对应大小为64×64至8×8的编码单元(CU),每个CU都需要检查ILR模式和帧内模式,然后选择率失真(RD)代价较小的模式作为最佳模式。层间(ILR)模式与帧内(Intra)模式之间的对应模式分布如表1所示:

Sequence ILR Intra
Blue-sky 98.50% 1.50%
Ducks 99.76% 0.24%
Park_Joy 99.07% 0.93%
Pedestrian 90.65% 9.35%
Tractor 97.68% 2.32%
Town 96.84% 3.16%
Station2 95.27% 4.73%
Average 96.82% 3.18%

表1ILR模式和帧内模式分布

从表1中可以看出,ILR模式的平均百分比为96.82%,即大多数用户选择ILR模式作为最佳模式,其原因是BL和EL中的内容相同,而BL和EL中的QP相似甚至相同,层间相关性强;通过对BL中中定位的CU进行上采样,可以直接得到ILR模的预测,过程简单。因此,在本发明中先得到ILR模式的残差系数而不进行编码,然后根据残差系数来判断当前CU是否需要进一步分割,可以直接跳过当前CU;否则,需要进一步编码ILR模式和Intra模式。

首先,将残差系数的CU划分为图3(a)所示的上、下部分以及图3(b)所示的左、右部分。如果任何一个分区的两部分有显著性差异,就意味着当前CU需要进一步划分。如果用最佳模式能够准确地预测CU,则相应的剩余系数将遵循高斯分布。若残差系数服从高斯分布,则每个分区中一个部分的残差系数分别建模为:

X~N(μ1,σ1 2)

其中,X表示某一个部分(这里取上半部分或左半部分)的残差系数集,μ1和σ1 2分别为该部分的期望和方差。

若x1,x2,....,xn为残差系数集X中的样本,则采用极大似然估计(MLE)得到选取残差系数集中各部分样本的概率密度函数,该函数的表达式为:

其中,x表示残差系数集X中的样本,μ1和σ1 2分别为残差系数集的期望和方差。

概率密度函数对应的似然函数为:

其中,L表示似然函数,n表示在每一个部分中的残差系数的数量。为了得到μ1和σ1 2,可以进行如下计算:

根据上述表达式的计算结果,可以得到:

其中,表示样本的平均值。

若Y为另一部分的残差系数集,y1,y2,....,yn为该残差系数集中的样本,为该样本的平均值,判断两部分是否有显著性差别的条件为:

其中,n是在每一个部分中的残差系数的数量,α为显著性水平值;对于任意一种α,可以通过检查高斯分布表得到相应的阈值sα;如果上式满足,则两部分有显著性差别。

由于不同的深度被跳过的概率有可能不同,所以需要选择每个深度的最佳阈值。对于深度2,采用常用的值进行检测,该值对应的编码效率较高。为了提高编码效率,选取高斯分布表中的最大值3.49,并进一步对其倍数进行测试,相应的编码效率如表2所示。

表2不同测试值条件下的编码效率

在表2中,编码效率由BDBR表示,它测量EL中相同峰值信噪比(PSNR)情况下的比特率差。正的或负的BDBR分别反映编码效率的损失或增加。通过表2可知,当测试值大于或等于20.94时,所有序列的BDBRs都小于0.1%。因此,选择测试值20.94作为深度2的阈值。同样,深度1的阈值为31.41。如果跳过深度0,在某些序列中相应的编码效率会明显降低;不跳过深度0。深度跳过条件为:

其中,depth表示深度。

采用GMM-EM方法判断当前CU的ILR模式是否为最优模式的过程包括:保存前一帧和当前帧的各个深度CU的编码方式和率失真代价;根据前一帧和当前帧的CU编码方式和率失真代价得到每个CU上一帧和当前帧的相邻CU的编码方式和率失真代价,并采用rec0保存属于ILR模式的率失真代价,采用rec1保存Intra模式的率失真代价,根据rec0和rec1保存的率失真代价得到当前CU采用ILR模式的率失真代价;对当前CU的ILR模式的率失真代价进行GMM变换,得到基于率失真的概率;根据相邻CU的编码方式得到当前CU的基于数量的概率;根据基于率失真的概率和基于数量的概率预测当前CU采用ILR模式的概率;根据该概率结果判断当前CU的ILR模式是否为最优模式。具体的,采用GMM-EM方法判断当前CU的ILR模式是否为最优模式的过程为:

(1)首先使用一个vector<vector<pair<int,double>>>类型的变量curCosts0保存当前帧每个深度0的CU最终的编码方式以及率失真代价,preCosts0用来保存前一帧每个深度0的CU最终的编码方式以及率失真代价,preCosts0的类型和curCosts0相同,每编码完成一帧,就将curCosts0复制给preCosts0,并将curCosts0重新初始化。深度1、2、3同理,这样就得到了前一帧和当前帧已编码的各个深度CU的编码方式和率失真代价。

(2)通过(1)可以得到每个CU上一帧和当前帧的相邻CU,并可以得到它们的编码方式和率失真代价,用rec0保存其中属于ILR模式的率失真代价,rec1保存其中属于Intra模式的率失真代价,由于当前CU此时已编码完成ILR模式,故可以得到当前CU采用ILR模式的率失真代价。

当前CU和它的相邻CU的结构如图4所示,其中U0是当前CU,U1,U2,U3和U4是当前CU的相邻CU,U5,U6,U7,U8和U9是前一帧中与U0,U1,U2,U3以及U4同位置的CU。

(3)根据(2)得到的信息对其进行GMM变换,得到基于率失真的概率,其具体的过程包括:

对于任意的Ui,其率失真代价表示为rdi,相应的高斯混合模型为:

p(rdi)=π1N(rdi1,∑1)+π2N(rdi2,∑2)

其中,π1为采用ILR模式的可能性,μ1和∑1分别是其率失真代价的期望值和方差;π2是采用Intra模式的可能性,μ2和∑2分别是其率失真代价的期望值和方差。

为得到π1、μ1、∑1、π2、μ2以及∑2六个参数值,则采用最大似然估计,其表达式为:

其中,M表示当前CU及其相邻CU的个数,p表示概率,rdi表示率失真代价,N表示高斯分布。

优选的,M的值设置为10。

似然函数的对数表达式为:

根据最大似然估计表达式和似然函数的对数表达式可以得到:

根据上述公式可以得到:

其中,γ(i,k)是第i个样本由第k个部分产生的概率,T表示转置。即表示所有样本由第k个部分产生的概率和,得到采用ILR模式的可能性的表达式为:

这里的N为采用两种模式的概率和的和,γ(i,k)可以根据以下公式得到:

重复迭代得到μk、∑k、πk以及γ(i,k)的公式,直到γ(i,k)收敛为止。

由于当前CU是U0,为了确定ILR模式是否是最佳模式,需要确定γ(0,k)是否收敛。假设γ(0,k)的第i次迭代表示为γi(0,k),为了避免不必要的重复迭代,如果γi-1(0,k)和γi(0,k)之间的绝对差非常小,可以终止重复迭代。选择0.01作为阈值,则有:

i(0,k)-γi-1(0,k)|≤0.01

如果满足上述条件,则直接终止重复迭代的过程;通过该过程,可以得到当前CU选择ILR模式的可能性,将该可能性定义为基于率失真的概率。

(4)根据相邻CU的编码方式得到当前CU的基于数量的概率。具体过程为:

由于相邻CU通常相似,使用相邻CU进行预测。相邻CU中使用ILR模式的越多,则当前CU使用此模式的可能性也越高,反之亦然。当前CU选择ILR模式的概率与使用ILR模式的相邻CU的数目成正比。如图4所示,当前CU有九个相邻CU。因此,当前CU选择ILR模式的可能性可以写为其中k是使用ILR模式的相邻CU的数目。由于这种可能性是基于使用ILR模式的相邻CU的数量获得的,因此将其定义为基于数量的概率。

(5)由于基于率失真的概率和基于数量的概率都与ILR模式的选择有很强的关系,因此根据基于率失真的概率和基于数量的概率来预测使用ILR模式的概率。设A和B分别表示基于率失真的概率和基于数量的概率;由于两者相互独立的,得到深度提前终止的可能性,其表达式为:

pr=p(A+B)=p(A)+p(B)-p(A)p(B)

其中,pr表示深度提前终止的可能性,如果pr大于或等于0.6,当前CU提前终止;p(A+B)表示基于率失真的概率和基于数量的概率,即两者满足至少一个的概率,p(A)表示基于率失真的概率,p(B)表示基于数量的概率。在测试过程中使用0.6、0.7、0.8和0.9,相应的BDBR如表3所示。

Pr&BDBR 0.6 0.7 0.8 0.9
Blue-sky -0.3% -0.3% -0.3% -0.3%
Ducks 0.0% 0.0% 0.0% 0.0%
Park_Joy 0.0% 0.0% 0.0% 0.0%
Pedestrian -0.1% -0.1% -0.1% -0.1%
Tractor -0.1% 0.0% 0.0% 0.0%
town -0.1% -0.1% -0.1% -0.1%
station2 0.0% -0.1% -0.1% -0.2%

表3深度提前终止的可能性pr和相应的BDBR

从表3可以看出,当pr逐渐提高时,除序列“station2”以外,BDBR基本保持不变。当BDBR等于0.9时,序列“station2”的BDBR达到最小值。因此,选择0.9作为最佳值。即如果pr大于0.9,当前深度提前终止。

SHVC中的方向模式(DM)如图5所示。有2种非定向模式,即DC(dm0)和平面(dm1),以及33种定向模式(DM2...DM34)。一般来说,dm0和dm1非常适合于简单的CUs。与HEVC相似,SHVC首先在粗选模式决策(RDM)中检查35个方向模式,得到哈达玛代价(HC)选择HC中最小的N个DM,然后在率失真优化(RDO)过程中检查这些DM,选择RDO值最小的方向模式作为最佳DM;通过上述过程,可以获得最佳的编码效率。然而,检查许多不必要的方向模式会花费很多不必要的编码时间。尤其是RDM过程总是检查35种方向模式,这非常耗时。如果增强层(EL)中的大尺寸CU使用Intra模式,它们通常非常简单;而对于EL中的小CU,它们的纹理不会因为尺寸小而发生很大的变化,所以它们通常也很简单。显然,简单的CU可能具有特殊的DM特征。研究EL中的这些DM特性有助于提高编码速度。不同的DM被选为所有CU中的最佳DM的概率可能不同首先获得它们的概率,然后通过将具有相似概率的DM分组来研究DM的分布。

CU的所有方向模式DM有35个,即DM0、DM1、DM2、DM3、DM4、DM5、DM6、DM7、DM8、DM9、DM10、DM11、DM12、DM13、DM14、DM15、DM16、DM17、DM18、DM19、DM20、DM21、DM22、DM23、DM24、DM25、DM26、DM27、DM28、DM29、DM30、DM31、DM32、DM33以及DM34;计算CU选择各个方向模式的概率,根据计算的概率对所有的方向模式进行分类,得到三类划分结果。

概率的计算公式为:

其中,ni是DMi在所有CU被选为最佳DM的数目,m是所有CU的数目。

方向模式的分类结果包括0类、1类以及2类。0类的方向模式包括DM0和DM1;1类方向模式包括DM8、DM9、DM10、DM11、DM12、DM24、DM25、DM26、DM27和DM28;2类方向模式包括DM2、DM3、DM4、DM5、DM6、DM7、DM13、DM14、DM15、DM16、DM17、DM18、DM19、DM20、DM21、DM22、DM23、DM29、DM30、DM31、DM32、DM33以及DM34。将1类的方向模式划分为两组,即将DM8、DM9、DM10、DM11和DM12作为水平方向模式组,DM24、DM25、DM26、DM27和DM28作为垂直方向模式组。将2类方向模式划分为4组数据,即将DM2、DM3、DM4、DM5、DM6以及DM7作为第一方向模式组;将DM13、DM14、DM15、DM16、DM17以及DM18作为第二方向模式组;将DM19、DM20、DM21、DM22以及DM23作为第三方向模式组;将DM29、DM30、DM31、DM32、DM33以及DM34作为第四方向模式组。

在对当前CU的模式进行帧内预测的过程中,对0类方向模式进行显著性差异预测。具体过程包括:将DMi的HC表示为HCi,min()表示为两个不同HC值之间的较小值;0类中的DM0和DM1为非定向模式,1类的方向模式中DM10为水平方向,DM26为垂直方向;若HC0和HCl明显小于HC10和HC26,则最优DM出现在0类中;检查0类中的DM0和DM1以及1类中的DM10和DM26,根据min(HC0,HCl)和min(HC10,HC26)之间的差异来确定最优DM是否出现在0类中;在进行方向模式预测中,用户可以随时提前终止DM的选择。

如图6所示,对于1类方向模式进行显著性差异预测下降方向搜索;由于DM10是一个水平DM,DM26是一个垂直DM,如果HC10明显小于HC26,最优DM很可能在水平方向模式组中,相反,最优DM很可能在垂直方向模式组中。首先检查1类中的DM10和DM26,根据HC10和HC26之间的差异来预测可能的向模式组。在得到可能的方向模式组后,根据该方向模式组进一步检查DM10或DM26的两个直接相邻的DM,然后根据它们在该组中的哈达玛代价来搜索最佳DM。由于类0和1类中的DM是最佳DM的概率高,如果检查一个DM和它的两个直接相邻的DM,并且它的HC是所有检查的DM中最小的HC,那么这个DM很可能是最佳DM(LBD)。为了尽快获得LBD,沿着哈达玛代价下降的方向进行搜索。例如,如果水平子类是非常可能的方向模式组,进一步检查DM10的两个直接相邻的DM,即DM9和DM11。根据HC 9、HC 10和HC 11的组合,有三种情况,如图所6示。按照每个案例中的箭头搜索LBD。

优选的,三种情况包括:(1)如果HC10是所有哈达玛代价中最小的HC,DM 10是LBD,则提前终止DM选择;(2)由于哈达玛代价是从左右两侧下降的,则沿着下降方向进一步检查DM8和DM12,以确定DM9或DM11是否LBD;如果不是,需要进一步检查第2类中的DM7和DM13,以确定DM8或DM12是LBD;(3)由于这三个方向模式的哈达玛代价都是单调下降的,则沿着下降方向搜索LBD;如果HC9>HC10>HC11,进一步检查DM12以确定DM11是否为LBD;如果不是,进一步检查第2类中的DM13并确定DM12是否为LBD;如果HC11>HC10>HC9,进一步检查DM8以确定DM9是否为LBD;如果不是,进一步检查第2类中的DM7并确定DM8是否是LBD。

为确定1类中的DM8或DM12,需要检查类2中的DM7或DM13。将DM7或DM13通过显著性差异预测下降方向搜索,如果能够获得LBD,则可以将该LBD视为最佳DM,并且可以终止DM选择。

对2类方向模式进行变步长二分搜索。具体的,将DM7和DM13或者DM23和DM29作为起始DM来搜索类2中的最佳DM。例如,使用类2中的DM7(已选中)作为起始DM,使用步长1来检查DM6(7和6之间的距离是1);从DM6开始,使用4的步长来检查DM2(6和2之间的距离是4);如果在类2中有一个DM,它的HC在所有选中的DM中最小,则采用二进制搜索来寻找最佳DM。更具体地说,该过程是:首先检查所有已检查的DM中HC最小的mDM与其最近的左侧已检查的相邻lDM之间的中点,然后检查mDM与其最近的右侧检查的相邻rDM之间的中点,最后选择所有已检查的DM中HC最小的DM;重复此过程,直到DM成为LBD。例如,如果DM 4在所有选中的DM中具有最小的HC,则其左、右最近相邻的选中DM是DM2和DM6,进一步检查DM 2和DM 4之间的中点,即DM 3,以及DM 4和DM 6之间的中点,即DM 5,然后选择在所有选中的DM中具有最小HC的DM,如果该DM是LBD,可以提前终止DM选择,否则,进一步重复这个过程。可变步长检查和二进制搜索的示例如图7所示。

具体的,对当前CU的模式进行帧内预测的过程包括:

步骤1:选取方向模式DM中的0、1、10以及26进行哈达玛变换,选出DM0和DM1中较小的哈达玛代价HC1,DM10和DM26中较小的哈达玛代价HC2,判断HC1和HC2的大小,若HC1小于HC2,则DM0和DM1为最优DM,执行步骤10,否则执行步骤2;

步骤2:对DM10和DM26中的哈达玛代价进行判断,若DM10的哈达玛代价比小于DM26的哈达玛代价,则执行步骤3,若若DM10的哈达玛代价比大于DM26的哈达玛代价,则执行步骤5,否则执行步骤7;

步骤3:对DM8、DM9、DM11以及DM12进行检测,判断DM9、DM11以及DM12的模式种是否存在LMD,若存在,则该模式为最优方向模式,并执行步骤10,否则执行步骤4;

步骤4:对DM2、DM6、DM14以及DM18进行检测,若哈达玛代价最小的DM不在DM2、DM6、DM8、DM12、DM14以及DM18内,则直接执行步骤10;否则采用二分搜索法获取最优DM,并执行步骤9;

步骤5:对DM24、DM25、DM27和DM28进行检测,若DM24、DM25和DM27中存在LMD,则该DM为最优DM,执行步骤10,否则执行步骤6;

步骤6:检测DM18、DM22、DM30和DM34,若哈达玛代价最小的DM不在DM18、DM22、DM8、DM24、DM28、DM30以及DM34内,则直接执行步骤10,否则采用二分搜索法获取最优DM,并执行步骤9;

步骤7:对DM 10和26之外的类别2的DM进行检测,若DM9、DM10、DM11、DM25、DM26和DM27中存在LMD,则该DM为最优DM,执行步骤10,否则执行步骤8;

步骤8:对DM2、DM6、DM14、DM18、DM22、DM30和DM34进行检测,若哈达玛代价最小的DM不在DM2、DM6、DM8、DM12、DM14、DM18、DM22、DM24、DM28、DM30和DM34内,则直接执行步骤10,否则采用二分搜索法获取最优DM,并执行步骤9;

步骤9:检查具有最小哈达玛代价的DM的中间和其左(右)检查的相邻DM,并选择具有最小哈达玛代价的DM,重复该过程直到DM是LMD,该DM为最优DM,并执行步骤10;

步骤10:DM选择终止。

为了确定两种DM的HC是否存在显著差异,对其相应的残差系数进行了判断。假设R1和R2是两个DM的残差,它们的区别是:

R=R1-R2

通过哈达玛(Hadamard)变换,可以将上述方程改写为:

HRH=HR1H-HR2H

其中,H表示Hadamard矩阵。

根据柯西不等式,可以将HRH的表达式改写为:

其中,m为当前CU的边长,则有:

其中,xi,j是(i,j)位置处的HRH值,计算公式为:

其中,hik表示(i,k)位置处的哈达玛值,hpj(p,j)位置处的哈达玛值,rkp表示(k,p)位置处的R值。

如果HRH中的任何量化值小于k,R1和R2没有显著差异。应满足以下条件:

其中,k表示参数值,Qstep表示量化步长,可以根据量化参数得到。

根据R的计算公式、HRH的计算公式、柯西不等式以及上述条件可以得到:

HC1和HC2没有显著性差别的条件为:

HC1和HC2具有显著性差别的条件为:

其中,HC1和HC2表示两个DM的Hadamard变换值。若得到的数据显著相同的条件,则二者没有显著差异,否则它们存在显著差异。若HC1<HC2,则HC1明显小于HC2,反之亦然。

为了得到最合适的k值,测试了上述条件,得到了相应的BDBR,其结果如

表4所示。

表4不同的k值以及相应的BDBR

从表4可以看出,当k等于5时,存在一个转折点,如果大于或等于5,则所有序列中相应的BDBR都小于0.1%。这意味着k取5时可以获得很好的性能。如果进一步选择较大的,相应的编码速度提高将更小。因此,将k设置为5。

步骤S4中的具体内容为:在编码完成当前CU后,得到当前CU最终的残差系数图;分别得到该残差系数图左半部分和右半部分的期望和方差,并根据假设检验方法判断两部分之间是否有显著性差别;分别得到该残差系数图上半部分和下半部分的期望和方差,并根据假设检验方法判断两部分之间是否有显著性差别。

μ1和σ1 2是其中一个部分(这里取上半部分或左半部分)的期望和方差,Z是另一部分的残差系数,z1,z1,...zn是其样本,可以用下面的式子测试Z是否也满足μ2和σ2 2,该式子为:

其中α为显著性水平值,为各部分残差系数的数量。通过查阅高斯分布表,可以得到相应的阈值。如果满足|γi(0,k)-γi-1(0,k)|≤0.01,则两部分的残差系数使用相同的期望值和方差。因此,这两个部分没有明显的差异,当前CU可以提前终止。

其中在深度1和深度2时eα的取值为:

如果左右两部分以及上下两部分都没有显著性差别,则提前终止划分。

为了验证所提出的空间SHVC快速帧内预测算法的性能,使用了参考软件shm11.0,并在Intel(R)2.0ghz处理器和30gb内存的服务器上进行了测试。训练序列和测试序列没有重叠,保证了算法的通用性。从编码效率和编码速度两个方面评价了算法的性能。编码效率包括比特率和视觉质量,用BDBR表示。它是指与EL中的参考软件相比,在相同PSNR下的比特率差。编码速度由TS表示,TS只评估EL中编码运行时节省的百分比。

为了验证所提出的算法的性能,该算法综合了所有提出的策略。本发明提出的算法与PAPS算法、EETBS算法和FIICA算法的性能进行了比较。将所有算法都在同一个计算平台上进行测试。由于可伸缩性比率和QP分别有两种设置方式,在EL中将它们的组合分为四种情况(case)。case1是可伸缩比率为1.5倍和QP集(22、26、30、34),case2是可伸缩比率为1.5倍和QP集(24、28、32、36),case3是可伸缩比率为2倍和QP集(22、26、30、34),case4是可伸缩比率为2倍和QP集(24、28、32、36)。表6(case1)、表7(case2)、表8(case3)和表9(case4)分别列出了编码效率和编码速度方面的总体性能比较。

表6 case1性能比较

表7 case2性能比较

表8 case3性能比较

表9 case4性能比较

在表6(case1)中,本发明所用算法、PAPS、EETBS和FIICA的平均BDBR分别为0.02%、0.30%、0.20%和0.06%。四种算法的平均TS分别为79.66%、67.03%、55.34%和47.15%。这次测试中,本发明所采用的算法的BDBR小于其他三种算法,编码速度明显快于其他三种算法。在表7(case2)中,本发明所提出的算法、BDBR、PAPS、EETBS和FIICA的平均BDBR分别为-0.14%、0.38%、-0.20%和-0.18%;四种算法的平均TS分别为81.26%、65.85%、56.30%和45.75%;这次测试中,该算法的BDBR小于PAPS算法,略大于EETBS和FIICA算法,该算法的编码速度明显快于其他三种算法。在表8(case3)中,本发明所提出的算法、PAPS、EETBS和FIICA的平均BDBR分别为0.94%、0.62%、0.35%和0.38%。本发明所提出的算法的平均TS分别为76.34%、68.30%、54.49%和42.22%。这次测试中,本发明所提出的算法的BDBR大于其他三种算法,同时编码速度明显快于其他三种算法。在表9中(case4),本发明所提出的算法、PAPS、EETBS和FIICA的平均BDBR分别为0.68%、0.68%、0.31%和0.40%。本发明所提出的算法的平均TS分别为78.02%、66.67%、54.11%和43.25%。这次测试中,本发明所提出的算法的BDBR小于PAPS算法,略大于EETBS和FIICA算法,同时编码速度明显快于其他三种算法。

为了清楚地展示本文所提出的算法的性能,表10提供了这四种算法在所有四种情况下的总体平均性能比较。

表10不同算法的总体平均性能比较

本发明所提出的算法、PAPS、EETBS和FIICA的整体平均BDBR分别为0.38%、0.49%、0.17%和0.16%。四种算法的总平均TS分别为78.82%、66.96%、55.06%和44.59%。因此,该算法的编码速度明显快于其他三种算法。同时,该算法的BDBR比PAPS算法小,比EETBS算法和FIICA算法大。

以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于超分重建的图像解压缩方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类