解码具有多个图像块的画面的视频数据的视频解码器转让专利

申请号 : CN200910174759.0

文献号 : CN101668213B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吉尔·M·博伊斯

申请人 : 汤姆森特许公司

摘要 :

公开了一种视频解码器(300)、编码器(500)、以及相应方法,用来处理图像块的视频信号数据以及预测该图像块的特定基准画面索引,其利用基准画面的自适应加权以改进视频压缩,其中解码器(300)包含基准画面加权因子单元(380),该单元用来确定相应于该特定基准画面索引的加权因子;编码器(500)包含基准画面加权因子分配器(572),该分配器用来分配相应于该特定基准画面索引的加权因子;解码方法包含:接收相应于图像块的数据的基准画面索引,确定对于每一个接收的基准画面索引的加权因子,检索每一个索引的基准画面,运动补偿所检索的基准画面,以及用相应的加权因子乘以经过运动补偿的基准画面以形成经过加权与运动补偿的基准画面。

权利要求 :

1.一种视频解码器(300),用来解码具有多个图像块的画面的视频数据,该视频数据包括该多个图像块中的图像块的编码数据,并且包括特定基准画面索引,该视频解码器包括:基准画面存储器(350),用于存储相应于特定基准画面索引的基准画面;

运动补偿器(360),与该基准画面存储器进行通信,并且具有用于提供来自基准画面的运动补偿的块的输出;

基准画面加权因子单元(380),用于接收特定基准画面索引,并且具有用来提供相应于该特定基准画面索引的加权因子的输出;以及乘法器(370),用于接收由所述运动补偿器提供的运动补偿的块,并且用于接收由所述基准画面加权因子单元提供的加权因子,该乘法器能够将加权因子施加于运动补偿的块以产生加权的运动补偿的块,并且具有用于提供加权的运动补偿的块的输出,其中特定基准画面索引确定基准画面和加权因子两者。

2.如权利要求1所述的视频解码器(300),其中基准画面加权因子单元(380)具有用来提供相应于该特定基准画面索引的偏移的第二输出。

3.如权利要求1所述的视频解码器(300),还包含与基准画面加权因子单元(380)通信的变长解码器(310),用来向基准画面加权因子单元提供特定基准画面索引。

4.如权利要求2所述的视频解码器(300),还包含用于接收由所述乘法器提供的加权的运动补偿的块并且用于接收由所述基准画面加权因子单元(380)提供的偏移的加法器(390),该加法器能够将该偏移施加于加权的运动补偿的块。

5.如权利要求1所述的视频解码器(300),其中所述视频数据为包含块变换系数的流视频数据。

6.如权利要求1所述的视频解码器(300),可用于双向预测画面预测算子,该解码器还包含:用来从两个不同的基准画面形成第一与第二预测算子的预测部件;以及用来使用第一与第二预测算子的相应的加权因子一起平均第一与第二预测算子以形成单一的平均预测算子的平均部件。

7.如权利要求6所述的视频解码器(300),其中所述两个不同的基准画面都来自相对于图像块的同一方向。

说明书 :

解码具有多个图像块的画面的视频数据的视频解码 器

[0001] 本申请是申请日为2003年7月14日、申请号为03817031.0、发明名称为“视频解码中基准画面的自适应加权”的发明专利申请的分案申请。
[0002] 本申请要求于2002年7月15日提交的、名为“视频编解码器中基准画面的自适应加权”的美国临时专利申请序列号60/395,843(代理人案卷号PU020340)的优先权,其全文融入此文作为参考。另外,本申请要求同样于2002年7月15日提交的、名为“加权预测运动估计”的美国临时专利申请序列号60/395,874(代理人案卷号PU020339)的优先权,同样其全文融入此文作为参考。
[0003] 技术领域
[0004] 本发明针对视频解码器,更具体地讲,针对在视频解码器中使用基准画面的自适应加权。
[0005] 背景技术
[0006] 视频数据一般以比特流的形式处理与传送。典型的视频压缩编码器与解码器(“CODEC”、编解码器)通过对待编码画面进行基准画面预测并且编码当前画面与预测之间的差异,获得了它们的压缩效率的很大一部分。预测与当前画面愈紧密相关,压缩该画面就需要愈少的比特,从而增加了该处理的效率。由此,希望形成尽可能最佳的基准画面预测。 [0007] 在许多视频压缩标准中,包括运动图像专家组(“MPEG”)-1、MPEG-2、以及MPEG-4,将先前基准画面经过运动补偿的版本用作当前画面的预测,并且只编码当前画面与预测之间的差异。当使用单一画面预测(“P”画面)时,在形成经过运动补偿的预测时不缩放(scale)基准画面。当使用双向画面预测(“B”画面)时,从两个不同的画面形成中间预测,然后使用对每个都相等的加权因子(1/2、1/2)将两个中间预测一起平均,以形成单一的平均预测。在这些MPEG标准中,两个基准画面总是一个来自B画面的前向方向,一个 来自后向方向。

