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

使用仿射运动预测来处理视频信号的方法和装置

文献发布时间:2023-06-19 10:22:47


使用仿射运动预测来处理视频信号的方法和装置

技术领域

本公开涉及使用仿射运动预测来处理视频信号的方法和装置,更具体地,涉及一种通过限定执行仿射运动预测的块的大小来处理视频信号的方法和装置。

背景技术

压缩编码意指用于通过通信线路来发送数字化的信息的一系列信号处理技术或者用于以适合于存储介质的形式存储信息的技术。包括视频、图像、音频等的媒体可以是压缩编码的目标,特别是,执行以视频为目标的压缩编码的技术被称为视频图像压缩。

下一代视频内容应该具有高空间分辨率、高帧频和高维度的场景表示的特性。为了处理这些内容,将导致存储器存储、存储器访问速率和处理能力的急剧增加。

因此,需要设计一种用于更高效地处理下一代视频内容的编码工具。作为用于更高效地处理视频内容的帧间预测技术,已引入了一种用于表示各种运动的仿射运动预测的方法和装置。

发明内容

技术问题

需要一种减少应用仿射运动预测时所生成的附加数据以及由于计算而导致的复杂度的方法和装置。

因此,本公开的实施方式提供了一种用于降低仿射运动预测中的复杂度的视频信号处理方法和装置。

本公开的实施方式还提供了一种能够通过在执行仿射预测的块中使用预定义的子块大小来省略子块大小的计算的视频信号处理方法和装置。

本公开的实施方式还提供了一种能够通过在切片级别或块级别确定子块大小来使性能劣化最小化同时降低复杂度的视频信号处理方法和装置。

本公开的实施方式还提供了一种能够通过将最小块大小设定为仿射预测条件来降低仿射预测处理的复杂度的视频信号处理方法和装置。

本公开的实施方式还提供了一种能够通过在切片级别或块级别设定块大小的条件来使性能劣化最小化同时降低仿射预测处理的复杂度的视频信号处理方法和装置。

本公开要实现的技术目的不限于上文仅作为示例描述的那些技术目的,本公开所属领域的技术人员可从以下描述清楚地理解未提及的其它技术目的。

技术方案

在一个方面,提供了一种使用仿射运动预测来处理视频信号的方法,该方法包括以下步骤:检查要解码的当前块通过仿射运动预测编码;获得当前块的多个控制点的运动向量;基于所述多个控制点的运动向量来确定包括在当前块中的多个子块中的每一个的运动向量;以及从所述多个子块中的每一个的运动向量生成当前块的预测样本,其中,所述多个子块中的每一个被配置为具有预定义的宽度和预定义的高度。

各个子块的预定义的宽度和预定义的高度可为4*4或8*8。如果当前块是通过双预测编码的块,则所述多个子块中的每一个的宽度和高度可被设定为8*8,并且如果当前块是通过单预测编码的块,则所述多个子块中的每一个的宽度和高度可被设定为4*4。

检查当前块通过仿射运动预测编码的步骤可包括以下步骤:检查当前块的编码模式;确定当前块的宽度和高度是否满足根据当前块的编码模式的条件;以及如果满足条件,则检查可执行仿射运动预测。

确定当前块的宽度和高度是否满足根据当前块的编码模式的条件的步骤可包括以下步骤:如果编码模式是仿射合并模式,则当当前块的宽度大于或等于第一参考值并且当前块的高度大于或等于所述第一参考值时,确定满足条件;以及如果编码模式是仿射帧间模式,则当当前块的宽度大于或等于第二参考值并且当前块的高度大于或等于第二参考值时,确定满足条件。用于仿射合并模式的情况的第一参考值可以是8,并且用于仿射帧间模式的情况的第二参考值可以是16。

确定当前块的宽度和高度是否满足根据当前块的编码模式的条件的步骤可包括以下步骤:如果编码模式是仿射合并模式,则当当前块通过双预测编码,当前块的宽度和高度的乘积大于或等于第三参考值,当前块的宽度大于或等于第四参考值,并且当前块的高度大于或等于第四参考值时,确定满足条件,或者当当前块通过单预测编码,当前块的宽度和高度的乘积大于或等于第五参考值,当前块的宽度大于或等于第六参考值,并且当前块的高度大于或等于第六参考值时,确定满足条件,其中,第三参考值大于或等于第五参考值,并且第五参考值大于或等于子块的宽度或高度,其中,第四参考值大于或等于第六参考值,并且第六参考值大于或等于子块的宽度或高度;以及如果编码模式是仿射帧间模式,则当当前块通过双预测编码,当前块的宽度大于或等于第七参考值,并且当前块的高度大于或等于第七参考值时,确定满足条件,或者当当前块通过单预测编码,当前块的宽度大于或等于第八参考值,并且当前块的高度大于或等于第八参考值时,确定满足条件,其中,第七参考值大于或等于子块的宽度或高度,第七参考值大于或等于第八参考值,并且第八参考值大于或等于子块的宽度或高度。

在另一方面,提供了一种使用仿射运动预测来处理视频信号的装置,该装置包括被配置为存储视频信号的存储器以及功能上联接到存储器的解码器,其中,解码器被配置为:检查要解码的当前块通过仿射运动预测编码;获得当前块的至少一个控制点的运动向量;基于所述至少一个控制点的运动向量来确定包括在当前块中的多个子块中的每一个的运动向量;并且从所述多个子块中的每一个的运动向量生成当前块的预测样本,其中,所述多个子块中的每一个被配置为具有预定义的宽度和预定义的高度。

各个子块的预定义的宽度和预定义的高度可为4*4或8*8。如果当前块是通过双预测编码的块,则所述多个子块中的每一个的宽度和高度可被设定为8*8,并且如果当前块是通过单预测编码的块,则所述多个子块中的每一个的宽度和高度可被设定为4*4。

解码器还可被配置为:检查当前块的编码模式;确定当前块的宽度和高度是否满足根据当前块的编码模式的条件;以及如果满足条件,则检查可执行仿射运动预测。

解码器还可被配置为:如果编码模式是仿射合并模式,则当当前块的宽度大于或等于第一参考值并且当前块的高度大于或等于第一参考值时,确定满足条件;以及如果编码模式是仿射帧间模式,则当当前块的宽度大于或等于第二参考值并且当前块的高度大于或等于第二参考值时,确定满足条件。用于仿射合并模式的情况的第一参考值可以是8,并且用于仿射帧间模式的情况的第二参考值可以是16。

解码器还可被配置为:如果编码模式是仿射合并模式,则当当前块通过双预测编码,当前块的宽度和高度的乘积大于或等于第三参考值,当前块的宽度大于或等于第四参考值,并且当前块的高度大于或等于第四参考值时,确定满足条件,或者当当前块通过单预测编码,当前块的宽度和高度的乘积大于或等于第五参考值,当前块的宽度大于或等于第六参考值,并且当前块的高度大于或等于第六参考值时,确定满足条件,其中,第三参考值大于或等于第五参考值,并且第五参考值大于或等于子块的宽度或高度,其中,第四参考值大于或等于第六参考值,并且第六参考值大于或等于子块的宽度或高度;以及如果编码模式是仿射帧间模式,则当当前块通过双预测编码,当前块的宽度大于或等于第八参考值,并且当前块的高度大于或等于第七参考值时,确定满足条件,或者当当前块通过单预测编码,当前块的宽度大于或等于第八参考值,并且当前块的高度大于或等于第八参考值时,确定满足条件,其中,第七参考值大于或等于第八参考值,并且第八参考值大于或等于子块的宽度或高度。

有益效果

本公开的实施方式可降低仿射运动预测中的复杂度。

本公开的实施方式还可通过在执行仿射预测的块中使用预定义的子块大小来省略子块大小的计算。

本公开的实施方式还可通过在切片级别或块级别确定子块大小来使性能劣化最小化,同时降低复杂度。

本公开的实施方式还可通过将最小块大小设定为仿射预测条件来降低仿射预测处理的复杂度。

本公开的实施方式还可通过在切片级别或块级别设定块大小的条件来使性能劣化最小化,同时降低仿射预测处理的复杂度。

本公开可实现的效果不限于上文仅作为示例描述的那些效果,本公开所属领域的技术人员将从以下描述更清楚地理解本公开的其它效果和优点。

附图说明

附图被包括以提供本公开的进一步理解并且构成详细描述的一部分,附图示出本公开的实施方式并且用于与说明书一起说明本公开的技术特征。

图1示出根据本公开的实施方式的作为视频信号处理装置的示例的编码器的功能配置的示例。

图2示出根据本公开的实施方式的作为视频信号处理装置的另一示例的解码器的功能配置的示例。

图3示出根据本公开的实施方式的多类型树结构的示例。

图4示出根据本公开的实施方式的具有嵌套多类型树结构的四叉树的分区分割信息的信令机制的示例。

图5示出根据本公开的实施方式的基于四叉树和嵌套多类型树结构将编码树单元(CTU)分割成多个CU的方法的示例。

图6示出根据本公开的实施方式的限制三叉树分割的方法的示例。

图7示出根据本公开的实施方式的二叉树分割和三叉树分割中可能出现的冗余分割图案的示例。

图8示出根据本公开的实施方式的视频信号处理方法中的视频编码操作的流程图的示例。

图9示出根据本公开的实施方式的视频信号处理装置中的编码器的帧间预测单元的功能配置的示例。

图10示出根据本公开的实施方式的视频信号处理方法中的视频解码操作的流程图的示例。

图11示出根据本公开的实施方式的视频信号处理装置中的解码器的帧间预测单元的功能配置的示例。

图12示出根据本公开的实施方式的运动模型的示例。

图13示出根据本公开的实施方式的用于仿射运动预测的控制点运动向量的示例。

图14示出应用根据本公开的实施方式的仿射运动预测的块的每各个子块的运动向量的示例。

图15示出根据本公开的实施方式的在仿射帧间模式下用于当前块的预测的邻近块的示例。

