一种面向H.264/SVCMGS编码的率失真模式选择方法转让专利

申请号 : CN201210075977.0

文献号 : CN102625102B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 艾明晶赵丽丽赵沁平茆雨润李暮遇

申请人 : 北京航空航天大学

摘要 :

本发明提出一种面向H.264/SVC MGS编码的率失真模式选择方法,该方法考虑了可伸缩编码中的层间相关性,通过分析增强层中宏块的残差预测残差信号与参考层中对应宏块的重建失真信号的关系,并证明了二者的值近似相等,从而得到新的增强层编码的率失真模型和拉格朗日乘子的确定方法,并在中粒度质量可伸缩编码中运用新的拉格朗日乘子。使用本方法的拉格朗日乘子进行率失真优化编码得到的重建图像的PSNR值比使用传统拉格朗日乘子得到的PSNR值更高,并能够在率失真模式选择时得到更准确的编码模式,且本发明方法编码的率失真性能优于基于传统拉格朗日乘子编码的率失真性能。

权利要求 :

1.一种面向H.264/SVC MGS编码的率失真模式选择方法,其特征在于,该方法具体包括如下步骤:步骤一:首先根据帧间预测残差转换系数近似服从拉普拉斯分布的性质,确定基本层重建误差信号的分布,然后确定增强层中的残差预测残差信号值的概率密度函数fr(Y):其中,常数Y满足条件:0≤Y<Qb,Qb为基本层中宏块的量化步长,Pr为增强层中宏块的残差预测残差信号进行离散余弦变换后值z的累积分布,μ为标准差;

步骤二:根据步骤一得到的增强层中的残差预测残差信号值的概率密度函数,从残差预测残差量化变换系数的信息熵H中获得新的率模型和失真模型,并通过得到的率模型和失真模型获得SVC增强层的拉格朗日乘子λB;

所述的新的率模型为:

R=αH+β (2)其中,R为编码比特率,α和β为线性系数;

所述的新的失真模型为:

其中,D为重建像素对原始像素的失真值,Qe为增强层中宏块的量化步长,Qb=ΔQe+δ,Δ、δ分别为Qb除以Qe得到的除数和余数;

所述的拉格朗日乘子λB为:

步骤三:在中粒度质量可伸缩编码中运用新的拉格朗日乘子λB,具体过程为:首先,使用传统拉格朗日乘子λA对非残差预测模式进行率失真优化编码,得到最小率失真值的模式mod eA;然后,使用步骤二得到的拉格朗日乘子λB来对残差预测模式进行率失真优化编码,选择最小率失真代价的模式,记为mod eB;最后,使用一个权衡后的拉格朗日乘子λ'对mod eA和mod eB重新计算率失真值,将得到的较小的率失真值对应的模式作为最终的编码模式;

所述的权衡后的拉格朗日乘子λ'为:

λ'=θλA+(1-θ)λB (5)其中,参数θ的取值范围是[0,1]。

2.根据权利要求1所述的一种面向H.264/SVC MGS编码的率失真模式选择方法,其特征在于,所述的步骤一具体是:首先,变换后的基本层的帧间预测残差信号值 经过离散余弦变换后得到的值为x,x服从一个标准差为μ的零均值拉普拉斯分布fL(x):假设Qb为基本层中宏块的量化步长,y为重建失真信号值量化得到的失真值,y<|Qb|,设定的一个常数Y,令0≤Y<Qb,那么值y落入区间(0,Y]的概率Pd(0<y≤Y)等于x落入区间[iQb,iQb+Y)的概率:其中,i是x量化后的值,且i∈[0,+∞);

将式(2)代入式(1),得到失真值y的概率分布:同样地:

由于增强层中宏块的残差预测残差信号的值与基本层中对应宏块的重建失真信号的值近似相等,则增强层中宏块的残差预测残差信号进行离散余弦变换后的值z的累积分布Pr为:对式(10)中的Y求导,得到增强层中的残差预测残差信号的概率密度函数fr(Y)。

