一种I帧的视频帧级别的码率控制方法及装置与流程

未命名 10-19 阅读:132 评论:0

一种i帧的视频帧级别的码率控制方法及装置
技术领域
1.本发明涉及一种数字视频编码技术,特别是涉及一种适合于硬件实现的i帧的视频帧级别的码率控制方法。


背景技术:

2.视频编码是通过压缩视频图像中的冗余成分,并使用尽可能少的数据来表征视频信息的技术。常见的视频编码标准有hevc(high efficiency video coding,高效率视频编码,又称h.265)、avc(advanced video coding,高级视频编码,又称h.264)等。
3.视频编码技术以图像块作为最基本的编码单元。例如在hevc中,视频编码的基本单元是cu(coding unit,编码单元)。cu可以是64像素
×
64像素、32像素
×
32像素、16像素
×
16像素、8像素
×
8像素尺寸的图像块。其中64像素
×
64像素尺寸的图像块又称为lcu(largest coding unit,最大编码单元)。
4.为了尽可能提高视频压缩率,常见的视频编码算法往往采用有损压缩算法,造成编码重建后的视频与原始视频存在差别(产生失真)。hevc和avc都属于有损压缩算法。有损压缩算法的编码性能需要由编码比特率(rate)和编码引入的失真(distortion)来共同衡量。在视频编码过程中,编码比特率r和编码失真d是相互制约、相互矛盾的,降低编码比特率r往往会增加编码失真d,减少编码失真d往往会增加编码比特率r。率失真优化(rate distortion optimization,rdo)就是为了在一定的编码比特率r下尽可能减少编码失真d,或者在一定的编码失真d下尽可能减少编码比特率r。常见的视频编码算法都采用基于拉格朗日乘子(lagrange multiplier)λ的率失真优化方法,该方法就是取得最小的编码率失真代价(rate distortion cost,rd cost)j,j=d+λ
×
r。
5.在视频编码时,每一种编码模式都有编码失真d和编码比特率r,可计算出每一种编码模式的编码率失真代价j。视频编码时,选择编码率失真代价j最小的编码模式来进行编码,可以获得最优的编码性能。编码器通过率失真优化的方法为每一个待编码图像块选择最优的编码模式的过程,称为待编码图像块的模式选择(mode decision)。
6.为了去除空域和时域上的信息冗余,视频编码技术对输入的视频帧采用帧内编码技术和帧间编码技术进行编码。仅采用帧内编码技术进行编码的是i帧。混合采用帧内编码技术和帧间编码技术进行编码的是p帧和b帧。由用户设置的图像组(gop,group of pictures)参数来决定编码帧的类型。图1展示了一个常见的i帧、p帧、b帧的图像组结构。i帧在进行编码时,仅使用本视频帧的信息进行编码,不会参考其他已编码的视频帧的信息。i帧内部所有图像块都编码为帧内编码块。p帧和b帧在进行编码时,不仅会使用本视频帧的信息进行编码,还会参考一个或多个其他已编码的视频帧的信息。p帧和b帧内部的图像块可以编码为帧内编码块,也可以编码为帧间编码块,取决于哪一种的编码率失真代价j更小。
7.在实际生活中,用来传输视频的信道带宽容量是有限的。如果视频的编码比特率过高,超出了信道带宽容量,就会造成视频传输拥塞甚至丢包。如果视频的编码比特率过
低,又会导致信道带宽没有得到充分利用,也无法获得更高视频质量。因此,有必要使用码率控制技术对视频编码器的输出码率进行控制,使之与信道带宽容量相匹配。
8.码率控制(rate control)目的是通过调整视频编码器的编码参数,使视频编码器的输出码率等于预先设置的目标码率,同时尽可能减少编码失真d以提升视频编码质量。目前在hevc参考编码器(high efficiency video coding test model,hm)中,采用的码率控制算法基于jctvc-k0103提案。jctvc-k0103提案建立了编码比特率r与拉格朗日乘子(lagrange multiplier)λ的数学关系模型(即r-λ模型),通过目标比特分配和目标比特控制两个环节来实现码率控制任务。
9.jctvc-k0103提案中,目标比特分配环节在三个层次进行,分别是gop(group of pictures,图像组,即一组时间连续的视频帧的集合)级别、视频帧级别、图像块级别。gop级别的目标比特分配是根据视频的目标编码比特率得到gop的目标编码比特数。视频帧级别的目标比特分配是根据gop的目标编码比特数得到该gop内各视频帧的目标编码比特数。图像块级别的目标比特分配是根据视频帧的目标编码比特数、以及该视频帧内各图像块的比特分配权重得到该视频帧内各图像块的目标编码比特数。
10.目标比特控制环节一般在视频帧级别和图像块级别进行。在视频帧级别,根据视频帧的目标编码比特数计算视频帧级别的拉格朗日乘子λ和量化参数(quantization parameter)qp。具体是根据jctvc-k0103提案中提出的r-λ模型来计算出当前待编码视频帧的拉格朗日乘子λ的取值,λ=α
·
bpp
β
。其中,α和β为r-λ模型参数,其取值由视频内容以及编码器配置参数决定,且随着编码过程的进行而不断更新;bpp即bit per pixel,表示为每个像素点分配的平均目标编码比特数,其取值为待编码视频帧的目标编码比特数与视频帧像素点个数的商。在计算出当前待编码视频帧的拉格朗日乘子λ以后,λ可以用于编码过程中的率失真优化。同时,也可以依据下式计算出当前待编码视频帧的量化参数qp,qp=4.2005
×
ln(λ)+13.7122。其中,ln是自然对数运算符。在图像块级别,根据某一个图像块的目标编码比特数、该图像块所属视频帧的视频帧级别的拉格朗日乘子λ和量化参数qp、前一个已编码图像块的图像块级别的拉格朗日乘子λ和量化参数qp计算该图像块的图像块级别的拉格朗日乘子λ和量化参数qp,用于该图像块的视频编码过程。
11.拉格朗日乘子λ和量化参数qp都分为视频帧级别和图像块级别。在视频帧级别的目标比特分配和目标比特控制环节(即视频帧级别的码率控制)就使用视频帧级别的拉格朗日乘子λ和量化参数qp,在图像块级别的目标比特分配和目标比特控制环节(即图像块级别的码率控制)就使用图像块级别的拉格朗日乘子λ和量化参数qp。视频帧级别的拉格朗日乘子有时简称为视频帧级拉格朗日乘子、帧级拉格朗日乘子、视频帧的拉格朗日乘子。图像块级别的拉格朗日乘子有时简称为图像块级拉格朗日乘子、块级拉格朗日乘子、图像块的拉格朗日乘子。量化参数的简称以此类推。
12.由于视频编码算法的运算量很大,为了提高视频编码速度,实现实时编码和传输,业界通常使用专用集成电路(asic)对视频编码过程进行硬件加速。对视频编码过程进行硬件加速的专用集成电路一般简称为硬件视频编码器。
13.在硬件视频编码器中,i帧的码率控制一直是一个难点。主要原因如下。
14.第一,在jctvc-k0103提案中,i帧的码率控制参数(α和β)采用的是经验值,与i帧的内容复杂度没有直接的关系。这导致计算出来的i帧的编码参数(如视频帧级拉格朗日乘
子或者量化参数)的误差较大,最终导致i帧实际编码比特数与目标编码比特数差距很大,引发剧烈的瞬时码率波动。如果要比较准确地计算i帧的编码参数(如视频帧级拉格朗日乘子或者量化参数),需要在i帧编码前增加专门的预处理级对i帧的内容复杂度进行评估。但是在硬件视频编码器中,增加专门的预处理级不仅成本高昂,还会增大视频编码的延迟。
15.第二,在以jctvc-k0103提案为代表的码率控制算法中,以拉格朗日乘子为核心的运算会引入较多的乘除法运算,且由于拉格朗日乘子的取值范围广、精度要求高、位宽占用大,导致硬件实现时的计算成本、存储成本和带宽成本都较大。
16.因此,有必要设计一种适合于硬件视频编码器的i帧的码率控制方法,在不增加专门的预处理级的基础上,准确地计算出i帧编码所需要的编码参数,使i帧的实际编码比特数更加接近目标编码比特数,使码率控制的过程更加精确。


