用于处理视频序列帧的编码器、解码器、计算机程序和计算机程序产品

文档序号:1449636 发布日期:2020-02-18 浏览:16次 >En<

阅读说明:本技术 用于处理视频序列帧的编码器、解码器、计算机程序和计算机程序产品 (Encoder, decoder, computer program and computer program product for processing frames of a video sequence ) 是由 赵志杰 马克斯·布莱瑟 马蒂亚斯·维恩 于 2017-06-30 设计创作,主要内容包括:本发明提供了一种用于对视频序列帧进行编码的编码器及对应的解码器。所述编码器包括分区单元和熵编码单元。所述分区单元用于:接收所述帧的当前块;获得包括表示一条或多条候选几何分区(geometric partitioning,简称GP)线路的线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块的信息生成的;确定将所述当前块分区为两段的最终GP线路;从所述一条或多条GP线路的列表中选择一条GP线路,以获得选定的GP线路;为所述当前块生成GP参数,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息。所述熵编码单元用于对所述GP参数进行编码。(The invention provides an encoder and a corresponding decoder for encoding frames of a video sequence. The encoder includes a partition unit and an entropy encoding unit. The partition unit is to: receiving a current block of the frame; obtaining a list comprising line information representing one or more candidate Geometric Partitioning (GP) lines, wherein each of the one or more candidate GP lines is generated based on information of one or more candidate neighboring blocks of the current block; determining a final GP route for partitioning the current block into two segments; selecting one GP route from the list of one or more GP routes to obtain the selected GP route; generating GP parameters for the current block, wherein the GP parameters include offset information indicating an offset between the final GP route and the selected GP route. The entropy coding unit is used for coding the GP parameters.)

用于处理视频序列帧的编码器、解码器、计算机程序和计算机 程序产品

技术领域

本发明涉及一种用于处理视频序列帧的编码器和解码器。所述编码器和解码器特别设计用于处理视频序列的块,所述视频序列使用相邻块的信息。

背景技术

大多数视频编码技术使用预测加残差编码来模拟视频图像。对每个帧都是基于分区进行预测。也就是说,每个帧被分区为块,然后每个块被分区为两段、三段或四段。例如,四叉树分区将块分割为四个部分。

如图1所示,可以通过不同的方式对块进行分区。在图1中,将移动前景对象和移动背景的简单场景进行可视化。HEVC的四叉树PU分区,以及相关的四叉树-二叉树分区法是矩形块分区的代表。几何分区是通过将具有直线的块分割成两段(也称为楔形)来实现的。对于几何运动分区,每个块的分区附带信息由行参数组成,所述行参数指定如何将块分割成两段。这种线参数可以用两个坐标对、距离块中心的角度和距离等来指定,这增加了编码器和解码器的编码负载。

发明内容

鉴于上述问题和缺点,本发明旨在改进传统方法。本发明的目的在于提供一种编码器和解码器以及各自的编码方法和解码方法,以减少与视频帧中块的分区结构相关的发送附带信息。

本发明实施例在所附的独立权利要求中定义。本发明的有利实现方案在从属权利要求中进一步定义。特别地,本发明提出了分区单元。

本发明的第一方面提供了一种用于对视频序列帧进行编码的编码器。所述编码器包括分区单元和熵编码单元。所述分区单元用于接收所述帧的当前块;获得包括表示一条或多条候选几何分区(geometric partitioning,简称GP)线路的线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块的信息生成的;确定将所述当前块分区为两段的最终GP线路;从所述一条或多条(例如,两条或多条)GP线路的列表中选择一条GP线路,以获得选定的GP线路;为所述当前块生成GP参数,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息。所述熵编码单元用于对所述GP参数进行编码。对于“几何分区”一词,本申请中使用的缩写可以是“GP”或“GMP”,可以互换使用。

通过所述偏移信息,本发明将与分区结构相关的信号通知的附带信息最小化。

根据第一方面,在所述编码器的第一种实现方式中,所述列表包括所述一个或多条候选GP线路的每条候选GP线路的候选GP线路特定线路信息,所述候选GP线路特定线路信息可以包括以下信息中的任一种:

(1)指示所述一条或多条候选GP线路各自的候选GP线路指示起点的坐标(x,y)和指示所述一条或多条候选GP线路各自的候选GP线路指示终点的坐标;

(2)所述一条或多条候选GP线路各自的候选GP线路与所述当前块的中心之间的距离,以及所述一条或多条候选GP线路各自的候选GP线路的角度。

上述信息(1)是一种基于硬件友好整数的实现方式,因为交点的坐标为整数值,且硬件实现总是优于整数运算。

根据第一方面的第一种实现方式,在所述编码器的第二种实现方式中:

所述最终GP线路与所述选定的GP线路之间的偏移包括所述选定的GP线路的起点与所述最终GP线路的起点之间的偏移,以及所述选定的GP线路的终点与所述最终GP线路的终点之间的偏移。

根据第一方面的任一种实现方式,在所述编码器的第三种实现方式中:

(i)所述候选相邻块的信息包括对所述候选相邻块进行分区的相邻GP线路的信息,所述候选GP线路是将所述相邻GP线路扩展到所述当前块生成的;和/或

(ii)所述候选相邻块的信息包括将所述候选相邻块分区为两个矩形段的相邻水平或相邻竖直线路的信息,所述候选GP线路是通过将所述相邻水平或相邻竖直线路扩展至所述当前块生成的;和/或