3.根据权利要求1所述的一种面向H.264/SVC MGS编码的率失真模式选择方法,其特征在于,所述的步骤三具体为:首先,根据式(1)得到量化变换系数n的概率Pn:其中,n∈[-Δ,Δ];残差预测误差量化变换系数的信息熵H为:H=-ΣPnlogPn (12)将式(11)代入式(12),得到:

由于信息熵H和真实编码比特率之间有近似的线性关系,因此,得到如式(2)所示的率模型;

令D为重建像素对原始像素的失真值,由式(14)得到D:结合如式(1)所示的增强层中的残差预测残差信号值的概率密度函数fr,得到如式(3)所示的失真模型;

当拉普拉斯分布的尺度参数μ趋近于零时,拉普拉斯分布被近似看成是一个均匀分布,此时式(3)中的失真模型为:通过式(2)和(3)的率模型和失真模型,进一步得到可伸缩视频编码增强层的拉格朗日乘子λB。

4.根据权利要求1所述的一种面向H.264/SVC MGS编码的率失真模式选择方法,其特征在于,所述的线性参数α的取值为:

5.根据权利要求1所述的一种面向H.264/SVC MGS编码的率失真模式选择方法,其特征在于,所述的步骤三中的参数θ优选设为0.55。

说明书 :

一种面向H.264/SVC MGS编码的率失真模式选择方法

技术领域

[0001] 本发明涉及计算机视频编码领域,具体涉及一种H.264/SVC(Scalable Video Coding,可伸缩视频编码)MGS(Medius-Grain Scalability,中粒度质量可伸缩)增强层编码的率失真模式选择方法。

背景技术

[0002] 随着数字媒体时代的发展,通过网络传输连续的媒体数据已经成为大势所趋,同时越来越多的用户希望用PC和非PC设备通过互联网和无线网络来进行视频通信和服务,这种随时随地的视频通信和服务对当前视频编码技术提出了更大的挑战,视频流传输的完整性、正确性和实时性已经成为视频编码所要解决的关键问题。
[0003] 由于网络的异构性,用户使用设备的多样性和用户设备的不同计算能力,传统视频编码方法难以同时满足视频流传输的完整性、正确性和实时性。H.264/SVC支持编码视频流在时间、空间和质量上的可分级性,因而能较好地解决上述问题。
[0004] 相比H.264/AVC(Advanced Video Coding,先进视频编码),H.264/SVC引入了多种层间预测编码模式。如何在这些编码模式中选择最有效的模式直接决定了视频编码的编码效率。率失真优化(Rate Distortion Optimization,RDO)方法被认为是最为有效的模式选择方法,并被各视频编码标准采用,其基本思想是在给定的目标码率Rc下,选择一个最优的编码模式M使得重建结果的失真值D最小,即
[0005] minimize{D},满足R≤Rc
[0006] 引入拉格朗日乘子λ可以将上述约束问题转化为非约束问题:
[0007] minimize{J},J=D(M|Q)+λR(M|Q)
[0008] 上式即为率失真(Rate Distortion,RD)值计算公式。其中,J为在量化步长Q下使用模式M进行编码产生的率失真优化值。D(M|Q)和R(M|Q)分别代表在量化步长Q下使用模式M编码得到的失真值和产生的码率。由上式可以看出,拉格朗日乘子λ的值将直接影响编码模式选择的结果,故将对视频编码效率产生重要的影响。因而,在编码开始之前需确定合理的拉格朗日乘子值。λ值往往通过下式求导取极值得到,即
[0009]
[0010] 由上式可以看到,率模型R(M|Q)和失真模型D(M|Q)的准确性决定了λ的准确性。H.264/SVC增强层率失真编码时采用的λ仍是基于传统的面向单层视频编码标准的率模型和失真模型得到,这些率模型和失真模型并没有考虑层间相关性,而H.264/SVC增强层的层间预测模式引入了层间依赖性,即高层图像的编码依赖于低层图像的编码结果,因此传统的率失真模型已经不能准确地描述具有层间依赖性的SVC增强层的码率与失真的关系,而在此率模型和失真模型基础上得到的拉格朗日乘子已经不能得到可伸缩视频编码的最优结果。
[0011] Schwarz H.等人提出了一种考虑层间依赖性的率失真优化算法。该算法仍然采用传统的拉格朗日乘子,但是其在决定低层图像时,将其对依赖于该层的高层图像的编码影响考虑在内(参考文件1:H.Schwarz,and T.Wiegand.R-D Optimized multi-layer encoder control for SVC.Proceedings ofIEEE InternationalConference on Image Processing,2007:281-284)。该算法在很大程度上提高了SVC的编码效率。但其仍采用传统的拉格朗日乘子算法,实际上是用时间换取编码质量的一种穷尽遍历算法,时间复杂度非常高。假设基本层共有M种编码模式,增强层依赖于基本层的编码模式有N种,那么编码一个宏块要计算M×N次联合率失真值,这大大增加了可伸缩视频编码的复杂度,尤其是在实时流媒体应用中,如此高的时间复杂度是不可忍受的。LiX.等人提出对增强层宏块采用新的拉格朗日乘子(参考文件2:X.Li,P.Amon,A.Hutter,et al.Lagrange multiplier selection for rate-distortion optimization in SVC.Proceedings ofPicture Coding Symposium,2009:1-4),该方法推导得到一个增强层拉格朗日乘子与基本层和增强层量化步长值的关系,但其推导新的拉格朗日乘子时仍采用传统的率失真模型,因而其实质上并未充分考虑可伸缩编码的层间依赖性。实验结果也表明,该方法只在粗粒度质量可伸缩(Coarse Grain Scalability,CGS)编码时,能提高编码效率;而在中粒度质量可伸缩(MGS)编码时,该方法几乎是没有效果的。