图16示出根据本公开的实施方式的在仿射合并模式下用于当前块的预测的邻近块的示例。

图17示出使用应用根据本公开的实施方式的仿射运动预测的邻近块来执行仿射运动预测的块的示例。

图18示出根据本公开的实施方式的仿射运动预测操作的流程图的示例。

图19示出根据本公开的实施方式的仿射运动预测操作的流程图的另一示例。

图20示出检查根据本公开的实施方式的仿射运动预测是否可用的操作的流程图的示例。

图21a和图21b示出根据本公开的实施方式的基于块大小来检查仿射运动预测是否可用的条件的操作的流程图的示例。

图22a和图22b示出根据本公开的实施方式的基于块大小来检查仿射运动预测是否可用的条件的操作的流程图的示例。

图23示出作为应用了本公开的实施方式的视频编码系统的示例。

图24示出作为应用了本公开的实施方式的视频流系统的示例。

具体实施方式

以下,将参照附图描述本公开的优选实施方式。下面将参照附图描述的说明书是为了描述本公开的示例性实施方式,而非旨在描述可实现本公开的仅有实施方式。下面的描述包括特定细节以便提供本公开的完美理解。然而,本领域技术人员将理解,本公开可在没有这些特定细节的情况下具体实现。

在一些情况下,为了防止本公开的技术概念不清楚,公知的结构或装置可被省略,或者可被描绘为以结构或装置的核心功能为中心的框图。

此外,尽管在本公开中尽可能选择目前广泛使用的一般术语作为术语,但是在特定情况下使用申请人任意选择的术语。由于在这种情况下将在说明书的对应部分中清楚地描述术语的含义,所以将理解,本公开将不仅由仅在本公开的描述中使用的术语解释,而是应该弄清术语的含义。

可提供下面的描述中使用的特定术语以帮助理解本公开。此外,在本公开的技术概念的范围内,这些特定术语可被修改为其它形式。例如,信号、数据、样本、画面、帧、块等可在各个编码处理中适当地替换和解释。

在本公开中,“处理单元”是指执行诸如预测、变换和/或量化的编码/解码处理的单元。处理单元也可被解释为包括用于亮度分量的单元和用于色度分量的单元的含义。例如,处理单元可对应于块、编码单元(CU)、预测单元(PU)或变换单元(TU)。

处理单元也可被解释为用于亮度分量的单元或用于色度分量的单元。例如,处理单元可对应于用于亮度分量的编码树块(CTB)、编码块(CB)、预测单元(PU)或变换块(TB)。另选地,处理单元可对应于用于色度分量的CTB、CB、PU或TB。处理单元不限于此,可被解释为包括用于亮度分量的单元和用于色度分量的单元的含义。

另外,处理单元未必限于正方形块,可被配置成具有三个或更多个顶点的多边形形状。

在本公开中,像素通常被称为样本。另外,使用样本可意指使用像素值等。

图1示出根据本公开的实施方式的作为视频信号处理装置的示例的编码器的功能配置的示例。

参照图1,编码器100可包括图像分区单元110、减法器115、变换单元120、量化单元130、解量化单元140、逆变换单元150、加法器155、滤波单元160、存储器170、帧间预测单元180、帧内预测单元185和熵编码单元190。帧间预测单元180和帧内预测单元185可被共同称为预测单元。换言之,预测单元可包括帧间预测单元180和帧内预测单元185。变换单元120、量化单元130、解量化单元140、逆变换单元150可被包括在残差处理单元中。残差处理单元还可包括减法器115。在一个实施方式中,图像分区单元110、减法器115、变换单元120、量化单元130、解量化单元140、逆变换单元150、加法器155、滤波单元160、帧间预测单元180、帧内预测单元185和熵编码单元190可被实现为一个硬件组件(例如,编码器或处理器)。此外,存储器170可包括解码画面缓冲器(DPB)172,并且可由数字存储介质实现。

图像分区单元110可将输入到编码器100的输入图像(或画面或帧)分区为一个或更多个处理单元。例如,处理单元可被称为编码单元(CU)。在这种情况下,编码单元可基于四叉树二叉树(QTBT)结构从编码树单元(CTU)或最大编码单元(LCU)递归地分割。例如,一个编码单元可基于四叉树结构和/或二叉树结构被分区为深度更深的多个编码单元。在这种情况下,例如,可首先应用四叉树结构,然后可应用二叉树结构。另选地,可首先应用二叉树结构。可基于不再分区的最终编码单元来执行根据本公开的编码过程。在这种情况下,可根据图像特性基于编码效率将最大编码单元直接用作最终编码单元,或者如果需要或期望,编码单元可被递归地分割成深度更深的编码单元,因此具有最优大小的编码单元可用作最终编码单元。本文中,编码过程可包括诸如预测、变换或重构(稍后描述)的过程。作为另一示例,处理单元还可包括预测单元(PU)或变换单元(TU)。在这种情况下,预测单元和变换单元中的每一个可从上述最终编码单元分割或分区。预测单元可以是用于样本预测的单元,并且变换单元可以是推导变换系数的单元和/或从变换系数推导残差信号的单元。

如果需要或期望,单元可与诸如块或区域的术语互换使用。在常见情况下,M×N块可指示由M列和N行组成的样本集合或变换系数集合。样本通常可指示像素或像素的值,并且可仅指示亮度分量的像素/像素值或色度分量的像素/像素值。在样本中,一个画面(或图像)可用作与像素或像元对应的术语。

编码器100可从输入图像信号(原始块或原始样本阵列)减去帧间预测单元180或帧内预测单元185所输出的预测信号(预测的块或预测样本阵列)以生成残差信号(残差块或残差样本阵列),并且所生成的残差信号被发送到变换单元120。在这种情况下,如所示,在编码器100中,从输入图像信号(原始块或原始样本阵列)减去预测信号(预测的块或预测样本阵列)的单元可被称为减法器115。预测单元可对处理目标块(以下称为当前块)执行预测,并且可生成包括当前块的预测样本的预测块。预测单元可确定是否基于每当前块或CU应用帧内预测或帧间预测。预测单元可生成关于预测的各种信息(例如预测模式信息,将稍后在各个预测模式的描述中描述),并且可将各种信息发送到熵编码单元190。关于预测的信息可由熵编码单元190编码并且可以比特流的形式输出。

帧内预测单元185可参考当前画面中的样本来预测当前块。根据预测模式,所参考的样本可位于当前块附近或与当前块分隔开。在帧内预测中,预测模式可包括多个非定向模式和多个定向模式。例如,非定向模式可包括DC模式和平面模式。例如,根据预测方向的细微度,定向模式可包括33个定向预测模式或65个定向预测模式。然而,这仅是示例,可根据配置使用数量相等或更多或者相等或更少的定向预测模式。帧内预测单元185可使用应用于邻近块的预测模式来确定应用于当前块的预测模式。

帧间预测单元180可基于参考画面上的运动向量所指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少帧间预测模式下发送的运动信息的量,运动信息可基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位来预测。运动信息可包括运动向量和参考画面索引。运动信息还可包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可包括存在于当前画面中的空间邻近块以及存在于参考画面中的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可彼此相同或彼此不同。时间邻近块可被称为诸如共置参考块、共置CU(colCU)等的名称,并且包括时间邻近块的参考画面可被称为共置画面(colPic)。例如,帧间预测单元180可基于邻近块来配置运动信息候选列表,并且生成指示为了推导当前块的运动向量和/或参考画面索引使用哪一候选的信息。可基于各种预测模式来执行帧间预测,例如,在跳过模式和合并模式的情况下,帧间预测单元180可使用邻近块的运动信息作为当前块的运动信息。在跳过模式的情况下,与合并模式不同,可不发送残差信号。在运动向量预测(MVP)模式的情况下,邻近块的运动向量用作运动向量预测器,并且用信号通知运动向量差以指示当前块的运动向量。用于帧间预测的方法和装置参照图8至图11详细描述。通过帧间预测单元180或帧内预测单元185生成的预测信号可用于生成重构信号或生成残差信号。

变换单元120可通过对残差信号应用变换方案来生成变换系数。例如,变换方案可包括离散余弦变换(DCT)、离散正弦变换(DST)、Karhunen-Loève变换(KLT)、基于图形的变换(GBT)或条件非线性变换(CNT)中的至少一个。GBT意指如果像素之间的关系信息由图形表示,从该图形获得的变换。CNT意指基于使用所有先前重构的像素生成的预测信号获得的变换。此外,变换处理可应用于正方形形状的具有相同大小的像素块,或者可应用于非正方形形状的具有可变大小的块。

量化单元130可将变换系数量化并将其发送到熵编码单元190。熵编码单元190可对量化的信号(关于量化的变换系数的信息)进行编码并将其以比特流的形式输出。关于量化的变换系数的信息可被称为残差信息。量化单元130可基于各种扫描顺序以一维向量形式重排块形式的量化的变换系数,并且可基于一维向量形式的量化的变换系数来生成关于量化的变换系数的信息。熵编码单元190可执行各种编码方法,例如指数Golomb、上下文自适应可变长度编码(CAVLC)和上下文自适应二进制算术编码(CABAC)。除了量化的变换系数之外,熵编码单元190可一起或单独地对视频/图像重构所需的信息(例如,句法元素的值)进行编码。编码的信息(例如,编码的视频/图像信息)可按比特流的形式基于每网络抽象层(NAL)单元发送或存储。比特流可经由网络发送或者可被存储在数字存储介质中。网络可包括广播网络和/或通信网络。数字存储介质可包括诸如通用串行总线(USB)、安全数字(SD)卡、紧凑盘(CD)、数字视频盘(DVD)、蓝光、硬盘驱动器(HDD)、固态驱动器(SSD)和闪存的各种存储介质。用于熵编码单元190所输出的信号的通信单元(未示出)和/或存储单元(未示出)或存储器(未示出)可以是编码器100的内部/外部组件,或者发送器可以是熵编码单元190的组件。