(iii)所述候选相邻块的信息包括所述相邻块的内部预测模式,所述候选GP线路通过所述内部预测模式的分析生成;和/或

(iv)所述候选相邻块的信息包括所述相邻块的纹理部件或运动向量场,所述候选GP线路是通过利用所述纹理部件或运动向量场对所述相邻块进行分段而生成的,以获得对所述候选相邻块进行分区并将所述相邻GP线路扩展到所述当前块的相邻GP线路。

通过候选相邻块(iii)-(iv)中的任意信息,即使所述相邻块未被分区,也可以生成候选GP线路。

根据第一方面的任意一种实现方式,在所述编码器的第四种实现方式中,所述列表包括两条或更多条候选GP线路,其中:

所述分区单元用于从所述最接近所述最终GP线路的列表中选择所述候选GP线路作为选择的GP线路;或

所述分区单元用于从所述列表中选择使得速率失真最小化的候选GP线路作为选定的GP线路。

根据第一方面的任一种实现方式,在所述编码器的第五种实现方式中,所述GP参数还包括所述选定的GP线路的信息。

根据第一方面的第五种实现方式,在所述编码器的第六种实现方式中:

所述选定的GP线路的信息包括与所述选定的GP线路对应的选定相邻块的块索引;或

所述列表包括两条或两条以上候选GP线路,所述候选GP线路特定线路信息还包括每个所述候选GP线路的线路索引,所述选定的GP线路的信息包括所述选定的GP线路的线路索引。

根据第一方面的任一种实现方式,在所述编码器的第七种实现方式中:

所述候选相邻块为所述当前块的一个默认相邻块。

根据第一方面的任一种实现方式,在所述编码器的第八种实现方式中,所述分区单元用于通过以下方式确定所述最终GP线路:

从所述列表中选择候选GP线路作为初始GP线路;

重复修改所述选定初始GP线路,以获得修改后的GP线路,计算所述修改后的GP线路的率失真成本,若所述修改后的GP线路的率失真成本小于或等于阈值,则选择所述修改后的GP线路作为所述最终GP线路;和/或

重复修改所述选定初始GP线路,以获得多条修改后的GP线路,计算所述多条修改后的GP线路中每个线路的速率失真成本,并选择速率失真成本最小的修改后的GP线路。

根据第一方面的任一种实现方式,在所述编码器的第九种实现方式中,所述偏移信息包括步长和量化偏移值,其中,所述最终GP线路和所述选定的GP线路之间的偏移对应于所述步长和量化偏移值的乘积。

通过步长和量化偏移量值,进一步将与分区结构相关的发送附带信息最小化。

本发明的又一方面提供了一种用于对视频序列帧进行编码的编码器。所述编码方法包括:接收所述帧的当前块,获得包括表示一个或多个候选几何分区(geometricpartitioning,简称GP)线路的线路信息的列表,其中,所述一个或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块的信息生成的;确定将所述当前块分割成两段的最终GP线路;从所述一个或多个(例如,两个或多个)GP线路的列表中选择GP线路,以获得选定的GP线路;为所述当前块生成GP参数,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息;对所述GP参数进行编码。

本发明又一方面的编码方法的实现方式的特征与第一方面的编码器的各个实现方式的特征相对应。

本发明第二方面提供了一种用于对视频序列中的帧进行解码的解码器,包括:熵解码单元和分区单元;

所述熵解码单元用于对所述当前块的编码几何分区(geometric partitioning,简称GP)参数进行解码,其中,所述编码GP参数包括指示最终GP线路和选定的GP线路之间的偏移的偏移信息;

所述分区单元用于:生成包含表示一条或多条候选GP线路的线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块中的每一个候选相邻块的信息生成的;从一条或多条GP线路的列表中选择GP线路,以获得选定的GP线路;根据所述解码后的GP参数和所述选定的GP线路,获得将所述当前块分区为两段的所述最终GP线路,其中,所述GP参数包括指示所述最终GP线路和所述选定的GP线路之间的偏移的偏移信息。

通过所述偏移信息,本发明将与分区结构相关的信号通知的附带信息最小化。

根据第二方面的任一种实现方式,在所述编码器的第一种实现方式中,所述一个或多条候选GP线路的每条候选GP线路在所述列表中包括候选GP线路特定线路信息,所述候选GP线路特定线路信息可以包括以下信息中的任一种:

(1)指示所述一条或多条候选GP线路各自的候选GP线路指示起点的坐标(x,y)和指示所述一条或多条候选GP线路各自的每条候选GP线路指示终点的坐标;

(2)所述一条或多条候选GP线路各自的候选GP线路与所述当前块的中心之间的距离,以及所述一条或多条候选GP线路各自的候选GP线路的角度。

上述信息(1)是一种基于硬件友好整数的实现方式,因为交点的坐标为整数值,且硬件实现总是优于整数运算。

根据第二方面的第一种实现方式,在所述编码器的第二种实现方式中,所述最终GP线路与所述选定的GP线路之间的偏移包括所述选定的GP线路的起点与所述最终GP线路的起点之间的偏移,以及所述选定的GP线路的终点与所述最终GP线路的终点之间的偏移。

根据第二方面的任一种实现方式,在所述编码器的第三种实现方式中:

(i)所述候选相邻块的信息包括对所述候选相邻块进行分区的相邻GP线路的信息,所述候选GP线路是将所述相邻GP线路扩展到所述当前块生成的;和/或

(ii)所述候选相邻块的信息包括将所述候选相邻块分区为两个矩形段的相邻水平或相邻竖直线路的信息,所述候选GP线路是通过将所述相邻水平或相邻竖直线路扩展至所述当前块生成的;和/或