发明内容

[0012] 为解决现有视频编码中基于拉格朗日乘子的率失真模型未考虑层间相关性,不能准确地描述SVC增强层的码率与失真的关系的问题,本发明提出一种面向H.264/SVC MGS编码的率失真模式选择方法。本发明旨在建立合理的面向SVC增强层MGS编码的R-D模型,并在此基础上推导得到新的拉格朗日乘子,以使得在率失真模型选择时得到更准确的编码模式。
[0013] 本发明提出一种面向H.264/SVC MGS编码的率失真模式选择方法,具体包括如下步骤:
[0014] 步骤一:首先根据帧间预测残差转换系数近似服从拉普拉斯分布的性质,确定基本层重建误差信号的分布,然后确定增强层中的残差预测残差信号值的概率密度函数;
[0015] 步骤二:根据步骤一得到的增强层中的残差预测残差信号值的概率密度函数,从残差预测残差量化变换系数的信息熵H中获得新的率模型和失真模型,并通过得到的率模型和失真模型获得SVC增强层的拉格朗日乘子λB。
[0016] 步骤三:在MGS编码中运用新的拉格朗日乘子λB,具体过程为:首先,使用传统拉格朗日乘子λA对非残差预测模式进行率失真优化编码,得到最小率失真值的模式mod eA;然后,使用步骤二得到的拉格朗日乘子λB来对残差预测模式进行率失真优化编码,选择最小率失真代价的模式,记为mod eB;最后,使用一个权衡后的拉格朗日乘子λ′对mod eA和mod eB重新计算率失真值,将得到的较小的率失真值对应的模式作为最终的编码模式。
[0017] 本发明方法的优点和积极效果在于:本发明方法所提供的面向增强层的率失真模型考虑了层间相关性,在此基础上推导得到的拉格朗日乘子也考虑了层间相关性,因而能够在率失真模式选择时得到更准确的编码模式,并在实验中验证了采用本发明方法编码的率失真性能优于基于传统拉格朗日乘子编码的率失真性能。

附图说明