量化单元130所输出的量化的变换系数可用于生成预测信号。例如,可在循环内通过解量化单元140和逆变换单元150对量化的变换系数应用解量化和逆变换,以重构残差信号。加法器155将重构的残差信号与帧间预测单元180或帧内预测单元185所输出的预测信号相加,以生成重构信号(重构画面、重构块或重构样本阵列)。类似于应用跳过模式的情况,当针对处理目标块不存在残差时,预测块可用作重构块。加法器155可被称为重构单元或重构块生成单元。所生成的重构信号可用于当前画面中的下一处理目标块的帧内预测,并且可通过如下所述的滤波用于下一画面的帧间预测。

滤波单元160可通过对重构信号应用滤波来改进主观/客观画面质量。例如,滤波单元160可对重构画面应用各种滤波方法以生成修改的重构画面,并且修改的重构画面可被存储在存储器170中(更具体地,存储器170的DPB 172中)。各种滤波方法的示例可包括解块滤波、样本自适应偏移(SAO)、自适应环路滤波器(ALF)和双边滤波器。滤波单元160可生成关于滤波的各种信息(如将在各个滤波方法的描述中稍后描述的),并且可将其发送到熵编码单元190。关于滤波的信息可由熵编码单元190编码并以比特流的形式输出。

存储在存储器170中的修改的重构画面可用作帧间预测单元180中的参考画面。因此,当应用帧间预测时,编码器100可避免编码器100和解码器200中的预测失配并改进编码效率。

存储器170的DPB 172可存储修改的重构画面以在帧间预测单元180中将其用作参考画面。存储器170可存储推导(或编码)当前画面中的运动信息的块的运动信息和/或已重构画面中的块的运动信息。所存储的运动信息可被发送到帧间预测单元180以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器170可存储当前画面中的重构块的重构样本并将其发送到帧内预测单元185。

图2示出根据本公开的实施方式的作为视频信号处理装置的另一示例的解码器的功能配置的示例。

参照图2,解码器200可包括熵解码单元210、解量化单元220、逆变换单元230、加法器235、滤波单元240、存储器250、帧间预测单元260和帧内预测单元265。帧间预测单元260和帧内预测单元265可被组合并称为预测单元。即,预测单元可包括帧间预测单元260和帧内预测单元265。解量化单元220和逆变换单元230可被组合并称为残差处理单元。即,残差处理单元可包括解量化单元220和逆变换单元230。在一些实施方式中,熵解码单元210、解量化单元220、逆变换单元230、加法器235、滤波单元240、帧间预测单元260和帧内预测单元265可被实现为一个硬件组件(例如,解码器或处理器)。此外,存储器250可包括DPB 252并且可由数字存储介质实现。

如果输入包括视频/图像信息的比特流,则解码器200可根据图1的编码器100中处理视频/图像信息的处理来重构图像。例如,解码器200可使用编码器100中应用的处理单元来执行解码。因此,例如,用于解码的处理单元可以是编码单元,并且根据四叉树结构和/或二叉树结构,可从编码树单元或最大编码单元分割编码单元。此外,可通过回放装置再现通过解码器200解码并输出的重构的图像信号。

解码器200可接收图1的编码器100以比特流的形式输出的信号,并且所接收的信号可通过熵解码单元210解码。例如,熵解码单元210可解析比特流以推导图像重构(或画面重构)所需的信息(例如,视频/图像信息)。例如,熵解码单元210可基于诸如指数Golomb编码、CAVLC或CABAC的编码方法将比特流内的信息解码,并且可输出图像重构所需的句法元素的值或者关于残差的变换系数的量化的值。更具体地,CABAC熵解码方法可从比特流接收与各个句法元素对应的信元(bin),使用邻近和解码目标块的解码目标句法元素信息和解码信息或先前步骤中解码的符号/信元的信息来确定上下文模型,基于所确定的上下文模型来预测信元出现的概率,并且执行信元的算术解码,从而生成与各个句法元素的值对应的符号。在这种情况下,CABAC熵解码方法可确定上下文模型,然后使用针对下一符号/信元的上下文模型解码的符号/信元的信息来更新上下文模型。熵解码单元2110中解码的信息当中与预测有关的信息可被提供给预测单元(帧间预测单元260或帧内预测单元265)。在熵解码单元210中执行熵解码的残差值(即,量化的变换系数和相关的参数信息)可被输入到解量化单元220。此外,熵解码单元210中解码的信息当中与滤波有关的信息可被提供给滤波单元240。接收从编码器100输出的信号的接收器(未示出)可被进一步配置为解码器200的内部/外部元件,或者接收器可以是熵解码单元210的组件。

解量化单元220可将量化的变换系数解量化并输出变换系数。解量化单元220可按二维块形式重排量化的变换系数。在这种情况下,可基于编码器100中执行的扫描顺序来执行重排。解量化单元220可使用量化参数(例如,量化步长信息)对量化的变换系数执行解量化,并且可获得变换系数。

逆变换单元230可通过对变换系数进行逆变换来获得残差信号(残差块或残差样本阵列)。

预测单元可对当前块执行预测,并且生成包括当前块的预测样本的预测块。预测单元可基于从熵解码单元210输出的关于预测的信息来确定是否对当前块应用帧内预测或帧间预测,并且确定特定帧内/帧间预测模式。

帧内预测单元265可通过参考当前画面中的样本来预测当前块。根据预测模式,所参考的样本可位于当前块附近或者与当前块分隔开。在帧内预测中,预测模式可包括多个非定向模式和多个定向模式。帧内预测单元265可使用应用于邻近块的预测模式来确定应用于当前块的预测模式。

帧间预测单元260可基于参考画面上的运动向量所指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式下发送的运动信息的量,运动信息可基于邻近块与当前块之间的运动信息的相关性基于每块、子块或样本单元来预测。运动信息可包括运动向量和参考画面索引。运动信息还可包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可包括存在于当前画面中的空间邻近块以及存在于参考画面中的时间邻近块。例如,帧间预测单元260可基于邻近块来构造运动信息候选列表,并且可基于所接收的候选选择信息来推导当前块的运动向量和/或参考画面索引。可基于各种预测模式执行帧间预测。与预测有关的信息可包括指示当前块的帧间预测模式的信息。

加法器235将所获得残差信号与从帧间预测单元260或帧内预测单元265输出的预测的信号(预测块或预测的样本阵列)相加,以生成重构信号(重构画面、重构块或重构样本阵列)。类似于应用跳过模式的情况,当针对处理目标块不存在残差时,预测块可用作重构块。

加法器235可被称为重构单元或重构块生成单元。所生成的重构信号可用于当前画面中的下一处理目标块的帧内预测,并且用于下一画面通过滤波的帧间预测(下面描述)。

滤波单元240可通过对重构信号应用滤波来改进主观/客观画面质量。例如,滤波单元240可对重构画面应用各种滤波方法以生成修改的重构画面,并且可将修改的重构画面发送到存储器250(更具体地,存储器250的DPB 252)。各种滤波方法的示例可包括解块滤波、样本自适应偏移(SAO)、自适应环路滤波器(ALF)和双边滤波器。

存储在存储器250的DPB 252中的(修改的)重构画面可在帧间预测单元260中用作参考画面。存储器250可存储推导(或解码)当前画面中的运动信息的块的运动信息和/或已重构画面中的块的运动信息。所存储的运动信息可被发送到帧间预测单元260以便用作空间邻近块的运动信息或时间邻近块的运动信息。存储器250可存储当前画面中的重构块的重构样本并将其发送到帧内预测单元265。

在本公开中,编码器100的滤波单元160、帧间预测单元180和帧内预测单元185中描述的实施方式可分别相同地或对应地应用于解码器200的滤波单元240、帧间预测单元260和帧内预测单元265。

根据本公开的视频/图像编码方法可基于各种详细技术来执行,如下示意性地描述各个详细技术。对于本领域技术人员而言显而易见的是,本文所描述的技术可与上述和/或下述的视频/图像编码/解码过程中的相关过程(例如,预测、残差处理((逆)变换、(解)量化等)、句法元素编码、滤波、分区/分割)关联。

可在上述编码器100的图像分区单元110中执行根据本公开的块分区过程,并且分区相关信息可在熵编码单元190中进行(编码)处理并以比特流的形式发送到解码器200。解码器200的熵解码单元210可基于从比特流获得的分区相关信息来推导当前画面的块分区结构,并且可基于此执行一系列过程(例如,预测、残差处理、块重构、环路滤波等)以用于图像解码。

视频信号的各个画面可被分区为编码树单元(CTU)的序列。CTU可对应于编码树块(CTB)。另选地,CTU可包括亮度样本的编码树块和对应色度样本的两个编码树块。换言之,对于包括三种样本阵列的画面,CTU可包括亮度样本的N×N块和色度样本的两个对应块。

用于编码和预测的CTU的最大支持大小可不同于用于变换的CTU的最大支持大小。例如,CTU中的亮度块的最大支持大小可为128×128。

可基于四叉树(QT)结构将CTU分割成CU。四叉树结构可被称为四元树结构。这是为了反映各种局部特性。在本公开中,除了四叉树之外,CTU可基于包括二叉树(BT)和三叉树(TT)的多类型树结构分割来分割。以下,QTBT结构可包括基于四叉树和二叉树的分割结构,QTBTTT可包括基于四叉树、二叉树和三叉树的分割结构。另选地,QTBT结构可包括基于四叉树、二叉树和三叉树的分区结构。在编码树结构中,CU可具有正方形或矩形形状。CTU可首先被分割成四叉树结构。此后,可通过多类型树结构另外分割四叉树结构的叶节点。

图3示出根据本公开的实施方式的多类型树结构的示例。

在本公开的实施方式中,多类型树结构可包括图3所示的4个分割类型。这4个分割类型可包括垂直二元分割(SPLIT_BT_VER)、水平二元分割(SPLIT_BT_HOR)、垂直三元分割(SPLIT_TT_VER)和水平三元分割(SPLIT_TT_HOR)。多类型树结构的叶节点可被称为CU。这些CU可用于预测和变换过程。在本公开中,CU、PU和TU通常可具有相同的块大小。然而,如果最大支持变换长度小于CU的颜色分量的宽度或高度,则CU和TU可具有不同的块大小。

