掌桥专利:专业的专利平台
掌桥专利
首页

视频编码和视频解码

文献发布时间:2023-06-19 12:07:15


视频编码和视频解码

技术领域

本公开涉及视频编码和视频解码。

背景技术

视频压缩提供减小传输信道上的有效负载的机会。已知的视频编码标准使得能够传输对视频进行定义的比特流数据,从而使得该比特流的接收机能够以构造基本上忠实于从其得出编码的比特流的原始视频的解码视频的方式对比特流进行解码。

着眼于在其中相对低的或中等质量是可接受的设备上再现视频而设计了早期视频编码标准。这包括手持式设备或个人计算设备。在很大程度上,与重放设备的能力相同多地通过用户需求来驱动特定级别的质量的可接受性。

由于接收机设备在质量和能力方面改善,对于原始视频的更高质量再现的用户需求也是如此。因此出现与迄今实施的技术相比,将在播放机上的视频的再现实现为更高质量的技术目标。

附图说明

图1是根据实施例的通信网络的示意表示;

图2是图1的通信网络的发射器的示意表示;

图3是图示出在图2的发射器上实施的编码器的图;

图4是在图3的编码器的预测模块执行的预测处理的流程图;

图5是图1的通信网络的接收机的示意表示;

图6是图示出在图4的接收机上实施的解码器的图;以及

图7是在图6的解码器的预测模块执行的预测处理的流程图。

具体实施方式

本公开的方面可以对应于所附权利要求的主题。

概括地说,在本文公开的特定实施例中,使用帧间预测和帧内预测的组合、对于块的三角形分区,来执行对合并预测块的解码。在接收到的比特流上用信号通知将被使用的帧间预测和帧内预测的组合。组合可以是算法,例如算数。

在本文公开的实施例涉及通过更高效地分区和开发冗余度来在视频编码器中执行预测的方法。如读者将理解的,视频呈现通常包括多个帧,用于重放设备上的顺序显示。各种策略用于减小在从发射器向接收机在通信信道上传送的比特流上依次描述每个帧所需要的数据量。如将理解的,发射器将包括用于将帧数据编码为比特流的编码器,并且接收机将包括用于基于在比特流中承载的信息来生成帧数据的解码器。

在本公开的实施例中,将视频呈现的每个帧分区到块中。在编码器,基于先前压缩的内容来预测块的内容。从实际的块中减去该块预测,结果得到一组残余差(残余)。在实施例中,能够使用至频率域的变换对残余数据进行编码。然而,如读者将认识的,数据从时间域到频率域的变换可以特定于特定实施方式,并且对所公开的实施例的执行不是必要的。

视频编码和解码的方式允许遵循所谓的“三角形”分区对块进行分区。这由沿着对角线将块分割为两个部分组成。能够使用合并预测来预测两个结果得到的三角形分区,其中不同的合并候选用于预测每个三角形分区。

可以采用合并预测来计算用于给定集合的样本的帧间预测,其中能够基于与另一个邻近块或邻近块分区有关的运动信息来预测分区的内容。

在特定情况下,帧间预测可能不会对于特定三角形分区提供良好预测。因此,在本文描述的实施例提供一种编码处理以及对应的解码处理,其中可以在三角形分区上采用诸如帧内预测之类的其他类型的预测,具有导致更准确的结果的前景。

在实施例中,计算两个预测,块中的每个三角形分区一个预测。每个预测分别被形成为(例如借助于合并预测所计算的)帧间预测与(借助于在比特流中推断出或者用信号通知的模式所计算的)帧内预测的组合。

在实施例中,使用帧间预测和帧内预测的组合来预测三角形分区中的一个或两者,其中,组合借助于加权平均而发生,其中在比特流中推断,或者用信号通知权重。

实施例可以收容其中与帧间预测相关联的权重是0并且与帧内预测相关联的权重是1的情况;在此类情况中,然后将使用帧内预测来完全地预测两个三角形分区中的一个或两者。

类似地,实施例可以收容其中与帧间预测相关联的权重是1并且与帧内预测相关联的权重是0的情况;在此类情况中,然后将使用帧间预测来完全地预测两个三角形分区之一。