(iii)所述候选相邻块的信息包括所述相邻块的内部预测模式,所述候选GP线路通过所述内部预测模式的分析生成;和/或

(iv)所述候选相邻块的信息包括所述相邻块的纹理部件或运动向量场,所述候选GP线路通过以下步骤生成:利用所述纹理部件或所述运动向量场对所述相邻块进行分段,以获得对所述候选相邻块进行分区的相邻GP线路;将所述相邻GP线路扩展到所述当前块中。

通过候选相邻块(iii)-(iv)中的任意信息,即使所述相邻块未被分区,也可以生成候选GP线路。

根据第二方面的任一种实现方式,在所述编码器的第四种实现方式中,所述编码GP参数还包括所述选定的GP线路的信息。

根据第二方面的任一种实现方式,在所述编码器的第五种实现方式中:

所述选定的GP线路的信息为所述选定的GP线路的线路索引;

所述候选GP线路特定线路信息还包括线路索引;

所述候选相邻块为所述当前块的多个相邻块中的每一个;

所述分区单元用于根据所述选定的GP线路的线路索引作为所述选定的GP线路,从所述列表中选择候选GP线路,以获得选定的GP线路。

根据第二方面的第四种实现方式,在所述编码器的第六种实现方式中:

所述选定的GP线路的信息是与所述选定的GP线路对应的选定相邻块的块索引;

所述当前块的候选相邻块为所述选定相邻块;所述分区单元用于将所述候选GP线路作为所述选定的GP线路,以获得选定的GP线路。

根据第二方面的任一种实现方式,在所述编码器的第七种实现方式中:

所述候选相邻块为所述当前块的一个默认相邻块;

所述分区单元用于将生成的候选GP线路作为所述选定的GP线路,以获得选定的GP线路。

根据第二方面的任一种实现方式,在所述编码器的第八种实现方式中,所述偏移信息包括步长和量化偏移值,其中,所述最终GP线路和所述选定的GP线路之间的偏移是根据所述步长和所述量化偏移值的乘积来确定的。

通过步长和量化偏移量值,进一步将与分区结构相关的发送附带信息最小化。

本发明的另一方面提供了一种用于对视频序列中的帧进行解码的解码方法,所述解码方法包括:对所述当前块的编码几何分区(geometric partitioning,简称GP)参数进行解码,其中,所述编码GP参数包括指示最终GP线路和选定的GP线路之间的偏移的偏移信息;生成包含表示一条或多条候选GP线路的线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块的每个候选相邻块的信息生成的;从所述一条或多条GP线路的列表中选择GP线路,以获得所述选择的GP线路;基于所述解码后的GP参数和所述选定的GP线路,获得将所述当前块分割成两段的所述最终GP线路,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息。

本发明又一方面的解码方法的实现方式的特征与第二方面的解码器的各个实现方式的特征相对应。

本发明第三方面提供了另一种用于对视频序列中的帧进行编码的编码器,包括处理器,所述处理器用于:

接收所述帧的当前块;

获得包括表示一条或多条候选几何分区(geometric partitioning,简称GP)线路的线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于所述当前块的一个或多个候选相邻块的信息生成的;

确定将所述当前块分区为两段的最终GP线路;

从所述一条或多条(两条或多条)GP线路的列表中选择一条GP线路,以获得选定的GP线路;

为所述当前块生成GP参数,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息;

对所述GP参数进行编码。

本发明第四方面提供了另一种用于对视频序列中的帧进行解码的解码器,包括处理器,所述处理器用于:

对所述当前块的编码几何分区(geometric partitioning,简称GP)参数进行解码,其中,所述编码GP参数包括指示最终GP线路和选定的GP线路之间的偏移的偏移信息;

生成包括表示一条或多条候选GP线路信息的列表,其中,所述一条或多条候选GP线路中的每条候选GP线路是基于每个所述当前块的一个或多个候选相邻块的信息生成的;

从所述一条或多条(两条或多条)GP线路的列表中选择一条GP线路,以获得选定的GP线路;

基于所述解码后的GP参数和所述选定的GP线路,获得将所述当前块分区为两段的所述最终GP线路,其中,所述GP参数包括指示所述最终GP线路和所述选定的GP线路之间的偏移的偏移信息。

本发明第五方面提供了一种计算机程序,所述计算机程序具有程序编码方式,用于在计算机或数字信号处理器上执行所述程序时,执行本发明第一方面所述的所有步骤。

本发明第六方面提供了一种计算机程序,所述计算机程序产品具有计算机可读介质,所述计算机可读介质存储有程序编码方式,用于在计算机上或由数字信号处理器执行所述程序时,执行本发明第一方面所述的所有步骤。

本发明第七方面提供了一种计算机程序,所述计算机程序具有程序编码方式,用于在计算机或数字信号处理器上执行所述程序时,执行本发明第二方面所述的所有步骤。

本发明第八方面提供了一种计算机程序,所述计算机程序产品具有计算机可读介质,所述计算机可读介质存储有程序编码方式,用于在计算机上或由数字信号处理器执行所述程序时,执行本发明第二方面所述的所有步骤。

附图说明

结合所附附图,下面具体实施例的描述将阐述上述本发明的各方面及其实现方式,其中:

图1示出了传统分区方法的示例;

图2示出了根据本发明实施例的一种解码器;

图3a示出了用于帧内预测的编码器的分区单元框图;

图3b示出了用于内部预测的编码器的分区单元框图;