发明内容

[0008] 现有技术的这些以及其他缺点与不足由视频解码器中用于自适应加权基准画面的系统与方法来解决。
[0009] 公开了一种视频解码器以及相应方法,用来处理图像块的视频信号数据以及预测该图像块的特定基准画面索引,其利用基准画面的自适应加权以改进视频压缩。解码器包含基准画面加权因子单元,该单元用来确定相应于特定基准画面索引的加权因子。 [0010] 用来解码视频的相应方法包含:接收相应于图像块的数据的基准画面索引,确定对于每一个接收的基准画面索引的加权因子,检索每一个索引的基准画面,运动补偿所检索的基准画面,以及用相应的加权因子乘以经过运动补偿的基准画面以形成经过加权与运动补偿的基准画面。
[0011] 本发明的这些以及其他方面、特征与优点将从以下参照附图对示范性实施方式的描述中看出。

附图说明

[0012] 在以下示范性图示中显示了根据本发明原理的视频编码器与解码器中对基准画面的自适应加权,其中:
[0013] 图1显示标准视频解码器的方框图;
[0014] 图2显示具有自适应双向预测的视频解码器的方框图;
[0015] 图3显示根据本发明原理的、具有基准画面加权的视频解码器的方框图; [0016] 图4显示标准视频编码器的方框图;
[0017] 图5显示根据本发明原理的、具有基准画面加权的视频编码器的方框图; [0018] 图6显示根据本发明原理的解码过程的流程图;
[0019] 图7显示根据本发明原理的编码过程的流程图。

具体实施方式