作为背景,已经由通过MPEG和VCEG形成的JVET委托了在航向“VVC”之下建立视频压缩标准的工作。现在将描述当前在起草的VVC说明书中采用的三角预测的方式。

考虑40个可能的三角形候选的列表。该列表由如下的所有可能的组合组成:

一、5个可能的合并候选;

二.、2个不同的“分割”,对应于沿着两个对角线中的每个对角线对块进行分割。

在该过程中,每个三角形分区必须使用不同的合并候选。因此,总共5x5–5=20个可能的合并候选对是可用的。考虑可以沿着任一对角线分割块,这使三角形候选的总数量为40。

借助于平滑滤波器使两个三角预测之间的边缘平滑。

通过凭其在预定义的查找表中对总共40个候选进行排序的机制,信令发生。然后,在用信号通知的一种方式中,用信号通知比特来确定候选是否是列表中的前两个候选之一;如果是该情况,那么用信号通知附加的比特以识别候选是列表中的第一还是第二。如果候选不是列表中的前两个候选之一,然后使用进行数据压缩的另外的方式。一种选项是使用指数哥伦布编码的形式来用信号通知当前元素在查找表中的剩余的38要素当中的位置。

读者将理解,在本文公开的实施例不局限于它们对以上方式的应用——可以采用用于分区、用于组装三角形候选的列表、用于用信号通知,以及用于编码用于用信号通知的数据的不同的技术,并且不以任意一种实施方式强制执行本公开。

在本文公开的实施例利用帧内和帧间预测的组合以计算块的两个三角形分区中的每一个。然后以与常规VVC三角预测相同的方式处置结果得到的加权后的帧内和帧间预测,这意味着可以在形成块的两个三角形分区之间的边界的边缘将它们平滑。

如上面指出的,可以建立查找表,以使得编码器能够用信号通知,以及相应地对在由解码器接收到的比特流上用信号通知的信息的解释,以识别已经在编码中采用了哪些可能的三角形候选。

在一个实施例中,可以将迄今描述的查找表扩展为包括与执行帧内预测相对应的以预测三角形分区之一的附加的候选。例如,能够将8个附加的候选包括在可能的三角形组合的列表中,以引起使用帧内预测候选来预测两个三角形分区之一。索引能够用于识别帧内预测用于预测三角形分区之一,其中对于每个不同的帧内预测模式使用索引,其中这些索引不同于用于识别用于帧间预测的各种合并候选的现存的索引。

附加的8个候选可以对应于实例,来使用:

一、对一个三角形分区进行帧内预测的平面预测以及对另一个三角形分区进行帧间预测的合并候选0或合并候选1。总共4种可能的选项是可用的。考虑两个不同的“分割”,这使附加的候选的总数为8。

二、对一个三角形分区进行帧内预测的平面预测或DC预测以及对另一个三角形分区进行帧间预测的合并候选0。再次,总共4种可能的选项是可用的。考虑两个不同的“分割”,这使附加的候选的总数为8。

读者将理解,可以将除以上提出的8之外的另外的候选添加到列表以表示由利用帧内预测模式预测一个三角形分区以及利用帧间预测预测另一个三角形分区形成的不同选项。

在另一个实施例中,用于计算用于在帧内预测块中对帧内预测模式进行编码和解码的最可能模式(MPM)的列表的处理可以用于用信号通知将在每一个三角形分区中使用的帧内预测模式。例如,查找表中的每个要素可以指的是MPM列表中的特定位置,其指的是特定帧内预测模式。

在另一个实施例中,可以将查找表扩展为包括与执行帧内预测和帧间预测的组合相对应的以预测三角形分区之一的附加的候选。对于两个三角形分区之一或两者计算帧内预测和帧间预测。如果使用帧内预测和帧间预测的组合来预测仅仅一个三角形分区,则使用常规合并帧间预测或常规帧内预测来预测另一个三角形分区。帧内预测和帧间预测的组合可以例如借助于加权平均而发生。

