CN100448295C - 一种低复杂度的积分码率控制方法 - Google Patents
一种低复杂度的积分码率控制方法 Download PDFInfo
- Publication number
- CN100448295C CN100448295C CNB2005100739851A CN200510073985A CN100448295C CN 100448295 C CN100448295 C CN 100448295C CN B2005100739851 A CNB2005100739851 A CN B2005100739851A CN 200510073985 A CN200510073985 A CN 200510073985A CN 100448295 C CN100448295 C CN 100448295C
- Authority
- CN
- China
- Prior art keywords
- frame
- code rate
- bits
- rate control
- control method
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013139 quantization Methods 0.000 claims abstract description 56
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 230000010354 integration Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000005457 optimization Methods 0.000 abstract description 5
- 230000000007 visual effect Effects 0.000 abstract description 2
- 230000000903 blocking effect Effects 0.000 abstract 1
- 239000012530 fluid Substances 0.000 abstract 1
- 230000006835 compression Effects 0.000 description 9
- 238000007906 compression Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种低复杂度的积分码率控制的方法。这种方法在适用于传统编码器的同时特别适用于采用率失真技术的编码器。首先,为GOP中各帧分配相应的比特数;然后,根据图像的复杂度为当前GOP内的的当前帧分配比特数;再根据积分码率控制技术,求出当前需编码宏块的量化参数。在做相应调整之后,把求得的量化参数返回给率失真优化技术和其他编码部分。其中应用了许多模型,包括全局复杂性估计模型、流体流量阻塞模型、积分码率控制模型等。通过采用这些这些技术,准确的控制了码率的变化,保证了解码图像的视觉质量,同时,取得了非常低的复杂度。
Description
技术领域
本发明涉及一种低复杂度的积分码率控制方法,特别涉及一种适用于最新标准编码器的低复杂度的码率控制方法,属于数字视频压缩、数字视频通讯技术领域。
背景技术
视频压缩是一种有损压缩,在消除视频序列中的空间冗余和时间冗余的同时,通过去除掉视频信息中的部分高频分量,来达到很高的压缩率。其中,调整压缩率的主要手段是通过调整量化步长的大小,对残差图像进行量化,产生不同的比特数。视频编码器中的码率控制部分正是通过为编码器选择合适的量化步长来控制比特数的输出。可见,码率控制是视频编码器重要组成部分。在编码过程中,码率控制需根据网络带宽的要求,在控制输出比特数变化的同时,尽量保证输出视频的质量。
到现在为止,出现了许多码率控制方法,其中比较有名的有MPEG-2的TM5(Test Model 5)码率控制方法、H.263的TMN 8(Test Model Near8)码率控制方法,MPEG-4的VM8(Verification Model version 8)码率控制方法等。
现在国际上最新的视频压缩标准是H.264/MPEG-4AVC。国内最新的标准是正在制定中的AVS视频压缩标准。这两个标准采用了近几年来最新的技术。两者在有些方面有所不同,但大多数技术非常相近。其中,两者都采用了一项重要的技术-率失真优化技术。这项技术在输出码率和视频质量失真率之间取得了一个非常好的折衷。但是这项技术与传统的码率控制方法又有所矛盾。这个矛盾是:传统的码率控制方法在计算编码当前宏块所需的量化参数之前,需知道当前宏块的残差;而率失真优化技术在计算出当前宏块的残差之前,需要知道编码当前宏块所需的量化参数。H.264参考软件中的码率控制方法,成功的解决了这个矛盾。但代价是带来了很高的复杂度。
发明内容
本发明的主要目的是提供一种简单而有效的码率控制方法-积分码率控制方法。这种码率控制方法不仅适用于传统的MPEG-2、MPEG-4、H.263编码器,而且同样适用于最新的H.264、AVS编码器。对于符合最新标准的编码器。这种方法可以有效的避免上述与率失真优化技术之间的矛盾,更准确地控制输出码率的变化、取得较高质量的视频输出;同时,其实现复杂度非常低,大大降低了对资源的需求。
本发明的目的是这样实现:
一种低复杂度的积分码率控制方法,至少包括如下步骤:
步骤1:为当前图像组(Group of Picture,简称GOP)分配一定的比特数;
步骤2:为GOP的P、B帧分配相应的比特数,为GOP的I帧指定一量化参数;
步骤3:针对各宏块,采用积分码率控制的方法,计算出码率控制的量化参数。
上述步骤1的具体实现如下:在编码第i个GOP的第j帧之前,第i个GOP中剩余的未分配的比特数:
这里Bi(j)为开始编码第i个GOP第j帧时剩余待分配比特数;Ri(j)为在编码第j帧时的瞬时码率;Ni为第i个GOP中的帧数;f为编码帧率;Vi(j)为虚拟缓冲区的满度(actual buffer fullness);bi(j-1)为第j-1帧所产生的实际比特数。
实际上,在恒定码率(Constant Bit Rate,简称CBR)的情况下,Ri(j)等于Ri(j-1)。此时式(1)可以简化为
式(1)中Vi(j)的更新公式为
所述步骤2具体实现为:按照帧类型的不同为各帧分配比特数,为GOP的I帧指定一量化参数:
(1)计算在当前GOP中对应于每个P帧或B帧的虚拟缓冲区目标满度(target buffer level)Si(j)
在编码完当前GOP的第一个I帧后,编码第一个P帧之前,虚拟缓冲区初始目标满度为
Si(2)=Vi(2) (7)
对于后续的帧,虚拟缓冲区目标满度计算公式为
综合以上两式,虚拟缓冲区目标满度由下述公式计算:
(2)为当前P帧或B帧分配比特数
首先,按照虚拟缓冲区目标满度、虚拟缓冲区满度、帧率、当前信道带宽,计算出第j帧的目标比特数,如下式
这里γ是一个常数,为0.5。
再根据当前GOP剩余的目标比特数,为当前帧分配比特数
其中:t代表P帧或B帧;Np,r和Nb,r分别为当前GOP中剩余待编码P帧和B帧的帧数。这里Wp,i(j)为P帧的平均复杂度,Wb,i(j)为B帧的平均复杂度。它们的计算公式为
这里Kp、Kb是与量化机制有关的常数,当编码器为MPEG-2编码器时,Kp=1.0、Kb=1.4;当编码器为H.264的编码器时,Kp=1.0、Kb=1.3636。
综合考虑式(10)、(11),求出当前P帧或B帧的目标码率
其中β为一常数,为0.5。
最后,考虑到HRD(对应于H.263、H.264,在MPEG系列中为VBV,在AVS中为BBV),将目标比特数限定在一定范围内。
编码完一帧,所产生的实际比特被加到缓冲区中,为保证更新后的缓冲区占用度不至于太高,采用一定的跳帧策略。
(3)对于每一个GOP开始时的I帧,为其指定一个量化参数。
1)对第一个GOP的第一帧(I帧),需结合着图像大小和带宽的情况,从外部为其指定一合理的量化参数QP1(1)。默认情况下(对应H.264的编码器)
这里bpp(bpp:bits per pixel)是每个像素所用的比特数, Npixel是一帧图像中像素的点数。在QCIF/CIF情况时,这里指定l1=0.15,l2=0.45,l3=0.9,当大于上面的图像尺寸时指定l1=0.6,l2=1.4,l3=2.4。
2)对于第i个GOP的第一帧(I帧),其量化参数的取值如下
确定,其中:
Np(i-1):第i-1GOP的P帧的帧数;
SumQP(i-1):第i-1GOP的P帧的平均量化参数之和,
对于第一个GOP的I帧的量化参数由用户根据带宽,图像尺寸来设定一个初始值。
上式结果进一步被调整为
QPi(1)=QPi(1)-1,if QPi(1)>QPi-1(Ni-1-L)-2 (6)
QPi-1(Ni-1-L)是上一个GOP中最后一P帧的量化参数;L是两个P帧间B帧的帧数
所述步骤3具体实现为:应用积分控制方法为一帧中各宏块分配码率并计算相应的量化参数
对于I帧,一帧中所有宏块的量化参数都是相等的。因此这里所述的宏块级码率控制方法是针对P帧和B帧的。
宏块级码率控制方法在编码器编码过程中为一帧中的每一个宏块选择合适的量化参数,这样使得整帧产生的比特数与为当前帧分配的码率比特数相近。
下面是宏块级积分控制方法的详细描述
(1)采用积分控制方法计算出当前宏块的量化步长
Qstept+=error_bitst/kiconst (13)
这里的t代表P帧或B帧。error_bitst是编码上一个同一类型宏块所得的真实比特数与目标比特数的差值;kiconst为积分常数;Qstept即为编码当前宏块所需的量化步长,其初始值为10。根据编码器的映射规则把量化步长Qstept转化成相应的量化参数QPl,i(j)。为不影响视频质量,同一帧中连续宏块量化参数的变化应缓慢,对QPl,i(j)的变化范围做出如下限制
QPl,i(j)=max{QPl-1,i(i)-DQuant,min{QPl,i(j),QPl-1,i(j)+DQuant}} (14)
这里,DQuant是量化参数增量。由于不同编码系统的量化机制是不同的,因而,DQuant的取值一般也是不同,这里取1。
另外,在当前帧已产生的比特数大于或等于当前帧的目标比特数时,当前宏块的量化参数按下式取值:
QPl,i(j)=QPl-1,i(j)+DQuant (15)
最后,为保证视频画面视觉质量上的平滑,对上面求得的QPl,i(j)做如下限定:
QPl,i(j)=max{QPMIN,QPt,i(j)-DQP,min{QPMAX,QPt,i(j)+DQP,QPl,i(j)}} (16)
这里QPMIN为最小量化参数,QPMAX为最大量化参数;QPt,i(j)为同一类型上一帧的平均量化参数值;DQP为当前宏块量化参数可以与同类型上一帧的平均量化参数值的最大差值;
(2)对当前宏块进行编码(在H.264、AVS的编码器中,此时对当前宏块进行率失真优化并编码)
(3)更新当前帧剩余目标比特数,更新当前宏块的比特差
error_bitst=bl,i(j)-Ti(j)/mb_cn (17)
bl,i(j)为编码当前块所产生的比特数;Ti(j)/mb_cn:当前宏块的目标比特数;Ti(j)为当前帧的目标码率;mb_cn为当前视频序列一帧图像所包含的宏块数。
附图说明:
图1是视频编码系统框图;
图2是视频编码系统主程序流程图;
图3是本发明方法实现过程的主要步骤流程图。
具体实施方式:
本发明的目的在于:在保证输出视频的质量的情况下,通过为数字视频编码器选择合适的量化步长来控制比特数的输出,以适应网络带宽和的要求。在图1中所示的视频编码系统框图中,视频序列表示通过其他设备获得的没有进行压缩的原始视频序列,它作为视频编码系统的输入。在图1中所示的视频编码器可以是视频编码芯片或视频编码程序,由它对原始视频序列进行压缩编码,压缩的结果生成码流文件。该码流文件的数据量远小于原始视频序列,因而达到了压缩视频信息的目的。
图2所示是视频编码系统的主程序流程图。除码率控制这一部分外,本发明采用了国际视频编码标准H.264JM86的基本编码框架。
图3所示是码率控制部分的实现流程图。码率控制方法是本发明的核心,它不仅适用于传统的MPEG-2、MPEG-4、H.263编码器,而且同样适用于最新的H.264、AVS编码器。
为了验证本发明的实际性能和编码效率,进行了以下对比实验。对相同的视频序列、采用相同的编码参数,分别执行本发明的码率控制程序和H.264JM86码率控制程序。表1、2分别为在不同的目标码率情况下平均PSNR值的比较。从表中可以看出,改进算法在低码率情况下,要比原算法好,其他情况下,其平均PSNR值与原算法的平均PSNR值基本持平。改进算法输出的实际码率和目标码率很接近,并能随目标码率的变化而变化。同时本发明提出码率控制方法能够把虚拟缓冲区的满度维持在一个适度的水平,保证缓冲区既不上溢也不下溢。
表1低码率时改进前后各个序列平均PSNR值
表2中码率时改进前后各个序列平均PSNR值
Claims (16)
1.一种低复杂度的积分码率控制方法,其特征在于,至少包括如下步骤:
步骤1:为当前图像组GOP分配一定的比特数;
步骤2:为GOP的P、B帧分配相应的比特数,为GOP的I帧指定一量化参数;
步骤3:针对各宏块,采用积分码率控制的方法为一帧中各宏块分配码率,并计算码率控制的量化参数。
2.根据权利要求1所述的积分码率控制方法,其特征在于,步骤1中所述在为当前GOP分配一定的比特数时,当前GOP的目标比特数
是由下式确定的:
其中:Bi(j):开始编码第i个GOP第j帧时剩余待分配比特数;Bi(j):在编码第j帧时的瞬时码率;Ni为第i个GOP中的帧数;f:编码帧率;Vi(j):虚拟缓冲区的满度;bi(j-1):第j-1帧所产生的实际比特数。
3.根据权利要求2所述的积分码率控制方法,其特征在于,所述虚拟缓冲区的满度Vi(j)的更新公式为
5.根据权利要求4所述的积分码率控制方法,其特征在于,所述由式 确定,其中:
t:代表P帧或B帧;
Np,r:当前GOP中剩余待编码P帧的帧数;
Nb,r当前GOP中剩余待编码B帧的帧数;
Wp,i(j):P帧的平均复杂度;
Wb,i(j):B帧的平均复杂度。
6.根据权利要求5所述的积分码率控制方法,其特征在于,所述P帧的平均复杂度Wp,i(j)和B帧的平均复杂度Wb,i(j)分别由式
Kp、Kb:与量化机制有关的常数,当编码器为MPEG-2编码器时,
Kp=1.0、Kb=1.4;当编码器为H.264的编码器时,Kp=1.0、
Kb=1.3636。
8.根据权利要求7所述的积分码率控制方法,其特征在于,所述Si(j)由式 确定。
9.根据权利要求1所述的积分码率控制方法,其特征在于,步骤2中所述GOP的I帧的量化参数由式
Np(i-1):第i-1GOP的P帧的帧数;
Sum QP(i-1):第i-1GOP的P帧的平均量化参数之和,
对于第一个GOP的I帧的量化参数由用户根据带宽,图像尺寸来设定一个初始值。
10.根据权利要求1所述的积分码率控制方法,其特征在于,对于第一个GOP的I帧的量化参数即初始值,默认情况下,对应H.264的编码器,使用下式确定:
这里 Npixel是一帧图像中像素的点数,在QCIF/CIF情况时,这里指定l1=0.15,l2=0.45,l3=0.9,当编码图像的尺寸大于上面的图像尺寸时指定l1=0.6,l2=1.4,l3=2.4。
11.根据权利要求1所述的积分码率控制方法,其特征在于,所述步骤3包括:
采用积分控制方法计算出当前宏块的量化步长;
对当前宏块进行编码;
更新当前帧剩余目标比特数,更新当前宏块的比特差。
12.根据权利要求11所述的积分码率控制方法,其特征在于,所述计算当前宏块的量化步长采用式Qstept+=error_bitst/kiconst,其中:t:代表P帧或B帧,
error_bitst:上一个同一类型宏块实际产生的比特数与目标比特数的差值;
kiconst:积分常数;
Qstept:编码当前宏块所需的量化步长,其初始值为10,根据编码器的映射规则把量化步长Qstept转化成相应的量化参数QPl,i(j)。
13.根据权利要求11所述的积分码率控制方法,其特征在于,一帧中连续宏块量化参数QPl,i(j)的变化范围由式QPl,i(j)=max{QPl-1,i(j)-DQuant,min{QPl,i(j),QPl-1,i(j)+DQuant}}确定,其中:
DQuant:是量化参数增量,不同编码系统的量化机制是不同的,
DQuant的取值一般也是不同,这里取1。
14.根据权利要求1所述的积分码率控制方法,其特征在于,步骤3中所述各宏块的量化参数在当前帧已产生的比特数大于或等于当前帧的目标比特数时,由QPl,i(j)=QPl-1,i(j)+DQuant确定。
15.根据权利要求10、11、12或13所述的积分码率控制方法,其特征在于,最终的量化参数QPl,i(j)由式QPl,i(j)=max{QPMIN,QPt,i(j)-DQP,min{QPMAX,QPt,i(j)+DQP,QPl,i(j)}}确定,其中:
QPMIN:最小量化参数;
QPMAX:最大量化参数;
QPt,i(j):同一类型上一帧的平均量化参数值;
DQP:当前宏块量化参数可以与同类型上一帧的平均量化参数值的最大差值。
16.根据权利要求10所述的积分码率控制方法,其特征在于,在编码完一个宏块之后,实际产生的比特数与目标比特数的差值由式error_bitst=bl,i(j)-Ti(j)mb_cn确定,其中:
bl,i(j):编码当前宏块所产生的比特数;
Ti(j)/mb_cn:当前宏块的目标比特数;
Ti(j):当前帧的目标码率;
mb_cn:当前视频序列一帧图像所包含的宏块数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100739851A CN100448295C (zh) | 2005-05-27 | 2005-05-27 | 一种低复杂度的积分码率控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100739851A CN100448295C (zh) | 2005-05-27 | 2005-05-27 | 一种低复杂度的积分码率控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1870753A CN1870753A (zh) | 2006-11-29 |
CN100448295C true CN100448295C (zh) | 2008-12-31 |
Family
ID=37444291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100739851A Expired - Fee Related CN100448295C (zh) | 2005-05-27 | 2005-05-27 | 一种低复杂度的积分码率控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100448295C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572806B (zh) * | 2009-06-01 | 2010-12-01 | 北京邮电大学 | 一种基于h.264的i帧码率控制方法 |
CN102045572B (zh) * | 2009-10-22 | 2012-07-25 | 中兴通讯股份有限公司 | 一种视频数据编码方法及其编码装置 |
JP5875236B2 (ja) | 2011-03-09 | 2016-03-02 | キヤノン株式会社 | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム |
CN102355584B (zh) * | 2011-10-31 | 2013-09-25 | 电子科技大学 | 基于帧内预测编码模式的码率控制方法 |
US10356428B2 (en) * | 2015-04-13 | 2019-07-16 | Qualcomm Incorporated | Quantization parameter (QP) update classification for display stream compression (DSC) |
CN104994387B (zh) * | 2015-06-25 | 2017-10-31 | 宁波大学 | 一种融合图像特征的码率控制方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004253883A (ja) * | 2003-02-18 | 2004-09-09 | Nec Corp | 音声・画像リアルタイム通信におけるビットレート制御を実行するデータ通信装置 |
-
2005
- 2005-05-27 CN CNB2005100739851A patent/CN100448295C/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004253883A (ja) * | 2003-02-18 | 2004-09-09 | Nec Corp | 音声・画像リアルタイム通信におけるビットレート制御を実行するデータ通信装置 |
Non-Patent Citations (1)
Title |
---|
MPEG视频编码比特速率控制算法的改进. 陈维强,高文.软件学报,第vol.9卷第no.11期. 1998 * |
Also Published As
Publication number | Publication date |
---|---|
CN1870753A (zh) | 2006-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5676705B2 (ja) | 映像符号化規格に対応した映像レート制御の改善 | |
KR101518358B1 (ko) | 비디오 코딩에서 프레임 복잡성, 버퍼 레벨 및 인트라 프레임들의 위치를 이용하는 버퍼 기반의 비율 제어 | |
JP5384694B2 (ja) | 多層ビデオ設計のためのレート制御 | |
CN1910934B (zh) | 自适应速率控制编码器 | |
CN102647586B (zh) | 用在视频编码系统中的码率控制方法和装置 | |
JP2006509444A (ja) | ピクチュアベースの先読みウィンドウによるレート制御 | |
CN104185024B (zh) | 一种基于总码率与信息熵模型的hevc量化参数优化方法 | |
WO2009121234A1 (zh) | 一种视频压缩码率控制方法 | |
CN101518088A (zh) | 针对有效速率控制和增强视频编码质量的ρ域帧级比特分配的方法 | |
CN1902939A (zh) | 数字画面序列的编码方法和解码方法以及编码设备 | |
CN102761741A (zh) | 基于编解码端缓存的视频编码码率控制系统和方法 | |
CN103945222A (zh) | 一种基于hevc视频编码标准的码率控制模型更新方法 | |
KR20120096863A (ko) | 고효율 비디오 부호화의 계층적 부호화 구조를 위한 비트율 제어 기법 | |
CN102420987A (zh) | 基于分层b帧结构的码率控制的自适应比特分配方法 | |
CN100358364C (zh) | 基于h.264的精细颗粒可伸缩编码的码率控制方法 | |
CN100448297C (zh) | 一种码率控制方法 | |
CN102104778A (zh) | 一种图像编码中码率控制的方法和装置 | |
CN102625104A (zh) | 一种视频编码方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
CN105187832B (zh) | 基于2.5g无线网络移动视频码率控制方法 | |
CN102271248B (zh) | 一种基于权重窗口模型的h.264/avc宏块级码率控制算法 | |
KR100498332B1 (ko) | 비디오 트랜스코더의 적응적 비트율 제어장치 및 방법 | |
JP4104066B2 (ja) | ビデオ情報複数同時符号化装置 | |
JP4249672B2 (ja) | ビデオ情報複数同時符号化装置 | |
TWI847618B (zh) | 編碼器及相關的訊號處理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081231 Termination date: 20170527 |