[0020] 本发明提供了一种装置与方法,用于运动向量估计与自适应基准画面加权因子分配。在某些视频序列中,尤其在那些具有淡变(fading)的视频序列中,待编码的当前画面或者图像块与通过加权因子缩放的基准画面比与基准 画面自身相关更强。没有向基准画面施加加权因子的视频编解码器对淡变序列的编码非常低效。当在编码中使用加权因子时,视频编码器需要确定加权因子与运动向量两者,但是对于两者中一个的最佳选择取决于另一个,其中运动估计一般为数字视频压缩编码器中计算量最大的部分。 [0021] 在人们提出的联合视频组(“JVT(Joint Video Team)”)视频压缩标准中,每个P画面可以使用多个基准画面来形成画面的预测,但是每个个别的运动块或者宏块的8x8区域只使用单一的基准画面进行预测。除编码并传送运动向量之外,对于每个运动块或者8x8区域还传送基准画面索引,以指示使用哪个基准画面。在编码器与解码器两者处存储可能基准画面的有限集合,并且传送许可基准画面的数目。
[0022] 在JVT标准中,对于双向预测画面(也称为“B”画面),对于每个运动块或者8x8区域形成两个预测算子(predictor),其中每个都可以从分离的基准画面形成,并且这两个预测算子一起平均以形成单一平均预测算子。对于双向预测的已编码运动块,基准画面可以都来自前向方向、都来自后向方向、或者一个来自前向一个来自后向方向。对于可以用于预测的可用基准画面,维护两个列表。这两个基准画面称为列表0与列表1预测算子。分别编码并传送每个基准画面的对于列表0与列表1基准画面的索引,即,red_idx_I0与red_idx_I1。联合视频组(“JVT”)双向预测或者“B”画面允许两个预测之间的自适应加权,即,
[0023] Pred=[(P0)(Pred0)]+[(P1)(Pred1)]+D,
[0024] 其中P0与P1为加权因子,Pred0与Pred1分别为列表0与列表1的基准画面预测,D为偏移。
[0025] 为指示加权因子,已经提出了两种方法。在第一种方法中,通过用于基准画面的方向,确定加权因子。在这种方法中,如果red_idx_I0索引小于或等于red_idx_I1,则使用加权因子(1/2,1/2),否则使用因子(2,-1)。
[0026] 在人们提出的第二种方法中,对于每个片段(slice),传送任意数目的加权因子。然后,对于使用双向预测的宏块的每个8x8区域或者运动块传送加权因子索引。解码器使用收到的加权因子索引来从所传送的集合中选择适当的加权因子,以在解码运动块或者
8x8区域时使用。例如,如果在该片段层发送三个加权因子,则它们分别相应于加权因子索引0、1、2。
[0027] 以下描述只说明了本发明的原理。因此应该理解:本领域技术人员能够 设想虽然此处没有明确描述或者显示、但是包含了本发明原理、并且包含在本发明精神与范围内的各种结构。另外,此处列举的所有的例子与条件性语言主要是用来只用于教学目的,以帮助读者理解本发明人对现有技术作出贡献的本发明的原理与构思,并且应该被理解为不限于具体地列举的这些例子与条件。另外,此处指出本发明原理、方面、以及实施方式的所有陈述及其特定例子都是用来覆盖其结构与功能等价物两者。另外,这些等价物意在包含当前已知的等价物以及将来开发的等价物,即,不管结构如何,执行同样功能的所开发的任何元件。
[0028] 由此,例如,本领域技术人员应该理解:此处的方框图表示实现本发明原理的说明性电路的概念图。类似地,应该理解:任何流程表、流程图、状态转换图、伪代码等等表示可能实际上在计算机可读介质中表示的、并且由计算机或者处理器执行的各种处理或进程,而不管是否明确显示了这样的计算机或者处理器。
[0029] 图中所示各种元件的功能可以通过使用专用硬件以及能够与适当软件相结合地执行软件的硬件提供。当由处理器提供时,这些功能可以由单一的专用处理器提供,或者由多个单独的处理器提供,其中某些处理器可以是共享的。另外,对于直接使用术语“处理器”或者“控制器”,不应该被理解为只指能够执行软件的硬件,而可能暗含地包含、但不限于:数字信号处理器(“DSP”)硬件、存储软件的只读存储器(“ROM”)、随机访问存储器(“RAM”)、以及非易失存储器。类似地,图中显示的任何开关都只是概念性的。其功能可以通过来程序逻辑的运行、通过专用逻辑电路、通过程序控制与专用逻辑电路的交互、甚或手动地执行,其中实现者可以根据具体情况选择具体的技术。
[0030] 在权利要求中,任何被表示为用于执行指定功能的部件的元件用来包含执行该功能的所有方式,包含(例如):a)执行该功能电路元件的组合,或者b)任何形式的软件,因此包含固件、微代码等等,其与执行该软件的适当电路结合以执行该功能。这样的权利要求所限定的发明包含在以下事实之中:以权利要求所要求的方式,组合和汇合由所指出的各种部件提供的功能。因此,申请人将可以提供那些功能的任何部件都认为是此处所示部件的等价物。
[0031] 如图1所示,标号100总体表示标准视频解码器。视频解码器100包含 与逆量化器120进行信号通信连接的变长解码器(“VLD”)110。逆量化器120与逆变换器130信号通信连接。逆变换器130与加法器或者求和点140的第一输入端信号通信连接,其中求和点140的输出提供视频解码器100的输出。求和点140的输出与基准画面存储器150信号通信连接。基准画面存储器150与运动补偿器160信号通信连接,运动补偿器160与求和点140的第二输入端信号通信连接。
[0032] 转到图2,标号200总体表示具有自适应双向预测的视频解码器。视频解码器200包含与逆量化器220信号通信连接的VLD 210。逆量化器220与逆变换器230信号通信连接。逆变换器230与求和点240的第一输入端信号通信连接,其中求和点240的输出提供视频解码器200的输出。求和点240的输出与基准画面存储器250信号通信连接。基准画面存储250器与运动补偿器260信号通信连接,运动补偿器260与乘法器270的第一输入端信号通信连接。
[0033] VLD 210还与基准画面加权因子查找表280信号通信连接,以向查找表280提供自适应双向(“ABP”)系数索引。查找表280的第一输出用来提供加权因子,并且与乘法器270的第二输入端信号通信连接。乘法器270的输出端与求和点290的第一输入端信号通信连接。查找表280的第二输出端用来提供偏移,并且与求和点290的第二输入端信号通信连接。求和点290的输出端与求和点240的第二输入端信号通信连接。 [0034] 现在转到图3,标号300总体表示具有基准画面加权的视频解码器。视频解码器
300包含与逆量化器320信号通信连接的VLD 310。逆量化器330与逆变换器330信号通信连接。逆变换器330与求和点340的第一输入端信号通信连接,其中求和点340的输出提供视频解码器300的输出。求和点340的输出与基准画面存储器350信号通信连接。基准画面存储器350与运动补偿器360信号通信连接,运动补偿器360与乘法器370的第一输入端信号通信连接。
[0035] 另外,VLD 310还与基准画面加权因子查找表380信号通信连接,以向查找表380提供基准画面索引。查找表380的第一输出端用来提供加权因子,并且与乘法器370的第二输入端信号通信连接。乘法器370的输出端与求和点390的第一输入端信号通信连接。查找表380的第二输出端用来提供偏移,并且与求和点390的第二输入端信号通信连接。求和点390的输出端与求和 点340的第二输入端信号通信连接。
[0036] 如图4所示,标号400总体表示标准视频编码器。编码器400的输入端与求和点410的正相输入端信号通信连接。求和点410的输出端与块变换器420信号通信连接。变换器420与量化器430信号通信连接。量化器430的输出与变长编码器(“VLC”)440信号通信连接,其中VLC 440的输出为编码器400的外部可获得输出。
[0037] 量化器430的输出还与逆量化器450信号通信连接。逆量化器450与逆块变换器460信号通信连接,逆块变换器460进而与基准画面存储器470信号通信连接。基准画面存储器470的第一输出端与运动估计器480的第一输入端信号通信连接。编码器400的输入还与运动估计器480的第二输入端信号通信连接。运动估计器480的输出端与运动补偿器
490的第一输入端信号通信连接。基准画面存储器470的第二输出端与运动补偿器490的第二输入端信号通信连接。运动补偿器490的输出端与求和点410的反相输入端信号通信连接。
[0038] 转到图5,标号500总体表示具有基准画面加权的视频编码器。编码器500的输入与求和点510的正相输入端信号通信连接。求和点510的输出与块变换器520信号通信连接。变换器520与量化器530信号通信连接。量化器530的输出与VLC 540信号通信连接,其中VLC 540的输出为编码器500的外部可获得输出。
[0039] 量化器530的输出还与逆量化器550信号通信连接。逆量化器550与逆块变换器560信号通信连接,逆块变换器560进而与基准画面存储器570信号通信连接。基准画面存储器570的第一输出端与基准画面加权因子分配器572的第一输入端信号通信连接。编码器500的输入端还与基准画面加权因子分配器572的第二输入端信号通信连接。指示加权因子的基准画面加权因子分配器572的输出端与运动补偿器580的第一输入端信号通信连接。基准画面存储570的第二输出端与运动补偿器580的第二输入端信号通信连接。 [0040] 编码器500的输入端还与运动估计器580的第三输入端信号通信连接。指示运动向量的运动估计器580的输出端与运动补偿器590的第一输入端信号通信连接。基准画面存储器570的第三输出端与运动补偿器590的第二输入端信号通信连接。指示经过运动补偿的基准画面的运动补偿器590的输出端与乘法器592的第一输入端信号通信连接。指示加权因子的基准画面加权 因子分配器572的输出端与乘法器592的第二输入端信号通信连接。乘法器592的输出端与求和点510的反相输入端信号通信连接。
[0041] 现在转到图6,标号600总体表示解码图像块的视频信号数据的示范性过程。该过程包括开始块610,其将控制传递给输入块612。输入块612接收图像块压缩数据,并且将控制传递给输入块614。输入块614接收图像块数据的至少一个基准画面索引,其中每个基准画面索引相应于特定基准画面。输入块614将控制传递给功能块616,功能块616确定相应于每个所接收的基准画面索引的加权因子,并且将控制传递给可选功能块617。可选功能块617确定相应于每个所接收的基准画面索引的偏移,并且将控制传递给功能块618。功能块618检索相应于每个所接收的基准画面索引的基准画面,并且将控制传递给功能块
620。功能块620进而对所检索的基准画面进行运动补偿,并且将控制传递给功能块622。
功能块622将经过运动补偿的基准画面乘以相应的加权因子,并且将控制传递给可选功能块623。可选功能块623将经过运动补偿的基准画面加上相应的偏移,并且将控制传递给功能块624。功能块624进而形成经过加权与运动补偿的基准画面,并且将控制传递给结束块
626。
[0042] 现在转到图7,标号700总体表示编码图像块的视频信号数据的示范性过程。该过程包括开始块710,其将控制传递给输入块712。输入块712接收基本未压缩的图像块数据,并且将控制传递给功能块714。功能块714相应于具有相应索引的特定基准画面分配图像块的加权因子。功能块714将控制传递给可选功能块715。可选功能块715相应于具有相应索引的特定基准画面分配图像块的偏移。可选功能块715将控制传递给功能块716,功能块716相应于图像块与特定基准画面之间的差异计算运动向量,并且将控制传递给功能块718。功能块718相应于运动向量对特定基准画面进行运动补偿,并且将控制传递给功能块
720。功能块720进而将经过运动补偿的基准画面乘以所分配的加权因子,以形成经过加权与运动补偿的基准画面,并且将控制传递给可选功能块721。可选功能块721进而将经过运动补偿的基准画面加上所分配的偏移,以形成经过加权与运动补偿的基准画面,并且将控制传递给功能块722。功能块722从基本未压缩的图像块中减去经过加权与运动补偿的基准画面,并且将控制传递给功能块724。功能块724进而利用基本未压缩的图像块与经过加权与运动补偿的基准画面之间的差异以及特定基准画 面的相应索引编码信号,并且将控制传递给结束块726。
[0043] 在本示范性实施方式中,对于每个编码的画面或者片段,加权因子与可以相对其编码当前画面块的、每个允许的基准画面相关联。当编码或解码当前画面中每个块时,将相应于其基准画面索引的(多个)加权因子与(多个)偏移应用到基准预测以形成加权预测算子。相对同一基准画面编码的片段中的所有块都向基准画面预测施加相同的加权因子。 [0044] 当编码画面时是否使用自适应加权可以在画面参数集合或者序列参数集合、或者所述片段或者画面头部中指示。对于使用自适应加权的每个片段或者画面,可以为可能用来编码该片段或者画面的每个可允许的基准画面传送加权因子。可允许的基准画面的数目在所述片段的头部传送。例如,如果可以使用三个基准画面来编码当前片段,则传送多达三个加权因子,并且这些加权因子与具有相同索引的基准画面相关联。
[0045] 如果不传送加权因子,则使用缺省加权。在本发明的一种实施方式中,当不传送加权因子时使用缺省加权(1/2,1/2)。可以使用固定或者变长代码来传送加权因子。 [0046] 与典型系统不同,与每个片段、块或者画面传送的每个加权因子相应于特定基准画面索引。先前,与每个片段或者画面一起传送的任何集合的加权因子都不与任何特定基准画面相关联。相反,为每个运动块或者8x8区域传送自适应双向预测加权索引,以选择要对该特定运动块或者8x8区域施加来自所传送的集合中的哪些加权因子。 [0047] 在本实施方式中,不显式地传送每个运动块或者8x8区域的加权因子索引。相反,使用与所传送的基准画面索引相关联的加权因子。这极大地减少了所传送的比特流中为允许基准画面的自适应加权而具有的开销量。
[0048] 该系统与技术可以施加于使用单一预测算子编码的预测“P”画面,或者使用两个预测算子编码的双向预测“B”画面。以下针对P与B画面的情况描述在编码器与解码器中都存在的解码处理。可替换地,该技术也可以应用到使用类似于I、B、与P画面的概念的编码系统。
[0049] 对于B画面单一方向预测以及对于B画面中的双向预测,可以使用相同的加权因子。当对于P画面或者对于B画面单一方向预测中宏块使用单一预测算子时,为该块传送单一的基准画面索引。在运动补偿的解码处理步骤产生预测算子之后,向预测算子施加加权因子。然后将加权后的预测算子加到 编码余量(coded residual)上,对和进行剪切以形成解码的画面。对于用于P画面中的块或者用于只使用列表0预测的B画面中的块,加权预测算子形成为:
[0050] Pred=W0*Pred0+D0 (1)
[0051] 其中W0为与列表0基准画面相关联的加权因子,D0为与列表0基准画面相关联的偏移,Pred0为来自列表0基准画面的经过运动补偿的预测块。
[0052] 对于用于只使用列表0预测的B画面中的块,加权预测算子形成为: [0053] Pred=W1*Pred1+D1 (2)
[0054] 其中W1为与列表1基准画面相关联的加权因子,D1为与列表1基准画面相关联的偏移,Pred1为来自列表1基准画面的经过运动补偿的预测块。
[0055] 可以剪切加权后的预测算子以保证结果值在像素值许可范围之内,一般为0至255。加权公式中乘法的精度可以限于任何预定数目比特的分辨率。
[0056] 在双向预测情况下,对于两个预测算子的每一个传送基准画面索引。进行运动补偿以形成两个预测算子。每个预测算子使用与其基准画面索引相关联的加权因子,以形成两个加权后的预测算子。然后,一起平均这两个加权后的预测算子以形成平均预测算子,然后将该平均预测算子加到编码余量。
[0057] 对于用于使用列表0与列表1预测的B画面中的块,加权预测算子形成为: [0058] Pred=(P0*Pred0+D0+P1*Pred1+D1)/2 (3) [0059] 在计算加权预测算子时,可以对加权后的预测算子或者任何中间值进行剪切,以保证结果值在像素值许可范围之内,一般为0至255。
[0060] 由此,向使用多个基准画面的视频压缩编码器与解码器的基准画面预测施加加权因子。根据用于运动块的基准画面索引,该加权因子对于该画面内的各个运动块改变。因为已经在压缩后的视频比特流中传送了基准画面索引,所以大大减少了根据运动块改变加权因子的附加开销。相对于相同基准画面编码的所有运动块都向基准画面预测施加相同的加权因子。
[0061] 根据此处的说明,本领域技术人员可以容易地理解本发明的这些以及其他特征与优点。应该理解:本发明的说明可以应用于各种形式的硬件、软件、固件、专用处理器、或者其组合。
[0062] 更优选地,本发明可以实现为硬件与软件的组合。另外,所述软件最好实现为以有形形式包含在程序存储单元上的应用程序。该应用程序可以上载 到包含任何适当体系结构的机器、并且由其执行。优选地,该机器在具有诸如一个或多个中央处理单元(“CPU”)、随机访问存储器(“RAM”)、以及输入/输出(“I/O”)接口等硬件的计算机平台上实现。该计算机平台还可以包含操作系统以及微指令代码。此处描述的各种处理与功能可以是微指令代码的一部分,或者是应用程序的一部分,或者其组合,其可以由来CPU执行。另外,可将各种其他外围单元连接到该计算机平台,例如附加数据存储单元以及打印单元。 [0063] 还应该理解:因为在附图中所示的某些构成系统组件与方法最好以软件实现,所以系统组件或者处理功能块之间的实际连接可能根据本发明的编程方式而不同。有了此处的说明,本领域普通技术人员能够设想本发明的这些以及类似的实现或者配置。 [0064] 虽然针对附图描述了示范性实施方式,但是应该理解:本发明不限于那些精确的实施方式,并且在不脱离本发明的范围与精神的前提下,本领域普通技术人员可以进行各种改变与修改。所有这些改变与修改都包含在所附权利要求给出的本发明的范围之内。