图4示出了根据本发明实施例的当前块的相邻块;

图5示出了根据本发明实施例的相邻块的信息生成候选GP线路的示例;

图6示出了根据本发明实施例的相邻块的信息生成候选GP线路的另一示例;

图7示出了根据本发明实施例的相邻块的信息生成候选GP线路的另一示例;

图8示出了根据本发明实施例的相邻块的信息生成候选GP线路的另一示例;

图9示出了本发明实施例提供的一种解码器;

图10a示出了用于帧内预测的解码器的分区单元框图;

图10b示出了用于内部预测的解码器的分区单元框图;

图11示出了对GP中分别的GMP参数包含的标志分别进行解码的过程。

具体实施方式

结合各种附图描述了用于使用帧内预测编码对图像进行编码的装置、方法和程序产品的示意性实施例。尽管所述描述提供了可能实现方式的详细示例,但需要说明的是,这些详细信息旨在提供示例,绝不意在限制本申请的范围。

一个实施例/示例中提到的任何术语均适用于其它实施例/示例。一个特定实施例/示例中可能会参考其它实施例/示例。

本发明涉及一种用于处理视频序列的帧的编码器、解码器、计算机程序和计算机程序产品。

实施例1:编码器

图2示出了用于对视频序列的帧进行编码的编码器的示例。在图2中,用于运动估计和运动补偿的几何块分区由分区单元(例如,分区器)200生成。

所述分区单元200与用于帧内预测的运动估计单元202和运动补偿单元201以用于内部预测的内部估计/预测单元203连接。由于GP的分区和运动/帧内估计可以被认为是耦合优化问题,通常以迭代方式执行,因此分区单元200与运动/帧内估计之间的信息可以在两个方向上流动。

在一个示例中,所述分区单元200还可以对原始输入图像进行分析,以获得初始分区以提高编码器性能。使用所述块分区,进行分段运动估计或帧内估计,并计算率失真代价。执行分区细化步骤,然后执行另一运动估计或运动估计细化或帧内估计步骤。所述迭代过程可以持续固定数量的周期,或者直到满足特定的率失真阈值。

图3a示出了用于帧内预测的所述分区单元200的框图。图3b示出了用于内部预测的所述分区单元200的框图。所述分区单元200的方面被虚线包围。所述分区单元200的输入为所述当前重建图像以及与所述重建图像相关的所有附带信息,例如,所述相邻块的帧内预测模式、运动矢量和分区信息。

本发明的主要方面涉及如图3a和图3b所示的所述分区单元200以及所述分区单元200生成的GP参数的熵编码。

相应地,本发明的编码器主要包括分区单元和熵编码单元。所述分区单元用于为当前块生成GP(几何分区)参数,而所述熵编码单元用于对所述GP参数进行编码。

为了生成所述GP参数,所述分区单元可以用于执行如下步骤301-306:

步骤301:接收帧的当前块。

步骤302:获得包含表示一条或多条候选GP线路的线路信息的列表。

所述列表可以采用不同的形式或格式,例如,表格、信息序列等。

所述分区单元可以获得所述列表,例如,通过生成所述列表或通过从其本地存储器(内部或外部)读取所述列表。

每条候选GP线路可以根据当前块的一个或多个候选相邻块的信息生成。如图4所示,相邻块是与所述当前块相邻的块,并按照编码顺序位于所述当前块之前。所述相邻块的大小可以与所述当前块相同,也可以与所述当前块不同。所述候选GP线路的数量可以取决于可用相邻块的数量。

可选地,所述候选相邻块可以为所述当前块的一个默认相邻块。此时,所述列表中仅有一条基于默认相邻块生成的候选GP线路,在以下步骤304中,将唯一一条候选GP线路视为选定的GP线路。由于解码器也知道所述默认相邻块,因此在以下步骤305中,不需要携带要发送给所述解码器的所述GP参数中所述选定的GP线路的任何信息。

所述默认相邻块可以根据所述当前块在当前帧内的位置确定。例如,所述默认相邻块在所述当前块周围具有固定位置,例如,在所述当前块的左侧、右侧或顶部。

步骤303:确定将所述当前块分区为两段的最终GP线路。

所述分区单元可以用于通过执行子步骤303a-303b确定所述最终GP线路:

303a:从所述列表中选择(例如,随机选择)候选GP线路作为初始GP线路;

303b:重复修改所述选定初始GP线路,以获得修改后的GP线路;计算所述修改后的GP线路的率失真成本;若所述修改后的GP线路的率失真成本小于或等于阈值,则选择所述修改后的GP线路作为所述最终GP线路。

可选地,所述分区单元还可以用于通过执行上述子步骤303a以及以下子步骤303c-303d确定最终GP线路:

303c:重复修改所述选定初始GP线路,以获得多条修改后的GP线路;计算所述多条修改后的GP线路中每个线路的速率失真代价;

303d:选择速率失真代价最小的修改后的GP线路。

可选地,所述分区单元用于通过对所述当前块的原始纹理(即,基于视频内容)进行分析,以获得所述最终GP。

步骤303可以在步骤302之前或之后执行。

步骤304:从所述一条或多条GP线路的列表中选择GP线路,以获得选定的GP线路。

如上述步骤302中所述,所述列表可以涉及一条或多条候选GP线路。在前一种情况下,可以基于一个相邻块或一个默认相邻块生成一条候选GP线路。

