CN101466040B - 一种用于视频编码模式决策的码率估计方法 - Google Patents

一种用于视频编码模式决策的码率估计方法 Download PDF

Info

Publication number
CN101466040B
CN101466040B CN 200910076304 CN200910076304A CN101466040B CN 101466040 B CN101466040 B CN 101466040B CN 200910076304 CN200910076304 CN 200910076304 CN 200910076304 A CN200910076304 A CN 200910076304A CN 101466040 B CN101466040 B CN 101466040B
Authority
CN
China
Prior art keywords
piece
code check
coefficient
coding
entropy coding
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
Application number
CN 200910076304
Other languages
English (en)
Other versions
CN101466040A (zh
Inventor
高文
赵欣
孙俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Original Assignee
Peking University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CN 200910076304 priority Critical patent/CN101466040B/zh
Publication of CN101466040A publication Critical patent/CN101466040A/zh
Application granted granted Critical
Publication of CN101466040B publication Critical patent/CN101466040B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种用于视频编码的码率估计方法,包括以下步骤:(1)首先根据当前帧的一般化高斯分布参数以及编码量化参数,对变换系数块的各个系数进行加权;(2)然后将加权后得到的数值进行求和,得到近似的变换系数块的信息比特数;(3)将近似的信息比特数与模型参数α相乘,然后再将相乘的结果与模型参数β相加,即得到估计的码率;(4)利用实际的熵编码结果,动态更新(3)中用到的两个模型参数。本发明可以直接应用于视频编码中模式决策过程的优化,实现低复杂度的模式决策,对整体的视频编码过程进行有效的加速。

Description

一种用于视频编码模式决策的码率估计方法
技术领域
本发明涉及一种视频编码方法,特别涉及一种用于视频编码模式决策的估计熵编码码率的方法。
背景技术
新一代的视频编码标准H.264/AVC在已有的视频编码标准的框架之下,实现了编码效率的大幅度提高,成为今后视频信息压缩格式的主流标准。然而由于增加了更多灵活有效的编码工具和编码模式,H.264/AVC视频编码标准的复杂度相比以往的视频编码标准,也有了显著的提高。因此,在很多对视频编码器速度和性能要求较高的场合,实际的应用对视频编码器的算法优化提出了更高的要求。
在视频编码器中,视频数据首先被划分为若干个16×16大小的块,其中每一个16×16大小的块被称为宏块(Macroblock),视频编码的过程正是以宏块(Macroblock)为单位进行。在编码器编码一个宏块的过程当中,复杂度最高的两个模块为运动搜索(ME)模块和模式决策(MD)模块。其中模式决策模块的作用是,在很多视频编码器能够提供的待选编码模式当中,选择一种对于当前编码的视频宏块数据而言编码效率最高的模式。然而由于在新一代的国际视频编码标准中(例如H.264/AVC等),编码器提供了丰富多样的编码模式,使得MD模块的复杂度也随之大幅度上升。因此,对于MD模块的优化成为编码器优化的一项关键技术。
视频编码器的模式决策流程如图1所示。在模式决策模块的处理过程中,编码器通过在每种待选模式下对当前视频宏块进行完整的一次编码,得到对应于该模式的宏块编码码率(R)和失真(D)大小,其中码率R的大小对应于熵编码后比特数的大小,R越小说明压缩率越高,而失真D的大小对应于编码后重建数据和原始数据的差别大小,失真越小说明编码后的视频质量越高。对于具有相同失真D的两种模式,编码器就会选择码率R更小的模式,这是因为在两种模式下失真相同、视频质量相同,而码率R较小则对应于较高的压缩率;而对于具有相同码率R的两种模式,编码器就会选择失真D更小的模式,这是因为在两种模式下码率相同、压缩效率相同,而失真D较小则对应于较好的视频质量。
然而在实际编码过程中,各个待选编码模式所得到的R和D一般情况都是各自不同的,编码器需要对每种模式的R和D进行最佳的权衡,从而得到最佳的编码模式。在H.264/AVC视频编码器中,模式决策模块采用现有的率失真优化技术(RD0)来比较各个待选模式的R和D的权重优劣。如图1所示,RD0技术首先计算每个模式的率失真代价(RD_cost)值,然后选取使RD_cost值最小的模式作为最佳编码模式。RD_cost是R和D的加权和,如下式描述:
RD_cost=D+λ·R  ,    (1)
其中,λ是一个由视频编码量化参数所决定的参数。由(1)式可以看出,计算单个模式的RD_cost值的复杂度主要由计算D和R的复杂度所决定。
在H.264/AVC国际标准的参考软件(此参考软件里面给出了H.264/AVC国际标准的视频编码和视频解码的参考实现过程,已在网上已经公开,并且可以下载)中,D和R的值是通过对宏块在当前待选模式下进行一次完整的编码过程来得到。
为了便于说明编码的过程,首先标记宏块数据(16×16大小的像素区域,背景技术部分第二段已经给出了宏块的含义)为16×16大小的矩阵X,完整的编码过程包括:
(1)首先对输入的宏块数据进行预测,预测的过程就是利用其它位置的像素来预测当前的宏块,标记预测的宏块数据为16×16大小的X*,那么预测的过程就是用X*近似地表示X,之后再计算X和X*的差值YM=X-X*,YM称为残差,也就是X经过X*预测后残留的数据。
(2)对预测得到的YM进行变换。变换的过程如下:首先将16×16大小的残差数据YM划分为16个4×4的残差块,如图5所示,每个4×4的残差块标记为4×4大小的矩阵Y,然后对每个4×4的块Y计算Df TYDf,也就是计算三个4×4的矩阵Df T,Y和Df的乘积,其中
D f T = 1 1 1 1 2 1 - 1 - 2 1 - 1 - 1 1 1 - 2 2 - 1 , D f = 1 2 1 1 1 1 - 1 - 2 1 - 1 - 1 2 1 - 2 1 - 1 ,
Df称为变换核,由H.264/AVC标准规定。最终得到相乘的结果为4×4的矩阵F,即F=Df TYDf,矩阵F中的16个元素称为变换系数,F称为变换系数块。
(3)然后对变换后得到的变换系数进行量化。量化的过程如下所述:对变换系数块F中的16个变换系数Fij分别计算
Figure G2009100763045D00031
其中Q是编码过程中指定的参数,
Figure G2009100763045D00032
为向下取整操作,如
Figure G2009100763045D00033
Figure G2009100763045D00034
(4)然后再对量化后的数据进行熵编码,得到码率R。
(5)然后对量化后的数据进行反量化。反量化是量化的逆过程,也就是对量化后的变换系数计算
Figure G2009100763045D00035
其中Q×IQ=1,也就是说变换系数块中的每个系数Fij经过量化和反量化,会近似变回Fij,但是由于量化和反量化过程中有取整操作,所以反量化的结果和量化前的结果并不严格相等。
(6)接着对反量化后的数据进行反变换。反变换是变换的逆过程,其具体的操作过程如下所述:对每个经过前面的量化,反量化后得到的4×4的块F’计算Di TF’Di,也就是三个4×4的矩阵Di T,F’和Di的乘积,其中
D i T = 1 1 1 1 / 2 1 1 / 2 - 1 - 1 1 - 1 / 2 - 1 1 1 - 1 1 - 1 / 2 , D i = 1 1 1 1 1 1 / 2 - 1 / 2 - 1 1 - 1 - 1 1 1 / 2 - 1 1 - 1 / 2 ,
Di称为变换核,Di T是Di的转置。最终得到相乘的结果为4×4的矩阵Y’,即Y’=DTF’D。矩阵F’中的元素是经过量化,反量化后的变换系数,Y’是最终的反变换结果。
(7)最后对反变换后的数据进行像素重建。像素重建的过程如下所述,将Y’与当步骤(1)中的用于预测的参考数据X*相加即得到重建后的4×4的像素数据。
对宏块内每个4×4的块进行(2)-(7)的操作之后便得到输出的宏块数据;最后将输入的宏块数据与输出的宏块数据进行比较,从而得到失真D。
由上述H.264/AVC标准所规定的过程可以看出,现有技术中计算R、D的计算复杂度很高。
模式决策的复杂度CMD主要由待选模式的数量m和计算单个待选模式的RD_cost的复杂度CMD i,i=0,1,...,m-1所决定,并且近似地可以认为有如下的关系:
C MD = Σ i = 1 m C MD i . - - - ( 2 )
也就是说,模式决策的复杂度是计算每个待选模式的RD_cost的复杂度之和。为了降低(2)式中的模式决策的复杂度CMD,现有技术中针对MD模块的优化技术有两类,一类技术的目标是降低m的大小;一类是降低CMD i的大小。从(2)式可以看出,这两类方法都可以实现模式决策复杂度CMD的降低。第一类技术通过设计算法,判断RD_cost很可能为较高值的模式,并且在待选模式中提前排除该模式,从而省去了对该模式计算RD_cost的计算量。第二类技术通过降低计算每个RD_cost的复杂度CMD i来降低整体的模式决策复杂度。更具体地来讲,第二类算法的实现是通过对R或D进行低复杂度的估计,从而避免进行图2所示高复杂度的计算过程。
以H.264/AVC标准为例,在实际的熵编码过程中,R和D的计算是以4×4的块为单位的,也就是说,每个16×16大小的宏块被划分为16个4×4的子块来进行熵编码,如图4所示。已有的码率估计技术通过统计一些经验得到的和熵编码码率相关的参量,比如4×4变换系数块中非零系数的个数,变换系数块的绝对值之和等等,并利用这些参量的线性组合对码率进行估计,其中线性组合的系数往往也是通过经验性的实验结果得到,或者通过自适应的进行线性拟合来得到。
如图3所示为实际视频编码过程中两个单独提取出来的4×4的变换系数表示,称为变换系数块,从图3可以看出这两个变换系数块的系数绝对值之和相同,均为20,但通过记录这两个块的实际熵编码结果可以得知,左块的实际熵码率为62比特(通过在视频编码的过程中记录实际熵编码结果得知),而右块的熵编码码率仅为28比特(通过在视频编码的过程中记录实际熵编码结果得知),相差有两倍之多。导致这样现象的原因是两个块的系数分布不同,右块的系数相比较左块系数而言,幅度更加集中于低频分量(块的左上角位置附近的分量)。如图4所示为另外一组由实际视频编码过程中两个单独提取出来的4×4的变换系数块,从图4可以看出这两个变换系数块的非零系数的个数相同,均为10,但通过记录这两个块的实际熵编码结果可以得知,左块的实际熵码率为85比特,而右块的熵编码码率仅为27比特,相差有三倍之多。导致这样现象的原因是两个块的系数幅度分布不同,右块的系数相比较左块系数而言,系数的幅度分布明显更高。
已有的码率估计方法通常采用变换系数块中的非零系数的个数,系数的绝对值之和等等参量来估计熵编码码率,但是从前面给出的两个例子可以看出,这些经验得到的参量并不能够可靠地衡量熵编码后的码率大小。这些方法的一个明显的缺陷是对4×4变换系数表示中的16个变换系数的重要性不加区别,认为每个系数对熵编码码率的影响大小都相同,然而事实上通过上面的例子可以看出,这16个系数对熵编码码率的影响往往是各自不同,甚至相差很大的。已有的方法一般基于经验性的实验结果,缺乏验证可靠的模型,并且往往是针对特定的熵编码方法(例如,上下文自适应的可变长编码(Context-based Adaptive Variable Length Coding,CAVLC))而设计,因此在普适性(对不同的熵编码方法都验证适用)和精确度上都不是非常有效。所以,为了更加准确地估计熵编码的码率大小,需要对变换系数块中的每个系数进行加权,以体现不同频率的变换系数对熵编码码率影响程度的不同。
发明内容
针对上述问题,本发明的目的在于提出一种加权形式的码率估计模型,使得码率估计的过程能够体现不同频率的变换系数对熵编码码率影响程度的不同,从而实现更为有效,更具普适性的码率估计。
为实现上述目的,首先对变换量化系数进行一般化高斯分布的概率建模,通过概率建模,推导得出了变换系数的幅度和其信息比特数之间的近似数学关系,根据这个数学关系,提出以下用于视频编码中码率估计的方法流程:
1、利用推导得到的数学关系来对变换量化后的各个系数分别进行加权;
2、对加权后的系数首先取绝对值,然后求和来估计变换系数块的信息比特数;
3、将2中计算得到的信息比特数与一个模型参数α相乘,然后再加上另一个模型参数β得到最终的估计码率;
4、在模式决策的过程中,根据最终得到的实际熵编码码率和对应估计得到的码率动态调整模型参数α和β。
根据本发明,提供一种用于视频编码模式决策的码率估计方法,该方法包括步骤:(1)将视频中的帧数据划分成多个宏块,再将各宏块划分为块;(2)对所述多个块分别进行帧间运动估计或帧内预测;(3)对所述的每个块分别根据步骤(2)中得到的所述帧间运动估计或帧内预测结果,计算所述估计或预测结果与所述块之间差值,得到残差数据块;(4)对所述残差数据块进行变换、量化,得到所述残差数据块的变换系数表示;(5)对所述变换系数表示中的每个分量进行加权计算,并通过计算结果估计熵编码码率大小;(6)记录所述的每个块的实际熵编码码率大小,并记录对应的估计熵编码码率大小。
根据本发明的一个方面,步骤(5)中加权计算的权重和形式由所述变换系数表示中的每个分量的概率分布参数所决定。
根据本发明的一个方面,步骤(5)中进行码率估计时,首先将所述变换系数表示中的每个分量加权后得到的数值进行求和,得到求和值rB,然后通过精确码率估计模型RB=αgrB+β计算得到估计的码率RB
根据本发明的一个方面,利用步骤(6)中记录的所述每个块的实际熵编码码率大小以及所述对应的估计熵编码码率大小,动态更新参数α如β。
根据本发明的一个方面,动态更新的过程是在实际熵编码块的数量积累到一个设定阈值Tthreshold时开始,并且在数量积累到一个给定阈值Tupdate时结束,并重新动态更新参数α和β。
根据本发明的一个方面,所述变换系数表示中的每个分量的概率分布参数在开始编码当前视频帧时初始化,并在结束编码当前帧时重新统计。
根据本发明的一个方面,步骤(5)中还包括步骤:根据估计的熵编码码率大小计算当前待选模式的率失真代价,如果结果小于当前最佳编码模式的率失真代价,那么更新当前最佳编码模式为当前待选模式;如果当前待选模式为最后一个可选的编码模式,那么进行步骤(6),否则继续步骤(2)。
本发明由于采取以上技术方案,与传统方法相比,可以建立更为准确合理的码率估计模型,该模型可有效地应用于视频编码的模式决策过程和码率控制过程。
附图说明
图1是H.264/AVC视频编码器中的模式决策流程示意图。
图2是计算单个模式的RD_cost流程示意图。
图3是实际编码过程中的两个经过变换和量化的变换系数块,并且系数的绝对值之和相等。
图4是实际编码过程中的两个经过变换和量化的变换系数块,并且非零系数的个数相等。
图5是将单个宏块划分为16个4×4的块的示意图。
图6是采用本发明方法进行视频编码模式决策的流程示意图。
具体实施方式
按照本发明的一个实施方式,根据信息论和熵编码器的设计原理,提出新的码率估计方法。
从熵编码的原理来看,由于低频分量和高频分量的概率分布不同,因此对码率的影响也不一样。而对自然图像而言,由于变换域的能量往往集中在低频,高频分量出现非零值的概率远小于低频分量,那么高频分量对码率的影响总是明显高于低频分量。如果记一个4×4的变换系数块为F,那么它的位于(0,0)位置(左上角位置)的低频分量和位于(3,3)位置的高频分量分别记为F(0,0)和F(3,3),那么由于F(0,0)和F(3,3)的幅度大小的概率分布不同,F(0,0)=20的概率往往大于F(3,3)=20的概率。那么根据信息论的原理和熵编码器的设计原理,F(0,0)=20所产生的码率将小于F(3,3)=20所产生的码率。这说明了在4×4的变换系数块中,每个系数取相同值时对码率的贡献度是不同的,因而在利用这16个系数进行码率估计之前,应该首先对这些系数进行加权处理。根据熵编码器的设计原则,实际熵编码得到的码率大小应该和信息比特数的大小密切相关,因此本发明提出通过估计信息比特数的大小来估计实际熵编码得到的码率大小。
为了计算4×4的变换系数块的信息比特数的大小,需要首先对变换系数的分布建立有效的概率模型,在此模型基础之上推导单个变换系数和它的信息比特数之间的对应关系,并利用和码率直接密切相关的信息比特数来作为码率估计的估计量,从而体现不同频率的变换系数对熵编码码率影响程度的不同,实现更为合理有效的加权形式的码率估计。以往对变换系数的概率分布通常采用高斯分布和拉普拉斯分布来描述,然而这两种分布由于控制的参量少,所能够覆盖的分布类型非常有限,对于实际的随机性很强的视频数据而言,采用这两种分布进行描述都不够有效。为了能够更精确地描述变换系数的分布特征,采用更为灵活的一般化高斯分布(Generalized Gaussiandistribution,GGD)来对变换系数进行描述。零均值的一般化高斯分布的概率密度函数(Probability density function,PDF)可以表示为:
f ( x ) = ηα ( η ) 2 σΓ ( 1 / η ) exp { - [ α ( η ) | x σ | ] η } , - - - ( 3 )
其中 Γ ( x ) = ∫ 0 ∞ t x - 1 e - t dt 为伽玛函数,η>0是形状参数,控制着概率密度函数的形状,σ为均方差,控制着概率密度函数的尺度。GGD是一个范围很广的概率分布,它的控制参数相比较高斯分布和拉普拉斯分布而言更加灵活。当形状参数η=1时,GGD就是拉普拉斯分布,当形状参数η=2时,GGD对应于高斯分布,当η=∞时,GGD则退化为均匀分布。一般化高斯分布已经在很多研究中被有效地应用于对变换系数分布的分析。
对GGD的形状参数η和方差参数σ进行估计的方法有几种,这些方法基本都是建立在下面的数学关系基础之上:
R ( η ) = Γ 2 ( 2 / η ) Γ ( 1 / η ) Γ ( 3 / η ) = E 2 { | X | } E { X 2 } - - - ( 4 a )
σ2=E{X2},    (4b)
从而得到η和σ的估计函数:
η ^ = R - 1 ( ( 1 N Σ i = 1 N | x i | ) 2 1 N Σ i = 1 N X i 2 ) , σ ^ = 1 N Σ i = 1 N X i 2 - - - ( 5 )
由于R-1(g)没有闭合形式的表达式,几种参数估计的方法主要是采用不同的形式对R-1(g)进行拟合。近年来,有研究者提出一种采用形式简单的双曲线函数对(5)中的R-1(g)进行拟合的方法,这个拟合函数的形式如下:
H ( x ) = 0.2718 0.7697 - x - 0.1247 . - - - ( 6 )
在H.264/AVC中,变换系数的量化过程如下表示:
| F ^ uv | = ( | F uv | gQ + fg 2 qbits ) > > qbits , - - - ( 7 )
其中,Fuv代表4×4的系数块中位于(u,v)的变换系数,|·|代表取绝对值操作,Q为量化器中的相乘因子,fg2qbits控制着系数的截断,>>表示按比特右移操作,等式右边的
Figure G2009100763045D00091
代表Fuv量化后的量化值。假设Fuv的概率密度函数为fuv(x),并且fuv(x)的形状参数和均方差参数分别为ηuv和σuv,那么结合(7)式中的量化过程,可以计算Fuv被量化为
Figure G2009100763045D00092
的概率为:
P { F ^ uv = x ^ } = 2 ∫ 0 ( 1 - f ) g Q step f uv ( x ) dx , x ^ = 0 ∫ ( | x ^ | - f ) g Q step ( | x ^ | + 1 - f ) g Q step f uv ( x ) dx , x ^ ≠ 0 , - - - ( 8 )
其中 Q step = 2 qbits Q 为量化步长。那么根据信息论中对信息量的定义,可以计算Fuv被量化为
Figure G2009100763045D00095
的信息量为:
Figure G2009100763045D00096
称ruv为信息比特数。由于fuv(x)在[0,+∞]的区间内是连续单调递减函数,因此存在x*满足
∫ ( | x ^ | ) g Q step ( | x ^ | + 1 - f ) g Q step f uv ( x ) dx = f uv ( x * ) g Q step , - - - ( 10 )
并且
Figure G2009100763045D00098
事实上,对于形状参数ηuv>1的fuv(x)而言,概率密度函数在[0,+∞)的区间内是凸函数,可以进一步得到
Figure G2009100763045D00099
也就是说,x*落于量化区间的前半部分。结合H.264/AVC量化器(4)中f参数的设置原则:
Figure G2009100763045D000910
可以得出,
Figure G2009100763045D000911
也同样满足落于量化区间的前半部分,因此利用来近似x*,也就是说:
f ( x * ) ≈ f ( x ^ g Q step ) . - - - ( 12 )
将(12)代入(10)可得:
∫ ( | x ^ | - f ) g Q step ( | x ^ | + 1 - f ) g Q step f uv ( x ) dx ≈ f uv ( x ^ g Q step ) g Q step - - - ( 13 )
再将(13)代入(8)可得:
结合(14)和(9)可得,当
Figure G2009100763045D00103
时有:
Figure G2009100763045D00104
其中 a uv = log 2 ( e ) g [ α uv ( η ) Q step σ uv ] η , b uv = - log 2 [ Q step g η α uv ( η ) 2 σ uv Γ ( 1 / η ) ] .
Figure G2009100763045D00107
时,ruv和(15)式的形式类似,但是auv和buv不同。由此可以得到,对于服从一般化高斯分布的变换系数而言,单个变换系数所对应的信息比特数是和它的取值幅度成指数函数关系的。特别地,当变换系数服从拉普拉斯分布时,也就是ηuv=1,那么式(15)则变为一个简单的线性函数。由(15)式得到了单个变换系数的幅度和信息比特数之间的数学关系,这个关系对于建立更为准确的码率估计模型是十分有意义的。
由此得到了单个变换系数的信息比特数和它的幅度之间的数学关系,由于变换系数之间可近似看作是独立的,根据信息论的结论,整个4×4的系数块的信息比特数可以近似为16个变换系数的信息比特数之和,也就是
r B = Σ i = 0 3 Σ j = 0 3 r ij , - - - ( 16 )
其中rB是整个4×4的系数块的信息比特数。在(15)和(16)的基础之上,利用信息比特数和熵编码码率的密切相关性提出一种新型的精确码率估计模型:
RB=αgrB+β,    (17)
其中α和β为模型的参数,rB由(16)式计算得到。
参考图6,按照上述提出的码率估计方法,本发明提供一种用于视频编码的模式决策过程的方法如下:
(一)以宏块的形式提供视频数据,将视频中的一帧(称为本帧)划分为宏块,然后将宏块划分为多个块,(图5即为将单个宏块划分为块的示意图)并按照以下步骤循环地对当前帧的每个块进行模式决策;
(二)对当前块采用当前待选模式进行帧间运动估计或者帧内预测,并按照以下步骤循环地对当前块的每个待选模式计算率失真代价;
(三)在模式决策过程中,按照如下方法计算当前待选模式的率失真代价:
a)根据(二)中得到的预测数据,计算预测数据和块数据的差值,得到残差数据块;
b)对残差数据块依次进行视频编码标准中规定的变换、量化过程,得到该残差数据块的变换系数块表示;
c)根据b)中得到的变换系数块表示,按照(15)式对每个变换系数进行加权,然后根据(16)式和(17)式估计变换系数块的熵编码码率大小RB
d)根据(1)式和c)中得到的熵编码码率大小RB计算当前待选模式的率失真代价,如果结果小于当前最佳编码模式的率失真代价,那么更新当前最佳的编码模式为当前待选模式;
e)如果当前待选模式为最后一个可选的编码模式,那么进行步骤(四),否则继续步骤(二),对下一个待选模式进行模式决策;
(四)采用选择的最佳编码模式对当前块进行熵编码,并利用实际熵编码得到的码率,动态更新(17)式中的模型参数α和β。更新的过程如下式描述:
α = n Σ i R i r i - Σ i R i Σ i r i n ( Σ i r i ) 2 - Σ i r i 2 , β = n ( Σ i r i ) 2 Σ i R i - Σ i R i r i Σ i r i n ( Σ i r i ) 2 - Σ i r i 2 ,
其中,n为已经编码的块的个数,Ri为第i个块的熵编码码率,ri为第i个块的估计码率。更新的过程是在n积累到一个给定阈值Tthreshold时开始,并且在n积累到一个给定阈值Tupdate时对n,Ri,ri重新进行初始化。
(五)根据步骤(三)中记录得到的变换系数的数据,按照(5)式估计当前帧数据的一般化高斯分布参数,这些参数用在码率估计过程当中。
(六)重复上述步骤,继续下一帧的编码,直到视频最后一帧处理完毕。
按照本发明的一个具体实施方式,本发明所提出的方法可以直接应用在H.264/AVC视频编码的模式决策过程当中。
在H.264/AVC参考软件进行模式决策的过程当中,率失真代价中的码率部分的计算是通过复杂度较高的熵编码来得到,那么为了降低计算码率的复杂度,加快整体的编码速度,本发明方法将高复杂度的熵编码替换为低复杂度的码率估计过程(具体的步骤和上述步骤(一)-步骤(五)相同),从而大大降低了率失真代价的计算复杂度,同时也降低了整体的编码复杂度。实验结果表明,在H.264/AVC标准参考软件版本JM86的基础之上,本发明方法可以节约整体编码时间的大约23%(对于采用上下文的自适应二进制算术编码,Context-bsaed Adaptive Binary Arithmetic Coding,CABAC)和40%(对于采用上下文自适应的可变长编码,Context-based Adaptive VariableLength Coding,CAVLC),并且相比较原先的高复杂度的方法而言,编码效率的降低基本可以忽略(峰值信噪比的降低低于0.1dB)。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些具体实施方式仅是举例说明,本领域的技术人员在不脱离本发明的原理和实质的情况下,可以对上述方法和系统的细节进行各种省略、替换和改变。例如,合并上述方法步骤,从而按照实质相同的方法执行实质相同的功能以实现实质相同的结果则属于本发明的范围。因此,本发明的范围仅由所附权利要求书限定。

