首页> 中国专利> 用于数字视频记录的视频比特率控制方法和设备

用于数字视频记录的视频比特率控制方法和设备

摘要

本发明涉及一种用于视频编码系统的视频比特率控制方法,所述的编码系统产生将被存储于存储设备的编码视频帧并且来源于输入帧的一个序列,所述的方法包括至少一个量化步骤,用于向所述的输入帧施加一个来自于一个评算步骤的量化参数。该评算步骤使用与先前的编码帧有关的统计量计算将被编码的当前帧的复杂度。与此同时,正被编码的当前比特目标根据在存储设备上剩余的可用空间以及在序列中将被编码的剩余帧的数目而被估算。然后,根据估算的复杂度以及估算的当前比特目标产生量化参数。本发明导致了编码帧的输出比特率具有CBR或者VBR状态,带来了编码视频帧的恒定的质量,同时保证了存储设备的最佳填充。

著录项

  • 公开/公告号CN1393109A

    专利类型发明专利

  • 公开/公告日2003-01-22

    原文格式PDF

  • 申请/专利权人 皇家菲利浦电子有限公司;

    申请/专利号CN01803049.1

  • 发明设计人 A·莫雷尔;

    申请日2001-10-01

  • 分类号H04N7/24;

  • 代理机构72001 中国专利代理(香港)有限公司;

  • 代理人王岳;王忠忠

  • 地址 荷兰艾恩德霍芬

  • 入库时间 2023-12-17 14:32:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2008-11-26

    专利权的终止(未缴年费专利权终止)

    专利权的终止(未缴年费专利权终止)

  • 2005-10-12

    授权

    授权

  • 2003-12-17

    实质审查的生效

    实质审查的生效

  • 2003-01-22

    公开

    公开

说明书

本发明涉及一种用于视频编码系统的视频比特率控制方法,所述的编码系统产生存储于存储设备的编码视频帧并且源于一系列输入帧,所述的方法包括至少一个量化步骤,用于为所述的输入帧提供一个量化参数。

本发明也可被用于视频编码系统,例如MPEG-2视频编码器或转码器。

MPEG-2视频压缩标准(活动图像专家组),被称作ISO/IEC13818-2,不只被用于广播设备,也被用于记录设备。这一标准实际上是被用于产生将要保存在数字视频盘(DVD)上的压缩视频序列。为此,能够设想很多技术。其中的一个包括编码输入帧,使得产生的包括MPEG-2编码帧的输出信号,具有一个恒定的比特率(CBR)。另外的一个包括编码输入帧使得产生的输出信号具有一个可变的比特率(VBR)。第一种方法是非常方便的,因为编码视频帧在空间有限的存储设备上的存储是可以保证的,但是这损害了视频的质量,视频质量会由于输入帧根据它们的复杂性而不需要同样数量的比特而有所波动。第二种方法保证了整个编码帧具有相当恒定的质量,因为分配的比特数量会随着帧复杂度而有所增加。但是,这一过程的控制并不允许对产生的比特的数量进行预测,它是不固定的,并且结果是,所述的编码帧在空间有限的存储设备上的存储不能被保证,并且可能导致大量比特上溢和下溢。

国际专利申请WO99/49664描述了一种将编码视频帧的比特率控制在一个整体恒定的值的方法,但是这导致了一个局部可变的输出比特率。结果是,考虑到目标编码质量的确定,为将要编码的连续系列帧确定目标比特率。目标比特率得自于先前和实际的目标比特率的差。实际的目标是根据图像的复杂度和每一系列帧的目标编码质量而可变的。

本发明的目的是提供一种改进的视频比特率控制方法,它允许压缩序列帧以恒定的质量存储在空间有限的存储设备上。

在现有技术中采用的方法当被用于编码存储在空间有限的存储设备上的顺序视频帧的时候具有功能上的局限。