如果所述列表包括两条或多条候选GP线路,所述分区单元用于通过不同的方式从所述列表中选择所述候选GP线路。例如,所述分区单元可以选择距离所述最终GP线路最近的GP线路作为选定的GP线路。又例如,所述分区单元可以从所述列表中选择使得速率失真最小化的候选GP线路作为选定所述选定的GP线路。

步骤305:为所述当前块生成GP参数。

所述GP参数包括表示所述最终GP线路和所述选定的GP线路之间的偏移的偏移信息。

所述GP参数还可以包括所述选定的GP线路的信息。例如,所述选定的GP线路的信息包括与所述选定的GP线路对应的选定相邻块的块索引。又例如,如果所述列表包括两条或两条以上候选GP线路,所述候选GP线路特定线路信息还包括每个所述候选GP线路的唯一线路索引,相应地所述选定的GP线路的信息包括所述选定的GP线路的线路索引。

所述偏移信息包括步长大小和量化偏移值,其中,所述最终GP线路与所述选定的GP线路之间的偏移与所述步长大小和所述量化偏移值的乘积相对应。所述方案进一步将与分区结构相关的发送附带信息最小化。或者,可以直接对所述偏移信息进行编码,而不需要所述步长和所述量化偏移。

例如,所述列表中的候选GP行可以用两个坐标对(xp,yp)={(xs,ys),(xe,ye)}表示,所述坐标指定GMP线路的起点和终点。为了进一步细化GP预测,可以对起点和终点应用两个偏移值Δ={Δs,Δe},以获得所述最终GMP分区线(xf,yf)={(xs,f,ys,f),(xe,f,ye,f)}。每个偏移值Δ为带符号整数,符号确定方向,且所述值确定乘以量化和块大小B依赖步长kQP的像素/样本的数量,所述各自预测点通过步长kQP移动。如果所述步长kQP不固定,所述步长kQP可从编码器编码并传输至解码器。所述最终GMP分区线(xf,yf)和每个偏移值Δ用以下公式(1)-(3)表示。

Figure BDA0002346958140000081

Figure BDA0002346958140000082

Figure BDA0002346958140000083

参数v1和v2用于控制偏移调整的方向。它们在公式中使用。v1和v2的值可以取决于(xp,yp)和Δ的值,如下表1所示:

Figure BDA0002346958140000091

表1:块边界的参数化。

如上所述,所述步长kQP可以取决于所述块大小和量化参数。对于大块或高量化参数,可以使用大kQP。对于小块或低量化参数,可以使用小kQP。例如,对于128x128块,kQP可以是4;对于64x64块,kQP可以是2块;对于不大于64x64块,kQP可以是1。此外,kQP可以根据初始分区线路的角度进行调整。作为一个示例,所述相邻块的分区可以用作初始分区线路。如果初始分区具有小角度,则小kQP是优选。如果初始分区为陡线路,则大kQP是优选。

步骤306:利用所述最终GMP线路参数生成二进制图案。

对于本发明的目的,步骤306是可选的。所述二进制图案根据所述像素/样本所在的分区线的哪一侧来标记每个像素/样本。为了确定栅格化点,可以采用众所周知的Bresenham线路算法,所述栅格化点表示给定这两个点的直线的最近表示。

在编码器侧,偏移值Δ={Δs,Δe}的确定再次受到率失真优化过程的影响。通常,选择迭代方法,包括使用GP模式的连续运动估计步骤和GP偏移的变化,直到速率失真准则最小化。

例如,可以使用以下两个公式(7)-(8)导出将给定块的每个像素/样本分配到特定分段的二进制掩码/图案M(x,y):

Figure BDA0002346958140000092

Figure BDA0002346958140000093

在公式(7)-(8),(xs,ys)和(xe,ye)是所述分区线路的起点和终点。

在上述步骤302中,所述列表可以为所述一条或多条候选GP线路中的每条候选GP线路包括候选GP线路特定线路信息,所述候选GP线路特定线路信息可以为以下形式(i)或(ii):

(i)所述候选GP线路特定线路信息包括指示所述一条或多条候选GP线路各自的候选GP线路指示起点的坐标(x,y)和指示终点的坐标。

所述起点和所述终点为位于所述当前块边界上的两个截取点。所述最终GP线路与所述选定的GP线路之间的偏移包括所述选定的GP线路的起点与所述最终GP线路的起点之间的偏移,以及所述选定的GP线路的终点与所述最终GP线路的终点之间的偏移。

由于使用边界截取值(例如,可以是使用编码块的顶部、左点作为原始坐标(0,0)的两个截取点的相对坐标值)对GP参数进行编码,与使用角度和距离对的GP方法不同,可以实现基于硬件友好整数的实现。所述交点的坐标为整数值。硬件实现总是倾向于整数运算。

(ii)所述候选GP线路特定线路信息包括半径ρ或所述一条或多条候选GP线路各自的候选GP线路与所述当前块的中心之间的距离(即,半径的长度),以及所述一条或多条候选GP线路各自的候选GP线路的角度。

所述半径和所述角度两个参数可以通过以下方式对分区进行建模:

f(x,y)=x cosθ+y sinθ-ρ

所述半径与所述一条或多条候选GP线路中各自的候选GP线路垂直/正交。所述角度可以是候选GP线路与所述当前块的轴线(水平或垂直)之间的角度,也可以是所述半径与所述当前块的轴线之间的角度。

在上述步骤302中,所述分区单元生成候选GP线路的方式取决于所述候选相邻块的信息的形式,如下所述。

(i)所述候选相邻块的信息可以包括对所述候选相邻块进行分区的相邻GP线路的信息。相应地,所述分区单元用于通过将所述相邻GP线路扩展至所述当前块生成所述候选GP线路。

如果所述相邻块也使用所述GP模式编码,则将所述相邻块的GP线路分区扩展到所述当前块中。这在图5中举例说明。可以看出,可以基于相邻块的GP线路的线性连续性和线路坐标的附加偏移两个偏移值生成所述当前块的最终GP线路。

可以在公式(4)中计算当前块上的截取点(xs,ys)和(xe,ye)。

Figure BDA0002346958140000101

在公式(4)中,(xs,b,ys,b)和(xe,b,ye,b)指定当前块边界上的线路,(xs,o,ys,o)和(xe,o,ye,o)指定相邻块的GP线路。此外,可以将偏移量值(Δs,Δe)添加到确定的截取位置(xs,ys)和(xe,ye)中,详见后面描述的步骤306。

(ii)可选地,所述候选相邻块的信息包括将所述候选相邻块分区为两个矩形段的相邻水平或垂直线路的信息。相应地,所述分区单元用于通过将所述相邻水平或竖直线路延伸至所述当前块生成所述候选GP线路。

如果相邻块(例如,HEVC块)使用矩形块分区,例如,水平或垂直分区,则可以将分隔相邻块的水平或垂直线路扩展到所述当前块中。如图6所示。矩形块分区线路和当前块边界的截取点可以按照公式(4)中规定的方式计算。

(iii)可选地,所述候选相邻块的信息包括所述相邻块的内部预测模式。相应地,所述分区单元用于通过对所述帧内预测模式的分析生成所述候选GP线路。

也就是说,即使相邻块没有被分区,也可以生成候选GP线路。在一个示例中,如图7所示,帧内预测方向可以与沿着相邻块的块边界处的样本区域的纹理梯度分析相结合。梯度最高的点可以选择为候选GP线路的起点(xs,ys)。将方向内模式作为所述候选GP线路的斜率。通过计算候选GP线路与公式(4)中规定的边界之间的交点,可以导出终点(xe,ye)。

(iv)所述候选相邻块的信息包括所述相邻块的纹理分量或运动矢量场。相应地,所述分区单元用于利用所述纹理分量或所述运动矢量场对所述相邻块进行分段,生成所述候选GP线路,以获得对所述候选相邻块进行分区并将所述相邻GP线扩展到所述当前块的相邻GP线路。

也就是说,即使所述相邻块没有被分区,也可以生成候选GP线路。例如,可以通过分析纹理分量的重构样本或者在相邻块由较小块组成的情况下通过所述运动矢量场的分析来导出候选GP线路。分段可用于进行边缘检测。所述纹理分量中检测到的边缘,可作为预测GMP线路的斜率。运动信息广泛用于视频分析中,用于使用密集运动矢量进行运动目标分段。如果相邻块是互编码的且所述运动矢量场可用,则可以使用运动信息进行分段。此时,分段的方向可以用作GP线路的预测器。

与图像分区和/或边缘检测区域不同的方法可用于生成相邻块的分区,所述分区扩展到所述当前块中。在一个示例中,所述候选GP线路可以通过如下步骤(1)-(5)生成。

(1)使用分区线将所述块分割成两段,可以从初始分区集合中选择,也可以从上一次迭代中选择;

(2)将偏移值应用于分区线的起始位置和终点位置;

(3)将所述块的每个像素/样本分配为属于被所述分区线路分割的段中的任一个;

(4)对于每段,计算每个分量的方差,并计算加权方差对于当前迭代n,计算每块成本项Dn,如下公式(5)-(6)所示。

Figure BDA0002346958140000112

Figure BDA0002346958140000113

在公式(5)-(6)中,参数C是使用的颜色空间分量的总数,Nk是指定给分段k的像素/样本的集合,wi是指定给颜色分量的权重,pj,i是颜色分量值,是每段每个分量的样本平均值。

(5)重复步骤(1)-(4),并使Dn最大化固定次数,或者直至Dn已达到预定的阈值级别。

除了根据上述相邻块的信息生成的列表之外,还可以涉及模板列表。例如,所述模板列表可以包括基于模板块生成的候选GP线路。为了区分这两个列表,步骤302-305中的模板列表可以称为“空间列表”。相应地,步骤302-305替换为与步骤302-305不同的以下步骤303’-305’,包括附加的模板列表和与模板列表相关的信息。

302’:获得空间列表和模板列表。

所述模板列表包括表示一条或多条候选GP线路的线路信息。

303’:确定将所述当前块分区为两段的最终GP线路;

304’:从所述空间列表和所述模板列表中选择一条GP线路,以获得选定的GP线路。所述选定的GP线路可以来自空间列表或模板列表。

305’:为所述当前块生成GP参数,其中,所述GP参数包括指示所述最终GP线路与所述选定的GP线路之间的偏移的偏移信息。例如,所述GP参数可以包括以下标志:

(i)GMP方式信令标志

所述GMP模式信令标志可以是GMP_CU_Flag。对于每个预测间块,对GMP_CU_Flag进行编码,以指定所述当前块是否使用GMP。否则,如果所述编解码器也支持矩形运动分区,则发送所述分区结构。

如果当前块使用GMP,则设置GMP_CU_Flag为有效,并对以下预测模式标志进行编码。

可选地,所述GMP_CU_Flag可以根据当前块邻域的GMP模式使用情况,采用使用不同上下文的上下文自适应二进制算术编码进行编码。

(ii)预测模式标志

预测模式标志表示所述选定GMP线路来自模板列表或空间列表。预测模式标志可以是GMP_PredictionMode_Flag。

如果GMP_PredictionMode_Flag无效,则对模板列表的以下无符号线路索引进行编码。

如果GMP_PredictionMode_Flag有效,则对空间列表的以下线路索引进行编码。

可选地,GMP_Previce_Mode_Flag也可以通过CABAC进行熵编码,并根据相邻块的信息使用不同的模型。

(iii)模板列表的线路索引

所述线路索引指定模板列表中使用哪条候选GP线路。所述索引寻求模板列表的具体条目的地址。所述索引的一个示例可以是GMP_TemplateIdx。

所述列表索引可以采用截断的一元编码进行二值化,如表2所示。

列表索引 编码
0 0
1 10
2 110
3 1110
... ...

表2:对列表索引值进行一元截断编码。

(iv)空间列表的线路索引

所述索引指定使用空间列表中的候选GP线路。所述索引寻求所述空间列表的具体条目的地址。所述索引的一个示例可以是GMP_PredictorIdx。

(v)两个整数偏移量值

这些偏移量值指定如何精化所述选定的GP线路,以获得所述最终GP线路。运动矢量、运动矢量差、参考帧索引或运动矢量合并数据等运动数据在分区后编码。这些偏移量值可以是GMP_Offsets={Δs,Δe}

所述偏移值可以使用大于零标志(LZ-Flag)、符号标志(S-Flag)的组合以及剩余值的附加Exp-Golomb编码的截断莱斯编码的组合进行二值化。表3给出了这种编码方案的示例。

偏移值 LZ-Flag S-Flag 剩余编码
... ... ... ...
-2 1 1 10
-1 1 1 0
0 0 -- --
1 1 0 0
2 1 0 10
3 1 0 110
4 1 0 1110
5,6 1 0 11110{0,1}
7,...,10 1 0 111110{0,1}{0,1}
... ... ... ...

表3:几何分区线路的偏移值的示例性编码。这里,使用大零标记的编码、符号标记和使用截断莱斯和Exp-Golomb编码的编码得到了使用。

上下文自适应编码可用于作为截断莱斯码的一部分的LZ-Flag、S-Flag和码字块,而附加的Exp-Golomb码可在旁路模式下编码,意味着不对剩余的块应用上下文自适应,并且假定等概率分布。

实施例2:解码器

图9示出了用于对视频序列的帧进行解码的解码器的示例。在图9中,用于运动补偿的几何块分区由分区单元(例如,分区器)900生成。

所述分区单元900与用于帧内预测的运动补偿单元901和用于内部预测的内部估计单元902连接。所述分区单元900的输入是当前块解码后的GP参数、重建的相邻块,以及与重建的块相关的所有附带信息,例如,所述相邻块的内部预测模式、运动矢量和分区信息。

本发明的主要方面涉及所述分区单元900和所述分区单元900生成的所述GP参数的熵编码。

相应地,本发明的所述解码器可以主要包括熵解码单元和分区单元。所述熵解码单元用于对所述当前块的编码后的GP参数进行解码。所述GP参数与前述编码器实施例中描述的GP参数相同(例如,步骤305、步骤305’、GMP模式信令标志、预测模式标志、模板列表的线路索引、空间列表的线路索引、两个整数偏移值)。

所述分区单元用于执行以下如图10a-10b所示的步骤1001-1003。图10a涉及帧内预测,而图10b涉及内部预测。

步骤1001:获得包含表示一条或多条候选GP线路的线路信息的列表。所述列表与前述编码器实施例中的列表相同(例如,步骤302)。所述步骤可以依赖于或独立于解码后的GP参数执行,将在以下步骤1002中进行描述。

所述分区单元可以获得所述列表,例如,通过生成所述列表或通过从其本地存储器(内部或外部)读取所述列表。所述列表可以为每条候选GP线路包括候选GP线路特定线路信息。例如,所述候选GP线路特定线路信息包括指示所述一条或多条候选GP线路的每个各自的候选GP线路指示起点的坐标(x,y)和指示终点的坐标。又例如,所述候选GP线路特定线路信息包括所述一条或多条候选GP线路各自的候选GP线路与所述当前块的中心之间的距离或半径,以及所述一条或多条候选GP线路各自的候选GP线路的角度。如果所述列表涉及两条或两条以上候选GP线路,所述候选GP线路特定线路信息还可以包括线路索引。

可选地,所述一条或多条候选GP线路中的每条候选GP线路是根据所述当前块的一个或多个候选相邻块的信息生成的。

所述候选相邻块的信息可以包括对所述候选相邻块进行分区的相邻GP线路的信息。相应地,所述候选GP线路是将所述相邻GP线路扩展到所述当前块生成的。

可选地,所述候选相邻块的信息包括将所述候选相邻块分割成两个矩形段的相邻水平或垂直线路的信息。相应地,所述候选GP线路是将所述相邻水平或垂直线路扩展到所述当前块生成的。

可选地,所述候选相邻块的信息包括所述相邻块的内部预测模式。相应地,基于所述内部预测模式的分析,生成所述候选GP线路。

可选地,所述候选相邻块的信息包括所述相邻块的纹理分量或运动矢量场。相应地,所述候选GP线路通过以下步骤生成:利用所述纹理部件或所述运动向量场对所述相邻块进行分区,以获得对所述候选相邻块进行分区的相邻GP线路;将所述相邻GP线路扩展到所述当前块中。

