CN107592535B - H.265/hevc图像层码率控制方法 - Google Patents
H.265/hevc图像层码率控制方法 Download PDFInfo
- Publication number
- CN107592535B CN107592535B CN201710710995.4A CN201710710995A CN107592535B CN 107592535 B CN107592535 B CN 107592535B CN 201710710995 A CN201710710995 A CN 201710710995A CN 107592535 B CN107592535 B CN 107592535B
- Authority
- CN
- China
- Prior art keywords
- group
- pictures
- image
- gop
- images
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了H.265/HEVC图像层码率控制方法,该控制方法包括如下步骤:步骤一、将原始视频分为运动快视频和运动慢视频,并将运动慢视频中的图像分为如下三类:视频的第一个编码图像、其它帧内图像和帧间图像。步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数。该H.265/HEVC图像层码率控制方法提高了编码性能。
Description
技术领域
本发明属于视频编码技术领域,具体涉及H.265/HEVC图像层码率控制方法。
背景技术
视频传输带宽通常会受到一定限制,为了在满足信道带宽和传输时延限制的情况下有效传输视频数据,保证视频业务的播放质量,需要对视频编码过程进行码率控制。码率控制就是通过选择一系列量化参数(Quantization Parameter,QP),使得视频编码后的码率满足所需要的带宽限制,并且使得编码失真尽量小。码率控制部分不属于视频编码标准中规定的内容,但却是视频编码器实用化的关键技术。因此各种视频编码标准均有相关的推荐码率控制方法,
针对H.265/HEVC标准,目前最新的也是编码性能最高的码率控制方法是基于域的码率控制方法。H.265/HEVC标准的测试模型HM支持3种编码结构,即全帧内结构、随机接入结构、低时延结构。随机接入结构与低时延结构又统称为分级预测结构。视频采用分级预测结构编码时,图像都会被分配一个时间级,且时间级越低的图像因为要被高时间级的图像参考,所以其编码时的重要性越高。所以在编码时处在不同时间级的图像具有明显的差异性。因此在码率控制中,怎样有效考虑各时间级图像的差异性,给每个时间级图像分配更加合理的QP,是提高码率控制方法性能的关键。
发明内容
本发明所要解决的技术问题在于针对上述现有技术的不足,提供一种提高编码性能的H.265/HEVC图像层码率控制方法。
为解决上述技术问题,本发明采用的技术方案是,H.265/HEVC图像层码率控制方法,该控制方法包括如下步骤:
步骤一、将原始视频分为运动快视频和运动慢视频,并将运动慢视频中的图像分为如下三类:视频的第一个编码图像、其它帧内图像和帧间图像。
步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数:
对于视频的第一个编码图像:用对应的参数值表征出视频的第一个编码图像的运动程度和纹理复杂度,确定编码量化参数,并用所述的编码量化参数编码视频的第一个编码图像;
对于其他帧内图像:首先,对其他帧内图像分配目标码率,得出目标码率与拉格朗日因子的关系模型,得到每个其他帧内图像的拉格朗日因子,然后,根据拉格朗日因子与量化参数的关系确定每个其他帧内图像的编码量化参数,并用所述的编码量化参数编码每一幅其他帧内图像;
对于帧间图像:将帧间图像分为多个图像组GOP,然后按照编码顺序,依次选择每一组图像组GOP,对所述图像组GOP中的所有图像分配目标码率;然后在编码图像组GOP中每一幅帧间图像前,再次给对应的帧间图像分配目标码率,将两次分配的目标码率通过线性加权处理,得到分配给对应的帧间图像的目标码率;
确定出目标码率与拉格朗日因子的关系模型,得到每幅帧间图像的拉格朗日因子值,并根据拉格朗日因子与量化参数的关系,确定出每个帧间图像的编码量化参数,并用所述的编码量化参数编码每一幅帧间图像。
进一步地,还包括对运动快视频采用基于λ域的码率控制算法。
进一步地,对于其他帧内图像的具体处理过程如下:
采用式(1)对其他帧内图像分配目标码率:
Btar,I=a1(4SATDI/Bres,f)b1Bres,f (1);
原始视频中还未编码的每幅图像平均可以分得的剩余比特数Bres,f由式 (2)得:
Bres,f=Bres,v/FNres,v (2);
sppI=SATDI/(N1N2) (3);
bppI=Btar,I/(N1N2) (4);
其中:Btar,I表示分配给其他帧内图像的目标码率;SATDI表示对其他帧内图像进行哈达玛变换后,所有变换后系数绝对值的累加和;Bres,v表示编码原始视频时剩余的比特数,FNres,v表示原始视频中还未编码的图像数;
sppI表示其他帧内图像中每个像素对应的哈达玛变换后所有系数绝对值的累加和的平均值。bppI表示其他帧内图像中每个像素对应的比特数;N1、 N2和I分别表示图像宽度、图像高度、视频中总图像数;
b1为模型参数,取固定值0.5582,a1为模型参数,取值如表1所示:
表1 a1取值
;得出目标码率与拉格朗日因子的关系模型:
其中:λI,ini表示给其他帧内图像确定的拉格朗日因子初始值;α2、β2为模型参数;
对上述λI,ini做进一步限定,如下:
如果FNres,v≤FNres,v,lasI,则所有的帧内图像的λI,ini依次按照公式(6) 和(7)进行限定,得最终值λI,2:
λI,1=clip3(λ|2-10/3λlaspic≤λI,ini≤210/3λlaspic) (6);
λI,2=clip3(λ|2-1λsamlay≤λI,1≤2λsamlay) (7);
如果FNres,v>FNres,v,lasI,则λI,ini按照式子(8)进行限定,得λI,3:
λI,3=clip3(λ|2-10/3λlasIpic≤λI,ini≤210/3λlasIpic) (8);
其中:FNres,v,lasI表示按照编码顺序,从视频最后一个其他帧内图像算起剩余的未编码图像数;λI,1表示经过式(6)限定后,其他帧内图像的拉格朗日因子;λI,2表示经过式(7)限定后其他帧内图像的拉格朗日因子,λI,3表示经过式(8)限定后其他帧内图像的拉格朗日因子,λlaspic表示前一个编码图像的拉格朗日因子;λsamlay表示与当前图像处于同一时间级的前一个编码图像的拉格朗日因子;clip3(a|b≤a≤c)是一个值限定函数,即将a的取值限定在范围[b,c]内;
然后确定编码的量化参数:
如果FNres,v≤FNres,v,lasI,则按照式(9)所示的拉格朗日因子与编码的量化参数的关系模型,确定其他帧内图像的量化参数初始值QPI,ini,1,
QPI,ini,1=4.2005ln(λI,2)+13.7122 (9);
使QPI,ini,1依次满足公式(10)和(11),得到其他帧内图像的量化参数 QPI,2,用QPI,2编码当前的其他帧内图像;
QPI,1=clip3(QP|QPlaspic-10≤QPI,ini,1≤QPlaspic+10) (10);
QPI,2=clip3(QP|QPsamlay-3≤QPI,1≤QPsamlay+3) (11);
QPI,ini,2=4.2005ln(λI,3)+13.7122 (12);
如果:FNres,v>FNres,v,lasI,则由公式(13)得到其他帧内图像的量化参数QPI,3,用QPI,3编码当前的其他帧内图像:
QPI,3=clip3(QP|QPlasIpic-10≤QPI,ini,2≤QPlasIpic+10) (13);
其中:QPI,1表示经过式(10)限定后其他帧内图像的量化参数,QPlaspic表示前一个编码其他帧内图像的量化参数,QPI,2表示经过式(11)限定后其他帧内图像的量化参数;QPsamlay表示与当前图像处于同一时间级的前一个编码其他帧内图像的量化参数,QPI,3表示经过式(13)限定后其他帧内图像的量化参数;clip3(a|b≤a≤c),是一个值限定函数,即将a的取值限定在范围[b,c]内。
进一步地,对于帧间图像的处理过程如下:
对帧间图像分配目标码率:确定编码的图像组,先按照式(14)、(15) 和(16)给编码的图像组里的所有图像分配目标码率,然后按照公式(17),在编码图像组中的每一幅图像前第二次给当前图像分配目标码率,然后将两次分配的目标码率按照公式(18)所示的线性加权的方式,得到最终分配给帧间图像的目标码率;
Btar,f,ave=Btar/Fr (15);
其中:Btar,GOP表示对一个图像组GOP中所有图像分配的目标码率, FNGOP表示图像组GOP的大小,SW表示滑动窗口大小;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;Btar,f,ave表示原始视频中每幅图像平均分配的目标码率;表示在编码图像组之前给其中的第i幅图像分配的目标码率;FNres,v表示原始视频中还未编码的图像数;Btar表示目标码率,Fr表示视频帧率;Bres,v表示编码视频时剩余的比特数;
其中:Bres,GOP表示当前图像组剩余的比特数,Ires,GOP表示当前图像组剩余图像的集合;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;
最后按照式子(18)对图像组第i幅图像分配最终的目标码率Btar,i:
其中:ω1、ω2是模型参数,当FNres,v≤FNres,v,lasI,ω1、ω2分别取值0 和1;当FNres,v>FNres,v,lasI,ω1、ω2分别取值0.9和0.1;
确定拉格朗日因子:根据式(19)中,目标码率与拉格朗日因子的关系模型,得到每个帧间图像的拉格朗日因子初始值λP,ini:
其中:α3、β3为模型参数,
然后判断:如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像的λP,ini依次按照公式(20)和(21)进行限定:
λP,1=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (20);
λP,2=clip3(λ|22/3λprelay≤λP,1≤210/3λprelay) (21);
处于大于时间1级的帧间图像依次按照公式(22)和(23)进行限定:
λP,3=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (22);
λP,4=clip3(λ|21/3λprelay≤λP,3≤2λprelay) (23);
λP,1表示经过式(20)限定后其他帧间图像的拉格朗日因子,λP,2表示经过式(21)限定后其他帧间图像的拉格朗日因子,λprelay表示处于当前图像前一个时间级的最近编码图像的拉格朗日因子,λP,3表示经过式(22)限定后其他帧间图像的拉格朗日因子,λP,4表示经过式(23)限定后其他帧间图像的拉格朗日因子;
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像的拉格朗日因子依次按照公式(24)和(25)限定:
λP,5=clip3(λ|2-10/3λlaspic≤λP,ini≤210/3λlaspic) (24);
λP,6=clip3(λ|2-1λsamlay≤λP,5≤2λsamlay) (25);
λP,5、λP,6分别表示经过式(24)、(25)限定后其他帧间图像的拉格朗日因子;
然后确定编码QP:
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像按照式(20.1) 所示的拉格朗日因子与QP的关系模型,得到QP初始值QPp,ini,1:
QPp,ini,1=4.2005ln(λP,2)+13.7122 (20.1);
处于大于时间1级的帧间图像按照式(21.1)所示的拉格朗日因子与 QP的关系模型得到QP初始值QPp,ini,2
QPp,ini,2=4.2005ln(λP,4)+13.7122 (21.1);
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像按照式(22.1)所示的拉格朗日因子与QP的关系模型得到QP初始值QPp,ini,3
QPp,ini,3=4.2005ln(λP,6)+13.7122 (22.1);
然后判断:
如果FNres,v>FNre,s,vla,则处于时间1级的帧间图像依次按照式 (23.1)、(24.1)对初始值进行限定,
QPp,1=clip3(QP|QPsamlay-3≤QPp,ini,1≤QPsamlay+3) (23.1);
QPp,2=clip3(QP|QPprelay+2≤QPp,1≤QPprelay+10) (24.1);
处于大于时间1级的帧间图像依次按照公式(25.1)、(26)对初始值进行限定:
QPp,3=clip3(QP|QPsamlay-3≤QPp,ini,2≤QPsamlay+3) (25.1);
QPp,4=clip3(QP|QPprelay+1≤QPp,3≤QPprelay+3) (26);
如果FNres,v≤FNres,v,lasI,则所有帧间图像依次按照公式(27)、(28) 限定初始值得到最终值;
QPp,5=clip3(QP|QPsamlay-3≤QPp,ini,3≤QPsamlay+3) (27);
QPp,6=clip3(QP|QPlaspic-10≤QPp,5≤QPlaspic+10) (28);
其中:QPp,1、QPp,2、QPp,3、QPp,4、QPp,5、QPp,6分别表示经过式(23.1)、 (24.1)、(25.1)、(26)、(27)、(28)限定后其他帧间图像的量化参数;QPprelay表示处于当前图像前一个时间级的最近编码图像的量化参数;
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像用QPp,2编码,处于大于时间1级的帧间图像用QPp,4编码,如果FNres,v≤FNres,v,lasI,则所有其他帧间图像用QPp,6编码。
进一步地,该ωbit[L,i]采用如下方法确定:
(1)将图像组GOP分为四类:
第0类图像组GOP:视频中第一个图像组GOP;
第1类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中只包含I图像,不包含GPB图像;
第2类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中也只包含GPB图像,不包含I图像;
第3类图像组GOP,当前GOP中只包含I图像,不包含GPB图像,而其前一个GOP中只包含GPB图像,不包含I图像;
(2)确定ωbit[L,i]的值:
首先确定视频中第一个图像组GOP的目标比特分配权重值;根据图像所处的时间级,按照表2计算ωbit[L,i]:
表2ωbit[L,i]的值
l=1 | l=2 | l=3 | l=4 | |
bpp>0.2 | 9 | 4 | 3 | 1 |
0.1<bpp≤0.2 | 21 | 6 | 3 | 1 |
0.05<bpp≤0.1 | 30 | 7 | 4 | 1 |
bpp≤0.05 | 36 | 7 | 4 | 1 |
;然后:
确定第1类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[1,g,L,i]表示第1类图像组GOP中的第g个图像组GOP第L个时间级图像的目标比特分配权重;I1,g-2,L表示属于第1类图像组GOP中的第 g-2个图像组GOP第L个时间级图像的集合;表示集合I1,g-2,L中的图像数目;表示属于第1类图像组GOP中的第g-2个图像组GOP第 NL个时间级图像的集合;表示集合中的图像数目; Bact[1,g-2,L,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目;Bact[1,g-2,NL,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[1,g,NL]表示属于第1类图像组 GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第2类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[2,g,L,i]表示属于第2类图像组GOP中的第g个图像组GOP 第L个时间级图像的目标比特分配权重,I2,g-1,L表示属于第2类图像组GOP 中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I2,g-1,L中的图像数目;表示属于第2类图像组GOP中的第g-1个图像组GOP 第NL个时间级图像的集合;表示集合中的图像数目; Bact[2,g-1,L,i]表示属于第2类图像组GOP中的第g-1个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目; Bact[2,g-1,NL],表示属于第2类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[2,g,NL,i]表示属于第2类图像组 GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第3类图像组GOP中的图像的目标比特分配权重值:
图像组GOP中的I图像按照式子(31)计算目标比特分配权重,其它图像按照式子(32)的方式计算目标比特分配权重:
其中:ωbit[3,g,j,i]表示属于第3类图像组GOP中的第g个图像组GOP 中第j个I图像的目标比特分配权重,Bact[3,j-1]表示属于第3种图像组 GOP的第j-1个I图像的实际编码比特(注:第j-1个I图像不一定处在哪个GOP里,所以这里没有图像组标号参数);表示属于第3类图像组 GOP中的第g-1个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
其中:ωbit[3,g,L,i]表示属于第3类图像组GOP中的第g个图像组GOP 第L个时间级图像的目标比特分配权重,I3,g-1,L表示属于第3类图像组GOP 中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I3,g-1,L中的图像数目;表示属于第3类图像组GOP中的第g-1个图像组GOP 第NL个时间级图像的集合;表示集合中的图像数目; Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目; Bact[3,g-1,NL]表示属于第3类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP 中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数。
进一步地,对于视频的第一个编码图像的具体处理过程如下:
建立模型公式:
其中:δ、ε、为模型参数,D[i]表示第i个图像的图像间亮度差值,σ[i] 表示第i个图像的标准差;QPini为视频第一个编码图像的量化参数;β1为参数,Btar表示目标码率,Fr表示视频帧率,N1、N2分别表示图像的宽度、高度;
D[i]和σ[i]分别由式(33.1)和(34.1)计算:
其中:Bi表示第i个图像中块的集合,表示Bi中块的个数;Pk,i表示第i个图像第k个块像素的集合;表示Pk,i中像素的个数;x[n,i]表示第i个图像第n=[n1,n2]个像素的亮度值;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;x[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的亮度值; xBG[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的背景亮度值。
进一步地,该步骤一中分为运动快视频和运动慢视频的过程如下:
用式子(35)中所示的图像间亮度差值来表征原始视频的运动程度:
xBG[n,i]由式子(36)计算得:
D[k,i]值小于18的块被认定为运动慢的块,并且当大于76.7%的块为运动慢的块时,即认为当前视频为运动慢视频;否则为运动快视频;
其中:x[n,i]表示第i个图像第n=[n1,n2]个像素的亮度值,n1、n2、i分别表示像素的横坐标、像素的纵坐标、图像序号,且0≤n1≤N1-1、0≤n2≤N2-1、 0≤i≤I-1;D[k,i]表示第i个图像第k个块的图像间亮度差值;Pk,i是第i个图像第k个块中所有像素的集合,表示集合Pk,i中的像素个数;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;xBG[n1-m1,n2-m2,i]表示第i个图像第[n1-m1,n2-m2]个像素的背景亮度值;hLP[m1,m2]表示一个低通滤波掩盖模板。
本发明H.265/HEVC图像层码率控制方法具有如下优点:合理选择时间0 级图像与时间1级图像之间的QP差值,给最重要的时间0级图像分配更多的码率,从而提高编码性能。更加准确的估计目标码率。显著提升编码的率失真性能。
附图说明
图1是本发明H.265/HEVC图像层码率控制方法中的原始图像随机接入结构示意图。
图2为本发明H.265/HEVC图像层码率控制方法中低通滤波器模板图。
具体实施方式
本发明H.265/HEVC图像层码率控制方法,该控制方法包括如下步骤:
步骤一、将原始视频分为运动快视频和运动慢视频,并将运动慢视频中的图像分为如下三类:视频的第一个编码图像、其它帧内图像和帧间图像;具体如下:用式子(35)中所示的图像间亮度差值来表征原始视频的运动程度:
xBG[n,i]由式子(36)计算得:
按照式子(35),对视频显示顺序的第2个图像,以边长为16的正方形块为基本单位计算。D[k,i]值小于18的块被认定为运动慢的块,并且当大于76.7%的块为运动慢的块时,即认为当前视频为运动慢视频;否则为运动快视频。
其中:x[n,i]表示第i个图像第n=[n1,n2]个像素的亮度值,n1、n2、i分别表示像素的横坐标、像素的纵坐标、图像序号,且0≤n1≤N1-1、0≤n2≤N2-1、 0≤i≤I-1;D[k,i]表示第i个图像第k个块的图像间亮度差值;Pk,i是第i个图像第k个块中所有像素的集合,表示集合Pk,i中的像素个数;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;xBG[n1-m1,n2-m2,i]表示第i个图像第[n1-m1,n2-m2]个像素的背景亮度值;hLP[m1,m2]表示一个低通滤波掩盖模板。图2为低通滤波器模板图,当前像素的权重值为0,而其周围的像素按照其所处的位置而获得不同的权重值。这个模板被用来计算衡量视频运动程度的图像间亮度差值。
在本发明中,采用的公式(35 )所示的图像间亮度差值来表征视频运动程度,然后根据图像间亮度差值大小将视频进行分类。也可以采用其他参数,例如运动矢量等,来表征视频运动快慢。对运动快视频采用基于λ域的码率控制算法。
如图1所示,为原始视频随机接入结构图,原始视频采用随机接入结构编码时,会将除第1个图像外的其它相邻的内容相近的图像组成一个图像组 GOP(Group OfPicture)。图1所示为一个包含8个图像的GOP。GOP内的图像都分配一个时间级,例如图1中,紧随第1个图像的四个图像分别处于时间1、2、3、4级。特别的在随机接入结构中,为了实现“随机接入”的性能,每隔大约1秒钟插入一个I图像。这些I图像被单独定义为时间0级图像。
原始视频采用随机接入结构编码,处于时间0级的图像都是I图像,为其他帧内图像;而原始视频中的第一个编码图像也属于帧内图像,但是在码率控制中需要单独处理,此处将其单独列出;处于时间1级图像是通常的P 图像或B图像(Generalized P and B,GPB),为帧间图像;而其它更高级的图像是参考B(Referenced B,RB)图像或非参考(Non-referenced B,NRB) B图像。高时间级图像编码时会参考低时间级图像的信息,所以时间级越低的图像的编码重要性越高,所以给时间级越低图像选择的QP会越小,即用更多的码率来编码,以保证时间级低图像的质量,从而保证整个视频编码的率失真性能。
步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数:
对于视频的第一个编码图像:用对应的参数值表征出视频的第一个编码图像的运动程度和纹理复杂度,确定编码量化参数,并用所述的编码量化参数编码视频的第一个编码图像。本发明中也可以通过其它参数来表征视频运动程度及纹理复杂度,然后相应修改模型参数,能得到相似的结果。当前采用的方法的具体过程如下:对于视频的第一个编码图像的具体处理过程如下:
建立模型公式:
其中:δ、ε、为模型参数,D[i]表示第i个图像的图像间亮度差值,σ[i] 表示第i个图像的标准差;QPini为视频第一个编码图像的量化参数;β1为参数,Btar表示目标码率,Fr表示视频帧率,N1、N2分别表示图像的宽度、高度;
D[i]和σ[i]分别由式(33.1)和(34.1)计算:
其中:Bi表示第i个图像中块的集合,表示Bi中块的个数;Pk,i表示第i个图像第k个块像素的集合;表示Pk,i中像素的个数;x[n,i]表示第 i个图像第n=[n1,n2]个像素的亮度值;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;x[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的亮度值; xBG[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的背景亮度值。
对于其他帧内图像:首先,对其他帧内图像分配目标码率,得出目标码率与拉格朗日因子的关系模型,得到每个其他帧内图像的拉格朗日因子,然后,根据拉格朗日因子与量化参数的关系确定每个其他帧内图像的编码量化参数,并用所述的编码量化参数编码每一幅其他帧内图像。具体过程如下:采用式(1)对其他帧内图像分配目标码率:
原始视频中还未编码的每幅图像平均可以分得的剩余比特数Bres,f由式 (2)得:
Bres,f=Bres,v/FNres,v (2);
sppI=SATDI/(N1N2) (3);
bppI=Btar,I/(N1N2) (4);
其中:Btar,I表示分配给其他帧内图像的目标码率;SATDI表示对其他帧内图像进行哈达玛变换后,所有变换后系数绝对值的累加和;Bres,v表示编码原始视频时剩余的比特数,FNres,v表示原始视频中还未编码的图像数;
sppI表示其他帧内图像中每个像素对应的哈达玛变换后所有系数绝对值的累加和的平均值。bppI表示其他帧内图像中每个像素对应的比特数;N1、 N2和I分别表示图像宽度、图像高度、视频中总图像数;
b1为模型参数,取固定值0.5582,a1为模型参数,取值如表1所示:
表1 a1取值
;得出目标码率与拉格朗日因子的关系模型:
其中:λI,ini表示给其他帧内图像确定的拉格朗日因子初始值;α2、β2为模型参数;
对上述λI,ini做进一步限定,如下:
如果FNres,v≤FNres,v,lasI,则所有的帧内图像的λI,ini依次按照公式(6) 和(7)进行限定,得最终值λI,2:
λI,1=clip3(λ|2-10/3λlaspic≤λI,ini≤210/3λlaspic) (6);
λI,2=clip3(λ|2-1λsamlay≤λI,1≤2λsamlay) (7);
如果FNres,v>FNres,v,lasI,则λI,ini按照式子(8)进行限定,得λI,3:
λI,3=clip3(λ|2-10/3λlasIpic≤λI,ini≤210/3λlasIpic) (8);
其中:FNres,v,lasI表示按照编码顺序,从视频最后一个其他帧内图像算起剩余的未编码图像数;λI,1表示经过式(6)限定后,其他帧内图像的拉格朗日因子;λI,2表示经过式(7)限定后其他帧内图像的拉格朗日因子,λI,3表示经过式(8)限定后其他帧内图像的拉格朗日因子,λlaspic表示前一个编码图像的拉格朗日因子;λsamlay表示与当前图像处于同一时间级的前一个编码图像的拉格朗日因子;clip3(a|b≤a≤c)是一个值限定函数,即将a的取值限定在范围[b,c]内;
然后确定编码的量化参数:
如果FNres,v≤FNres,v,lasI,则按照式(9)所示的拉格朗日因子与编码的量化参数的关系模型,确定其他帧内图像的量化参数初始值QPI,ini,1,
QPI,ini,1=4.2005ln(λI,2)+13.7122 (9);
使QPI,ini,1依次满足公式(10)和(11),得到其他帧内图像的量化参数 QPI,2,用QPI,2编码当前的其他帧内图像;
QPI,1=clip3(QP|QPlaspic-10≤QPI,ini,1≤QPlaspic+10) (10);
QPI,2=clip3(QP|QPsamlay-3≤QPI,1≤QPsamlay+3) (11);
QPI,ini,2=4.2005ln(λI,3)+13.7122 (12);
如果:FNres,v>FNres,v,lasI,则由公式(13)得到其他帧内图像的量化参数QPI,3,用QPI,3编码当前的其他帧内图像:
QPI,3=clip3(QP|QPlasIpic-10≤QPI,ini,2≤QPlasIpic+10) (13);
其中:QPI,1表示经过式(10)限定后其他帧内图像的量化参数,QPlaspic表示前一个编码其他帧内图像的量化参数,QPI,2表示经过式(11)限定后其他帧内图像的量化参数;QPsamlay表示与当前图像处于同一时间级的前一个编码其他帧内图像的量化参数,QPI,3表示经过式(13)限定后其他帧内图像的量化参数;clip3(a|b≤a≤c),是一个值限定函数,即将a的取值限定在范围[b,c]内。
对于帧间图像:将帧间图像分为多个图像组GOP,然后按照编码顺序,依次选择每一组图像组GOP,对所述图像组GOP中的所有图像分配目标码率;然后在编码图像组GOP中每一幅帧间图像前,再次给对应的帧间图像分配目标码率,将两次分配的目标码率通过线性加权处理,得到分配给对应的帧间图像的目标码率;
确定出目标码率与拉格朗日因子的关系模型,得到每幅帧间图像的拉格朗日因子值,并根据拉格朗日因子与量化参数的关系,确定出每个帧间图像的编码量化参数,并用所述的编码量化参数编码每一幅帧间图像。具体过程如下:对帧间图像分配目标码率:确定编码的图像组,先按照式(14)、(15) 和(16)给编码的图像组里的所有图像分配目标码率,然后按照公式(17),在编码图像组中的每一幅图像前第二次给当前图像分配目标码率,然后将两次分配的目标码率按照公式(18)所示的线性加权的方式,得到最终分配给帧间图像的目标码率;
Btar,f,ave=Btar/Fr (15);
其中:Btar,GOP表示对一个图像组GOP中所有图像分配的目标码率, FNGOP表示图像组GOP的大小,SW表示滑动窗口大小;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;Btar,f,ave表示原始视频中每幅图像平均分配的目标码率;表示在编码图像组之前给其中的第i幅图像分配的目标码率;FNres,v表示原始视频中还未编码的图像数;Btar表示目标码率,Fr表示视频帧率;Bres,v表示编码视频时剩余的比特数。
图像的目标比特分配权重值的采用如下方式确定:(1)将图像组GOP分为四类:
第0类图像组GOP:视频中第一个图像组GOP;
第1类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中只包含I图像,不包含GPB图像;
第2类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中也只包含GPB图像,不包含I图像;
第3类图像组GOP,当前GOP中只包含I图像,不包含GPB图像,而其前一个GOP中只包含GPB图像,不包含I图像;
(2)确定图像的目标比特分配权重值:
首先确定视频中第一个图像组GOP的目标比特分配权重值,根据图像所处的时间级,按照表2计算ωbit[L,i]:
表2ωbit[L,i]的值
l=1 | l=2 | l=3 | l=4 | |
bpp>0.2 | 9 | 4 | 3 | 1 |
0.1<bpp≤0.2 | 21 | 6 | 3 | 1 |
0.05<bpp≤0.1 | 30 | 7 | 4 | 1 |
bpp≤0.05 | 36 | 7 | 4 | 1 |
;然后:
确定第1类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[1,g,L,i]表示第1类图像组GOP中的第g个图像组GOP第L个时间级图像的目标比特分配权重;I1,g-2,L表示属于第1类图像组GOP中的第 g-2个图像组GOP第L个时间级图像的集合;表示集合I1,g-2,L中的图像数目;表示属于第1类图像组GOP中的第g-2个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目; Bact[1,g-2,L,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目; Bact[1,g-2,NL,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[1,g,NL]表示属于第1类图像组 GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第2类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[2,g,L,i]表示属于第2类图像组GOP中的第g个图像组GOP 第L个时间级图像的目标比特分配权重,I2,g-1,L表示属于第2类图像组GOP 中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I2,g-1,L中的图像数目;表示属于第2类图像组GOP中的第g-1个图像组GOP 第NL个时间级图像的集合;表示集合中的图像数目; Bact[2,g-1,L,i]表示属于第2类图像组GOP中的第g-1个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目; Bac[t2,g-1,NL],表示属于第2类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[2,g,NL,i]表示属于第2类图像组 GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第3类图像组GOP中的图像的目标比特分配权重值:
图像组GOP中的I图像按照式子(31)计算目标比特分配权重,其它图像按照式子(32)的方式计算目标比特分配权重:
其中:ωbit[3,g,j,i]表示属于第3类图像组GOP中的第g个图像组GOP 中第j个I图像的目标比特分配权重,Bact[3,j-1]表示属于第3种图像组 GOP的第j-1个I图像的实际编码比特(注:第j-1个I图像不一定处在哪个 GOP里,所以这里没有图像组标号参数);表示属于第3类图像组 GOP中的第g-1个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
其中:ωbit[3,g,L,i]表示属于第3类图像组GOP中的第g个图像组GOP 第L个时间级图像的目标比特分配权重,I3,g-1,L表示属于第3类图像组GOP 中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I3,g-1,L中的图像数目;表示属于第3类图像组GOP中的第g-1个图像组GOP 第NL个时间级图像的集合;表示集合中的图像数目; Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L 个时间级第i个图像的实际编码比特;NL表示时间级的数目;Bac[t3,g-1,NL]表示属于第3类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP 中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数。
其中:Bres,GOP表示当前图像组剩余的比特数,Ires,GOP表示当前图像组剩余图像的集合;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;
最后按照式子(18)对图像组第i幅图像分配最终的目标码率Btar,i:
其中:ω1、ω2是模型参数,当FNres,v≤FNres,v,lasI,ω1、ω2分别取值0 和1;当FNres,v>FNres,v,lasI,ω1、ω2分别取值0.9和0.1;
确定拉格朗日因子:根据式(19)中,目标码率与拉格朗日因子的关系模型,得到每个帧间图像的拉格朗日因子初始值λP,ini:
其中:α3、β3为模型参数,
然后判断:如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像的λP,ini依次按照公式(20)和(21)进行限定:
λP,1=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (20);
λP,2=clip3(λ|22/3λprelay≤λP,1≤210/3λprelay) (21);
处于大于时间1级的帧间图像依次按照公式(22)和(23)进行限定:
λP,3=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (22);
λP,4=clip3(λ|21/3λprelay≤λP,3≤2λprelay) (23);
λP,1表示经过式(20)限定后其他帧间图像的拉格朗日因子,λP,2表示经过式(21)限定后其他帧间图像的拉格朗日因子,λprelay表示处于当前图像前一个时间级的最近编码图像的拉格朗日因子,λP,3表示经过式(22)限定后其他帧间图像的拉格朗日因子,λP,4表示经过式(23)限定后其他帧间图像的拉格朗日因子;
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像的拉格朗日因子依次按照公式(24)和(25)限定:
λP,5=clip3(λ|2-10/3λlaspic≤λP,ini≤210/3λlaspic) (24);
λP,6=clip3(λ|2-1λsamlay≤λP,5≤2λsamlay), (25);
λP,5、λP,6分别表示经过式(24)、(25)限定后其他帧间图像的拉格朗日因子;
然后确定编码QP:
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像按照式(20.1 )所示的拉格朗日因子与QP的关系模型,得到QP初始值QPp,ini,1:
QPp,ini,1=4.2005ln(λP,2)+13.7122 (20.1);
处于大于时间1级的帧间图像按照式(21.1)所示的拉格朗日因子与QP的关系模型得到QP初始值QPp,ini,2
QPp,ini,2=4.2005ln(λP,4)+13.7122 (21.1);
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像按照式(22.1)所示的拉格朗日因子与QP的关系模型得到QP初始值QPp,ini,3
QPp,ini,3=4.2005ln(λP,6)+13.7122 (22.1);
然后判断:
如果FNres,v>FNre,s,vla,则处于时间1级的帧间图像依次按照式 (23.1)、(24.1)对初始值进行限定,
QPp,1=clip3(QP|QPsamlay-3≤QPp,ini,1≤QPsamlay+3) (23.1);
QPp,2=clip3(QP|QPprelay+2≤QPp,1≤QPprelay+10) (24.1);
处于大于时间1级的帧间图像依次按照公式(25.1)、(26)对初始值进行限定:
QPp,3=clip3(QP|QPsamlay-3≤QPp,ini,2≤QPsamlay+3) (25.1);
QPp,4=clip3(QP|QPprelay+1≤QPp,3≤QPprelay+3) (26);
如果FNres,v≤FNres,v,lasI,则所有帧间图像依次按照公式(27)、(28) 限定初始值得到最终值;
QPp,5=clip3(QP|QPsamlay-3≤QPp,ini,3≤QPsamlay+3) (27);
QPp,6=clip3(QP|QPlaspic-10≤QPp,5≤QPlaspic+10) (28);
其中:QPp,1、QPp,2、QPp,3、QPp,4、QPp,5、QPp,6分别表示经过式(23.1)、(24.1)、(25.1)、(26)、(27)、(28)限定后其他帧间图像的量化参数;QPprelay表示处于当前图像前一个时间级的最近编码图像的量化参数;
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像用QPp,2编码,处于大于时间1级的帧间图像用QPp,4编码,如果FNres,v≤FNres,v,lasI,则所有其他帧间图像用QPp,6编码。
表3方法性能
本发明中,分别采用通用的BE和BD-rate表示码率估计准确度和编码率失真性能。
本发明中,采用符合H.265/HEVC建议的测试条件进行测试,编码结果如表3所示,由表3得出:
1、对于所有测试序列,基于λ域的码率控制方法和本发明中的方法的 BE分别为1.65%、1.16%,即本发明中的方法的BE值更小,本发明中的方法可以更加准确的估计目标码率。
2、以基于λ域的码率控制方法作为基准方法,本发明中的方法的 BD-rate为-4.10%,即相比于基于λ域的码率控制方法,本发明中的方法可以在获得同等编码视频质量前提下节省4.10%的编码比特,即本发明中的方法显著提升编码的率失真性能。
Claims (4)
1.一种H.265/HEVC图像层码率控制方法,其特征在于,该控制方法包括如下步骤:
步骤一、将原始视频分为运动快视频和运动慢视频,并将运动慢视频中的图像分为如下三类:视频的第一个编码图像、其它帧内图像和帧间图像;
分为运动快视频和运动慢视频的过程如下:
用式子(35)中所示的图像间亮度差值来表征原始视频的运动程度:
xBG[n,i]由式子(36)计算得:
D[k,i]值小于18的块被认定为运动慢的块,并且当大于76.7%的块为运动慢的块时,即认为当前视频为运动慢视频;否则为运动快视频;
其中:x[n,i]表示第i个图像第n=[n1,n2]个像素的亮度值,n1、n2、i分别表示像素的横坐标、像素的纵坐标、图像序号,且0≤n1≤N1-1、0≤n2≤N2-1、0≤i≤I-1;D[k,i]表示第i个图像第k个块的图像间亮度差值;Pk,i是第i个图像第k个块中所有像素的集合,表示集合Pk,i中的像素个数;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;xBG[n1-m1,n2-m2,i]表示第i个图像第[n1-m1,n2-m2]个像素的背景亮度值;hLP[m1,m2]表示一个低通滤波掩盖模板;
步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数:
对于视频的第一个编码图像:用对应的参数值表征出视频的第一个编码图像的运动程度和纹理复杂度,确定编码量化参数,并用所述的编码量化参数编码视频的第一个编码图像;具体为:
建立模型公式:
其中:δ、ε、为模型参数,D[i]表示第i个图像的图像间亮度差值,σ[i]表示第i个图像的标准差;QPini为视频第一个编码图像的量化参数;β1为参数,Btar表示目标码率,Fr表示视频帧率,N1、N2分别表示图像的宽度、高度;
D[i]和σ[i]分别由式(33.1)和(34.1)计算:
其中:Bi表示第i个图像中块的集合,表示Bi中块的个数;Pk,i表示第i个图像第k个块像素的集合;表示Pk,i中像素的个数;x[n,i]表示第i个图像第n=[n1,n2]个像素的亮度值;xBG[n,i]表示第i个图像第n=[n1,n2]个像素的背景亮度值;x[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的亮度值;xBG[n,i-1]表示第i-1个图像第n=[n1,n2]个像素的背景亮度值;
对于其他帧内图像:首先,对其他帧内图像分配目标码率,得出目标码率与拉格朗日因子的关系模型,得到每个其他帧内图像的拉格朗日因子,然后,根据拉格朗日因子与量化参数的关系确定每个其他帧内图像的编码量化参数,并用所述的编码量化参数编码每一幅其他帧内图像;对其他帧内图像的具体处理过程如下:
采用式(1)对其他帧内图像分配目标码率:
原始视频中还未编码的每幅图像平均可以分得的剩余比特数Bres,f由式(2)得:
Bres,f=Bres,v/FNres,v (2);
sppI=SATDI/(N1N2) (3);
bppI=Btar,I/(N1N2) (4);
其中:Btar,I表示分配给其他帧内图像的目标码率;SATDI表示对其他帧内图像进行哈达玛变换后,所有变换后系数绝对值的累加和;Bres,v表示编码原始视频时剩余的比特数,FNres,v表示原始视频中还未编码的图像数;
sppI表示其他帧内图像中每个像素对应的哈达玛变换后所有系数绝对值的累加和的平均值;bppI表示其他帧内图像中每个像素对应的比特数;N1、N2和I分别表示图像宽度、图像高度、视频中总图像数;
b1为模型参数,取固定值0.5582,a1为模型参数;
a1取值
得出目标码率与拉格朗日因子的关系模型:
其中:λI,ini表示给其他帧内图像确定的拉格朗日因子初始值;α2、β2为模型参数;
对上述λI,ini做进一步限定,如下:
如果FNres,v≤FNres,v,lasI,则所有的帧内图像的λI,ini依次按照公式(6)和(7)进行限定,得最终值λI,2:
λI,1=clip3(λ|2-10/3λlaspic≤λI,ini≤210/3λlaspic) (6);
λI,2=clip3(λ|2-1λsamlay≤λI,1≤2λsamlay) (7);
如果FNres,v>FNres,v,lasI,则λI,ini按照式子(8)进行限定,得λI,3:
λI,3=clip3(λ|2-10/3λlasIpic≤λI,ini≤210/3λlasIpic) (8);
其中:FNres,v,lasI表示按照编码顺序,从视频最后一个其他帧内图像算起剩余的未编码图像数;λI,1表示经过式(6)限定后,其他帧内图像的拉格朗日因子;λI,2表示经过式(7)限定后其他帧内图像的拉格朗日因子,λI,3表示经过式(8)限定后其他帧内图像的拉格朗日因子,λlaspic表示前一个编码图像的拉格朗日因子;λsamlay表示与当前图像处于同一时间级的前一个编码图像的拉格朗日因子;clip3(a|b≤a≤c)是一个值限定函数,即将a的取值限定在范围[b,c]内;
然后确定编码的量化参数:
如果FNres,v≤FNres,v,lasI,则按照式(9)所示的拉格朗日因子与编码的量化参数的关系模型,确定其他帧内图像的量化参数初始值QPI,ini,1,
QPI,ini,1=4.2005ln(λI,2)+13.7122 (9);
使QPI,ini,1依次满足公式(10)和(11),得到其他帧内图像的量化参数QPI,2,用QPI,2编码当前的其他帧内图像;
QPI,1=clip3(QP|QPlaspic-10≤QPI,ini,1≤QPlaspic+10) (10);
QPI,2=clip3(QP|QPsamlay-3≤QPI,1≤QPsamlay+3) (11);
QPI,ini,2=4.2005ln(λI,3)+13.7122 (12);
如果:FNres,v>FNres,v,lasI,则由公式(13)得到其他帧内图像的量化参数QPI,3,用QPI,3编码当前的其他帧内图像:
QPI,3=clip3(QP|QPlasIpic-10≤QPI,ini,2≤QPlasIpic+10) (13);
其中:QPI,1表示经过式(10)限定后其他帧内图像的量化参数,QPlaspic表示前一个编码其他帧内图像的量化参数,QPI,2表示经过式(11)限定后其他帧内图像的量化参数;QPsamlay表示与当前图像处于同一时间级的前一个编码其他帧内图像的量化参数,QPI,3表示经过式(13)限定后其他帧内图像的量化参数;clip3(a|b≤a≤c),是一个值限定函数,即将a的取值限定在范围[b,c]内;
对于帧间图像:将帧间图像分为多个图像组GOP,然后按照编码顺序,依次选择每一组图像组GOP,对所述图像组GOP中的所有图像分配目标码率;然后在编码图像组GOP中每一幅帧间图像前,再次给对应的帧间图像分配目标码率,将两次分配的目标码率通过线性加权处理,得到分配给对应的帧间图像的目标码率;对于帧间图像的处理过程如下:
对帧间图像分配目标码率:确定编码的图像组,先按照式(14)、(15)和(16)给编码的图像组里的所有图像分配目标码率,然后按照公式(17),在编码图像组中的每一幅图像前第二次给当前图像分配目标码率,然后将两次分配的目标码率按照公式(18)所示的线性加权的方式,得到最终分配给帧间图像的目标码率;
Btar,f,ave=Btar/Fr (15);
其中:Btar,GOP表示对一个图像组GOP中所有图像分配的目标码率,FNGOP表示图像组GOP的大小,SW表示滑动窗口大小;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;Btar,f,ave表示原始视频中每幅图像平均分配的目标码率;表示在编码图像组之前给其中的第i幅图像分配的目标码率;FNres,v表示原始视频中还未编码的图像数;Btar表示目标码率,Fr表示视频帧率;Bres,v表示编码视频时剩余的比特数;
其中:Bres,GOP表示当前图像组剩余的比特数,Ires,GOP表示当前图像组剩余图像的集合;ωbit[L,i]表示图像组GOP内第L个时间级第i幅图像的目标比特分配权重值;
最后按照式子(18)对图像组第i幅图像分配最终的目标码率Btar,i:
其中:ω1、ω2是模型参数,当FNres,v≤FNres,v,lasI,ω1、ω2分别取值0和1;当FNres,v>FNres,v,lasI,ω1、ω2分别取值0.9和0.1;
确定拉格朗日因子:根据式(19)中,目标码率与拉格朗日因子的关系模型,得到每个帧间图像的拉格朗日因子初始值λP,ini:
其中:α3、β3为模型参数,
然后判断:如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像的λP,ini依次按照公式(20)和(21)进行限定:
λP,1=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (20);
λP,2=clip3(λ|22/3λprelay≤λP,1≤210/3λprelay) (21);
处于大于时间1级的帧间图像依次按照公式(22)和(23)进行限定:
λP,3=clip3(λ|2-1λsamlay≤λP,ini≤2λsamlay) (22);
λP,4=clip3(λ|21/3λprelay≤λP,3≤2λprelay) (23);
λP,1表示经过式(20)限定后其他帧间图像的拉格朗日因子,λP,2表示经过式(21)限定后其他帧间图像的拉格朗日因子,λprelay表示处于当前图像前一个时间级的最近编码图像的拉格朗日因子,λP,3表示经过式(22)限定后其他帧间图像的拉格朗日因子,λP,4表示经过式(23)限定后其他帧间图像的拉格朗日因子;
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像的拉格朗日因子依次按照公式(24)和(25)限定:
λP,5=clip3(λ|2-10/3λlaspic≤λP,ini≤210/3λlaspic) (24);
λP,6=clip3(λ|2-1λsamlay≤λP,5≤2λsamlay) (25);
λP,5、λP,6分别表示经过式(24)、(25)限定后其他帧间图像的拉格朗日因子;
然后确定编码QP:
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像按照式(20.1)所示的拉格朗日因子与QP的关系模型,得到QP初始值QPp,ini,1:
QPp,ini,1=4.2005ln(λP,2)+13.7122 (20.1);
处于大于时间1级的帧间图像按照式(21.1)所示的拉格朗日因子与QP的关系模型得到QP初始值QPp,ini,2
QPp,ini,2=4.2005ln(λP,4)+13.7122 (21.1);
如果FNres,v≤FNres,v,lasI,则所有其他帧间图像按照式(22.1)所示的拉格朗日因子与QP的关系模型得到QP初始值QPp,ini,3
QPp,ini,3=4.2005ln(λP,6)+13.7122 (22.1);
然后判断:
如果FNres,v>FNre,s,vla,则处于时间1级的帧间图像依次按照式(23.1)、(24.1)对初始值进行限定,
QPp,1=clip3(QP|QPsamlay-3≤QPp,ini,1≤QPsamlay+3) (23.1);
QPp,2=clip3(QP|QPprelay+2≤QPp,1≤QPprelay+10) (24.1);
处于大于时间1级的帧间图像依次按照公式(25.1)、(26)对初始值进行限定:
QPp,3=clip3(QP|QPsamlay-3≤QPp,ini,2≤QPsamlay+3) (25.1);
QPp,4=clip3(QP|QPprelay+1≤QPp,3≤QPprelay+3) (26);
如果FNres,v≤FNres,v,lasI,则所有帧间图像依次按照公式(27)、(28)限定初始值得到最终值;
QPp,5=clip3(QP|QPsamlay-3≤QPp,ini,3≤QPsamlay+3) (27);
QPp,6=clip3(QP|QPlaspic-10≤QPp,5≤QPlaspic+10) (28);
其中:QPp,1、QPp,2、QPp,3、QPp,4、QPp,5、QPp,6分别表示经过式(23.1)、(24.1)、(25.1)、(26)、(27)、(28)限定后其他帧间图像的量化参数;QPprelay表示处于当前图像前一个时间级的最近编码图像的量化参数;
如果FNres,v>FNres,v,lasI,则处于时间1级的帧间图像用QPp,2编码,处于大于时间1级的帧间图像用QPp,4编码,如果FNres,v≤FNres,v,lasI,则所有其他帧间图像用QPp,6编码;
确定出目标码率与拉格朗日因子的关系模型,得到每幅帧间图像的拉格朗日因子值,并根据拉格朗日因子与量化参数的关系,确定出每个帧间图像的编码量化参数,并用所述的编码量化参数编码每一幅帧间图像。
2.根据权利要求1所述的一种H.265/HEVC图像层码率控制方法,其特征在于,还包括对运动快视频采用基于λ域的码率控制算法。
3.根据权利要求1或2所述的H.265/HEVC图像层码率控制方法,其特征在于,图像的目标比特分配权重值采用如下方法确定:
(1)将图像组GOP分为四类:
视频中第一个图像组GOP;
第1类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中只包含I图像,不包含GPB图像;
第2类图像组GOP,当前GOP中只包含GPB图像,不包含I图像,而其前一个GOP中也只包含GPB图像,不包含I图像;
第3类图像组GOP,当前GOP中只包含I图像,不包含GPB图像,而其前一个GOP中只包含GPB图像,不包含I图像;
(2)确定图像的目标比特分配权重值:
首先确定视频中第一个图像组GOP的目标比特分配权重值;根据图像所处的时间级,计算ωbit[L,i];
然后:
确定第1类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[1,g,L,i]表示第1类图像组GOP中的第g个图像组GOP第L个时间级图像的目标比特分配权重;I1,g-2,L表示属于第1类图像组GOP中的第g-2个图像组GOP第L个时间级图像的集合;表示集合I1,g-2,L中的图像数目;表示属于第1类图像组GOP中的第g-2个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[1,g-2,L,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第L个时间级第i个图像的实际编码比特;NL表示时间级的数目;Bact[1,g-2,NL,i]表示属于第1类图像组GOP中的第g-2个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[1,g,NL]表示属于第1类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第2类图像组GOP中的图像的目标比特分配权重值:
其中:ωbit[2,g,L,i]表示属于第2类图像组GOP中的第g个图像组GOP第L个时间级图像的目标比特分配权重,I2,g-1,L表示属于第2类图像组GOP中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I2,g-1,L中的图像数目;表示属于第2类图像组GOP中的第g-1个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[2,g-1,L,i]表示属于第2类图像组GOP中的第g-1个图像组GOP第L个时间级第i个图像的实际编码比特;NL表示时间级的数目;表示属于第2类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[2,g,NL,i]表示属于第2类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
确定第3类图像组GOP中的图像的目标比特分配权重值:
图像组GOP中的I图像按照式子(31)计算目标比特分配权重,其它图像按照式子(32)的方式计算目标比特分配权重:
其中:ωbit[3,g,j,i]表示属于第3类图像组GOP中的第g个图像组GOP中第j个I图像的目标比特分配权重,Bact[3,j-1]表示属于第3种图像组GOP的第j-1个I图像的实际编码比特;表示属于第3类图像组GOP中的第g-1个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数;
其中:ωbit[3,g,L,i]表示属于第3类图像组GOP中的第g个图像组GOP第L个时间级图像的目标比特分配权重,I3,g-1,L表示属于第3类图像组GOP中的第g-1个图像组GOP第L个时间级图像的集合;表示集合I3,g-1,L中的图像数目;表示属于第3类图像组GOP中的第g-1个图像组GOP第NL个时间级图像的集合;表示集合中的图像数目;Bact[3,g-1,L,i]表示属于第3类图像组GOP中的第g-1个图像组GOP第L个时间级第i个图像的实际编码比特;NL表示时间级的数目;表示属于第3类图像组GOP中的第g-1个图像组GOP第NL个时间级第i个图像的实际编码比特;ωbit[3,g,NL]表示属于第3类图像组GOP中的第g个图像组GOP第NL个时间级图像的目标比特分配权重;表示四舍五入函数。
4.根据权利要求3所述的一种H.265/HEVC图像层码率控制方法,其特征在于,ωbit[L,i]的取值如下:
ωbit[L,i]的值
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710710995.4A CN107592535B (zh) | 2017-08-18 | 2017-08-18 | H.265/hevc图像层码率控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710710995.4A CN107592535B (zh) | 2017-08-18 | 2017-08-18 | H.265/hevc图像层码率控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107592535A CN107592535A (zh) | 2018-01-16 |
CN107592535B true CN107592535B (zh) | 2020-09-01 |
Family
ID=61042262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710710995.4A Active CN107592535B (zh) | 2017-08-18 | 2017-08-18 | H.265/hevc图像层码率控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107592535B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149554B (zh) * | 2019-05-31 | 2021-06-15 | Oppo广东移动通信有限公司 | 视频图像处理的方法、装置、电子设备以及存储介质 |
CN112218083B (zh) * | 2020-10-16 | 2021-09-17 | 西安邮电大学 | 高效视频编码标准帧内图像码率估计方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420601A (zh) * | 2008-06-06 | 2009-04-29 | 浙江大学 | 视频编码中码率控制的方法及装置 |
CN102148975A (zh) * | 2010-02-04 | 2011-08-10 | 成都市世嘉电子实业有限公司 | 低比特率视频预测帧码率控制算法 |
CN104052998A (zh) * | 2014-05-26 | 2014-09-17 | 深圳百科信息技术有限公司 | 一种基于运动强度的gop层率控调整方法和系统 |
CN104185024A (zh) * | 2014-09-16 | 2014-12-03 | 福州大学 | 一种基于总码率与信息熵模型的hevc量化参数优化方法 |
CN106604031A (zh) * | 2016-11-22 | 2017-04-26 | 金华就约我吧网络科技有限公司 | 一种基于兴趣区域的h.265视频质量提升方法 |
CN106791848A (zh) * | 2016-12-20 | 2017-05-31 | 河南省电力勘测设计院 | 一种基于HEVC的Two‑Pass码率控制方法 |
-
2017
- 2017-08-18 CN CN201710710995.4A patent/CN107592535B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420601A (zh) * | 2008-06-06 | 2009-04-29 | 浙江大学 | 视频编码中码率控制的方法及装置 |
CN102148975A (zh) * | 2010-02-04 | 2011-08-10 | 成都市世嘉电子实业有限公司 | 低比特率视频预测帧码率控制算法 |
CN104052998A (zh) * | 2014-05-26 | 2014-09-17 | 深圳百科信息技术有限公司 | 一种基于运动强度的gop层率控调整方法和系统 |
CN104185024A (zh) * | 2014-09-16 | 2014-12-03 | 福州大学 | 一种基于总码率与信息熵模型的hevc量化参数优化方法 |
CN106604031A (zh) * | 2016-11-22 | 2017-04-26 | 金华就约我吧网络科技有限公司 | 一种基于兴趣区域的h.265视频质量提升方法 |
CN106791848A (zh) * | 2016-12-20 | 2017-05-31 | 河南省电力勘测设计院 | 一种基于HEVC的Two‑Pass码率控制方法 |
Non-Patent Citations (2)
Title |
---|
Rate-Distortion-Optimization-Based Quantization Parameter Cascading Technique for Random-Access Configuration in H.265/HEVC;Yanchao Gong等;《IEEE Transactions on Circuits and Systems for Video Technology》;20160308;第27卷(第6期);第1304-1312页 * |
一种低码率下视频分级B帧量化参数的分配方法;韩公海等;《电视技术》;20120114;第35卷(第17期);第27-29、51页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107592535A (zh) | 2018-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101395923B (zh) | 用于在图像信号编码中为图像中的像素块组确定比特分配的方法及设备 | |
US8559501B2 (en) | Method and apparatus for adaptively determining a bit budget for encoding video pictures | |
Li et al. | A convolutional neural network-based approach to rate control in HEVC intra coding | |
CN106231320B (zh) | 一种支持多机并行编码的联合码率控制方法及系统 | |
CN103179394B (zh) | 一种基于区域视频质量平稳的i帧码率控制方法 | |
CN104378636B (zh) | 一种视频图像编码方法及装置 | |
CN104994382B (zh) | 一种感知率失真的优化方法 | |
CN103634601B (zh) | 基于结构相似度的高效视频编码感知码率控制优化方法 | |
CN110062236B (zh) | 基于空时域恰可感知失真的码率分配方法、系统及介质 | |
CN108012149B (zh) | 一种视频编码中码率控制的方法 | |
CN104994387B (zh) | 一种融合图像特征的码率控制方法 | |
CN112291564B (zh) | 优化监控视频感知质量的hevc帧内码率控制方法 | |
CN104754335B (zh) | 一种视频编码码率控制方法 | |
EP3545677A1 (en) | Methods and apparatuses for encoding and decoding video based on perceptual metric classification | |
CN114466189B (zh) | 码率控制方法、电子设备及存储介质 | |
CN107592535B (zh) | H.265/hevc图像层码率控制方法 | |
CN104038769B (zh) | 帧内编码的码率控制方法 | |
CN102148973A (zh) | 基于拉格朗日乘数因子的3层码率控制方法 | |
CN110139101B (zh) | 一种基于λ域码率控制的帧级比特分配方法 | |
CN103414889B (zh) | 一种基于双目恰可察觉失真的立体视频码率控制方法 | |
CN114173131B (zh) | 一种基于帧间相关性的视频压缩方法及系统 | |
CN108322740B (zh) | 一种编码复杂度可控的编码方法 | |
CN108989814B (zh) | 一种基于并行编码结构的码率控制方法 | |
KR20040062732A (ko) | 오브젝트 기반 비트율 제어방법 및 장치 | |
CN114339241A (zh) | 视频码率控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |