用于视频编解码中速率控制精度的方法和装置的制造方法

文档序号:10539298阅读:150来源:国知局
用于视频编解码中速率控制精度的方法和装置的制造方法
【专利摘要】一种用于视频编解码中速率控制精度的方法和装置。所述装置包括用于利用速率控制编码图像数据的视频编码器(200)。所述速率控制包括估计量化步长和调节取整偏差。所述取整偏差在编码过程中能够为非常数。
【专利说明】
用于视频编解码中速率控制精度的方法和装置
[00011 本申请是申请日为2008年09月15日、申请号为200880110108.9、发明名称为"用于 视频编解码中速率控制精度的方法和装置"的专利申请的分案申请。
技术领域
[0002] 本发明总体上涉及视频编码,具体而言,涉及用于视频编解码中速率控制精度的 方法和装置。
【背景技术】
[0003] 大部分视频编码应用都要求编码器以给定的目标比特率(target bit rate)压缩 输入视频。为了达到此目的,编码器要采用速率控制系统。速率控制系统将一定数量的比特 分配给输入视频源中的每个图像并调节编码参数以与分配的比特数相匹配。通过满足目标 比特率的精度和压缩视频的视觉质量来测量速率控制系统的性能。在视频编码标准(例如 国际标准化组织/国际电工委员会(IS0/IEC)的运动图像专家组MPEG-2(下文称作" MPEG-2 标准")、IS0/IEC的运动图像专家组MPEG-4第十部分高级视频编码(AVC)标准/国际电信联 盟远程通信标准化组(ITU-T)的Η. 264(下文称为"MPEG-4AVC标准")和电影与电视工程师学 会(SMPTE) Video Codec - 1标准(下文称为"VC- 1标准"))中,具有多个影响比特率的量化 参数,例如量化步长(quantization step size)、取整偏差(rounding offset)和量化矩阵 (quantization matrix)〇
[0004] 出于说明之目的,下面将讨论MPEG-4AVC标准的量化过程。从数学角度而言,在编 码器中根据下述公式对变换系数(transformed coefficient)进行量化:
[0005]
(1)
[0006] 其中W是变换系数并被量化至量化等级(quantization leveDZc^q是量化步长,s 是取整偏差。函数U将一数值取整为最接近的整数,函数sgn(.)返回信号的符号。当采用量 化矩阵时,在编码器处进行量化过程之前要首先对系数进行标度(scaled)。在量化至0时的 W的范围被称为静区(deadzone)。在此特殊情况下,静区为Δ =2 X (1-s) Xq。在解码器处, 将量化级Z重建(reconstruct)为信号W'。将这种情况称为反量化(inverse quantization) 并用下述公式来描述:
[0007] 矿=q · Z (2)
[0008] 速率控制算法调节量化参数以获得目标比特数。当用于某些时间间隔(time interval)的比特数接近于或者基本上等于用于该时间间隔的分配的比特数时,通常认为 速率控制算法是精确的。根据应用来定义用于测量速率控制精度的特定时间间隔。在某些 应用中,优选地比特率在图像级上是精确的。而在其他应用(例如广播)中,由于带宽限制, 优选地比特率在少量帧上是精确的。在另外的某些应用(例如DVD授权)中,经常是在整个序 列上测量比特数率精度并且当整部电影所用比特数满足要求时才认为比特率是精确的。 [0009]现有速率控制算法假设取整偏差和量化矩阵是恒定的并只调节量化步长。量化步 长只有有限数量的选择。量化步长由量化指数表示,将这些量化指数嵌入在编码流中并传 输至解码器以重建视频。由于只能选择有限数量的量化步长,现有速率控制算法在不损失 质量的情况下很难获得非常精确的控制。由速率控制算法造成的质量损失通常被视为一个 图像内或者两个或多个图像之间的质量不一致。低质量的图像可能包括能够使部分图像显 示变形的可视瑕疵。
[0010] 为了改善对于图像的速率控制精度,现有算法的常用方式是采用宏块级(MB级)速 率控制。下面以现有技术中的P域速率控制方法为例来说明上述方式。P域速率控制方法假 设P与R之间是线性关系,其中P是用于编码区域的量化变换系数中的零系数的百分比,R是 用于编码该区域的比特数。从数学角度而言,可以用下面的线性速率模型来表示:
[0011] R(p)=e(l-p)+Rc (3)
[0012] 其中Rc是用于编码一区域的非纹理比特数,Θ是常数。
[0013] 请注意,P随着量化步长q单一增长,这表示在其之间形成一对一映射。因此,在目 标比特数R、预测参数Θ和R。已知的条件下,P域速率控制方法获得P的值,并根据上述一对一 P - q映射获得量化步长。
[0014] 通常情况下根据上述方法计算出来的量化步长q无法落入由编码器的量化指数表 示的量化步长的有限数范围内。一种途径是让图像内的宏块使用大约等于q'的步长,q'指 最接近于q并由量化指数表示的步长。并且,图像所使用的平均量化步长约等于q。在一个实 施方式中,宏块可以从量化步长"'-△ 1^'^'+42}中进行选择。另外一种途径是在编码每 个宏块之后更新Θ和R。并针对每个宏块计算q。
[0015] 在被称为TMN8的另一种常用速率控制算法中,针对一图像首先计算量化步长q。编 码器利用q开始编码宏块。然后,随着更多的宏块被编码,对速率控制模型参数进行更新并 以宏块为基础更新量化步长。
[0016] MB级调节的一个问题是,宏块的量化步长彼此不同。在某些情况下,量化参数之间 的不同将导致图像内的质量不一致。
[0017] 请参看图1,附图标记100表示一种用于视频编码的速率控制方法。
[0018] 方法100包括开始框105,其将控制传递至功能框110。功能框110执行和/或包括编 码设置,然后将控制传递至功能框115。功能框115初始化速率控制参数,并将控制传递至循 环限制框(loop limit block)120。循环限制框120利用变量i(其中i = l,···,图像中宏块号 (#))对当前处理的图像的每个宏块执行循环并将控制传递至功能框125。功能框125计算用 于宏块i的量化步长qi,并将控制传递至功能框130。功能框130以量化步长qi编码宏块i,并 将控制传递至功能框135。功能框135(例如基于先前编码的宏块)更新速率控制参数,并将 控制传递至循环限制框140。循环限制框140结束循环,并将控制传递至终止框199。
[0019] 可以理解,在图1所示方法100中,在采用方法1的编码过程中,取整偏差参数是恒 定的。
[0020] 还可以理解,功能框110可选地可以包括借助于算子(operator)。并且,对应于功 能框110的编码器设置可以包括目标比特率的设置以及编码过程中所包含的任何参数集规 范。
[0021] 并且,可以理解,由功能框125执行的宏块i的量化步长qi的计算例如可以基于P域 速率控制方法或TMN8速率模型。
[0022] 由全部宏块{qi}1=1,...,ΜΒ_所使用的量化步长可能变化巨大并且导致图像内的质量 不一致。为了在图像内获得更稳定的质量,编码器可以选择限制量化步长的动态范围。结 果,图像实际使用的比特数有可能与目标比特数相差极大。
[0023] 因此,如上所述,现有技术的速率控制方法既缺乏速率控制精度,又产生了质量不 一致。

【发明内容】

[0024] 本发明涉及用于视频编解码中的速率控制精度的方法和装置,其能够解决现有技 术中上述及其他缺点。
[0025] 根据本发明的一个方面,提供了一种装置。所述装置包括用于利用速率控制编码 图像数据的视频编码器。所述速率控制包括估计量化步长并调节取整偏差。所述取整偏差 在编码过程中能够为非常数。
[0026] 根据本发明的另一个方面,提供了一种方法。所述方法包括利用速率控制编码图 像数据,其中速率控制包括估计量化步长并调节取整偏差。所述取整偏差在编码过程中能 够为非常数。
[0027] 根据本发明的另一个方面,提供了一种装置。所述装置包括用于利用速率控制解 码比特流中的图像数据的视频解码器。所述速率控制包括量化步长和取整偏差。所述取整 偏差在解码过程中能够为非常数,并且基于所述比特流中或者与所述比特流相关至少其中 之一的信息估计或者从所述比特流中提取。
[0028] 根据本发明的另一个方面,提供了一种方法。所述方法包括利用速率控制解码比 特流中的图像数据。所述速率控制包括量化步长和取整偏差。所述取整偏差在解码步骤中 能够为非常数,并且基于所述比特流中或者与所述比特流相关至少其中之一的信息估计或 者从所述比特流中提取。
[0029]本发明的另外方面、特征及优点将从以下结合附图对示例性实施方式的详细说明 而更容易清楚呈现。
【附图说明】
[0030] 借助于下述附图,本发明的原理将更容易得到理解,其中:
[0031] 图1是现有技术的视频编码器的速率控制方法的流程图。
[0032] 图2是根据本发明实施方式的应用了本发明原理的视频编码器的框图。
[0033] 图3是根据本发明实施方式的应用了本发明原理的视频解码器的框图。
[0034]图4是根据本发明实施方式的多通路(multi-pass)视频编码器的速率控制方法的 流程图,所述方法包括非常数取整偏差。
[0035]图5是根据本发明实施方式的多通路视频解码器的速率控制方法的流程图,所述 方法包括非常数取整偏差。
[0036]图6是根据本发明实施方式的单通路(single-pass)视频编码器的速率控制方法 的流程图,所述方法包括非常数取整偏差。
[0037]图7是根据本发明实施方式的代码转换器(transcoder)的速率控制方法的流程 图;
[0038] 图8是根据本发明实施方式的用于解码图像数据的方法的流程图;
[0039] 图9是根据本发明实施方式的用于解码图像数据的另一方法的流程图。
【具体实施方式】
[0040] 本发明涉及用于视频编解码的速率控制精度的方法和装置。
[0041] 本说明书描述了本发明的原理。可以理解,尽管这里没有明确描述或示出,然而本 领域的技术人员能够设想出体现本发明的原理并且包括在本发明的精神和范围内的各种 设置。
[0042] 因此,这里所引述的所有示例和条件性语言均为了教导的目的,以帮助读者理解 本发明的原理以及发明人对现有技术做出贡献的概念,应被看作不会被限制为具体引述的 不例和条件。
[0043]此外,这里对本发明的原理、方面、实施例及其特定示例做出引述的所有声明意在 包括本发明的结构和功能上的等同物。另外,该等同物将包括当前已知的等同物以及将来 开发出的等同物,即所开发出来的执行相同功能的任何组件,而与结构无关。
[0044] 因此,本领域的技术人员可以理解,例如这里所表示的框图展示出体现本发明原 理的示意性电路的概念图。类似地,可以理解,任何流程图、流程框图、状态转移图、伪代码 等表现出实质上可以在计算机可读介质上表现的、并且由计算机或处理器执行的各个过 程,无论是否明确示出该计算机或处理器。
[0045] 可以通过使用专用硬件和能够与适合的软件一同执行软件的硬件而实现图中所 示各个组件的功能。当由处理器来提供时,这些功能可以由单个的专用处理器、单个的共享 处理器、或多个单独的处理器来提供,其中一些可以是共享的。此外,术语"处理器"或"控制 器"的显式使用不应被解释为排他性地指代能够执行组件的硬件,而且可以隐式地包括(不 限为)数字信号处理器("DSP")硬件、用于存储软件的只读存储器("ROM")、随机存取存储器 ("RAM")以及非易失性存储器。
[0046] 还可以包括常规和/或专用的其它硬件。类似地,图中所示的任何开关仅是概念上 的。其功能可以通过程序逻辑的操作、专用逻辑、程序控制和专用逻辑的交互、或甚至是手 动地而实现,实施者可以选择的具体技术可以从上下文中得到明确的理解。
[0047] 在权利要求书中,表示为用于执行特定功能的装置的任何组件意在包括执行该功 能的任何方式,例如包括:a)执行该功能的电路组件的组合,或b)任意形式的软件,包括固 件、微代码等,以及用于执行该软件以执行该功能的适合的电路。由权利要求所限定的本发 明在于如下事实:将各个引述的装置所提供的功能以权利要求所要求的方式组合在一起。 因此,可以把能够提供这些功能的任意装置看作与这里所示的装置相等同。
[0048]在说明书中涉及本发明原理的"一个实施例"或"实施例"是指:结合实施例描述的 特定特征、结构、特性等包括在本发明原理的至少一个实施例中。因此,贯穿说明书的不同 地方出现的术语"在一个实施例中"或"在实施例中"不必均指相同的实施例。
[0049] 术语"图像数据"在本文中指任何静止图像数据和运动图像数据,包括帧、场、画 面、图像分块、图像子分块等等。
[0050] 可以理解,例如,在"A和/或B"和"A和B的至少其中之一"的情况下,术语"和/或"和 "至少其中之一"意在包括只选择(A)、只选择(B)或者选择A和B(A和B)的情况。作为另外一 个实例,"A、B和/或C"和"A、B和C的至少其中之一"包括只选择(A)、只选择(B)、只选择(C)、 选择A和B(A和B)、选择A和C(A和C)、选择B和C(B和C)或者选择A、B和C(A和B和C)的情况。对 于列举更多事项的情况可以类推,本领域普通技术人员可以清楚地理解。
[0051]并且,可以理解,虽然本发明的一个或多个实施方式是针对MPEG-4AVC标准进行说 明的,但本发明并不局限于该标准,而是在本发明的原理范围内可以应用于其他视频编码 标准、推荐性标准及其扩展,包括MPEG-4AVC标准的扩展。例如,本发明可以非局限性地用于 ITU-T Η. 263推荐性标准(下文称为"H. 263推荐性标准")、MPEG-2标准、MPEG-4AVC标准、VC-1标准等等。
[0052]如上所述,本发明涉及用于视频编解码的速率控制精度的方法和装置。
[0053] 请参看图2,附图标记200表示应用了本发明原理的视频编码器。
[0054]编码器200包括帧排序缓存器210,帧排序缓存器210的输出与合成器285的第一非 反相输入相连以进行信号通信。合成器285的输出与变换和量化器225的输入相连以进行信 号通信。变换和量化器225的输出与熵编码器245的第一输入以及反变换和量化器250的输 入相连以进行信号通信。熵编码器245的输出与合成器290的第一非反相输入相连以进行信 号通信。合成器290的输出与输出缓存器235的输入相连以进行信号通信。输出缓存器235的 第一输出与速率控制器205的输入相连以进行信号通信。
[0055]补充增强信息(SEI)插入器230的输出与合成器290的第二输入相连以进行信号通 {目。
[0056]反变换和量化器250的输出与合成器227的第一非反相输入相连以进行信号通信。 合成器227的输出与帧内预测器260的输入和解块滤波器265的输入相连以进行信号通信。 [0057]解块滤波器265的输出与参考图像缓存器280的输入相连以进行信号通信。参考图 像缓存器280的输出与运动估计器275的输入和运动补偿器270的第一输入相连以进行信号 通信。
[0058]运动估计器275的第一输出与运动补偿器270的第二输入相连以进行信号通信。运 动估计器275的第二输出与熵编码器245的第二输入相连以进行信号通信。
[0059]运动补偿器270的输出与开关297的第一输入相连以进行信号通信。帧内预测器 260的输出与开关297的第二输入相连以进行信号通信。宏块类型判断模块220的输出与开 关297的第三输入相连以进行信号通信。开关297的输出与合成器285的第二非反相输入和 合成器227的第二非反相输入相连以进行信号通信。
[0060] 速率控制器205的输出与图像类型判断模块215的第一输入和序列参数集(SPS)和 图像参数集(PPS)插入器240的输入相连以进行信号通信。SPS和PPS插入器240的输出与合 成器290的第三输入相连以进行信号通信。
[0061] 图像类型判断模块215的第一输出与宏块类型判断模块220的输入相连以进行信 号通信。图像类型判断模块215的第二输出与帧排序缓存器210的第二输入相连以进行信号 通信。
[0062]帧排序缓存器210的第一输入可以作为编码器200的输入以接收输入图像201。输 出缓存器235的第一输出可以作为编码器200的输出以输出比特流。
[0063] 请参看图3,附图标记300表示应用了本发明原理的视频解码器。
[0064] 视频解码器300包括输入缓存器310,输入缓存器310的输出与熵解码器345的第一 输入相连以进行信号通信。熵解码器345的第一输出与反变换和量化器350的第一输入相连 以进行信号通信。反变换和量化器350的输出与合成器325的第二非反相输入相连以进行信 号通信。合成器325的输出与解块滤波器365的第二输入和帧内预测模块360的第一输入相 连以进行信号通信。解块滤波器365的第二输出与参考图像缓存器380的第一输入相连以进 行信号通信。参考图像缓存器380的输出与运动补偿器370的第二输入相连以进行信号通 {目。
[0065] 熵解码器345的第二输出与运动补偿器370的第三输入和解块滤波器365的第一输 入相连以进行信号通信。熵解码器345的第三输出与解码器控制器305的输入相连以进行信 号通信。解码器控制器305的第一输出与熵解码器345的第二输入相连以进行信号通信。解 码器控制器305的第二输出与反变换和量化器350的第二输入相连以进行信号通信。解码器 控制器305的第三输出与解块滤波器365的第三输入相连以进行信号通信。解码器控制器 305的第四输出与帧内预测模块360的第二输入、运动补偿器370的第一输入和参考图像缓 存器380的第二输入相连以进行信号通信。
[0066] 运动补偿器370的输出与开关397的第一输入相连以进行信号通信。帧内预测模块 360的输出与开关397的第二输入相连以进行信号通信。开关397的输出与合成器325的第一 非反相输入相连以进行信号通信。
[0067]输入缓存器310的输入可以作为解码器300的输入以用于接收输入比特流。解块滤 波器365的第一输出可以作为解码器300的输出以用于输出输出图像。
[0068] 本发明的一个或多个实施方式涉及在图像级上对视频编码进行精确的速率控制。 当然,本发明不局限于图像级速率控制,本发明的教导可以扩展至与视频编码相关的其他 级而不脱离本发明的原理。并且,可以理解,当速率控制方法在图像级获得比特率精度时, 该速率控制方法可以在更长的时间间隔内更容易地获得比特率精度。
[0069] 本发明的实施方式可以改善视频编码器的速率控制精度。如上所述,速率控制算 法通常依赖于量化步长参数的调节以控制比特率精度。但是,根据本发明的一个或多个实 施方式,取整偏差被用于改善比特率控制精度。
[0070] 即,本发明的一个或多个实施方式有利地将另一元即取整偏差引入到视频编码器 采用的速率控制方法中,并对于每个图像获得了非常精确的速率控制,并且在图像内具有 相同质量。当根据本发明实施方式的速率控制方法用于其他应用,其中以比图像更长的时 间间隔测量比特率精度,则这种速率控制方法很容易在较长时间间隔内获得精确的速率控 制。
[0071] 因此,根据本发明的一个或多个实施方式,发明人提出包括另外的量化参数即取 整偏差s以改善图像级的速率控制精度。量化步长和取整偏差都影响编码器使用的比特数 R。这可以用下述公式从数学角度来表述:
[0072] R(q,s)=f(q,s) (4)
[0073] 其中函数f(.)表示量化步长和取整偏差是如何影响比特数的。该函数的一个实例 为:
[0074] ln(R(q,s)) =ks X s+kqXq+c (5)
[0075] 其中ks、kq和c是常数。
[0076] 图4至图7说明了本发明的几个实施方式,其中在速率控制方法中除了包括量化步 长外还包括取整偏差。取决于比特数分配的方式,本发明的实施方式可以用于任何可变比 特率(VBR)或恒定比特率(CBR)应用。本发明的实施方式还可以是多通路编码器的一部分并 为其他通路提供?目息。
[0077] 实施方式1
[0078]请参看图4,附图标记400表示多通路视频编码器的速率控制方法,其中所述方法 包括非常数取整偏差。所述方法包括第一通路466和一个或多个后续通路(共同由附图标记 477表示)。
[0079]方法400包括开始框405,其将控制传递至功能框410。功能框410进行和/或包括编 码设置,并将控制传递至功能框415。功能框415将变量η初始化设置为1,并将控制传递至功 能框420。功能框420为通路1初始化速率控制模型参数,并将控制传递至循环限制框425。循 环限制框425利用变量i(其中i = l,···,图像号(#))对当前处理的视频序列的每个图像执行 循环并将控制传递至功能框430。功能框430计算用于图像i的量化步长 qi>1(假设取整偏差 为8!),并将控制传递至功能框435。功能框435以量化步长qi,i和初始取整偏差幻 4编码图像 i,并将控制传递至循环限制框440。循环限制框440结束第一循环,并将控制传递至功能框 445 〇
[0080] 功能框445将变量η增加1(即n = n+l),并将控制传递至循环限制框450。
[0081]循环限制框450利用变量i(其中i = l,···,图像号(#))对当前处理的视频序列的每 个图像执行第η次循环并将控制传递至功能框455。功能框455(可选地利用来自前面通路 (一个或多个)的信息)计算用于图像i的取整偏差{su},并将控制传递至功能框460。功能 框460以量化步长 qi>1和取整偏差sn>1编码图像i,并将控制传递至循环限制框465。循环限制 框465结束第η次循环,并将控制传递至功能框470。功能框470 (例如基于来自前一通路的信 息)更新用于通路η的速率控制模型参数并将控制传递至判定框475。
[0082]判定框475(例如基于一个或多个阈值)判断比特率是否精确或者通路η的数量是 否达到通路的最大数量。如果是,则控制传递至结束框499。否则,控制返回至功能框445。 [0083]因此,在方法400中,第一通路466以用于图像的量化步长如编码全部宏块。可以使 用现有速率控制算法以满足目标比特率,所述算法包括但不局限于ΤΜ5、ΤΜ8和Ρ域速率控制 算法等。在第一通路中,设置η = 1。使用初始取整偏差S1,并将ks>1设置为缺省值,例如ks>1 = 1,因为此阶段还没有关于ks>1的在先信息。因为qi只有有限选择,第一通路中获得的比特数 R1将大约等于目标比特数Rt,但是通常接近程度并不能满足应用要求。在第一通路中有些 参数是预先设定的并且可能不精确。在后续通路中,可以利用R(q,s)模型调节取整偏差以 提高精度。
[0084] 在每个通路之后,将变量η增加1 ( 即n = n+1)。在第η个通路过程中,为了缩小Rt域 Rh之间的差距,例如可以利用公式(5)所示函数来计算新取整偏差:
[0085]
(())
[0086]量化步长^和取整偏差sn用于采用结果比特数Rn编码的第η个通路。在编码所有图 像之后,利用来自在先通路的信息如下更新ks:
[0087]

[0088] 当在一个通路中编码多个图像时,来自某些或全部图像的信息可以被用来将匕更 新为_
}之间的线性回归。
[0089] 可以一直进行计算新取整偏差并更新1^以改善比特率精度的过程,直至满足特定 比特率精度或者达到最大通路数。
[0090] 方法400相对于图1所示现有技术的速率控制方法100的优点是,图像中的全部宏 块以相同的量化步长和取整偏差编码,因此全部宏块的质量是一致的。
[0091] 实施方式2
[0092]请参看图5,附图标记500表示多通路视频编码器的另一速率控制方法,其中所述 方法包括非常数取整偏差。所述方法500包括第一通路566第二通路577。
[0093]方法500包括开始框505,其将控制传递至功能框510。功能框510进行和/或包括编 码设置,并将控制传递至功能框515。功能框515为通路1初始化速率控制模型参数,并将控 制传递至循环限制框520。循环限制框520利用变量i(其中i = l,···,图像号(#))对当前处理 的视频序列的每个图像执行循环并将控制传递至功能框525。功能框525计算用于图像i的 量化步长qi,i(假设取整偏差为si),并将控制传递至功能框530。功能框530以量化步长 qi,i 和初始取整偏差s1;1编码图像i,并将控制传递至循环限制框535。循环限制框535结束第一 循环,并将控制传递至功能框540。
[0094]功能框540初始化用于通路2的速率控制模型参数,并将控制传递至循环限制框 545。循环限制框545利用变量i(其中i = l,···,图像号(#))对当前处理的视频序列的每个图 像执行第二循环并将控制传递至功能框550。功能框550(可选地利用来自前一通路的信息) 计算用于图像i的取整偏差{s 2>1},并将控制传递至功能框555。功能框555以量化步长qi,dP 取整偏差s2,i编码图像i,并将控制传递至功能框560。功能框560(例如基于来自第一通路的 信息和第二通路中先前编码的图像)更新用于通路2的速率控制模型参数并将控制传递至 循环限制框565。循环限制框565结束第二循环并将控制传递至结束框599。
[0095] 可以理解,方法500是方法400的变型。
[0096]在此实施方式中,利用第一通路566的信息和第二通路577的先前编码的图像更新 第二通路中的控制模型参数(功能框560)。在此实施方式中,可以利用来自第一通路566的 信息和第二通路577中的全部先前编码的图像来更新用于当前图像的参数。在另外一个实 施方式中,可以利用来自第一通路566的信息和第二通路577中的η个先前编码的图像来更 新用于当前图像的参数。
[0097]方法500相对于图4所示方法400的一个优点是,该速率控制模型参数在第二通路 577内更新。通过完全除去第三和/或另外的通路而加速处理过程。
[0098] 实施方式3
[0099]请参看图6,附图标记600表示单通路视频编码器的速率控制方法,其中所述方法 包括非常数取整偏差。所述单通路由附图标记666表示。
[0100]方法600包括开始框605,其将控制传递至功能框610。功能框610进行和/或包括编 码设置,并将控制传递至功能框620。功能框620初始化速率控制模型参数,并将控制传递至 循环限制框625。循环限制框625利用变量i(其中i = l,···,图像号(#))对当前处理的视频序 列的每个图像执行循环并将控制传递至功能框630。功能框630计算用于图像i的量化步长 q1;i和取整偏差s1;i并将控制传递至功能框635。功能框635以量化步长qi,i和取整偏差 S1,i编 码图像i,并将控制传递至功能框637。功能框637更新速率控制模型参数并将控制传递至循 环限制框640。循环限制框640结束循环,并将控制传递至结束框699。
[0101] 可以理解,方法600是方法500的变型。在方法600中,该速率控制模型参数在第一 通路(框637)内更新。通过只编码图像一次而加速处理过程。
[0102] 实施方式4
[0103]请参看图7,附图标记700表示代码转换器中的速率控制方法。
[0104]方法700包括开始框705,其将控制传递至功能框710。功能框710进行和/或包括编 码设置,并将控制传递至功能框715。功能框715读取并解析比特流,并将控制传递至循环限 制框720。循环限制框720利用变量i(其中i = l,···,图像号(#))对比特流中的每个图像执行 循环并将控制传递至功能框725。功能框725计算用于图像i的量化步长 qi和取整偏差Sl并将 控制传递至功能框730。功能框730以量化步长qi和取整偏差 Si编码图像i,并将控制传递至 循环限制框735。循环限制框735结束循环,并将控制传递至结束框799。
[0105] 可以理解,功能框710可以包括在代码转换之后设置目标比特率和其他任何编码 参数集。还可以理解,功能框715解析来自输入用于代码转换的比特流的信息。需要解析的 信息非限制性地包括用于每个图像的比特数以及比特流中图像中的宏块的量化参数、运动 矢量等。可以理解,需要解析的信息还可以包括取整偏差信息,如下所述。基于来自比特流 的解析信息以及代码转换要求,功能框725计算用于图像的量化步长q和取整偏差s。
[0106] 当(由功能框715)解析信息时,由于量化步长插入在比特流中,因此很容易获取。 为了获得取整偏差,可以基于比特流估计取整偏差。另外一种方式是将取整偏差信息插入 到比特流中以能够更容易的提取参数。根据本发明的教导,本领域普通技术人员在本发明 的范围内可以显而易见地确定其他变型和实现方式。
[0107] 请参看图8,附图标记800表示用于解码图像数据的方法。
[0108] 方法800包括开始框810,其将控制传递至功能框820。功能框820读取并解析比特 流,并将控制传递至循环限制框830。循环限制框830利用变量i(其中i = l,···,比特流中图 像号(#))在比特流中的每个图像开始循环并将控制传递至功能框840。功能框840计算用于 图像i的量化步长啦并将控制传递至功能框850。功能框850以量化步长啦重建图像i,并将控 制传递至循环限制框860。循环限制框860结束循环,并将控制传递至结束框899。
[0109] 请参看图9,附图标记900表示用于解码图像数据的另一方法。
[0110] 方法900包括开始框910,其将控制传递至功能框920。功能框920读取并解析比特 流,并将控制传递至循环限制框930。循环限制框930利用变量i(其中i = l,···,比特流中图 像号(#))在比特流中的每个图像开始循环并将控制传递至功能框940。功能框940计算用于 图像i的量化步长qi和取整偏差si并将控制传递至功能框950。功能框950以量化步长 qi和取 整偏差^重建图像i,并将控制传递至循环限制框960。循环限制框960结束循环,并将控制 传递至结束框999。 下面将说明本发明的一些其他优点/特征,其中某些可能在前面已经提及。例如, 一个优点/特征是具有用于利用速率控制编码图像数据的视频编码器。所述速率控制包括 估计量化步长和调节取整偏差。所述取整偏差在编码过程中可以为非常数。
[0112] 另外一个优点/特征是具有如上所述视频编码器的装置,其中速率控制作用于恒 定比特率应用、可变比特率应用和代码转换应用其中至少之一。
[0113] 另外一个优点/特征是具有如上所述视频编码器的装置,其中用于速率控制的速 率控制参数基于P域速率模型、TM5速率模型和TMN8速率模型。
[0114] 并且,另外一个优点/特征是具有如上所述视频编码器的装置,其中视频编码器将 图像数据编码在根据国际标准化组织/国际电工委员会运动图像专家组MPEG-4第十部分高 级视频编码标准/国际电信联盟远程通信标准化组的H.264推荐标准"产生的比特流中。
[0115] 另外,另外一个优点/特征是具有如上所述视频编码器的装置,其中所述视频编码 器是多通路视频编码器,并且基于来自先前编码通路和当前通路的先前编码的图像至少之 一的信息更新用于速率控制的速率控制模型参数。
[0116]另外,另外一个优点/特征是具有如上所述视频编码器的装置,其中基于来自先前 编码的图像更新用于速率控制的速率控制模型参数。
[0117] 另外,另外一个优点/特征是具有如上所述视频编码器的装置,其中所述视频编码 器将视频数据编码在产生的比特流中,并在产生的比特流中插入取整偏差和取整偏差信息 至少之一。
[0118] 基于这里的教导,相关技术领域的技术人员可以容易地获知本发明的这些和其他 特征及优点。可以理解的是,本发明的教导可以以各种形式的硬件、软件、固件、专用处理器 或其组合来实现。
[0119]最为优选地,本发明的教导以硬件和软件的组合来实现。此外,软件优选地以有形 地体现在程序存储单元上的应用程序来实现。该应用程序可以上载到包括任意适合架构的 机器,并由该机器执行。优选地,该机器在具有例如一个或更多个中央处理单元("CPU")、随 机存取存储器("RAM")、以及输入/输出("I/O")接口的硬件的计算机平台上实现。该计算机 平台还包括操作系统和微指令代码。这里描述的各个过程和功能可以是微指令代码的一部 分,或是应用程序的一部分,或是其任何组合,其可以由CPU来执行。另外,可以把各种其他 外围单元与计算机平台相连,例如附加的数据存储单元和打印单元。
[0120]还可以理解的是,由于附图中描述的某些构成系统的组件和方法优选地以软件来 实现,所以系统组件或过程功能块之间的实际连接可能取决于本发明的实践方式而有所不 同。在这里给出的教导的前提下,相关技术领域的技术人员将能够设想本发明的这些和类 似的实现或配置。
[0121]尽管已经参考附图描述了示意性实施例,然而可以理解,本发明不限于这些特定 的实施例,在不背离本发明的范围或精神的前提下,相关技术领域中的技术人员可以实现 各种改变和修改。所有这些改变和修改都将被看作落入所附权利要求限定的本发明的范围 内。
【主权项】
1. 一种装置,包括: 用于利用速率控制编码图像数据的视频编码器(200), 其中,所述速率控制包括迭代计算,在所述迭代计算中量化步长保持不变并且调节取 整偏差,其中所述取整偏差在编码过程中能够为非常数,并且在图像间基于来自先前编码 的图像的信息而更新所述取整偏差。2. 根据权利要求1所述的装置,其中所述速率控制应用于恒定比特率应用、可变比特率 应用和代码转换应用其中至少之一。3. 根据权利要求1所述的装置,其中用于速率控制的速率控制参数基于P域速率模型、 TM5速率模型和TMN8速率模型其中至少之一。4. 根据权利要求1所述的装置,其中视频编码器(200)将图像数据编码在根据国际标准 化组织/国际电工委员会运动图像专家组MPEG-4第十部分高级视频编码标准/国际电信联 盟远程通信标准化组的H. 264推荐标准的产生的比特流中。5. 根据权利要求1所述的装置,其中所述视频编码器(200)是多通路视频编码器,并且 基于来自先前编码通路和当前通路的先前编码的图像至少之一的信息更新用于速率控制 的速率控制模型参数。6. 根据权利要求1所述的装置,其中基于来自先前编码的图像的信息更新用于速率控 制的速率控制模型参数。7. 根据权利要求1所述的装置,其中所述视频编码器(200)将图像数据编码在产生的比 特流中,并在产生的比特流中插入取整偏差和取整偏差信息其中至少之一。8. 一种方法,包括: 利用速率控制编码图像数据,其中速率控制包括迭代计算,在所述迭代计算中量化步 长保持不变并调节取整偏差,其中所述取整偏差在编码过程(455,550,630)中能够为非常 数,并且在图像间基于来自先前编码的图像的信息而更新所述取整偏差。9. 根据权利要求8所述的方法,其中所述速率控制应用于恒定比特率应用、可变比特率 应用和代码转换应用其中至少之一。10. 根据权利要求8所述的方法,其中用于速率控制的速率控制参数基于P域速率模型、 TM5速率模型和TMN8速率模型其中至少之一。11. 根据权利要求8所述的方法,其中所述编码步骤将图像数据编码在根据国际标准化 组织/国际电工委员会运动图像专家组MPEG-4第十部分高级视频编码标准/国际电信联盟 远程通信标准化组的H. 264推荐标准的产生的比特流中。12. 根据权利要求8所述的方法,其中在多通路视频编码器中进行所述编码步骤,并且 基于来自先前编码通路和当前通路的先前编码的图像至少之一的信息更新用于速率控制 的速率控制模型参数(400,470)。13. 根据权利要求8所述的方法,其中基于来自先前编码的图像的信息更新用于速率控 制的速率控制模型参数(500,560,600,637)。14. 根据权利要求8所述的方法,其中所述视频编码步骤将图像数据编码在产生的比特 流中,并在产生的比特流中插入取整偏差和取整偏差信息其中至少之一。15. -种装置,包括: 用于利用速率控制解码比特流中的图像数据的视频解码器(300),其中所述速率控制 包括迭代计算,在所述迭代计算中量化步长保持不变并且取整偏差,所述取整偏差在解码 过程中能够为非常数,在图像间基于来自先前解码的图像的信息而更新所述取整偏差,并 且所述取整偏差是从所述比特流中提取的、或者是基于所述比特流中的信息或者与所述比 特流相关的信息至少其中之一估计的。16. 根据权利要求15所述的装置,其中所述速率控制应用于恒定比特率应用、可变比特 率应用和代码转换应用其中至少之一。17. 根据权利要求15所述的装置,其中用于速率控制的速率控制参数基于P域速率模 型、TM5速率模型和TMN8速率模型其中至少之一。18. 根据权利要求15所述的装置,其中所述比特流根据国际标准化组织/国际电工委员 会运动图像专家组MPEG-4第十部分高级视频编码标准/国际电信联盟远程通信标准化组的 H. 264推荐标准。19. 一种方法,包括: 利用速率控制解码比特流中的图像数据,其中所述速率控制包括迭代计算,在所述迭 代计算中量化步长保持不变并且调节取整偏差,所述取整偏差在解码过程中能够为非常 数,在图像间基于来自先前解码的图像的信息而更新所述取整偏差,并且所述取整偏差是 从所述比特流中提取的、或者是基于所述比特流中的信息或者与所述比特流相关的信息至 少其中之一估计的。20. 根据权利要求19所述的方法,其中所述速率控制应用于恒定比特率应用、可变比特 率应用和代码转换应用其中至少之一。21. 根据权利要求19所述的方法,其中用于速率控制的速率控制参数基于P域速率模 型、TM5速率模型和TMN8速率模型其中至少之一。22. 根据权利要求19所述的方法,其中所述比特流根据国际标准化组织/国际电工委员 会运动图像专家组MPEG-4第十部分高级视频编码标准/国际电信联盟远程通信标准化组的 H. 264推荐标准。
【文档编号】H04N19/61GK105898312SQ201610282513
【公开日】2016年8月24日
【申请日】2008年9月15日
【发明人】刘亚莉, 吕小安, 克里斯蒂娜·戈米拉, 许茜
【申请人】汤姆逊许可公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1