Claims (4)

1.一种用于视频编码模式决策的码率估计方法,其特征在于,该方法包括步骤:
(1)将视频中的帧数据划分成多个宏块,再将各宏块划分为块;
(2)对所述多个块分别进行帧间运动估计或帧内预测;
(3)针对所述多个块中的每个块,分别根据步骤(2)中得到的所述帧间运动估计或帧内预测结果,计算所述估计或预测结果与所述每个块之间差值,得到残差数据块;
(4)对所述残差数据块进行变换、量化,得到所述残差数据块的变换系数表示;
(5)对所述变换系数表示中的每个分量进行加权计算,并通过计算结果估计熵编码码率大小;
(6)记录所述的每个块的实际熵编码码率大小,并记录对应的估计熵编码码率大小。
2.根据权利要求1方法,其特征在于,步骤(5)中加权计算的权重和形式由所述变换系数表示中的每个分量的概率分布参数所决定。
3.根据权利要求2所述的方法,其特征在于,所述变换系数表示中的每个分量的概率分布参数在开始编码当前视频帧时初始化,并在结束编码当前帧时重新统计。
4.根据权利要求1所述的方法,其特征在于,步骤(5)中还包括步骤:
根据估计的熵编码码率大小计算当前待选模式的率失真代价,如果结果小于当前最佳编码模式的率失真代价,那么更新当前最佳编码模式为当前待选模式;
如果当前待选模式为最后一个可选的编码模式,那么进行步骤(6),否则继续步骤(2)。 
CN 200910076304 2009-01-09 2009-01-09 一种用于视频编码模式决策的码率估计方法 Expired - Fee Related CN101466040B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910076304 CN101466040B (zh) 2009-01-09 2009-01-09 一种用于视频编码模式决策的码率估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910076304 CN101466040B (zh) 2009-01-09 2009-01-09 一种用于视频编码模式决策的码率估计方法