图4示出根据本公开的实施方式的具有嵌套多类型树结构的四叉树的分区分割信息的信令机制的示例。

这里,CTU被当作四叉树的根并且首先被分区为四叉树结构。此后,各个四叉树叶节点可被进一步分区为多类型树结构。在多类型树结构中,用信号通知第一标志(例如,mtt_split_cu_flag)以指示对应节点是否被另外分区。当对应节点被另外分区时,可用信号通知第二标志(例如,mtt_split_cu_verticla_flag)以指示分割方向。此后,可用信号通知第三标志(例如,mtt_split_cu_binary_flag)以指示分割类型是二元分割还是三元分割。例如,基于mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag,可如下表1所示推导CU的多类型树分割模式MttSplitMode。

[表1]

图5示出根据本公开的实施方式的基于四叉树和嵌套多类型树结构将编码树单元(CTU)分割成多个CU的方法的示例。

这里,加粗块边缘指示四叉树分区,剩余边缘指示多类型树分区。伴随多类型树的四叉树分区可提供内容自适应编码树结构。CU可对应于编码块(CB)。另选地,CU可包括亮度样本的编码块和对应色度样本的两个编码块。CU的大小可与CTU一样大,或者在亮度样本的单元中可像4×4一样小。例如,在4:2:0颜色格式(或色度格式)的情况下,最大色度CB大小可为64×64,最小色度CB大小可为2×2。

在本公开中,例如,最大支持亮度TB大小可为64×64,最大支持色度TB大小可为32×32。当根据树结构分割的CB的宽度或高度大于最大变换宽度或高度时,对应CB可被自动地(或隐含地)分割,直至满足水平和垂直TB大小限制为止。

对于伴随多类型树的四叉树编码树方案,可定义和识别以下参数作为SPS句法元素。

-CTU大小:四叉树的根节点大小

-MinQTSize:最小允许四叉树叶节点大小

-MaxBtSize:最大允许二叉树根节点大小

-MaxTtSize:最大允许三叉树根节点大小

-MaxMttDepth:从四叉树叶的多类型树分割的最大允许层次深度

-MinBtSize:最小允许二叉树叶节点大小

-MinTtSize:最小允许三叉树叶节点大小

作为伴随多类型树的四叉树编码树结构的示例,CTU大小可被配置为128×128亮度样本和两个对应色度样本的64×64块(以4:2:0色度格式)。在这种情况下,MinOTSize可被设定为16×16,MaxBtSize可被设定为128×128,MaxTtSzie可被设定为64×64,MinBtSize和MinTtSize(对于宽度和高度二者)可被设定为4×4,MaxMttDepth可被设定为4。四叉树分区可被应用于CTU并且可生成四叉树叶节点。四叉树叶节点可被称为叶QT节点。四叉树叶节点可具有从16×16大小(即,MinOTSize)的128×128大小(即,MinOTSize)。当叶QT节点为128×128时,叶QT节点可不分割为二叉树/三叉树。原因在于在这种情况下,即使叶QT节点被分割,叶QT节点也超过MaxBtsize和MaxTtszie(即,64×64)。在其它情况下,叶QT节点可被另外分割为多类型树。因此,叶QT节点可以是多类型树的根节点,并且叶QT节点可具有多类型树深度(mttDepth)值0。当多类型树深度达到MaxMttdepth(例如,4)时,可不再考虑附加分割。当多类型树节点的宽度等于MinBtSize并且等于或小于2xMinTtSize时,可不再考虑附加水平分割。当多类型树节点的高度等于MinBtSize并且等于或小于2xMinTtSize时,可不再考虑附加垂直分割。

图6示出根据本公开的实施方式的限制三叉树分割的方法的示例。

参照图6,为了在硬件解码器中允许64×64亮度块和32×32色度管线设计,在特定情况下可限制三叉树(TT)分割。例如,如果亮度编码块的宽度或高度大于预定的特定值(例如,32、64),则可限制TT分割,如图6所示。

在本公开中,编码树方案可支持亮度块和色度块具有单独的块树结构。对于P切片和B切片,单个CTU中的亮度CTB和色度CTB可被限制为具有相同的编码树结构。然而,对于I切片,亮度块和色度块可具有单独的块树结构。如果应用单独的块树模式,则亮度CTB可基于特定编码树结构被分割为CU,并且色度CTB可基于不同的编码树结构被分割为色度CU。这可意味着I切片中的CU由亮度分量的编码块或两个色度分量的编码块组成,并且P切片或B切片中的CU可由三个颜色分量的块组成。

在上述“使用树结构的CTU的分区”中,描述了具有嵌套多类型树的四叉树编码树结构,但是CU被分区的结构不限于此。例如,BT结构和TT结构可被解释为包括在多分区树(MPT)结构中的概念,并且可解释为CU通过QT结构和MPT结构来分区。在CU通过QT结构和MPT结构分区的示例中,可用信号通知包括关于QT结构的叶节点被分割为多少块的信息的句法元素(例如,MPT_split_type)以及包括关于QT结构的叶节点在垂直方向还是水平方向上分割的信息的句法元素(例如,MPT_split_mode),因此可确定分区结构。

在另一示例中,CU可按照与QT结构、BT结构或TT结构不同的方法分区。即,与根据QT结构将深度更深的CU分区为上层深度的CU的1/4大小,或者根据BT结构将深度更深的CU分区为上层深度的CU的1/2大小,或者根据TT结构将深度更深的CU分区为上层深度的CU的1/4大小或1/2大小不同,如果需要或期望,可将深度更深的CU分区为上层深度的CU的1/5、1/3、3/8、3/5、2/3或5/8大小,但是对CU进行分区的方法不限于此。

上述具有嵌套多类型树的四叉树编码块结构可提供非常灵活的块分区结构。由于多类型树中支持的分割类型,在一些情况下不同的分割图案可潜在地带来相同的编码块结构结果。通过限制这些冗余分割图案的生成,分区信息的数据量可减少。这参照下面的附图描述。

图7示出根据本公开的实施方式的二叉树分割和三叉树分割中可能出现的冗余分割图案的示例。

如图7所示,一个方向上的两个级别的连续二元分割具有与在三元分割之后对中心分区的二元分割相同的编码块结构。在这种情况下,可限制对三叉树分割的中心分区的二叉树分割(在给定方向上)。这种限制可应用于所有画面的CU。当特定分割被限制时,可通过反映这种限制情况来修改句法元素的信令,并且可通过修改的信令减少用信号通知用于分区的比特数。例如,类似于图7所示的示例,当对CU的中心分区的二叉树分割被限制时,可不用信号通知指示分割是二元分割还是三元分割的句法元素mtt_split_cu_binary_flag,并且解码器可将该值推断为0。

为了重构执行解码的当前处理单元,可使用当前画面或包括当前处理单元的其它画面的解码部分。

仅使用当前画面进行重构(即,执行帧内预测)的画面可被称为帧内画面或I画面(切片),使用至多一个运动向量和参考索引以便预测各个单元的画面(切片)可被称为预测画面或P画面(切片),使用至多两个运动向量和参考索引的画面(切片)可被称为双预测画面或B画面(切片)。

帧内预测意指从同一解码画面(或切片)的数据元素(例如,样本值等)推导当前处理块的预测方法。换言之,帧内预测意指通过参考当前画面中的重构区域来预测当前处理块的像素值的方法。

以下,将更详细地描述帧间预测。

帧间预测意指基于当前画面以外的画面的数据元素(例如,样本值或运动向量)来推导当前处理块的预测方法。换言之,帧内预测意指通过参考当前画面以外的其它重构画面中的重构区域来预测当前处理块的像素值的方法。

作为消除存在于画面之间的冗余的技术的帧间预测(帧间画面预测)主要通过运动估计和运动补偿来执行。

本公开描述了上述帧间预测方法的详细技术。具体地,本公开可使用图10的基于帧间预测的视频/图像解码方法以及图11的解码器200内的帧间预测单元(将稍后描述)来表示解码器的内容,并且可使用图8的基于帧间预测的视频/图像编码方法以及图9的编码器100内的帧间预测单元(将稍后描述)来表示编码器的内容。另外,如图10和图11所示的编码的数据可按比特流的形式存储。

编码器100/解码器200的预测单元可基于每块执行帧间预测以推导预测样本。帧间预测可表示通过依赖于当前画面以外的画面的数据元素(例如,样本值或运动信息等)的方法推导的预测。当对当前块应用帧间预测时,可基于参考画面索引所指示的参考画面上运动向量所指定的参考块(参考样本阵列)来推导当前块的预测块(预测样本阵列)。

在这种情况下,为了减少在帧间预测模式下发送的运动信息的量,当前块的运动信息可基于邻近块与当前块之间的运动信息的相关性来基于每块、子块或样本预测。运动信息可包括运动向量和参考画面索引。运动信息还可包括帧间预测类型(L0预测、L1预测、Bi预测等)信息。

如果应用帧间预测,则邻近块可包括存在于当前画面中的空间邻近块以及存在于参考画面中的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可彼此相同或不同。时间邻近块可被称为诸如并置参考块、并置CU(colCU)等的名称,并且包括时间邻近块的参考画面可被称为并置画面(colPic)。例如,可基于当前块的邻近块来构造运动信息候选列表(或继承候选列表),并且可用信号通知指示选择(使用)哪一候选的标志或索引信息以便推导当前块的运动向量和/或参考画面索引。

可基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式下,当前块的运动信息可与所选邻近块的运动信息相同。在跳过模式下,与合并模式不同,可不发送残差信号。在运动向量预测(MVP)模式下,所选邻近块的运动向量可用作运动向量预测器,并且可用信号通知运动向量差值。在这种情况下,可使用运动向量预测器与运动向量差之和来推导当前块的运动向量。

