H.265/HEVC图像层码率控制方法与流程

文档序号:13476580阅读:266来源:国知局
H.265/HEVC图像层码率控制方法与流程
本发明属于视频编码
技术领域
,具体涉及h.265/hevc图像层码率控制方法。
背景技术
:视频传输带宽通常会受到一定限制,为了在满足信道带宽和传输时延限制的情况下有效传输视频数据,保证视频业务的播放质量,需要对视频编码过程进行码率控制。码率控制就是通过选择一系列量化参数(quantizationparameter,qp),使得视频编码后的码率满足所需要的带宽限制,并且使得编码失真尽量小。码率控制部分不属于视频编码标准中规定的内容,但却是视频编码器实用化的关键技术。因此各种视频编码标准均有相关的推荐码率控制方法,针对h.265/hevc标准,目前最新的也是编码性能最高的码率控制方法是基于域的码率控制方法。h.265/hevc标准的测试模型hm支持3种编码结构,即全帧内结构、随机接入结构、低时延结构。随机接入结构与低时延结构又统称为分级预测结构。视频采用分级预测结构编码时,图像都会被分配一个时间级,且时间级越低的图像因为要被高时间级的图像参考,所以其编码时的重要性越高。所以在编码时处在不同时间级的图像具有明显的差异性。因此在码率控制中,怎样有效考虑各时间级图像的差异性,给每个时间级图像分配更加合理的qp,是提高码率控制方法性能的关键。技术实现要素:本发明所要解决的技术问题在于针对上述现有技术的不足,提供一种提高编码性能的h.265/hevc图像层码率控制方法。为解决上述技术问题,本发明采用的技术方案是,h.265/hevc图像层码率控制方法,该控制方法包括如下步骤:步骤一、将原始视频分为运动快视频和运动慢视频,并将运动慢视频中的图像分为如下三类:视频的第一个编码图像、其它帧内图像和帧间图像。步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数:对于视频的第一个编码图像:用对应的参数值表征出视频的第一个编码图像的运动程度和纹理复杂度,确定编码量化参数,并用所述的编码量化参数编码视频的第一个编码图像;对于其他帧内图像:首先,对其他帧内图像分配目标码率,得出目标码率与拉格朗日因子的关系模型,得到每个其他帧内图像的拉格朗日因子,然后,根据拉格朗日因子与量化参数的关系确定每个其他帧内图像的编码量化参数,并用所述的编码量化参数编码每一副其他帧内图像;对于帧间图像:将帧间图像分为多个图像组gop,然后按照编码顺序,依次选择每一组图像组gop,对所述图像组gop中的所有图像分配目标码率;然后在编码图像组gop中每一副帧间图像前,再次给对应的帧间图像分配目标码率,将两次分配的目标码率通过线性加权处理,得到分配给对应的帧间图像的目标码率;确定出目标码率与拉格朗日因子的关系模型,得到每副帧间图像的拉格朗日因子值,并根据拉格朗日因子与量化参数的关系,确定出每个帧间图像的编码量化参数,并用所述的编码量化参数编码每一副帧间图像。进一步地,还包括对运动快视频采用基于λ域的码率控制算法。进一步地,对于其他帧内图像的具体处理过程如下:采用式(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所示:表1a1取值;得出目标码率与拉格朗日因子的关系模型:其中:λ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表示编码视频时剩余的比特数;在编码第i个图像时,按照式子(17)第二次给图像分配目标码率,分配的目标码率为其中:bres,gop表示当前图像组剩余的比特数,ires,gop表示当前图像组剩余图像的集合;ωbit[l,i]表示图像组gop内第个时间级第副图像的目标比特分配权重值;最后按照式子(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)所示的拉格朗日因子与qp的关系模型,得到qp初始值qpp,ini,1:qpp,ini,1=4.2005ln(λp,2)+13.7122,(20);处于大于时间1级的帧间图像按照式(21)所示的拉格朗日因子与qp的关系模型得到qp初始值qpp,ini,2qpp,ini,2=4.2005ln(λp,4)+13.7122,(21);如果fnres,v≤fnres,v,lasi,则所有其他帧间图像按照式(26)所示的拉格朗日因子与qp的关系模型得到qp初始值qpp,ini,3qpp,ini,3=4.2005ln(λp,6)+13.7122,(22);然后判断:如果fnres,v>fnres,v,lasi,则处于时间1级的帧间图像依次按照式(23)、(24)对初始值进行限定,qpp,1=clip3(qp|qpsamlay-3≤qpp,ini,1≤qpsamlay+3),(23);qpp,2=clip3(qp|qpprelay+2≤qpp,1≤qpprelay+10),(24);处于大于时间1级的帧间图像依次按照公式(25)、(26)对初始值进行限定:qpp,3=clip3(qp|qpsamlay-3≤qpp,ini,2≤qpsamlay+3),(25);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)、(24)、(25)、(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=1l=2l=3l=4bpp>0.294310.1<bpp≤0.2216310.05<bpp≤0.130741bpp≤0.0536741;然后:确定第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个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;确定第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,i]表示属于第2类图像组gop中的第g-1个图像组gop第nl个时间级第i个图像的实际编码比特;ωbit[2,g,nl,i]表示属于第2类图像组gop中的第g个图像组gop第nl个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;确定第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个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;其中:ω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,i]表示属于第3类图像组gop中的第g-1个图像组gop第nl个时间级第i个图像的实际编码比特;ωbit[3,g,nl]表示属于第3类图像组gop中的第g个图像组gop第nl个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;进一步地,对于视频的第一个编码图像的具体处理过程如下:建立模型公式:其中:δ、ε、为模型参数,d[i]表示第i个图像的图像间亮度差值,σ[i]表示第i个图像的标准差;qpini为视频第一个编码图像的量化参数;β1为参数,btar表示目标码率,fr表示视频帧率,n1、n2分别表示图像的宽度、高度;d[i]和σ[i]分别由式(33)和(34)计算:其中: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)计算得:按照式子(36),对视频显示顺序的第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,而其周围的像素按照其所处的位置而获得不同的权重值。这个模板被用来计算衡量视频运动程度的图像间亮度差值。在本发明中,采用的公式(36)所示的图像间亮度差值来表征视频运动程度,然后根据图像间亮度差值大小将视频进行分类。也可以采用其他参数,例如运动矢量等,来表征视频运动快慢。对运动快视频采用基于λ域的码率控制算法。如图1所示,为原始视频随机接入结构图,原始视频采用随机接入结构编码时,会将除第1个图像外的其它相邻的内容相近的图像组成一个图像组gop(groupofpicture)。图1所示为一个包含8个图像的gop。gop内的图像都分配一个时间级,例如图1中,紧随第1个图像的四个图像分别处于时间1、2、3、4级。特别的在随机接入结构中,为了实现“随机接入”的性能,每隔大约1秒钟插入一个i图像。这些i图像被单独定义为时间0级图像。原始视频采用随机接入结构编码,处于时间0级的图像都是i图像,为其他帧内图像;而原始视频中的第一个编码图像也属于帧内图像,但是在码率控制中需要单独处理,此处将其单独列出;处于时间1级图像是通常的p图像或b图像(generalizedpandb,gpb),为帧间图像;而其它更高级的图像是参考b(referencedb,rb)图像或非参考(non-referencedb,nrb)b图像。高时间级图像编码时会参考低时间级图像的信息,所以时间级越低的图像的编码重要性越高,所以给时间级越低图像选择的qp会越小,即用更多的码率来编码,以保证时间级低图像的质量,从而保证整个视频编码的率失真性能。步骤二、分别确定步骤一中的视频的第一个编码图像、其它帧内图像和帧间图像的编码的量化参数:对于视频的第一个编码图像:用对应的参数值表征出视频的第一个编码图像的运动程度和纹理复杂度,确定编码量化参数,并用所述的编码量化参数编码视频的第一个编码图像。本发明中也可以通过其它参数来表征视频运动程度及纹理复杂度,然后相应修改模型参数,能得到相似的结果。当前采用的方法的具体过程如下:对于视频的第一个编码图像的具体处理过程如下:建立模型公式:其中:δ、ε、为模型参数,d[i]表示第i个图像的图像间亮度差值,σ[i]表示第i个图像的标准差;qpini为视频第一个编码图像的量化参数;β1为参数,btar表示目标码率,fr表示视频帧率,n1、n2分别表示图像的宽度、高度;d[i]和σ[i]分别由式(33)和(34)计算:其中: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所示:表1a1取值;得出目标码率与拉格朗日因子的关系模型:其中:λ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=1l=2l=3l=4bpp>0.294310.1<bpp≤0.2216310.05<bpp≤0.130741bpp≤0.0536741;然后:确定第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个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;确定第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,i]表示属于第2类图像组gop中的第g-1个图像组gop第nl个时间级第i个图像的实际编码比特;ωbit[2,g,nl,i]表示属于第2类图像组gop中的第g个图像组gop第nl个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;确定第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个时间级图像的目标比特分配权重;round(·)表示四舍五入函数;其中:ω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,i]表示属于第3类图像组gop中的第g-1个图像组gop第nl个时间级第i个图像的实际编码比特;ωbit[3,g,nl]表示属于第3类图像组gop中的第g个图像组gop第nl个时间级图像的目标比特分配权重;round(·)表示四舍五入函数。在编码第i个图像时,按照式子(17)第二次给图像分配目标码率,分配的目标码率为其中:bres,gop表示当前图像组剩余的比特数,ires,gop表示当前图像组剩余图像的集合;ωbit[l,i]表示图像组gop内第个时间级第副图像的目标比特分配权重值;最后按照式子(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)所示的拉格朗日因子与qp的关系模型,得到qp初始值qpp,ini,1:qpp,ini,1=4.2005ln(λp,2)+13.7122.(20);处于大于时间1级的帧间图像按照式(21)所示的拉格朗日因子与qp的关系模型得到qp初始值qpp,ini,2qpp,ini,2=4.2005ln(λp,4)+13.7122,(21);如果fnres,v≤fnres,v,lasi,则所有其他帧间图像按照式(26)所示的拉格朗日因子与qp的关系模型得到qp初始值qpp,ini,3qpp,ini,3=4.2005ln(λp,6)+13.7122,(22);然后判断:如果fnres,v>fnres,v,lasi,则处于时间1级的帧间图像依次按照式(23)、(24)对初始值进行限定,qpp,1=clip3(qp|qpsamlay-3≤qpp,ini,1≤qpsamlay+3),(23);qpp,2=clip3(qp|qpprelay+2≤qpp,1≤qpprelay+10),(24);处于大于时间1级的帧间图像依次按照公式(25)、(26)对初始值进行限定:qpp,3=clip3(qp|qpsamlay-3≤qpp,ini,2≤qpsamlay+3),(25);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)、(24)、(25)、(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%的编码比特,即本发明中的方法显著提升编码的率失真性能。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1