例如,能够将8个附加的候选包括在可能的三角形组合的列表中。索引用于识别出帧内预测和帧间预测的组合是需要的,其中索引用于识别特定帧内预测模式的给定组合、给定权重,以及特定合并候选帧间预测,其中与用于识别用于常规帧间预测的合并候选的现存的索引相比,这些索引是不同的。附加的8个候选可以例如对应于使用平面预测与合并候选0组合来预测一个三角形分区以及与合并候选0组合来对另一个三角形分区进行帧间预测,其中两对权重用于执行帧间预测和帧内预测的组合,例如相等权重对(0.5、0.5),以及不对称权重对(0.75、0.25)。总共4种可能的选项是可用的。考虑两个不同的“分割”,这使附加候选的总数量为8。

可以将超过8个候选添加到列表以表示不同选项,包括:借助于帧内预测模式和帧间预测的组合来预测至少一个三角形分区;可以通过帧间预测来预测相同块的另一个三角形分区。

在另一个实施例中,在用于两个三角形分区中的每一个的比特流上用信号通知附加的标志,以用信号通知是否使用帧内预测和帧间预测的组合来代替常规帧间预测。可以用信号通知附加的信令以确定不同的帧内预测模式的使用。例如,如果实施计算用于帧内预测模式的信令的MPM的机制,那么信令可以指示应当部署MPM以确定要使用的适当的帧内预测模式。类似地,可以实施预定义列表的帧内预测模式,并且可以采用信令以确定应当如何从预定义列表中选择帧内预测模式。可以进一步用信号通知附加的信令以确定使用不同的权重来执行帧内预测和帧间预测的组合。

在本文描述的实施例采用固定集合的权重。权重在查找表中是可用的,其中可以对于具有诸如块尺寸之类的不同的特性的块或根据其他可用的信息对于块使用不同的权重。可以在适当地配置编码器和解码器之前提供查找表。替换地,作为编码的视频的传输的一部分,或者作为在先的配置传输,能够从编码器向解码器传送查找表。

然后从比特流中对从查找表中提取正确的元素的索引进行解码,使得当执行预测时,能够选择和使用正确集合的权重。

在另一个实施例中,并非传送对LUT条目的索引,能够直接地从比特流中提取权重或权重(多个)。

如在图1中所图示出的,图示出一种布置,包括示意视频通信网络10,其中发射器20和接收机30经由通信信道40进行通信。实际上,通信信道40可以包括卫星通信通道、电缆网、陆基无线电广播网络、诸如用于向国内和小企业驻地提供因特网服务的POTS实施的通信信道、纤维光学通信系统,或者以上和任意其他可以想象的通信介质的任意的组合。

此外,本公开也扩展到通过物理传递的存储介质的通信,在该存储介质上存储有编码的比特流的机器可读记录,用于传递到适当地配置的接收机,该接收机能够读取介质并且从其中获取比特流。这的示例是提供数字通用磁盘(DVD)或等同物。以下描述聚焦于诸如通过电子或电磁信号载波的信号传输,但是不应当被当作排除涉及存储介质的前述方式。

如图2中所示,发射器20在结构和功能方面是计算机。其可以与通用计算机装置共有特定特征,但是在给定将对于发射器20提出的专门功能时,一些特征可以是实施方式特定的。读者将理解哪些特征能够具有通用类型,以及那些可以是需要被具体地配置以用于视频发射器中。

发射器20因此包括图形处理单元202,该图形处理单元202在处理图形和类似的操作时被配置用于特定使用。发射器20也包括通用地提供的,或者针对诸如数学运算、音频处理、管理通信信道等等的其他目的被配置的一个或多个其他处理器204。

输入接口206提供用于接收用户输入动作的设施。这样的用户输入动作能够例如由与包括以下的特定输入单元的用户交互引起:一个或多个控制按钮和/或开关、键盘、鼠标或其他定点设备、被实现为接收并且将语音处理为控制命令的语音辨识单元、被配置为从诸如平板机或智能电话,或者遥控接收机等等的另一个设备接收和控制处理的信号处理器。该列表将被理解为非穷尽性的,并且读者能够设想用户发起的或者自动的其他形式的输入。

类似地,输出接口214可操作为提供用于向用户或者另一个设备输出信号的设施。这样的输出能够包括用于驱动本地视频显示单元(VDU)或者任意其他设备的显示信号。

通信接口208实施与信号的一个或多个收方的通信信道(广播或者端到端)。在本实施例的上下文中,通信接口被配置为引起承载对由发射器20编码的视频信号进行定义的比特流的信号的发射。

处理器204,并且具体地为了本公开的利益,GPU 202在编码器的操作中可操作为执行计算机程序。在进行此时,对由大容量存储设备208提供的数据存储设施进行求助,其被实施为虽然基于相对慢的存取提供大型数据存储,并且将实际上存储计算机程序,并且在当前上下文中存储呈现数据,以为编码处理的执行作准备。

利用被设计为提供发射器20的功能的核的可执行程序对只读存储器(ROM)210进行预先配置,并且在从事计算机程序的执行时为随机存取存储器(RAM)212提供数据和程序指令的快速存取和存储。

现在将参考图3来描述发射器20的功能。图3示出由在发射器20上实施的编码器在表示包括作为画面的序列用于顺序显示的多个帧的视频呈现的数据文件上借助于可执行指令执行的处理流水线。

数据文件还可以包括伴随视频呈现的音频重放信息,以及诸如电子节目指南信息、小标题,或者实现呈现的编目的元数据等等的另外的补充信息。对数据文件的这些方面的处理不与本公开有关。

参考图3,将画面的序列中的当前画面或者帧传递到分区模块230,在这里将其分区为给定尺寸的矩形块用于由编码器处理。该处理可以是顺序的或者并行的。方式可以取决于特定实施方式的处理能力。

然后将每个块输入到预测模块232,该预测模块232努力丢弃存在序列于中的时间和空间冗余并且使用先前编码的内容来获取预测信号。在比特流中对实现这样的预测的计算的信息进行编码。该信息应当包括实现计算的充足的信息,包括在接收机推断完成预测所必需的其他信息的可能性。

从原始信号中减去预测信号以获取残留信号。然后将这输入到变换模块234,该变换模块234尝试通过使用数据的更适当表示来进一步减小块内的空间冗余。读者将注意到,在一些实施例中,域变换可以是可选阶段并且可以被完全地免除。可以在比特流中用信号通知域变换的采用或不采用。

然后典型地由量化模块236对结果得到的信号进行量化,并且最后将由系数和计算用于当前块的预测所必需的信息所形成的结果得到的数据输入到熵编码模块238,该熵编码模块238利用统计冗余度借助于短二进制码来以简洁形式表示信号。再次,读者将注意到,在一些实施例中,熵编码可以是可选特征,并且在特定情况下可以完全免除。可以在比特流中将熵编码的采用与实现诸如对熵编码(例如,霍夫曼编码法)和/或代码簿的模式等等的解码的信息一起用信号通知。

通过发射器20的编码设施的重复动作,根据具体情况,能够对于到接收机或者多个接收机的传输构造块信息元素的比特流。比特流还可以承载信息元素,所述信息元素在多个块信息元素上应用并且因此与块信息元素无关地以比特流语法被保持。此类信息元素的示例包括配置选项、可适用于帧序列的参数,以及作为整体与视频呈现有关的参数。

现在将参考图4更加详尽地描述预测模块232。如将理解的,这是,但是能够预期在本公开和所附权利要求的范围内的示例,和其他方式。

对帧间预测的帧中的每个运动补偿块执行以下处理。

预测模块232被配置为对于从帧分区的给定块确定向块应用三角分区是否是有利的,并且,如果是这样的话,则生成用于块的三角形分区和分区信息以使得能够关于块已经如何经受三角分区以及然后如何对三角形分区进行解码的方式对解码器进行信号通知。预测模块那么应用所选择的三角分区的模式,如果可适用,并且然后基于然后能够生成哪些残余来确定预测,如先前提出的。在比特流中用信号通知所采用的预测,用于由适当配置的解码器来接收和解释。如果编码器确定向块应用三角形分区不是有利的,则可以采用包括常规帧间预测和/或常规帧内预测技术的常规预测方法来预测块的内容。编码器将在比特流上借助于标志用信号通知是否已经采用了三角形分区。