所述列表可以包括:(i)基于两个或两个以上相邻块的信息生成的两条或两条以上候选GP线路,(ii)基于一个相邻块的信息生成的一条候选GP线路,(iii)基于默认相邻块生成的一条候选GP线路,或(iv)基于解码后的GP参数包含的相邻块的解码块索引生成的一条候选GP线路。

步骤1002:从所述一条或多条GP线路的列表中选择GP线路,以基于所述解码后的GP参数或导出的(仅在一个默认相邻块的情况下)索引获得所述选定的GP线路。

所述解码后的GP参数还可以包括所述选定的GP线路的信息,包括以下示例:

所述选定的GP线路的信息为所述选定的GP线路的线路索引。此时,所述分区单元900可以在所述步骤1001中生成一条或多条候选GP线路,并在本步骤1002中选择与解码后的线路索引对应的候选GP线路作为所述选定的GP线路。可以看出,此时,所述列表是独立于所述解码后的GP参数生成的。

所述选定的GP线路的信息是与所述选定的GP线路对应的选定相邻块的块索引。此时,所述分区单元可以在上述步骤1001中基于块索引生成候选GP线路,并在本步骤1002中将所述生成的候选GP线路作为所述选定的GP线路。可以看出,此时,所述列表是独立于所述解码后的GP参数生成的。

可选地,所述GP参数不包括所述选定的GP线路的信息。此时,所述分区单元900可以在上述步骤1001中根据默认相邻块的信息生成候选GP线路,并将所述候选GP线路作为本步骤1002中的所述选定的GP线路。可以看出,此时,所述列表是独立于所述解码后的GP参数生成的。

步骤1003:根据所述解码后的GP参数和所述选定的GP线路,获得将所述当前块分区为两段的最终GP线路。

如上所述,所述解码后的GP参数可以包括偏移。因此,所述分区单元能够通过所述选定的GP线路加上所述偏移获得最终线路。例如,如果采用步长和量化对所述偏移进行编码,则基于上述编码器实施例中的公式(1)-(3)和表1获得最终偏移。

所述分区单元,还用于执行如下步骤104。

步骤1004:利用所述最终GMP线路参数生成二进制图案。

对于本发明的目的,步骤1004是可选的。所述二进制图案与上述编码器实施例的步骤306相同。在解码器侧,生成的二进制图案/掩码用于运动补偿。

除了根据上述相邻块的信息生成的列表之外,还可以涉及模板列表。例如,所述模板列表与前述编码器实施例中的模板列表相同。为了区分这两个列表,步骤1001-1003中的模板列表可以称为“空间列表”。相应地,通过加入附加的模板列表和与模板列表相关的信息,将步骤1001-1003替换为与步骤1001-1003不同的以下步骤1001’-1003’:

步骤1001’:生成空间列表和模板列表。

作为一种可替换的实现方式,每个列表可以只包括一条候选GP线路。

步骤1002’:从所述空间列表和所述模板列表中选择一条GP线路,以获得选定的GP线路。

所述分区单元可以根据所述解码后的GP参数选择所述GP线路。例如,所述GP参数可以包括所述选定的GP线路的线路索引和一个列表(空间或模板列表)的列表索引。因此,所述分区单元能够从与所述列表索引对应的列表中选择与所述线路索引对应的候选GP线路作为所述选定的GP线路。

步骤1003’:根据所述解码后的GP参数和所述选定的GP线路,获得将所述当前块分区为两段的最终GP线路。

上述步骤304’中的标志的解码过程如图11所示。

虽然本发明的实施例可以主要结合本发明的编码器和解码器实施例来描述,但是本发明的公开同样适用于本发明的编码方法和解码方法实施例,且在适用的情况下,本发明的编码方法和解码方法实施例也同样适用于本发明的公开。

本发明的实施例可以通过硬件、软件或其任何组合来执行。例如,实施例的功能可以由处理器、微控制器、数字信号处理器(digital signal processor,简称DSP)、现场可编程门阵列(field programmable gate array,简称FPGA)或专用集成电路(application-specific integrated circuit,简称ASIC)等执行。

实施例的所述功能可以通过存储在计算机可读介质上的程序指令来实现。所述程序指令在执行时致使计算机、处理器等执行所述编码和/或解码方法的步骤。所述计算机可读介质可以是存储程序的任何介质,例如,只读存储器(read only memory,简称ROM)、随机存取存储器(random access memory,简称RAM)、蓝光光盘、数字多功能光盘(digitalversatile disk,简称DVD)、CD、USB(闪存)盘、硬盘、通过网络可用的服务器存储器等。

本发明实施例可以在电视机、机顶盒、PC、平板电脑、智能手机等各种设备中实现。所述功能可以通过软件(例如,实现所述方法步骤的应用程序)来实现。

换句话说,上述所有过程都可以在计算机程序、软件和/或包含在计算机可读介质中的固件中实现,以便计算机和/或处理器执行。计算机可读介质的示例包括但不限于电子信号(通过有线和/或无线连接传输)和/或计算机可读存储介质。计算机可读存储介质的例子包括但不限于只读存储器、随机存取存储器、寄存器、超速缓存内存、半导体存储器设备、磁性介质(例如但不限于内置硬盘和可移动磁盘等)、磁光介质、如CD-ROM光盘等光介质、和/或数字多功能光盘。与软件关联的处理器可用于实现WTRU、UE、终端、基站、RNC和/或任何主机计算机中使用的射频收发器。

32页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:处理具有减小的传输带宽的图像数据的方法和显示设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类