[0018] 图1是具有两个质量层(基本层和增强层)的SVC编码器结构示意图;
[0019] 图2是H.264/SVC MGS帧间预测结构的示意图;
[0020] 图3是本发明变换后的残差预测残差信号的理想的和实验的累积分布曲线;
[0021] 图4是本发明中每个宏块真实编码率的平均值(y轴)和本发明中所定义的估计熵(x轴)的关系,其中,(a)为采用上下文自适应变长编码进行编码得到的结果,(b)为采用上下文自适应二进制编码进行编码得到的结果;
[0022] 图5是不同的量化参数组合下本发明中θ值与本方法相比采用传统拉格朗日乘子编码的平均PSNR(Peak Signal-to-Noise Ratio,峰值信噪比)增益的关系曲线;
[0023] 图6是本发明的Test-II中两个质量层的QP差被设为2的R-D曲线;
[0024] 图7是本发明方法的整体步骤流程图。

具体实施方式

[0025] 下面将结合附图和实施例对本发明的技术方案作进一步的详细说明。
[0026] 本发明对变换后的残差预测残差信号的分布fr进行了分析,并且证明fr与基本层相应宏块的量化步长有关。基于得到的fr分布,推导得到了新的R-D模型,并从R-D模型中推导出一个新的拉格朗日乘子。同时,本发明针对得到的新的拉格朗日乘子,给出了一个新的H.264/SVC MGS编码的率失真模式选择方法。
[0027] 本发明方法的实现基础是分析了增强层中宏块的残差预测残差信号与基本层中对应宏块的重建失真信号的关系,并证明二者的值近似相等。
[0028] 不失一般性,一个有两个质量层的SVC编码器框架如图1所示,该框架指出了有两个SVC质量层的编码结构,并在表1中对图1中的各变量含义进行了说明。
[0029] 表1 图1中各变量含义列表
[0030]
[0031]
[0032] 如图1所示,视频输入两个SVC质量层,即基本层和增强层,基本层指质量较差的层,增强层指质量较好的层。输入像素值为in,经过预测编码,分别在两个质量层中得到帧间预测值 以及帧间预测残差信号值 其中,基本层的帧间预测残差 经过DCTQ模块中的离散余弦变换(Discrete Cosine Transform,DCT)和量化(Quantization)操作及IQIDCT模块中反量化(Inverse Quantization,IQ)和反变换(Inverse Discrete Cosine Transform,IDCT)后得到预测残差的重建值 一方面与预测值 相加得到重建像素值 另一方面被用于增强层图像做残差预测模式编码的预测残差输入。增强层中的预测编码需要参考基本层中的运动信息和重建像素值 (也就是图1中的纹理信息),得到帧间预测值 和帧间预测残差信号值 其中,帧间预测残差信号值 根据基本层中预测残差的重建值 进行残差预测,得到残差预测残差信号值 经过DCTQ模块处理后再进行熵编码,同时 经过DCTQ模块处理后再经IQIDCT模块处理,得到 的重建值 该重建值再与帧间预测值 基本层中预测残差的重建值 相加得到重建像素值
[0033] 在残差预测模式中,增强层中待编码残差预测残差信号值 可以按式(1)描绘如下:
[0034]
[0035] 其中,增强层的帧间预测残差信号值 由基本层的帧间预测残差 的重建值 来预测。在基本层中,失真信号值 用下式表示:
[0036]
[0037] 将式(2)带入式(1)可得:
[0038]
[0039] 因而,若帧间预测信号 和 已知,就能够得出增强层中的残差预测残差信号值和基本层中的重建失真信号值 的关系。由于MGS编码中 近似等于 因而可以得到:
[0040]
[0041] 上面说明了在增强层中宏块的残差预测残差信号的值与基本层中对应宏块的重建失真信号的值近似相等。
[0042] 如图2所示,为本发明方法所应用的H.264/SVC MGS帧间预测结构的示意图,图中带条纹的块代表关键帧图像,粗线箭头代表关键帧图像的预测方向,黑色细线箭头代表非关键帧图像的预测方向,从图2中可以看出,增强层和基本层中的关键帧图像总是参考基本层中的关键帧图像;基本层中的非关键帧图像总是参考增强层图像;增强层中的非关键帧图像除了做帧间预测外,还参考基本层中对应图像做层间预测,如层间残差预测等(如图2中基本层指向增强层的垂直箭头所示)。
[0043] 本发明提出的一种面向H.264/SVC MGS增强层编码的率失真模式选择方法,整体步骤如图7所示,下面对各步骤进行具体说明。
[0044] 步骤一:确定增强层中的残差预测残差信号的分布。由于帧间预测残差转换系数近似服从拉普拉斯分布,根据这一性质推导出基本层重建误差信号的分布,然后用它近似得到增强层中的残差预测残差信号的分布。
[0045] 由于帧间预测值 和 的转换系数服从拉普拉斯分布。由式(4)可知,残差预测残差信号值 近似等于基本层位于对应位置宏块的重建失真信号值 因此,本发明使用变换后的重建失真信号分布近似得到变换后的残差预测残差信号值的分布。
[0046] 令x为变换后的基本层帧间预测残差,即 经过离散余弦变换后得到的结果,它服从一个标准差为μ的零均值拉普拉斯分布fr(x):
[0047]
[0048] μ也称为拉普拉斯分布的尺度参数。
[0049] 假设Qb为基本层中宏块的量化步长,对重建失真信号值 量化产生的失真值为y,y<|Qb|。设定一个常数Y,令0≤Y<Qb,那么值y落入区间(0,Y]的概率Pd(0<y≤Y)等于x落入区间[iQb,iQb+Y)的概率。其中,i是x量化后的值,且i∈[0,+∞)。即:
[0050]
[0051] 将式(5)代入式(6),可以得到:
[0052]
[0053] 同样地:
[0054]
[0055] 令z为图1所示的残差预测残差信号值 进行DCT变换后的值。由式(4)可知,z的概率分布Pr能近似等于Pd,即:
[0056]
[0057] 式(9)为DCT变换后的残差预测残差信号的累积分布。为了验证分布的准确性,图3展示了该分布和实际编码得到的信号分布。其中,横坐标表示残差预测残差信号值经过DCT变换后的值,纵坐标为对应累积概率,实线为式(9)中的理论分布,虚线代表实际编码得到的分布,各图例的括号中的数字代表量化参数的取值,如22代表编码采用的量化参数值设为22。可以看到,真实的概率近似等于理论分布。
[0058] 根据式(9)中的累积分布,得到变换后的残差预测残差信号的概率密度函数fr(Y)。对式(9)中的Y求导,得到fr(Y):
[0059]
[0060] 步骤二:基于步骤一所获得的新的残差预测残差信号值的概率密度函数,从残差预测残差量化变换系数的信息熵中获得新的R-D模型,并通过得到的R-D模型推导得到SVC增强层的拉格朗日乘子λB。
[0061] 令Pn为量化变换系数n的概率,Qb=ΔQe+δ,其中,Qe是增强层中宏块的量化步长,Δ、δ都为整数,分别是Qb除以Qe得到的除数和余数。通过步骤二可知变换系数z<|Qb|,因而有n∈[-Δ,Δ]。
[0062] 根据式(10),可得:
[0063]
[0064] 令H为残差预测误差量化变换系数的信息熵,由熵的定义:
[0065] H=-∑PnlogPn (12)
[0066] 结合式(11),H可改写为:
[0067]
[0068]
[0069]
[0070] 为了从熵值中获得率模型,图4描绘了真实编码比特率和量化后系数的熵的关系,图4中给出了8个测试序列container、mobile、foreman、news、football、harbour、city和soccer的实验结果,qcif、cif和4cif是指测试序列的图像分辨率。图4(a)的3个图是采用上下文自适应变长编码(Context Adaptive Variable Length Coding,CAVLC)进行编码得到的结果,图4(b)的3个图是采用上下文自适应二进制编码(Context Adaptive Binary Arithmetic Coding,CABAC)进行编码得到的结果。可以发现熵和真实编码比特率之间有近似的线性关系。本发明将编码比特率R和信息熵H的关系用下述线性方程模拟:
[0071] R=αH+β (14)
[0072] 其中,α和β为线性系数,α的取值在后面说明,β在求导过程中将被约掉,故此处不需确定它的取值。
[0073] 令D为重建像素对原始像素的失真值。结合分布fr,D可以由下式计算得到:
[0074]
[0075] 将式(10)代入式(15),即可得到残差预测模式的失真模型:
[0076]
[0077] 当拉普拉斯分布的尺度参数μ趋近于零时,拉普拉斯分布可被近似看成是一个均匀分布。此时式(16)中的失真模型可被改写为:
[0078]
[0079] 若Qb可以被Qe整除,那么(r1-δQb)%Qe的结果与r1%Qe的结果是相等的。因而,此时残差预测模式生成的失真值与基本层的量化步长无关。
[0080] 通过式(14)和(16)的R-D模型,就能得到SVC增强层的拉格朗日乘子λB:
[0081]
[0082] 式(18)是一个关于Δ,δ和Qe的函数,同时也用到了拉普拉斯尺度参数μ和式(19)中定义的常量α。在给定Qb和Qe时,Δ和δ通过简单计算便可得到。拉普拉斯尺度参数μ可以用变换系数的标准差近似。参数α的值并不能被很直观地定义,因而它的值通过实验方法来得到:
[0083]
[0084] 步骤三:采用一个简单的模式选择方法来在MGS编码中运用新的拉格朗日乘子λB。具体过程包括:使用传统拉格朗日乘子λA对非残差预测模式进行率失真优化编码,得到最小率失真值的模式mod eA;使用残差预测模式拉格朗日乘子λB对残差预测模式进行率失真优化编码,选择有最小率失真代价的模式,记为mod eB。最后,使用一个权衡后的拉格朗日乘子λ′对mod eA和mod eB重新计算率失真值,拥有更小的率失真值的模式mod eA或mod eB被确定为最终的编码模式。具体进行率失真值的计算可以根据背景技术中给出的率失真值的计算公式确定。
[0085] 按照所述选择确定最终编码模式,且权衡后的乘子λ′定义如下:
[0086] λ′=θλA+(1-θ)λB (20)
[0087] 其中,参数θ通过实验方法获得。图5示例说明了值θ与本方法相比采用传统拉格朗日乘子编码的平均PSNR增益ΔPSNR的关系。可以看出θ值随着相邻层量化步长的差值的增加而变大。θ的取值范围是[0,1],本发明方法将θ的值优选设为0.55。图5括号中的数字代表基本层和增强层量化参数的取值,如(32,28)对应曲线为基本层和增强层量化参数分别设为32和28时得到的曲线。
[0088] 表2为采用传统拉格朗日乘子和本发明方法得到的拉格朗日乘子进行编码的性能比较。其中,Test-I代表只进行残差预测编码时分别采用两种拉格朗日乘子进行编码得到的结果,Test-II代表对所有模式(即残差预测模式和非残差预测模式)进行编码时得到的结果。表2中,ΔQP为基本层和增强层量化步长的差值;ΔPSNR为PSNR增益,其中Avg.代表平均值,Peak代表最大值;ΔRate为采用本发明方法相比传统方法所节省的编码码率的百分比。
[0089] 表2 采用本发明方法编码与基于传统拉格朗日乘子编码的性能比较[0090]
[0091] 从表2中可以看出,在Test-I和Test-II中,采用本发明拉格朗日乘子进行编码得到的PSNR值比采用传统拉格朗日乘子得到的PSNR值分别高0.47dB和0.40dB。图6为Test-II中增强层编码的R-D曲线,对9个测试序列claire、mother and daughter(表2中简写为:M.&D.)、highway、container、news、foreman、harbour、city和soccer进行实验,图6中给出了9个测试序列的实验结果,Pro表示采用本发明方法编码,Con表示采用传统拉格朗日乘子编码。可以看出,对于9个测试序列,采用本发明方法编码的率失真性能均优于基于传统拉格朗日乘子编码的率失真性能。