因此转向在图4中图示出的编码器侧算法,在步骤S102中,对于讨论中的一组块聚集候选三角形分区。使用合并候选和对角线分割的可能的组合来对候选进行聚集,如先前所描述的。这将包括从两个对角线分割上的各种合并预测选择获取的40个候选,加扩展到涉及如上所述的帧内预测的候选。因此,这使得能够可能选择涉及帧间预测和帧内预测的组合的候选,如先前讨论的。作为另一个示例,LUT可以包括从两个对角线分割上的5个MPM帧内预测模式中选择获取的40个候选。这使得能够可能选择涉及对每个三角形分区执行帧内预测的候选,如先前讨论的。

然后循环开始于步骤S104,具有对每个候选三角形分区执行的操作。在步骤S106中,对于每个三角形分区候选,使用与该候选相关联的模式来确定预测。在步骤S108中,对于该预测确定质量度量,包括预测关于源数据的的准确度的分数。步骤S110表示循环的结束。

因此,当已经考虑了所有候选时,在步骤S112中,选择具有最佳质量分数的候选。然后诸如使用在查找表中建立的编码或者使用如上所述的哥伦布代码对该候选的属性进行编码。将这些属性添加到比特流用于传输。

在图5中图示出接收机的结构架构。其具有是计算机实施的装置的元素。接收机30因此包括图形处理单元302,该图形处理单元202在处理图形和类似的操作时被配置用于特定使用。接收机30也包括通用地提供的,或者针对诸如数学运算、音频处理、管理通信信道等等的其他目的被配置的一个或多个其他处理器304。

如读者将意识到,可以以机顶盒、手提式个人电子设备、个人计算机,或者适于视频呈现的重放的任意其他设备的形式来实施接收机30。

输入接口306提供用于用于接收用户输入动作的设施。这样的用户输入动作能够例如由与包括以下的特定输入单元的用户交互引起:一个或多个控制按钮和/或开关、键盘、鼠标或其他定点设备、被实现为接收并且将语音处理为控制命令的语音辨识单元、被配置为从诸如平板机或智能电话,或者遥控接收机等等的另一个设备接收和控制处理的信号处理器。该列表将被理解为非穷尽性的,并且读者能够设想用户发起的或者自动的其他形式的输入。

类似地,输出接口314可操作为提供用于向用户或者另一个设备输出信号的设施。这样的输出能够包括适当格式的电视信号,用于驱动本地电视设备。

通信接口308实施与信号的一个或多个收方的通信信道(广播或者端到端)。在本实施例的上下文中,通信接口被配置为引起承载对由接收机30编码的视频信号进行定义的比特流的信号的发射。

处理器304,并且具体地为了本公开的利益,GPU 302在接收机的操作中可操作为执行计算机程序。在进行此时,对由大容量存储设备308提供的数据存储设施进行求助,其被实施为虽然基于相对慢的存取提供大型数据存储,并且将实际上存储计算机程序,并且在当前上下文中存储来源于接收处理的执行的呈现数据。

利用被设计为提供接收机30的功能的核的可执行程序对只读存储器(ROM)310进行预先配置,并且在从事计算机程序的执行时为随机存取存储器312提供数据和程序指令的快速存取和存储。

现在将参考图6来描述接收机30的功能。图6示出由借助于在对在接收机30的接收到的比特流(包括能够从其得出视频呈现的结构化信息)的可执行指令在接收机20上实施的解码器所执行的处理流水线,包括由发射器20的编码器功能编码的帧的重构。

在图6中图示出的解码处理目标在于将在编码器执行的处理反向。读者将理解,这不意味着解码处理是编码处理的精确反向。

接收比特流包括一个接一个的编码信息元素,每个元素与块有关。在熵解码模块330中对块信息元素进行解码以获取系数的块以及计算用于当前块的预测所必需的信息。系数的块典型地在反量化模块332中被反量化并且典型地通过变换模块334被反向变换到空间域。

如上面指出的,读者将认识到,将仅仅如果已经在发射器分别采用熵编码、量化和变换时,才在接收机采用熵解码、反量化和反变换。