首先,如果输出VBR具有较大幅度的波动,问题可能发生在序列编码的终端。在这种情况下,对将要编码的剩余帧的比特率分配是非常冒险的,很可能导致存储设备容量的上溢或者下溢。结果是,帧存储的最佳集中无法被保证,例如,不是包含在输入序列中的所有帧都可以被存储。

其次,本方法要求的编码帧的恒定的质量不能总被保证。实际上,目标编码质量是根据当前比特率目标和与先前的一系列帧相关的比特率目标之间的差来改变的。由于在一个给定的比特率目标无法获得同样的质量,根据帧复杂度是高还是低,目标编码的改变可能振荡,这将导致局部暂时视觉质量的波动。

根据本发明的方法目的是提供一种对现有技术中的方法的局限性的解决方法。最终,根据本发明的方法的特征在于量化参数的计算,包括:

-一个计算子步骤,用于根据它的量化参数Q(n-1)和它的帧尺寸S(n-1)计算先前的编码帧复杂度X(n-1),

-一个第一估算子步骤,用于根据至少复杂度X(n-1)估算当前输入帧的复杂度Xe(n),

-一个第二估算子步骤,用于在编码以后根据存储设备上可用的比特的数目以及在输入序列中将要编码的剩余帧的数目估算当前输入帧的帧的尺寸R(n),

-一个第三估算子步骤,用于根据当前输入帧的复杂度Xe(n)以及估算的帧的尺寸R(n)估算将被用于当前输入帧的量化参数。

本方法允许系统获得一个用于编码帧序列的恒定的质量。应当考虑先前编码帧的统计量从而计算将要编码的当前帧的复杂度。这种评算的特征在于它是通过包含由时间常数的装置评算执行的,从而使得估算的复杂度沿着编码帧平滑。与此同时,对于正被编码的帧的当前比特目标是根据存储设备上剩余的可用空间以及将被编码的剩余的帧的数目而被估算的。然后,根据估算的复杂度以及估算的当前比特目标,得到一个量化步长并且该步长被用作量化定义正被编码的帧的离散余弦变换(DCT)系数。结果是,该量化步长平滑了帧中的相对变化,造成了输出比特率与具有一个VBR特性的编码帧相关,并且导致了编码视频帧的质量的恒定或者缓慢变化。

本方法的特征还在于时间常数是存储设备上的编码视频帧的数目和在序列中将要编码的视频帧的剩余数目的函数。

这允许相对于编码帧的输出比特率的可控变化,主要在序列编码的开始与结束。这样,考虑到编码参数的设定,比特率对于从CBR到VBR状态的改变被控制,并且从VBR到CBR状态是为了确保输入序列中所有的帧能够存储在存储设备上。这样短时间的状态,根据与序列中当前帧的排列有关的时间常数值的变化,与抑制VBR的特性变化相应,从而确保就质量和空间而言存储设备得到最佳的填充。当然,这种方法允许在编码的过程中获得VBR特性。

本发明的特殊方面将参照下文描述的实施例并结合随后的附图进行解释,其中同样的部分或者子步骤以同样的方式指出:

附图1描绘了根据本发明在MPEG-2视频压缩信号转码的环境中的方法,

附图2描绘了根据本发明的比特率控制步骤,

附图3给出了根据本发明获得的比特率控制的实施例。

实施例的详细说明

本发明涉及一种改进的视频比特率控制方法,它允许压缩序列帧以恒定的质量存储于空间有限的存储设备上。

本发明可以在任何需要比特率控制策略并且比特率控制用于调整产生的编码帧的输出质量的编码系统中执行。例如,本发明理想的可被用于管理视频编码系统或者视频转码系统的量化步长。这里描述的是MPEG-2视频转码系统的情况,但是对于本领域的技术人员来说很明显本发明的范围并不局限于这个特定的情况,而可以覆盖任何象MPEG-4或H.263标准的基于块的视频编码标准。

附图1描绘了根据本发明的在MPEG-2视频压缩信号转码的环境中的方法。该转码执行了输入信号的比特率缩减从而获得具有一个较低的比特率的输出信号,所述的输出信号被存储在空间有限的存储设备中。该图包括根据本发明的三套处理步骤,包括转码步骤101,存储步骤102,以及比特率控制步骤103。

相对于转码步骤101的该装置包括:

-一剩余解码支路104,接收输入的包含有多个压缩数据帧的压缩视频信号105,并且提供一个解码的数据信号106。该分支包括一系列可变长度解码107(VLD)用于提供解码的DCT系数,以及一个反量化108(IQ)用于提供一个解量化的DCT系数,以及一个反离散余弦变换109(IDCT)用于提供解码信号106;

-一运动补偿支路110用于为了构成信号114产生将从信号106中减去的运动补偿信号111。通过与将被转码并包含在输入信号105中的当前帧有关的运动矢量V(n)的使用而获得了运动补偿112。该运动补偿被用于存储于存储器113并与先前处理帧的编码误差相应的帧信号。该编码误差是通过将应用于输出量化参数122的信号经反量化115和反DCT116之后获得的信号减去信号114获得的。支路110避免了在输出转码信号117时的质量漂移;

-一编码支路118用于从信号114获得输出转码和压缩输出视频信号117。它包括一个DCT119用于提供一个由DCT系数形成的一个频率信号120,一个量化121(QUANT)用于提供由量化DCT系数构成的信号122,以及一个可变长度编码(VLC),用于在作为信号117发送并存储于存储设备102以前,产生一个存储于缓冲器124中的可变长度编码DCT系数。

与比特率控制步骤相关的装置103被连结到装置101和102用于控制信号117的输出比特率,从而确保信号117的恒定质量以及在存储设备102上的最佳填充。为此,装置103使用先前转码帧的编码和存储统计确定在当前帧被转码时在步骤121中使用的更为合适的量化参数的值。比特率控制遵循量化参数值的计算能够从帧复杂度以及压缩帧的帧尺寸之间的比获得的原则。

这样,在第一步骤125中,与先前转码帧有关的平均量化参数值Q(n-1)乘以所述的先前转码帧的帧尺寸S(n-1),结果产生与先前转码帧相关的复杂度X(n-1)。帧尺寸S(n-1)以比特表示,并且当先前的转码帧被暂时存储于缓冲器124的时候被计算。

在第二步骤126中,将被转码的当前帧的复杂度Xe(n)根据计算得到的先前转码帧的复杂度X(n-1)而被估算。许多的技术,在下文中将要进一步描述,可以被用于计算Xe(n),例如使用与先前转码帧相关的帧复杂度的加权平均值。与当前帧的复杂度估算相平行的,当前帧的尺寸R(n)根据步骤102中的存储统计量进行估算。以比特表示的帧尺寸R(n),是通过下述的方式计算的:

R(n)=Remaining_bits/(Remaining_pics+Margin_pics)           (等式1)

变量Remaining_bits与存储设备中未填满的剩余空间的比特数目相对应,

变量Remaining_pics与序列中将被转码的以及将被记录在存储设备上的剩余帧的数目相对应,

Margin_pics与检验的Margin_pics≥0的帧的数目相对应。

这种估算允许系统通过考虑存储设备的存储占有量以及在输入序列中尚未转码的帧的数目为当前帧的转码设定一个平均的帧尺寸的目标。这是一个为了确保输入序列的所有的帧的都能最佳存储的重要特征。变量Margin_pics,如果被设为一个正的非零值并且允许支持存储容量的少量的下溢而不是上溢,这在处理具有不同复杂度的连续帧的时候是最优的。

在第三步骤127中,估算的复杂度Xe(n)以及估算的帧尺寸R(n)之间的比被计算从而得到一个估算的量化参数Qe(n)。步骤121包括使用正被Qe(n)转码的当前输入帧将每一个包含在信号120中的DCT系数进行划分,所述的划分的结果将被四舍五入到最近的整数值从而确定构成信号122的量化DCT系数。但是,用作量化DCT参数的量化参数可以与估算的值Qe(n)有轻微的不同。这可能是下述的情况:

-Qe(n)被四舍五入到MPEG-2量化水平的粒度允许的最近的值,

-适应性的量化被执行,包括局部的改变量化参数,使之与局部帧复杂度相适应,

-根据将被转码的帧的类型改变估算的Qe(n),例如,对于B帧乘以参数1.4,对于P帧和I帧乘以参数1.0,

-如果Qe(n)超出了输入帧被量化的量化参数值,其将被设定为所述的值。

附图2描绘了根据本发明的比特率控制策略装置103。比特率控制的目的是根据统计值Q(n-1),S(n-1)和R(n)为将被转码的当前帧数n传递量化参数Qe(n)的估算值。最终,如前面图1所述的,与当前帧有关的复杂度Xe(n)的估算126根据与前面的转码帧有关的复杂度X(n-1)而被执行。估算126使用可调整的忽略参数T(n)作为输入,它允许调整估算的反应速度。这种估算是根据下面的等式进行的:

Xe(n)=(1-T(n)).Xe(n-1)+T(n).X(n-1)                  (等式2)

其中0<T(n)<1

等式2相应于表示与前一转码帧有关的复杂度X(n-1)与复杂度Xe(n-1)的第一顺序递归滤波器的等式。该估计值的特征在于它的时间常数被定义为持续时间,以帧或者取样的数目表示,是获得等于一个统一阶跃信号X的幅度的66%的Xe的幅度所必需的。在等式2的情况下,时间常数,以τ表示,由下式给出:

τ=1/(2.T)                                          (等式.3)

时间常数直接依赖于忽略参数T,该参数具有一个常量或者随着序列中的正被转码的帧的排列而改变。如果τ被设为τ))1,复杂度Xe(n)不会从一个估计值较大的变化到下一个估计值。换句话说,复杂度Xe(n)非常接近复杂度Xe(n-1)。这样,估计的量化参数Qe(n)非常接近量化参数Qe(n-1),这意味着对于具有n和n-1的序列的帧可以获得恒定的质量。结果是,以一个恒定的量化参数执行的来自于量化器121的信号117的比特率是一个VBR状态。如果τ被设为一个较小数目的帧,Xe可能以大比例变化,这造成了连续的量化参数具有较大的不同,导致了信号117的输出比特具有一个CBR的状态。

本发明的另一个方面在于在复杂度估算步骤126中为所使用的时间常数τ定义一个变量图表。该变量图表允许在序列转码的开始和结束时获得一个受控的信号117的CBR状态从而确保存储设备上的所有可用空间都被利用,而不会上溢或者下溢。该变量图表也允许为了获得一个转码帧的相当恒定的质量而随着时间常数τ的增加而从CBR变化到VBR状态。时间常数τ被限制在一个如下定义的变化范围内。

首先,为了确保在转码结束时满足存储容量,τ必须满足:

τ≤Remaining_pics                           (等式4)

而且,τ必须大于包含在一组图像(GOP)或者一组帧中的帧的数目GOP_size:

τ≥GOP_size                                 (等式5)

这允许在至少GOP_size帧中平滑将被转码的输入帧的估算复杂度,而不考虑对所述的输入帧的个别比特分配特性。

估算的复杂度Xe(n),尽管来自于与先前的转码帧有关的复杂度,但不需要由太老的复杂度得到。结果,τ必须满足:

≤Max_time                                   (等式6)

这样,当前的复杂度的估价值Xe(n)主要依赖于与先前的转码帧的Max_time相关的复杂度,这允许以滑动的方式对于序列的当前图像的复杂度估计值的缓慢的适应。

量化参数Qe(n)的估计值是周期的执行的。例如,它可以以帧循环频率执行,表示在同一时刻的R(n),Q(n-1),S(n-1)以及Xe(n)的更新。在一个替代结构中,如果输入视频信号具有一个GOP结构,例如每一个GOP以一个INTRA帧识别,Qe(n)可以以一个GOP频率被更新,从而估算值Qe(n)被高度的平滑而且处理负载被降低。否则,如果在输入视频信号中没有GOP结构被识别,R(n),Q(n-1),S(n-1)以及Xe(n)的更新被以每次最大值在0.5秒的任意的循环被执行,其与在广播背景中建议的GOP持续时间相对应。

附图3示出了在子图3a中描述的用于估算复杂度Xe(n)的时间常数变量的例子,并且示出了在图1描述的转码的情况下,在子图3b中描述的用于量化与信号120相关的量化DCT系数的量化参数Q的产生变量,以及在子图3c中描述的信号117的产生输出比特率的变量。每一图的水平轴相应于包含整个N帧的序列中的帧的排列。根据帧序列n,有五个特别的范围需要被考虑:

-0<n<min_dist:该范围相应于转码的开始。时间常量τ被设定为一个恒定的较小的值从而获得信号117的CBR状态。这保持verifiesτ(n)=min_dist。该范围允许设定编码参数,比如先前的复杂度X(n-1)的设定,从中可推导出复杂度Xe(n)。典型的,min_dist被设定从而该范围的持续时间大约为一分钟。量化参数Q(n)会有较大的波动,反映出如果CBR被间接的施加,为了补偿帧复杂度的变化需要强或者小的量化。

-min_dist<n<max_dist:该范围是一个τ满足τ(n)=n的短暂的状态。时间常数随着帧序列增加,从而信号117的输出比特率缓慢的从CBR变化到VBR状态。换句话说,该状态与抑制VBR控制调节相应。从图3b中可以看出,量化参数Q(n)具有降低幅度的波动,这导致了转码帧的更为恒定的质量。典型的,max_dist被设定从而从时刻0开始的持续时间是几分钟。

-max_dist<n<N-max_dist:该范围相应于在施加一个时间常量τ(n)=max_dist中输入帧的转码。该大的时间常量允许获得一个转码帧的相当恒定的质量,因为量化值Q(n)在平均值Qmean周围具有有限的变化范围。这导致了输出信号117的VBR状态。

-n-max_dist<n<N-min_dist_end:该范围是一个τ满足τ(n)=N-n的短暂的状态。时间常数随着帧序列的增加而减少,从而输出信号117缓慢的从VBR变化到CBR状态。量化参数Q(n)具有增加幅度的波动,这导致了转码帧的更为可变的质量。

-n-min_dist_end<n<N:该范围相应于转码的结束。时间常数被设定为一个恒定的较小的值从而获得信号117的CBR状态。这保持τ(n)=min_dist_end。因为比特率被确定,考虑在序列中将被转码的剩余帧以及在所述的存储设备中的可获得空间,该CBR状态允许获得一个空间有限存储设备的最佳的填充。典型的,min_dist_end被设定从而该范围的持续时间大约为一分钟。

当然,上述的与时间常量τ的变量设定相关的例子不是详尽的,并且在不背离本发明的精神的范围内可以应用可替代的设定。例如,在0到max_dist的范围可以被抑制,从而以一个较大的时间常数开始量化,结果造成了输出信号117从一开始就为VBR状态。

本发明可以以几种方式实现,例如通过连线电子电路,或者可替代的,通过存储在一个计算机可读媒体中的一套指令,所述的指令替代了至少一部分所述的电路并且在计算机或者数字处理器的控制下被执行从而在所述的替代电路中执行的同样的功能。本发明也涉及一种包括一个软件模块的计算机可读媒体,该软件模块包括用于执行上述的方法步骤或其一些步骤的计算机可执行指令。

很显然,词语“编码”涉及在数字领域中执行的任何视频信号数据处理。特别是,该词语应用于编码与转码方法当中。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号