图8和图9示出根据本公开的实施方式的基于帧间预测的视频/图像编码方法以及根据本公开的实施方式的编码器100中的帧间预测单元。

参照图8和图9,步骤S810可由编码器100的帧间预测单元180执行,并且步骤S820可由编码器100的残差处理单元执行。具体地,步骤S820可由编码器100的减法器115执行。在步骤S830中,预测信息可由帧间预测单元180推导并由熵编码单元190编码。在步骤S830中,残差信息可由残差处理单元推导并由熵编码单元190编码。残差信息是关于残差样本的信息。残差信息可包括关于残差样本的量化的变换系数的信息。

如上所述,可通过编码器100的变换单元120将残差样本变换为变换系数,并且可通过量化单元130将变换系数推导为量化的变换系数。关于量化的变换系数的信息可由熵编码单元190通过残差编码过程编码。

在S810中,编码器100对当前块执行帧间预测。编码器100可推导帧间预测模式和当前块的运动信息并且生成当前块的预测样本。本文中,帧间预测模式确定过程、运动信息推导过程以及生成预测样本的过程可同时执行,并且任一个过程可比其它过程更早执行。例如,编码器100的帧间预测单元180可包括预测模式确定单元181、运动信息推导单元182和预测样本推导单元183。预测模式确定单元181可确定当前块的预测模式,并且运动信息推导单元182可推导当前块的运动信息。预测样本推导单元183可推导当前块的运动样本。

例如,编码器100的帧间预测单元180可通过运动估计在参考画面的预定区域(搜索区域)中搜索与当前块相似的块,并且推导与当前块的差最小或者等于或小于预定标准的参考块。基于此,可推导指示参考块所在的参考画面的参考画面索引,并且可基于参考块与当前块之间的位置差来推导运动向量。编码器100可在各种预测模式当中确定应用于当前块的模式。编码器100可比较各种预测模式的速率失真(RD)成本并且确定当前块的最优预测模式。

例如,当对当前块应用跳过模式或合并模式时,编码器100可构造如下所述的合并候选列表,并且推导包括在合并候选列表中的合并候选所指示的参考块当中的与当前块的差最小或者等于或小于预定标准的参考块。在这种情况下,可选择与推导的参考块关联的合并候选,并且可生成指示所选合并候选的合并索引信息并且用信号通知给解码器200。可从所选合并候选的运动信息推导当前块的运动信息。

作为另一示例,当对当前块应用(A)MVP模式时,编码器100可构造下面要描述的(A)MVP候选列表并且使用包括在(A)MVP候选列表中的MVP候选当中的所选运动向量预测器(MVP)候选的运动向量作为当前块的MVP。在这种情况下,例如,指示通过运动估计推导的参考块的运动向量可用作当前块的运动向量,并且MVP候选当中的运动向量与当前块的运动向量的差最小的MVP候选可被选择为MVP候选。可推导运动向量差(MVD),其是通过从当前块的运动向量减去MVP而获得的差。在这种情况下,可将关于MVD的信息用信号通知给解码器200。此外,当应用(A)MVP模式时,参考画面索引的值可被包括在参考画面索引信息中。包括参考画面索引值的参考画面索引信息可被单独地用信号通知给解码器200。

在S820中,编码器100可基于预测样本来推导残差样本。编码器100可通过将当前块的原始样本与预测样本比较来推导残差样本。预测信息是与预测过程有关的信息,并且可包括例如预测模式信息(例如,跳过标志、合并标志或模式索引)和关于运动的信息。关于运动的信息可包括候选选择信息(例如,合并索引、mvp标志或mvp索引),其是用于推导运动向量的信息。此外,关于运动的信息可包括关于MVD的信息和/或参考画面索引信息。

此外,关于运动的信息可包括表示是否应用L0预测、L1预测或双预测的信息。残差信息可包括关于残差样本的信息。残差信息可包括关于残差样本的量化的变换系数的信息。

输出比特流可被存储在(数字)存储介质中,或者直接发送到解码器200,或者经由网络发送到解码器200。

如上所述,编码器100可基于参考样本和残差样本来生成重构画面(包括重构样本和重构块)。由编码器100生成重构画面在于推导与解码器200从编码器100执行的过程相同的预测结果。结果,编码效率可通过在编码器100中生成重构画面而增加。因此,编码器100可将重构画面(或重构样本或重构块)存储在存储器中并利用重构画面作为帧间预测的参考画面。如上所述,可进一步应用对重构画面的环路滤波过程。

图10和图11示出根据本公开的实施方式的基于帧间预测的视频/图像解码方法以及根据本公开的实施方式的解码器中的帧间预测单元260。参照图10和图11,解码器200可执行与编码器100所执行的操作对应的操作。解码器200可基于所接收的预测信息对当前块执行预测并且推导预测样本。

步骤S1010至S1030可由解码器200的帧间预测单元260执行,并且可由解码器200的熵解码单元210从比特流获得步骤S1040的残差信息。解码器200的残差处理单元可基于残差信息来推导当前块的残差样本。具体地,解码器200的解量化单元220可通过基于根据残差信息推导的量化的变换系数执行解量化来推导变换系数,并且解码器200的逆变换单元230可通过对变换系数执行逆变换来推导当前块的残差样本。步骤S1050可由解码器200的加法器235或重构单元执行。

具体地,在S1010中,解码器200可基于从编码器100接收的预测信息来确定当前块的预测模式。解码器200的预测模式确定单元261可基于包括在预测信息中的预测模式信息来确定对当前块应用哪一帧间预测模式。

例如,预测模式确定单元261可基于合并标志来确定对当前块应用合并模式还是(A)MVP模式。预测模式确定单元261还可基于模式索引在各种帧间预测模式候选当中选择一个。帧间预测模式候选可包括跳过模式、合并模式和/或(A)MVP模式,或者可包括下面要描述的各种帧间预测模式(例如,仿射合并模式、仿射MVP模式)。

在S1020中,解码器200的运动信息推导单元262可基于预测模式确定单元261所确定的帧间预测模式来推导当前块的运动信息。例如,当对当前块应用跳过模式或合并模式时,运动信息推导单元262可构造下面要描述的合并候选列表并且在包括在合并候选列表中的合并候选当中选择一个合并候选。可基于选择信息(合并索引)来执行选择。运动信息推导单元262可基于选择信息(例如,合并索引)来选择合并候选。可从所选合并候选的运动信息推导当前块的运动信息。换言之,所选合并候选的运动信息可用作当前块的运动信息。

作为另一示例,当对当前块应用(A)MVP模式时,运动信息推导单元262可构造下面要描述的(A)MVP候选列表并且使用包括在(A)MVP候选列表中的MVP候选当中的所选运动向量预测器(MVP)候选的运动向量作为当前块的MVP。运动信息推导单元262可基于上述选择信息(例如,mvp标志或mvp索引)来选择MVP候选的运动向量。在这种情况下,可从关于MVD的信息推导当前块的MVD。可基于当前块的MVP和MVD来推导当前块的运动向量。此外,可基于参考画面索引信息来推导当前块的参考画面索引。当前块的参考画面列表中参考画面索引所指示的画面可被推导为当前块的帧间预测所参考的参考画面。

可在没有候选列表构造的情况下推导当前块的运动信息。当在没有候选列表构造的情况下推导当前块的运动信息时,可根据在预测模式下公开的过程来推导当前块的运动信息。另外,当在没有候选列表构造的情况下推导当前块的运动信息时,候选列表构造可被省略。

在S1030中,预测样本推导单元263可基于当前块的运动信息来生成当前块的预测样本。预测样本推导单元263可基于当前块的参考画面索引来推导参考画面,并且使用参考画面上当前块的运动向量所指示的参考块的样本来推导当前块的预测样本。预测样本推导单元263可对当前块的所有或一些预测样本执行预测样本滤波。

换言之,解码器200的帧间预测单元260可包括预测模式确定单元261、运动信息推导单元262和预测样本推导单元263。解码器可基于从预测模式确定单元261接收的预测模式信息来确定当前块的预测模式,基于从运动信息推导单元262接收的关于运动信息的信息来推导当前块的运动信息(运动向量和/或参考画面索引),并且在预测样本推导单元263中推导当前块的预测样本。为了说明方便,由帧间预测单元260、预测模式确定单元261或预测样本推导单元263执行的操作被统称为解码器200的操作。

在S1040中,解码器200可基于所接收的残差信息来生成当前块的残差样本。在S1050中,解码器200可基于预测样本和残差样本来生成当前块的重构样本并且基于所生成的重构样本来生成重构画面。此后,可进一步应用对重构画面的环路滤波过程。

如上所述,帧间预测过程可包括帧间预测模式确定步骤、根据所确定的预测模式的运动信息推导步骤以及基于所推导的运动信息的预测执行(预测样本生成)步骤。

图12示出根据本公开的实施方式的运动模型的示例。

包括高效视频编码(HEVC)的编码标准技术使用一个运动向量来表示编码块的运动。尽管针对各个块使用一个运动向量的方法可基于每块表示最优运动,但是其实际上可能不是各个像素的最优运动。因此,如果可基于每像素确定最优运动向量,则编码效率可增加。因此,本公开的实施方式描述了使用多个运动模型对视频信号进行编码或解码的运动预测方法。具体地,可使用两个至四个运动向量按照块的每像素或每子块表示运动向量。使用多个运动向量的预测方法可被称为仿射运动预测。

根据本公开的实施方式的运动模型可表示图12所示的运动模型。下面描述聚焦于六个运动模型的仿射运动预测方法。

图13示出根据本公开的实施方式的用于仿射运动预测的控制点运动向量的示例。

如图13所示,仿射运动预测可使用两个控制点运动向量(CPMV)对v

[式1]

v

图14示出应用根据本公开的实施方式的仿射运动预测的块的每各个子块的运动向量的示例。