技术实现要素:

17.本发明所要解决的技术问题是:如何使i帧的码率控制方法更适合用硬件实现。
18.为解决上述技术问题,本发明提出了一种i帧的视频帧级别的码率控制方法,包括如下步骤。步骤s1:对待编码图像块进行帧内编码模式预测,即对待编码图像块计算各个帧内编码模式对应的预测代价,仅保留预测代价最低的一个或多个帧内编码模式作为帧内编码模式候选,同时保留每个帧内编码模式候选对应的帧内编码模式预测代价。步骤s2:在待编码图像块的所有帧内编码模式候选对应的帧内编码模式预测代价中,选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,然后将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度。步骤s3:根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数;其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。
19.优选地,所述步骤s2中,仅计算每个i帧、以及每个i帧前面一个视频帧的帧内编码复杂度。
20.进一步地,所述步骤s3中,待编码i帧的视频帧级量化参数qp
new
由公式五:由公式五:求取;其中,f-1
是第一函数f的反函数;i(n)
new
表示待编码i帧的目标编码比特数;i(m)
old
表示前一个已编码i帧的实际编码比特数;g是第二函数;ω
n-1
表示待编码i帧的前一个已编码视频帧的帧内编码复杂度,用来代替待编码i帧的帧内编码复杂度ωn;ωm表示前一个已编码i帧的帧内编码复杂度;qp
old
表示前一个已编码i帧的视频帧级量化参数。
21.进一步地,所述第一函数f由公式一:获取;第一函数f表征:进行i帧编码时同一视频帧采用不同的视频帧级量化参数,该视频帧得到的不同的实际编码比特数的比值与该视频帧所采用的不同的视频帧级量化参数的差值的关系。
22.进一步地,所述第二函数g由公式二:获取;第二函数g表征:进行i帧编码时不同视频帧采用相同的视频帧级量化参数,不同视频帧得到的实际编码比特数的
比值与各自的帧内编码复杂度的比值的关系。
23.进一步地,预先对大量不同的视频流进行i帧编码实验,采用函数拟合的方式得到第一函数f的表达式、第二函数g的表达式,保存在视频编码器中。
24.进一步地,基于公式一和公式二进行推导,得到公式三:进一步地,基于公式一和公式二进行推导,得到公式三:进一步推导得到公式四:进一步推导得到公式四:ωn表示第n帧的帧内编码复杂度,用与第n帧相邻的已编码的第n-1帧的帧内编码复杂度ω
n-1
进行代替,就得到公式五。
25.可选地,在所述步骤s3之后还包括步骤s4;步骤s4:根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。
26.本发明还提出了一种i帧的视频帧级别的码率控制装置,包括帧内编码模式预测模块、帧内编码复杂度计算模块、i帧量化参数计算模块。所述帧内编码模式预测模块用来对待编码图像块进行帧内编码模式预测,得到一个或多个帧内编码模式候选以及对应的帧内编码模式预测代价。所述帧内编码复杂度计算模块用来选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度。所述i帧量化参数计算模块用来根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数;其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。
27.可选地,在所述i帧量化参数计算模块之后还包括换算模块;所述换算模块用来根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。
28.本发明取得的技术效果是:(1)以视频帧级量化参数作为码率控制算法的运算核心,对量化参数的操作主要是加法、减法运算,更加适合于硬件实现。(2)不需要增加图像预处理级,硬件开销小,实现成本低。(3)利用已编码视频帧的信息来计算待编码i帧的帧级量化参数,计算准确性高,有效地提升了i帧码率控制的准确性。
附图说明
29.图1是一个常见的i帧、p帧、b帧的图像组结构的示意图。
30.图2是本发明提出的i帧的视频帧级别的码率控制方法的流程示意图。
31.图3是本发明提出的i帧的视频帧级别的码率控制装置的结构示意图。
32.图中附图标记说明:1为帧内编码模式预测模块、2为帧内编码复杂度计算模块、3为i帧量化参数计算模块、4为换算模块。
具体实施方式
33.请参阅图2,本发明提出的i帧的视频帧级别的码率控制方法包括如下步骤。
34.步骤s1:对待编码图像块进行帧内编码模式预测,即对待编码图像块计算各个帧
内编码模式对应的预测代价,仅保留预测代价最低的一个或多个帧内编码模式作为帧内编码模式候选,同时保留每个帧内编码模式候选对应的帧内编码模式预测代价。这一步是现有的视频编码过程中的步骤,对i帧、p帧和b帧的所有图像块都会进行帧内编码模式预测。
35.在硬件视频编码器中,为了降低成本和功耗,在使用率失真优化方法对待编码图像块进行模式选择时,一般将模式选择的过程划分为编码模式预测阶段和编码模式率失真优化阶段。其中,编码模式预测阶段由帧内或帧间编码模式预测模块完成,编码模式率失真优化阶段由帧内或帧间编码模式率失真优化模块完成。
36.从本质上来说,编码模式预测阶段和编码模式率失真优化阶段都是采用率失真优化的方法对待编码图像块的编码模式进行筛选。这两个阶段的区别主要在于所采用的编码率失真代价j的计算方法的精度不同。在编码模式预测阶段,一般采用计算量较少、精度较低的编码率失真代价j的计算方法;计算编码失真d一般使用sad(sum of absolute difference,绝对误差和)算法或者satd(sum of absolute transformed difference,绝对变换误差和)算法;计算编码比特率r一般使用简化的比特率估计算法,如指数哥伦布算法;且编码模式预测阶段一般不会引入变换和量化操作。在编码模式率失真优化阶段,一般采用计算量较大、精度较高的编码率失真代价j的计算方法;计算编码失真d一般使用ssd(sum of squared differences,平方误差和)算法;计算编码比特率r一般使用cabac(context adaptive binary arithmatic coding,上下文自适应二进制算术编码)算法或者cavlc(context adaptive variable length coding,上下文自适应可变长度编码)算法;且编码模式率失真优化阶段一般会引入变换和量化操作。习惯上,将编码模式预测阶段计算出的小计算量、低精度的编码率失真代价j,称为编码模式的预测代价。
37.对待编码图像块进行编码时,编码模式预测阶段会对数目众多的编码模式进行初步筛选,通过计算各个编码模式对应的预测代价,筛选出预测代价较低的一个或数个编码模式候选。后续编码模式率失真优化阶段再对这些编码模式候选对应的预测代价进行精确的计算,得到候选编码模式的精确的编码率失真代价j,最后由模式选择模块选择编码率失真代价j最小的编码模式作为待编码图像块的最优编码模式。
38.步骤s2:在待编码图像块的所有帧内编码模式候选对应的帧内编码模式预测代价中,选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,然后将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度。优选地,这一步仅计算每个i帧、以及每个i帧前面一个视频帧的帧内编码复杂度,不计算其他视频帧的帧内编码复杂度。
39.步骤s3:根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数。其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。
40.待编码i帧的视频帧级量化参数qp
new
由公式五:求取,这是一个示例。其中,f-1
是第一函数f的反函数。第一函数f表征:进行i帧编码时同一视频帧采用不同的视频帧级量化参数,该视频帧得到的不同的实际编码比特数的比值与该视频帧所采用的不同的视频帧级量化参数的差值的
关系。i(n)
new
表示待编码i帧的目标编码比特数。i(m)
old
表示前一个已编码i帧的实际编码比特数。g是第二函数,表征:进行i帧编码时不同视频帧采用相同的视频帧级量化参数,不同视频帧得到的实际编码比特数的比值与各自的帧内编码复杂度的比值的关系。ω
n-1
表示待编码i帧的前一个已编码视频帧的帧内编码复杂度,用来代替待编码i帧的帧内编码复杂度ωn。ωm表示前一个已编码i帧的帧内编码复杂度。qp
old
表示前一个已编码i帧的视频帧级量化参数。这一步中,利用已编码i帧的信息推导待编码i帧的视频帧级量化参数qp
new
的过程,以及利用连续视频帧时域上的相关性对待编码i帧的帧内编码复杂度进行的替换操作,属于本发明的创新。
41.请参阅图1,第m帧和第n帧为前后相邻的两个i帧,它们之间可能存在零个或者多个p帧或b帧。用i(m)
old
表示第m帧采用qp
old
进行编码后的实际编码比特数,用i(m)
new
表示第m帧采用qp
new
进行编码后的实际编码比特数,用i(n)
old
表示第n帧采用qp
old
进行编码后的实际编码比特数,用i(n)
new
表示第n帧采用qp
new
进行编码后的实际编码比特数,其中qp
old
和qp
new
表示两个不同的视频帧级量化参数。用ωm表示第m帧的帧内编码复杂度,用ωn表示第n帧的帧内编码复杂度。
42.所述第一函数f由公式一:获取。公式一的物理意义是,使用不同的视频帧级量化参数对同一个视频帧进行i帧编码,编码后得到的实际编码比特数的比值大小与视频帧级量化参数的差值大小有关,这个关系可以用第一函数f来进行表示。第一函数f的具体表达形式可通过对编码后的i帧的实际参数进行运算和对公式一进行函数拟合得到,这里不再赘述。
43.所述第二函数g由公式二:获取。公式二的物理意义是,使用相同的视频帧级量化参数对不同的视频帧进行i帧编码,编码后得到的实际编码比特数的比值大小与视频帧的帧内编码复杂度的比值大小有关,这个关系可以用第二函数g来进行表示。第二函数g的具体表达形式可以通过对编码后的i帧的实际参数进行运算和对公式二进行函数拟合得到,这里不再赘述。
44.本发明预先通过对大量不同的视频流进行i帧编码实验,采用函数拟合的方式得到了第一函数f的表达式、第二函数g的表达式,保存在视频编码器中。因此,上述公式一和公式二中的第一函数f和第二函数g属于已知的函数关系。由于是对大量视频流进行i帧编码后获取的,该第一函数f的表达式、第二函数g的表达式适配性强,通用性好。
45.基于公式一和公式二进行推导,可以得到公式三:基于公式一和公式二进行推导,可以得到公式三:进一步推导可以得到公式四:其中,函数f-1
是第一函数f的反函数,由于第一函数f是已知的,则函数f-1
也是已知的。在公式四中,第m帧是已编码i帧,它的编码过程已经完成,则其对应的实际编码比特数i(m)
old
、编码时所采用的视频帧级量化参数qp
old
和帧内编码复杂度ωm都是已知的量。第n帧是待编码i帧,则i(n)
new
表示期望的目标编码比特数,是一个已知的量;ωn表示第n帧的帧内编码复杂度,由于第n帧还未进行编码,是一个未知的
量;qp
new
表示当第n帧的实际编码比特数为期望的目标编码比特数i(n)
new
时,所需要使用的视频帧级量化参数,是未知的量,也是需要求取的量。为了利用公式四计算出待编码i帧的视频帧级量化参数qp
new
,本发明利用连续视频帧时域上的相关性(连续的视频帧在内容上是相似的),使用与第n帧相邻的已编码的第n-1帧的帧内编码复杂度ω
n-1
来代替待编码的第n帧的帧内编码复杂度ωn。由于第n-1帧与第n帧的采样时间非常接近,两个视频帧的内容非常相似,帧内编码复杂度进行替换操作的误差很小,不会对待编码i帧的视频帧级量化参数qp
new
的计算造成很大影响。这样,由于第n-1帧的编码已经完成,其帧内编码复杂度ω
n-1
是一个已知的量。在公式四中,令ω
n-1
代替ωn,就得到公式五。
46.可选地,在所述步骤s3之后还包括步骤s4,用虚线箭头和虚线框表示。步骤s4:根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。后续可用于对待编码i帧进行编码,编码后得到它的实际编码比特数和帧内编码复杂度。
47.请参阅图3,本发明提出的i帧的视频帧级别的码率控制装置包括帧内编码模式预测模块1、帧内编码复杂度计算模块2、i帧量化参数计算模块3。图3所示装置对应于图2所示方法。
48.所述帧内编码模式预测模块1用来对待编码图像块进行帧内编码模式预测,得到一个或多个帧内编码模式候选以及对应的帧内编码模式预测代价。
49.所述帧内编码复杂度计算模块2用来选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度。
50.所述i帧量化参数计算模块3用来根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数。其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。
51.可选地,在所述i帧量化参数计算模块3之后还包括换算模块4,用虚线箭头和虚线框表示。所述换算模块4用来根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。
52.本发明提出了一种适合于硬件视频编码器的i帧的视频帧级别的码率控制方法。该方法利用视频帧编码过程中产生的帧内编码模式预测代价来表征视频帧的帧内编码复杂度,不需要增加图像预处理级,硬件开销小,实现成本低;同时利用已编码视频帧的信息来计算待编码i帧的帧级量化参数,计算准确性高,有效地提升了i帧码率控制的准确性。
53.本发明与申请公布号cn115550656a、申请公布日2022年12月30日的中国发明专利申请《一种适合于硬件实现的i帧码率控制方法及装置》的技术目标相似,都是用于i帧的视频帧级别的码率控制;但是两者所采用的技术方案显著不同。在cn115550656a中,所有公式推导和运算的核心都是基于视频帧级拉格朗日乘子。而在本发明中,所有公式推导和运算的核心都是基于视频帧级量化参数。如果以视频帧级拉格朗日乘子为运算核心,对拉格朗日乘子的操作会引入较多的乘法、除法运算,且由于拉格朗日乘子的取值范围广、精度要求高、位宽占用大,硬件实现时会导致乘法器、除法器的位宽较大,存储和访问拉格朗日乘子所产生的存储空间代价和访问带宽代价也较高。本发明改为以视频帧级量化参数为运算核
心后,对量化参数的操作主要是加法、减法运算,避免了大量的乘法、除法运算,且由于量化参数的取值范围小、位宽占用小,硬件实现时存储和访问量化参数所产生的存储空间代价和访问带宽代价也较小。因此,相比于cn115550656a,本发明的运算成本、存储成本和带宽成本更低,更加适合于硬件实现。
54.以上仅为本发明的优选实施例,并不用于限定本发明。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种i帧的视频帧级别的码率控制方法,其特征是,包括如下步骤;步骤s1:对待编码图像块进行帧内编码模式预测,即对待编码图像块计算各个帧内编码模式对应的预测代价,仅保留预测代价最低的一个或多个帧内编码模式作为帧内编码模式候选,同时保留每个帧内编码模式候选对应的帧内编码模式预测代价;步骤s2:在待编码图像块的所有帧内编码模式候选对应的帧内编码模式预测代价中,选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,然后将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度;步骤s3:根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数;其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。2.根据权利要求1所述的i帧的视频帧级别的码率控制方法,其特征是,所述步骤s2中,仅计算每个i帧、以及每个i帧前面一个视频帧的帧内编码复杂度。3.根据权利要求1所述的i帧的视频帧级别的码率控制方法,其特征是,所述步骤s3中,待编码i帧的视频帧级量化参数qp
new
由公式五:求取;其中,f-1
是第一函数f的反函数;i(n)
new
表示待编码i帧的目标编码比特数;i(m)
old
表示前一个已编码i帧的实际编码比特数;g是第二函数;ω
n-1
表示待编码i帧的前一个已编码视频帧的帧内编码复杂度,用来代替待编码i帧的帧内编码复杂度ω
n
;ω
m
表示前一个已编码i帧的帧内编码复杂度;qp
old
表示前一个已编码i帧的视频帧级量化参数。4.根据权利要求3所述的i帧的视频帧级别的码率控制方法,其特征是,所述第一函数f由公式一:获取;第一函数f表征:进行i帧编码时同一视频帧采用不同的视频帧级量化参数,该视频帧得到的不同的实际编码比特数的比值与该视频帧所采用的不同的视频帧级量化参数的差值的关系。5.根据权利要求3所述的i帧的视频帧级别的码率控制方法,其特征是,所述第二函数g由公式二:获取;第二函数g表征:进行i帧编码时不同视频帧采用相同的视频帧级量化参数,不同视频帧得到的实际编码比特数的比值与各自的帧内编码复杂度的比值的关系。6.根据权利要求4或5所述的i帧的视频帧级别的码率控制方法,其特征是,预先对视频流进行i帧编码实验,采用函数拟合的方式得到第一函数f的表达式、第二函数g的表达式,保存在视频编码器中。7.根据权利要求4或5所述的i帧的视频帧级别的码率控制方法,其特征是,基于公式一和公式二进行推导,得到公式三:和公式二进行推导,得到公式三:进一步推导得到公式四:ω
n
表示第n帧的帧内编码复杂度,用与第n帧相邻的已编码的第n-1帧的帧内编码复杂度ω
n-1
进行代替,就得到
公式五。8.根据权利要求1所述的i帧的视频帧级别的码率控制方法,其特征是,在所述步骤s3之后还包括步骤s4;步骤s4:根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。9.一种i帧的视频帧级别的码率控制装置,其特征是,包括帧内编码模式预测模块、帧内编码复杂度计算模块、i帧量化参数计算模块;所述帧内编码模式预测模块用来对待编码图像块进行帧内编码模式预测,得到一个或多个帧内编码模式候选以及对应的帧内编码模式预测代价;所述帧内编码复杂度计算模块用来选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度;所述i帧量化参数计算模块用来根据前一个已编码i帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码i帧的目标编码比特数和帧内编码复杂度,计算出待编码i帧的视频帧级量化参数;其中,待编码i帧的帧内编码复杂度由待编码i帧的前一个已编码视频帧的帧内编码复杂度代替得到。10.根据权利要求9所述的i帧的视频帧级别的码率控制方法,其特征是,在所述i帧量化参数计算模块之后还包括换算模块;所述换算模块用来根据量化参数和拉格朗日乘子之间的换算关系,由待编码i帧的视频帧级量化参数得到待编码i帧的视频帧级拉格朗日乘子。

技术总结
本发明公开了一种I帧的视频帧级别的码率控制方法。对待编码图像块进行帧内编码模式预测。选取最小的帧内编码模式预测代价来表征该待编码图像块的帧内编码复杂度,将视频帧内所有图像块的帧内编码复杂度之和作为该视频帧的帧内编码复杂度。根据前一个已编码I帧的实际编码比特数、视频帧级量化参数和帧内编码复杂度,结合待编码I帧的目标编码比特数和帧内编码复杂度,计算出待编码I帧的视频帧级量化参数;其中,待编码I帧的帧内编码复杂度由待编码I帧的前一个已编码视频帧的帧内编码复杂度代替得到。本发明以视频帧级量化参数作为码率控制算法的运算核心,主要是加法、减法运算,更加适合于硬件实现。加适合于硬件实现。加适合于硬件实现。


技术研发人员:刘鹏飞
受保护的技术使用者:翱捷科技股份有限公司
技术研发日:2023.06.28
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