Publications (2)

Publication Number Publication Date
CN101466040A CN101466040A (zh) 2009-06-24
CN101466040B true CN101466040B (zh) 2010-12-01

Family

ID=40806352

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910076304 Expired - Fee Related CN101466040B (zh) 2009-01-09 2009-01-09 一种用于视频编码模式决策的码率估计方法

Country Status (1)

Country Link
CN (1) CN101466040B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395030B (zh) * 2011-11-18 2014-05-07 杭州海康威视数字技术股份有限公司 基于视频压缩码流的运动分析方法、码流转换方法及其装置
CN102438146B (zh) * 2011-12-05 2014-04-30 晶门科技(深圳)有限公司 一种视频质量的提高方法及其实现装置
US10194158B2 (en) 2012-09-04 2019-01-29 Qualcomm Incorporated Transform basis adjustment in scalable video coding
CN103391440A (zh) * 2013-07-19 2013-11-13 华为技术有限公司 语法信息的二值化编码处理方法及装置
CN103686176B (zh) * 2013-12-30 2016-09-21 清华大学 一种用于视频编码的码率估计方法
CN103888765B (zh) * 2014-03-27 2015-09-30 天格科技(杭州)有限公司 一种改进型R-λ模型H.265码率控制方法
JP6636615B2 (ja) 2015-08-24 2020-01-29 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動きベクトル場の符号化方法、復号方法、符号化装置、および復号装置
CN106454360B (zh) 2016-10-26 2019-05-07 北京大学深圳研究生院 视频编码中帧内编码的码率估计方法
CN108347603B (zh) * 2017-01-25 2020-08-04 联发科技股份有限公司 动态影像编码装置及动态影像编码方法
CN110460853B (zh) * 2018-05-07 2021-04-30 上海富瀚微电子股份有限公司 一种高效视频编码码率估计装置及方法
CN109743572B (zh) * 2019-01-08 2019-12-03 深圳市优微视觉科技有限公司 一种码率模型更新方法及装置
CN110418131B (zh) * 2019-07-15 2021-07-27 杭州电子科技大学 一种码率预估方法及基于码率预估快速模式决策方法
CN112449189B (zh) * 2019-08-27 2022-02-11 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置及视频编码器、存储介质
CN112866695B (zh) * 2021-01-07 2023-03-24 上海富瀚微电子股份有限公司 一种视频编码器