在编码或解码处理中,可基于每像素或每块确定仿射运动向量场(MVF)。如果基于每像素确定仿射运动向量场,则可基于各个像素值获得运动向量。如果基于每块确定仿射运动向量场,则基于块的中心像素值,可获得对应块的运动向量。在本公开中,如图14所示假设基于每4*4块确定仿射运动向量场(MVF)。然而,这仅是为了描述方便,本公开的实施方式不限于此。图14示出编码块由16*16个样本组成并且基于4*4大小的块来确定仿射运动向量场(MVF)的示例。

图15示出根据本公开的实施方式的在仿射帧间模式下用于当前块的预测的邻近块的示例。

仿射运动预测可包括仿射合并模式(或AF_MERGE)和仿射帧间模式(或AF_INTER)。在仿射帧间模式(AF_INTER)下,在确定2控制点运动向量预测(CPMVP)和CPMV之后,可将与差对应的控制点运动向量差(CPMVD)从编码器100发送到解码器200。仿射帧间模式(AF_INTER)的详细编码处理可如下给出。

步骤1:确定两个CPMVP对的候选

步骤1.1:确定至多12个CPMVP候选组合(参考式2)

[式2]

{(v

在式2中,v

步骤1.2:基于小差值(DV)对CPMVP候选组合进行排序以使用前两个候选(参考式3)

[式3]

DV=|(v

v

步骤2:如果控制点运动向量预测(CPMVP)对候选小于2,则使用AMVP候选列表

步骤3:为两个候选中的每一个确定控制点运动向量预测(CPMVP)并且通过比较RD成本和CPMV来最优地选择具有较小值的候选

步骤4:发送与最优候选和控制点运动向量差(CPMVD)对应的索引

图16示出根据本公开的实施方式的在仿射合并模式下用于当前块的预测的邻近块的示例。

在仿射合并模式(AF_MERGE)下,编码器100可按照如下处理执行编码。

步骤1:按字母顺序扫描当前编码块1600的邻近块A至E(1610、1620、1630、1640和1650),并且基于扫描顺序确定首先编码为仿射预测模式的块作为仿射合并(AF_MERGE)的候选块

步骤2:使用所确定的候选块的控制点运动向量(CPMV)来确定仿射运动模型

步骤3:基于候选块的仿射运动模型来确定当前块1600的控制点运动向量(CPMV)并且确定当前块1600的MVF

图17示出使用应用了根据本公开的实施方式的仿射运动预测的邻近块执行仿射运动预测的块的示例。

例如,如图17所示,如果块A(1720)被编码为仿射模式,则在块A(1720)被确定为候选块之后,可使用块A(1720)的控制点运动向量(CPMV)v2和v3来推导仿射运动模型,然后可确定当前块1700的控制点运动向量(CPMV)v0和v1。可基于当前块1700的控制点运动向量(CPMV)来确定当前块1700的仿射运动向量场(MVF),并且可执行编码。

图18示出根据本公开的实施方式的仿射运动预测操作的流程图的示例。图18所示的仿射运动预测是图10的预测执行步骤S1030的示例。图20所示的各个操作可由解码器200执行。以下描述一种基于解码器200的操作执行仿射预测的方法和装置,但这仅是为了说明方便。因此,本公开的实施方式不限于解码器200。例如,可由编码器执行与图18至图22b所示的操作基本上相同的处理。

在步骤S1810中,解码器200可获得要解码的当前块的仿射运动信息。更具体地,如果解码器200检查要解码的当前块是通过仿射运动预测编码的块,则解码器200可获得仿射运动预测所需的仿射运动信息。例如,仿射运动信息可包括仿射运动预测类型(例如,仿射合并或仿射MVP)、关于仿射运动模型的信息、关于邻近块的信息、关于邻近块是否已被编码为仿射运动预测的信息(例如,仿射标志)、邻近块的运动向量、邻近块的仿射运动向量、关于参考帧的信息(例如,参考帧的索引)中的至少一个。

在步骤S1820中,解码器200可基于在步骤S1810中获得的仿射运动信息对当前块执行运动预测。更具体地,解码器200可从邻近块的仿射运动信息当中生成继承仿射候选列表,然后从继承仿射候选列表当中选择最优仿射运动,从而执行仿射运动预测。所选最优仿射运动可由编码器100所生成的索引指示。另外,解码器200可选择最优仿射运动并且考虑由编码器100生成的预测方向或运动向量差(MVD),从而确定最优预测运动向量。此后,解码器200可从所确定的最优预测运动信息重构预测样本。如步骤S1820中一样从当前块的控制点运动向量生成预测样本的处理可被称为仿射运动补偿(MC)。

如上所述,可在子块级别而非像素级别执行仿射运动预测,这是为了降低复杂度。在多功能视频编码(VVC)标准的联合探索模型(JEM)中实际选择的仿射预测的运动补偿(MC)块大小M*N可如下式4确定。本文中,MC块是从执行仿射运动预测的当前块的控制点运动向量生成的运动向量的单元块,并且可被称为子块。即,MC块可对应于图14所示的各个子块。

[式4]

在式4中,w表示当前块的宽度,h表示当前块的高度,max(a,b)表示输出a或b当中的最大值的算子,abs(a)表示输出绝对值的算子,clip3(a,x,b)可由下式5定义。

[式5]

根据式4,最小MC块大小是4*4,并且如果CPMV的差足够小,则M或N的值可为8或更大。使用上式4确定MC块大小的原因是尽可能避免最小块大小,因为如果MC块大小足够小,则从实现方式的角度,导致大量成本。具体地,在4*4MC块的情况下,由于水平插值的数量和MC所需的参考像素的数量增加,所以从实现方式的角度,成本较高。在实际高效视频编码(HEVC)标准的情况下,帧间预测的最小块大小被限制为4*8或8*4。尽管如果使用上式4,则可自适应地避免MC块大小为4*4的情况,但是没有办法处理实际最差情况。即使在平均情况下,由于大多数块的MC块大小被确定为4*4,所以源自上式4的方法的成本降低效果不足。相反,由于增加了确定MC块大小的处理(根据式4的计算处理),复杂度可增加。本文中,高成本可用作与高编码/解码复杂度基本上相同的含义。

本公开的实施方式提出了一种使用预定义的值作为MC块大小的方法。具体地,可使用以下方法。

MC块大小可使用预定义的值,并且该值可通过包括在画面参数集(PPS)或切片参数集(SPS)中来解码,并且还可被确定为预定义的值而无需解码处理。

MC块大小可为4*4或8*8,并且可使用更大的块大小。然而,通常,如果使用大于8*8的块大小,则编码效率可能劣化,因此使用大于8*8的块大小可能不实际。因此,以下描述4*4或8*8的块大小,但是本公开的实施方式不限于这些大小。如果使用4*4块,则编码复杂度高,但是可维持编码性能。与使用式4的情况相比,很有可能最差情况下的编码复杂度低并且平均情况下的编码复杂度统计上也低。如果使用8*8块,则其编码性能略有损失,但是在编码复杂度方面可极大地受益。

根据本公开的实施方式,可在切片级别确定MC块大小。例如,在作为执行单预测的切片的P切片的情况下,参考帧的数量为1,并且在作为执行双预测的切片的B切片的情况下,参考帧的数量为2。因此,B切片的编码复杂度理论上与P切片的编码复杂度相比可为两倍。由于在编码复杂度方面在B切片中发生最差情况,所以可通过将B切片的MC块大小设定为更大来降低编码复杂度,并且可通过原样维持P切片的MC块大小来使编码性能劣化最小化。

根据本公开的实施方式,可在编码块级别确定MC块大小。例如,如果当前块通过双预测编码,则MC块的大小可被确定为8*8,并且如果当前块通过单预测编码,则MC块的大小可被确定为4*4。在这种情况下,可在最差情况下使编码性能劣化最小化而不会使复杂度增加。

如上所述,在应用于JEM的仿射预测中,仿射合并模式和仿射帧间模式可在满足下表2所示的条件时应用。如表2所示,当块大小等于或大于预定块大小时,可应用仿射预测。这是因为仿射预测通常适合于大块。下表2的条件在MC块大小由式4确定时被优化,并且如果考虑实施方式1中所提出的确定MC块大小的方法则可改变。

[表2]

在表2中,“width”表示当前块的宽度,“height”表示当前块的高度。

当MC块大小被固定到8*8并被使用时,可考虑下表3所示的可用条件。表3的条件与表2的条件之间的差异是仿射合并的附加条件(width>=8&&height>=8)。考虑这一点的原因在于,当不考虑对应条件时,由于MC块大小不是8*8,所以4*16块或16*4块满足width*height>=64的条件,但是在实际操作中可能发生问题。

[表3]

下表4是表3的条件的广义条件的示例。当MC块大小为8*8时,表4的“A”和“C”值可等于或大于表3中确定的值,并且可通过实验确定。“B”值可根据MC块大小来确定。

[表4]

下表5示出根据本公开的实施方式的仿射运动预测条件的另一示例。在这种情况下,A、B和C值可彼此相同或不同。如果A、B和C值彼此相同,则从设计的角度,可存在统一优势。如果A、B和C值彼此不同,则可存在性能优势。A、B和C值可通过实验来确定,但是由于块大小的增加,优选它们基本上被确定为等于或大于现有值。另外,A、B和C值优选等于或大于最小块大小。

[表5]

此实施方式提出了在切片级别或编码块级别确定MC块大小时可应用的条件。如果在切片级别确定MC块大小,则可使用下表6。即,由于要解码的当前块所属的切片是B切片时的块大小可不同于切片是P切片时的块大小,所以可分离并考虑执行仿射预测的条件。在下表6和表7中,A0、A1、B0、B1、C0和C1是可通过实验确定的值,并且优选这些值满足以下条件。

A0>=A1>=MC块大小

B0>=B1>=MC块大小

C0>=C1>=MC块大小

[表6]

如果在块级别确定MC块大小,则可使用下表7,并且其它细节可按照与切片级别相同的方式确定。

[表7]

图19示出根据本公开的实施方式的仿射运动预测操作的流程图的另一示例。图19的流程图更详细地示出图18所示的仿射运动操作的流程图。图19的步骤S1910和S1920可被包括在图18的步骤S1810中,并且图19的步骤S1930和S1940可被包括在图18的步骤S1820中。

在步骤S1910中,解码器200可检查要解码的当前块已通过仿射预测编码。例如,解码器200可检查当前块通过帧间预测编码。此外,解码器200可通过检查运动模型索引来检查当前块具有至少两个控制点,并且基于至少两个控制点的运动向量来执行运动预测。当解码器200检查出当前块通过仿射预测编码时,可执行对仿射预测的可用条件。这在下面参照图20至图22b来描述。

在步骤S1920中,解码器200可获得当前块的控制点运动向量。更具体地,解码器200可获得用于当前块的多个控制点的运动向量。多个控制点的运动向量可被称为控制点运动向量(CPMV)。例如,如果解码器200检查出当前块的仿射预测模式是仿射合并模式,则解码器200可从与当前块相邻的邻近块获得多个控制点的运动向量。此外,如果解码器200检查出当前块的仿射预测模式是仿射帧间模式,则解码器200可从编码器100发送的与当前块相邻的邻近块的控制点运动向量之间的差CPMVD获得当前块的多个控制点的运动向量。根据仿射合并模式和仿射帧间模式获得CPMV的处理可与上面示出的图15和图16以及相关描述一起描述。

在步骤S1930中,解码器200可确定各个子块的运动向量。更具体地,解码器200可确定包括在当前块中的各个子块的运动向量。当前块的各个子块的运动向量可被称为运动向量场(MVF)。例如,各个子块(x,y)的运动向量可由上述式1确定。

根据本公开的实施方式,子块的大小(宽度和高度)可使用预定义的值。例如,子块的大小可被确定为4*4或8*8并且可使用其它值。本文中,4*4表示四个样本布置在子块的行方向和列方向中的每一个上,8*8表示八个样本布置在子块的行方向和列方向中的每一个上。子块的大小可在PPS或SPS解码和确定,或者可使用预定义的值。通过使用预定义的值作为子块的大小,本公开可限制非常小的子块的使用并且省略单独的计算过程,从而降低计算复杂度。

根据本公开的实施方式,各个子块的大小可根据当前块的帧间预测类型不同地设定。例如,如果当前块是通过双预测编码的块,则各个子块的大小可被设定为8*8,如果当前块是通过单预测编码的块,则各个子块的大小可被设定为4*4。此外,如果当前块所属的切片是P切片,则子块的大小可被设定为4*4,如果当前块所属的切片是B切片,则子块的大小可被设定为8*8。作为子块的大小的4*4和8*8仅是示例,可使用各种其它值。

由于双预测具有比单预测更大的编码复杂度,所以本公开可通过在双预测时将子块大小设定为更大来使单预测的编码性能劣化最小化,同时降低编码复杂度。

在步骤S1940中,解码器200可生成当前块的预测样本。更具体地,解码器200可使用步骤S1930中确定的子块的运动向量参考参考画面来生成包括在当前块中的各个样本的样本值。

图20示出检查根据本公开的实施方式的仿射运动预测是否可用的操作的流程图的示例。更具体地,图20示出在图19的步骤S1910中检查当前块的仿射预测的处理的示例。

在步骤S2010中,解码器200可检查当前块的编码模式。更具体地,解码器200可检查与当前块的仿射运动预测有关的编码模式。例如,编码模式可包括仿射合并模式或仿射帧间模式。换言之,解码器200可确定是否通过仿射合并模式或仿射帧间模式中的一个模式对当前块执行仿射运动预测。

在步骤S2020中,解码器200可检查是否满足当前块的大小条件。更具体地,解码器200可根据当前块的编码模式来检查当前块的大小是否满足大小条件。例如,解码器200可确定当前块的宽度和高度是否满足预定义的条件。每编码模式用于仿射运动预测的当前块的大小条件可通过上表2至表7中的至少一个设定。下面参照图21a至图22b详细描述检查大小条件的处理。

在步骤S2030中,解码器200可检查当前块的仿射预测是否可用。更具体地,如果当前块的大小满足步骤S2020中的条件,则解码器200可检查可对当前块执行仿射运动预测。此后,解码器200可进行到图19的步骤S1920,并且可获得当前块的控制点运动向量。

图21a和图21b示出根据本公开的实施方式的基于块大小检查仿射运动预测是否可用的条件的操作的流程图的示例。更具体地,图21a和图21b示出检查是否满足图20的步骤S2020中的大小条件的步骤的示例。

图21a示出设定上述表5的大小条件的情况的示例。在图21a的步骤S2110中,解码器200可确定当前块是否通过仿射合并模式编码。例如,解码器200可确定当前块是否通过仿射合并模式编码或通过仿射帧间模式编码。

如果当前块通过仿射合并模式编码,则解码器200可进行到步骤S2120,并且可检查当前块的大小是否满足根据仿射合并模式的大小条件。例如,如图21a所示,解码器200可确定当前块的宽度是否大于或等于第一参考值A以及当前块的高度是否大于或等于第一参考值A。第一参考值A可被设定为8。

如果当前块未通过仿射合并模式编码(即,如果当前块通过仿射帧间模式编码),则解码器200可进行到步骤S2125,并且可确定当前块的大小是否满足根据仿射帧间模式的大小条件。例如,如图21a所示,解码器200可确定当前块的宽度是否大于或等于第二参考值B以及当前块的高度是否大于或等于第二参考值B。第二参考值B可被设定为16。

如果当前块的大小满足步骤S2120或S2125的条件,则解码器200可进行到步骤S2130,并且检查当前块的仿射运动预测可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为1,并且可进行到下一步骤。

如果当前块的大小不满足步骤S2120或S2125的条件,则解码器200可进行到步骤S2140,并且检查当前块的仿射运动预测不可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为0,不执行仿射运动预测,并且可执行其它操作。

图21b示出设定上述表3和表4的大小条件的情况的示例。在图21b的步骤S2160中,解码器200可确定当前块是否通过仿射合并模式编码。例如,解码器200可确定当前块是否通过仿射合并模式编码或通过仿射帧间模式编码。

如果当前块通过仿射合并模式编码,则解码器200可进行到步骤S2170,并且可检查当前块的大小是否满足根据仿射合并模式的大小条件。例如,如图21b所示,解码器200可确定当前块的宽度和高度的乘积是否大于或等于第一仿射合并参考值A、当前块的宽度是否大于或等于第二仿射合并参考值B以及当前块的高度是否大于或等于第二仿射合并参考值B。第一仿射合并参考值可被设定为64,第二仿射合并参考值可被设定为8。第一仿射合并参考值可被设定为第二仿射合并参考值的平方,并且第一仿射合并参考值和第二仿射合并参考值可根据实施方式不同地设定。

如果当前块未通过仿射合并模式编码(即,如果当前块通过仿射帧间模式编码),则解码器200可进行到步骤S2175,并且可根据仿射帧间模式确定当前块的大小是否满足大小条件。例如,如图21b所示,解码器200可确定当前块的宽度是否大于或等于仿射帧间参考值C以及当前块的高度是否大于或等于仿射帧间参考值C。仿射帧间参考值C可被设定为16。

如果当前块的大小满足步骤S2170或S2175的条件,则解码器200可进行到步骤S2180,并且检查对当前块的仿射运动预测可用。例如,解码器200将表示当前块的仿射运动预测可用的标志设定为1,并且可进行到下一步骤。

如果当前块的大小不满足步骤S2170或S2175的条件,则解码器200可进行到步骤S2190,并且检查当前块的仿射运动预测不可用。例如,解码器200将表示当前块的仿射运动预测可用的标志设定为0,不执行仿射运动预测,并且可执行其它操作。

图22a和图22b示出根据本公开的实施方式的基于块大小检查仿射运动预测是否可用的条件的操作的流程图的示例。更具体地,图22a和图22b示出检查是否满足图20的步骤S2020中的大小条件的步骤的另一示例。

图22a示出设定表6的大小条件的情况的示例,其中如上所述在切片级别确定块大小。在图22a的步骤S2210中,解码器200可确定当前块是否通过仿射合并模式编码。例如,解码器200可确定当前块是否通过仿射合并模式编码或通过仿射帧间模式编码。

如果当前块通过仿射合并模式编码,则解码器200可进行到步骤S2220,并且可检查当前块的大小是否满足根据仿射合并模式的大小条件。例如,如图22a所示,根据仿射合并模式的大小条件是当前块的宽度(w)和高度(h)的乘积大于或等于第三参考值A0、当前块的宽度(w)大于或等于第四参考值B0、当前块的高度(h)大于或等于第四参考值B0并且当前块所属的切片是B切片的情况,或者当前块的宽度(w)和高度(h)的乘积大于或等于第五参考值A1、当前块的宽度(w)大于或等于第六参考值B1、当前块的高度(h)大于或等于第六参考值B1并且当前块所属的切片是P切片的情况。第三参考值A0可被设定为大于或等于第五参考值A1,并且第五参考值A1可被设定为大于或等于子块的大小(A0>=A1>=MC块大小)。此外,第四参考值B0可被设定为大于或等于第六参考值B1,并且第六参考值B1可被设定为大于或等于子块的大小(B0>=B1>=MC块大小)。

如果当前块未通过仿射合并模式编码(即,如果当前块通过仿射帧间模式编码),则解码器200可进行到步骤S2225,并且可确定当前块的大小是否满足根据仿射帧间模式的大小条件。例如,如图22a所示,根据仿射帧间模式的大小条件是当前块所属的切片是B切片、当前块的宽度(w)大于或等于第七参考值C0并且当前块的高度(h)大于或等于第七参考值C0的情况,或者当前块所属的切片是P切片、当前块的宽度(w)大于或等于第八参考值C1并且当前块的高度(h)大于或等于第八参考值C1的情况。第七参考值C0可被设定为大于或等于第八参考值C1,并且第八参考值C1可被设定为大于或等于子块的大小(C0>=C1>=MC块大小)。

如果当前块的大小满足步骤S2220或S2225的条件,则解码器200可进行到步骤S2230,并且检查当前块的仿射运动预测可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为1,并且可进行到下一步骤。

如果当前块的大小不满足步骤S2220或S2225的条件,则解码器200可进行到步骤S2240,并且检查当前块的仿射运动预测不可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为0,不执行仿射运动预测,并且可执行其它操作。

图22b示出设定表7的大小条件的情况的示例,其中如上所述在块级别确定块大小。在图22b的步骤S2260中,解码器200可确定当前块是否通过仿射合并模式编码。例如,解码器200可确定当前块是否通过仿射合并模式编码或通过仿射帧间模式编码。

如果当前块通过仿射合并模式编码,则解码器200可进行到步骤S2270,并且可检查当前块的大小是否满足根据仿射合并模式的大小条件。

如图22b所示,根据仿射合并模式的大小条件是当前块的宽度(w)和高度(h)的乘积大于或等于第三参考值A0、当前块的宽度(w)大于或等于第四参考值B0、当前块的高度(h)大于或等于第四参考值B0并且当前块通过双预测编码的情况,或者当前块的宽度(w)和高度(h)大于或等于第五参考值A1、当前块的宽度(w)大于或等于第六参考值B1、当前块的高度(h)大于或等于第六参考值B1并且当前块通过单预测编码的情况。第三参考值A0可被设定为大于或等于第五参考值A1,并且第五参考值A1可被设定为大于或等于子块的大小(A0>=A1>=MC块大小)。此外,第四参考值B0可被设定为大于或等于第六参考值B1,并且第六参考值B1可被设定为大于或等于子块的大小(B0>=B1>=MC块大小)。

如果当前块未通过仿射合并模式编码(即,如果当前块通过仿射帧间模式编码),则解码器200可进行到步骤S2275,并且确定当前块的大小是否满足根据仿射帧间模式的大小条件。例如,如图22b所示,根据仿射帧间模式的大小条件是当前块通过双预测编码、当前块的宽度(w)大于或等于第七参考值C0并且当前块的高度(h)大于或等于第七参考值C0的情况,或者当前块通过单预测编码、当前块的宽度(w)大于或等于第八参考值C1并且当前块的高度(h)大于或等于第八参考值C1的情况。第七参考值C0可被设定为大于或等于第八参考值C1,并且第八参考值C1可被设定为大于或等于子块的大小(C0>=C1>=MC块大小)。

如果当前块的大小满足步骤S2270或S2275的条件,则解码器200可进行到步骤S2280,并且检查当前块的仿射运动预测可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为1,并且可进行到下一步骤。

如果当前块的大小不满足步骤S2270或S2275的条件,则解码器200可进行到步骤S2290,并且检查当前块的仿射运动预测不可用。例如,解码器200将表示当前块的仿射运动预测是否可用的标志设定为0,不执行仿射运动预测,并且可执行其它操作。

图23示出作为应用了本公开的实施方式的视频编码系统的示例。

视频编码系统可包括源装置和接收装置。源装置可通过数字存储介质或网络将编码的视频/图像信息或数据以文件或流形式传送至接收装置。

源装置可包括视频源、编码设备和发送器。接收装置可包括接收器、解码设备和渲染器。编码设备可被称为视频/图像编码设备,解码设备可被称为视频/图像解码设备。发送器可被包括在编码设备中。接收器可被包括在解码设备中。渲染器可包括显示单元,该显示单元可被配置为单独的装置或外部组件。

视频源可通过视频/图像的捕获、合成或生成处理来获取视频/图像。视频源可包括视频/图像捕获装置和/或视频/图像生成装置。例如,视频/图像捕获装置可包括一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。例如,视频/图像生成装置可包括计算机、平板和智能电话,并且可(以电方式)生成视频/图像。例如,可通过计算机等来生成虚拟视频/图像,并且在这种情况下,视频/图像捕获处理可由生成相关数据的处理代替。

编码设备可对输入的视频/图像进行编码。为了压缩和编码效率,编码设备可执行包括预测、变换、量化等的一系列过程。编码的数据(编码的视频/图像信息)可按比特流形式输出。

发送器可通过数字存储介质或网络将以比特流输出的编码的视频/图像信息或数据以文件或流形式传送至接收装置的接收器。数字存储介质可包括诸如USB、SD、CD、DVD、蓝光、HDD、SSD等的各种存储介质。发送器可包括用于通过预定的文件格式生成媒体文件的元件,并且可包括用于通过广播/通信网络传输的元件。接收器可提取比特流并将所提取的比特流传送至解码设备。

解码设备执行与编码设备的操作对应的一系列过程(包括解量化、逆变换、预测等)以将视频/图像解码。

渲染器可渲染解码的视频/图像。渲染的视频/图像可通过显示单元显示。

图24示出作为应用了本公开的实施方式的视频流系统的示例。

参照图24,应用了本公开的内容流系统可大致包括编码服务器、流服务器、web服务器、媒体存储装置、用户装置和多媒体输入装置。

编码服务器将从包括智能电话、相机、摄像机等的多媒体输入装置输入的内容压缩为数字数据以用于生成比特流并将该比特流发送到流服务器。作为另一示例,当包括智能电话、相机、摄像机等的多媒体输入装置直接生成比特流时,编码服务器可被省略。

可通过应用了本公开的编码方法或比特流生成方法来生成比特流,并且流服务器可在发送或接收比特流的处理中暂时存储比特流。

流服务器基于用户请求通过web服务器将多媒体数据发送到用户装置,并且web服务器用作告知用户存在什么服务的媒介。当用户向web服务器请求期望的服务时,web服务器将所请求的服务传送至流服务器并且流服务器将多媒体数据发送到用户。在这种情况下,内容流系统可包括单独的控制服务器,并且在这种情况下,控制服务器用于控制内容流系统中的各个装置之间的命令/响应。

流服务器可从媒体存储装置和/或编码服务器接收内容。例如,当流服务器从编码服务器接收内容时,流服务器可实时接收内容。在这种情况下,流服务器可将比特流存储预定时间,以便提供平滑的流服务。

用户装置的示例可包括蜂窝电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航、石板PC、平板PC、超级本、可穿戴装置(例如,智能手表、智能眼镜或头戴式显示器(HMD)等)等。

内容流系统中的各个服务器可作为分布式服务器操作,并且在这种情况下,各个服务器接收的数据可被分布并被处理。

如上所述,本公开中描述的实施方式可在处理器、微处理器、控制器或芯片上实现并执行。例如,各个图中所示的功能单元可在计算机、处理器、微处理器、控制器或芯片上实现并执行。

另外,本公开的解码器和编码器可被包括在多媒体广播发送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监视相机、视频聊天装置、诸如视频通信的实时通信装置、移动流装置、存储介质、摄像机、视频点播(VoD)服务提供装置、OTT(顶置)视频装置、互联网流服务提供装置、3维(3D)视频装置、视频电话视频装置、运输工具终点站(例如,车辆终点站、飞机终点站、船只终点站等)和医疗视频装置等中,并且可用于处理视频信号或数据信号。例如,顶置(OTT)视频装置可包括游戏机、蓝光播放器、互联网接入TV、家庭影院系统、智能电话、平板PC、数字视频记录仪(DVR)等。

另外,应用了本公开的处理方法可按照由计算机执行的程序的形式生成,并且可被存储在计算机可读记录介质中。具有根据本公开的数据结构的多媒体数据也可被存储在计算机可读记录介质中。计算机可读记录介质包括存储计算机可读数据的所有类型的存储装置和分布存储装置。例如,计算机可读记录介质可包括蓝光盘(BD)、通用串行总线(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁带、软盘和光学数据存储装置。此外,计算机可读记录介质包括以载波的形式实现的介质(例如,经由互联网的传输)。此外,通过编码方法生成的比特流可被存储在计算机可读记录介质中或者通过有线/无线通信网络发送。

另外,本公开的实施方式可通过程序代码被实现为计算机程序产品,该程序代码可通过本公开的实施方式在计算机上执行。程序代码可被存储在计算机可读载体上。

在上述实施方式中,本公开的组件和特征以预定形式组合。除非明确地另外指出,否则各个组件或特征应该被视为可选的。各个组件或特征可被实现为不与其它组件或特征关联。此外,本公开的实施方式可通过将一些组件和/或特征关联来配置。本公开的实施方式中描述的操作顺序可改变。任何实施方式的一些组件或特征可被包括在另一实施方式中或者由与另一实施方式对应的组件和特征代替。显而易见,权利要求中未明确引用的权利要求被组合以形成实施方式,或者在申请之后通过修改被包括在新的权利要求中。

本公开的实施方式可由硬件、固件、软件或其组合实现。在通过硬件实现的情况下,根据硬件实现方式,本文所描述的示例性实施方式可使用一个或更多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器等来实现。

在通过固件或软件实现的情况下,本公开的实施方式可按照执行上述功能或操作的模块、过程、函数等的形式实现。软件代码可被存储在存储器中并由处理器执行。存储器可位于处理器内部或外部,并且可通过各种已知手段向处理器发送/从处理器接收数据。

对于本领域技术人员而言显而易见的是,在不脱离本公开的基本特性的情况下,本公开可按其它特定形式具体实现。因此,上述详细描述在所有方面均不应被解释为限制性的,而是应该示例性地考虑。本公开的范围应该由所附权利要求的合理解释确定,并且本公开的等同范围内的所有修改均被包括在本公开的范围内。

工业实用性

以上,出于例示性目的公开了本公开的优选实施方式,并且以下,本领域技术人员将在所附权利要求中公开的本公开的技术精神和技术范围内进行各种其它实施方式的修改、改变、替代或添加。

相关技术
  • 使用仿射运动预测来处理视频信号的方法和装置
  • 在图像编码系统中使用构造的仿射MVP候选基于仿射运动预测的图像解码方法和装置
技术分类

06120112525076