一种hevc编码单元级码率控制方法
【技术领域】
[0001 ] 本发明设及高性能视频编码化igh Efficiency Video Coding,肥VC)领域,特别 设及其中编码单元级码率控制方法。
【背景技术】
[0002] 码率控制算法作为视频编码应用中的一项关键技术,对于实际应用有着重要价 值。在实际应用中,码率控制算法可W根据目标码率对视频编码,使视频编码后实际码率接 近目标码率,同时尽可能地提高编码后的质量。HEVC中采用了新的编码结构如编码单元 (Coding化it ,CU) W及新的技术如自适应样点补偿等来提高编码效率。相应的,皿VC中应 采取新的编码单元级码率控制算法,W适应于皿VC新的编码结构和技术,尽可能提高视频 编码后的质量。
[0003] 肥VC的测试软件化EVC Test Model, HM)所采用的CU的大小为64 X64、32 X 32、16 X 16和8 X 8,分别对应CU的深度为0、1、2、3。其中深度为0的CU记为LClKLargest Coding 化it),深度为1的CU记为SubClKSub Coding化it)。歷的编码器采用递归的方式对LCU进行 划分,对于每一层的CU都要进行RDO来决定是否划分为下一层。一般地,为了减少编码参数 所占比特数,编码单元级码率控制算法的目标一般只针对LCU,也可W叫做LCU级码率控制 算法。
[0004] 皿VC现有标准将码率控制算法分为S个级别:图片组级、帖级、编码单元级,并采 用了一系列编码单元级码率控制方法:对于P、B帖中的LCU,使用R-A模型描述比特数和编码 参数的关系。对LCU进行比特数分配的原则为期望视频帖中各个LCU的编码参数A相等。在此 基础上,W当前帖目标比特数为约束条件,使用各个LCU的R-A模型,可W解得各个LCU应分 得的比特数。详细实现可W参见文献1(参见Li B,Li H,Li L,et al.Rate conhol by R-Iambda model for 皿VC[C]//JCTVC-K0103JCTVC of ISO/IEC and mJ-T,II化 meeting Shanghai ,China.2012)和文献2(参见LJCTVC-M0036,''AdaptivebitallocationforR-Iambda model rate control in HM,"Incheon,KR,18-26Ap;r.2013)。与较早的标准相比, 该方法可W提高编码质量,但没有考虑到LCU的划分结构与纹理特性,依然有改进的空间。 文献3(参见1(:17(:-]\10257,''111化日化日1116 1?日16(:〇11化〇16日36(1〇115410/'111油6〇11,邸,18-26Apr. 2013)提出在I帖中,使用变换后绝对差值和(Sum Of Absolute Transformed Differences,SATD)描述编码单元的纹理特性。并使用基于SATD的R-A模型描述比特数和编 码参数的关系。对I帖中LCU使用其SATD值作为权重进行比特数分配。该方案只考虑了 I帖的 SubCU级码率分配,而对P帖和B帖没有设计相应方案。
【发明内容】
[0005] 本发明的目的在于提供一种肥VC编码单元级码率控制方法。
[0006] 本发明需要保护的技术方案为:
[0007] -种皿VC编码单元级码率控制方法,概括说,在编码单元级码率控制算法初始化 阶段,预测当前帖中各个LCU是否划分。预测的依据为前一个同级帖的同一位置的LCU是否 划分。如果前一个同级帖的同一位置的LCU实际划分,即预测此LCU也会划分。反之,亦然。
[0008] 一种肥VC编码单元级码率控制方法,其特征在于,具体包括如下步骤:
[0009] 1)编码当前帖前,进行帖级码率控制算法,预测当前帖的目标比特数、QP和A。进入 编码单元级码率控制算法初始化部分。
[0010] 2)预测当前帖中各个LCU是否划分。如果预测不划分,根据式(1)计算权重;否则, 根据式(2) (3)计算权重。
[001 U 3)根据式(4)计算各个LCU的 Ini^itScurrLCUo
[0012] 4)编码当前LCU前,根据式(5)(6)为当前LCU分配目标比特数。
[OOU] 5)如果预测不划分,根据式(7)计算编码参数^urrLCU;否则,根据式(8)(9)(10)计 算编码参数、urrLCU。
[0014] 6)根据式(11)得到当前 LCU 的QPcurrLCUo
[001引 7)根据、UrrLGU和QPeurrLGU对当前LCU进行模式选择等编码过程。当前LCU编码结束 后,根据实际编码结果记录下是否划分到SubCU层。如果划分到SubCU层,根据各个SubCU的 实际编码参数和结果更新SubCU的R-A模型。更新LCU的R-A模型。进入下一个LCU。
[0016] 由于采用上述方案,本发明的有益效果是:
[0017] 1.本发明根据LCU的划分结构,使用SubCU的R-A模型描述划分的LCU的失真与编码 参数之间的关系,并提出了根据SubCU的R-A模型计算LCU复杂度、计算编码参数的方法,提 高编码后的客观质量。
[0018] 2.本发明综合考虑编码器当前状态和LCU的复杂度,设计了为当前LCU分配比特数 的方法,可W更准确地为LCU分配比特数,提高编码后的客观质量。
【具体实施方式】
[0019] W下通过若干实施例解释、阐述和支持本发明所需要保护的技术方案。
[0020] 实施例1
[0021] 理论依据及验证
[0022] 首先,在现有肥VC标准中,对于P帖和B帖,每个LCU按照位置来建立、使用和更新其 R-入模型。但在一般情况下,LCU内部的内容变化很大,纹理特性各不相同,同样编码参数下 不同子CU得到的比特数有很大差别,所W最终皿VC编码其会将LCU分成多个小的CU,分别进 行运动补偿、量化编码等过程。现在对单个LCU只用一个R-A模型来描述其编码特性,不能表 征LCU内部纹理特性相差很大的特点,也不能表征实际编码过程中对LCU的划分结构。但LCU 又不能形成类似帖级的统计特性,所W对单个LCU用一个R-A模型来描述其编码特性不符合 实际情况。其次,现有标准中为当前LCU分配比特数的方法期望在几个LCU之内弥补视频帖 中预测比特数与实际比特数的误差,容易导致其目标比特数过大或者过小。
[0023] 为此本文设计了基于SubCU的编码单元级码率控制算法。
[0024] 在编码单元级码率控制算法初始化阶段,预测当前帖中各个LCU是否划分。预测的 依据为前一个同级帖的同一位置的LCU是否划分。如果前一个同级帖的同一位置的LCU实际 划分,即预测此LCU也会划分。反之,亦然。表1为该方法在BQMal 1序列中固定编码QP为32情 况下的准确率。测试平台为肥VC参考软件歷14.0,测试配置为Random Access Main。
[0025] 表1丄CU划分预测方法准确率
[0027] 如表1中可W看到,该LCU划分预测方具有较高的准确性。因为该方法简单有效,本 发明使用该方法作为LCU划分预测方法。
[0028] 在编码单元级码率控制算法初始化阶段,对于预测不划分的LCU,使用LCU的R-入模 型估计其复杂度作为权重WeighteurrLCU:
[0030] 其中AcuirPic为帖级码率控制算法给出的当前帖的编码参数。numberOf Pixel ScurrLCU 为当前LCU的像素个数。acurrLCU、0currLCU为当前LCU的R-A模型的参数。对于划分的LCU,使用其 SubCU的R-A模型估计其复杂度作为权重WeighteurrLCU:
[003;3]其中,M证its如脚f为LCU中各个SubCU的初始比特数,代表在M直为、urrPic情况下, 各个S U b C U所需的比特数。巧础棚i、依站,为第i个SubCU的R-A模型的参数。 numberOfPixels扣6化,,.为第i个SubCU的像素个数。numberOfSubCU为当前LCU中像素个数不 为0的SubCU的个数