由预测模块336从来自当前或先前帧的先前解码的样本并且使用从比特流解码的信息生成如以前一样的预测信号。然后在重构块338中从解码的残留信号和计算的预测块得出原始画面块的重构。预测模块336对用信号通知三角分区的使用的比特流上的信息进行响应,并且如果此类信息出现,则从比特流中读取已经在其之下实施三角分区的模式,以及因此在块信息样本的重构中应当采用哪些预测技术。

通过对接连地接收的块信息元素进行解码功能的反复动作,能够将画面块能够为帧,所述帧然后能够被组装以产生用于重放的视频呈现。

在图7中图示出与较早地描述的编码器算法互补的示例性解码器算法。

正如先前指出的,接收机30的解码器功能从比特流中提取定义块信息和伴随的配置信息的、由发射器20的编码器设施所编码的一个接一个的块信息元素。

概括地说,在构造用于当前块的预测时,解码器运用来自在先预测的信息的本身。这样做时,解码器可以将来自帧间预测(即,来自在先的帧),以及来自帧内预测(即,来自相同的帧中的另一个块)的知识组合。

因此,对于合并预测块,在步骤S202中,从比特流中提取使得能够形成预测候选的信息。这能够是标志的形式,其可以是句法形式的二进制,指示是否已经使用了三角预测。

在步骤S204中,根据该标志的值来进行判定。如果三角预测将用于合并预测块,然后在步骤S206中,考虑包含可能的三角预测选择的列表的查找表。该列表可以是预先确定的,或者可以取决于从可用的信息(诸如尺寸或块)推断出的信息。其可以被预存在接收机,或者其可以在比特流上被传送到其。该在先传输可以在当前比特流传输的开始传输,或者其可以例如位于至接收机的预配置传输以将接收机配置为能够对针对特定规范编码的比特流进行解码。

在步骤S208中,从比特流中提取索引以用信号通知将在生成预测时采用查找表中的哪个项。在步骤S210中,根据索引对查找表进行查阅以获取定义将被使用的三角预测模式的一组属性。属性可以被共同地考虑为预测配置属性,其能够被解码器使用以配置解码器构造块样本的预测的方式、是否将采用三角分区,并且,如果是这样的话,将使用帧间预测、帧内预测,还是其组合。属性例如可以也指定应当如何实施组合,诸如包括权重参数,或对预先确定的权重参数的另一个表格的索引。

根据从与索引相对应的查找表中提取的一组属性,确定以下项:

将块分区为两个三角形分区的特定方式(即,应当在其上分割块的对角线的方向)

a)预测第一三角形分区的特定方式,其可以包括以下项中的一项或多项:

i)形成用于三角形分区中的样本的帧间预测的特定帧间预测模式;

ii)形成用于三角形分区中的样本的帧内预测的特定帧内预测模式;

iii)特定对的权重,其在帧内预测和帧间预测中的每一个中组合每个采样以形成三角形分区中的对应的样本的组合预测;

b)预测第二三角形分区的特定方式,其可以包括以下项中的一项或多项:

i)形成用于三角形分区中的样本的帧间预测的特定帧间预测模式

ii)形成用于三角形分区中的样本的帧内预测的特定帧内预测模式

iii)特定对的权重,其在帧内预测和帧间预测中的每一个中组合每个采样以形成三角形分区中的对应的样本的组合预测

在步骤S212中,使用在步骤S210中确定的特定特性来生成预测。

在一种替换中,如果没有使用先前描述的标志用信号通知三角预测,那么在步骤S220中使用常规技术以生成合并预测块的预测。

将理解的是,本发明不局限于以上描述的实施例,并且能够在不背离在本文描述的构思的情况下进行各种修改和改善。除了在互斥的情况下之外,可以分开地或者与任意其他特征组合地采用任意特征,并且本公开扩展到并且包括在本文描述的一个或多个特征的所有组合和子组合。

相关技术
  • 视频编码装置、视频编码方法、视频编码程序、视频解码装置、视频解码方法以及视频解码程序
  • 视频编码方法、视频解码方法、视频编码装置、视频解码装置、视频编码程序以及视频解码程序
技术分类

06120113170078