Also Published As

Publication number Publication date
CN101466040A (zh) 2009-06-24

Similar Documents

Publication Publication Date Title
CN101466040B (zh) 一种用于视频编码模式决策的码率估计方法
CN111641832B (zh) 编码方法、解码方法、装置、电子设备及存储介质
Ho et al. Compression with flows via local bits-back coding
US20220004844A1 (en) Methods and apparatuses for compressing parameters of neural networks
Schmid-Saugeon et al. Dictionary design for matching pursuit and application to motion-compensated video coding
CN107846593B (zh) 一种率失真优化方法及装置
CN112748483B (zh) 一种基于深度学习的气温预报偏差订正方法及装置
CN103945220A (zh) 一种用于高效视频编码hevc的量化优化方法
CN111711815B (zh) 基于集成学习和概率模型的快速vvc帧内预测方法
CN111163314A (zh) 一种图像压缩方法及系统
Chen Context modeling based on context quantization with application in wavelet image coding
CN110769263A (zh) 一种图像压缩方法、装置及终端设备
CN114219027A (zh) 一种基于离散小波变换的轻量级时间序列预测方法
CN111343458B (zh) 一种基于重建残差的稀疏灰度图像编解码方法及系统
CN113467949A (zh) 边缘计算环境下用于分布式dnn训练的梯度压缩方法
CN102307303B (zh) 一种基于三进制表示的图像预测编码方法
CN106331706B (zh) 基于曲线拟合的率失真优化方法以及使用该方法的装置
CN116634162A (zh) 率失真优化的图像压缩神经网络训练后量化方法
WO2021001594A1 (en) Neural network for variable bit rate compression
CN111161363A (zh) 一种图像编码模型训练方法及装置
CN111565314A (zh) 图像压缩方法、编解码网络训练方法、装置及电子设备
CN108200442A (zh) 一种基于神经网络的hevc帧内编码单元划分方法
Schmid-Saugeon et al. Learning dictionaries for matching pursuits based video coders
KR20170088100A (ko) 잔차 신호 부호화 장치 및 방법
WO2023088562A1 (en) An autoencoder for data compression

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: 20101201

Termination date: 20210109