图像编码/解码方法以及图像数据的传输方法与流程
未命名
10-17
阅读:129
评论:0
图像编码/解码方法以及图像数据的传输方法
1.本技术是原案申请号为201780039313.x的发明专利申请(国际申请号:pct/kr2017/006241,申请日:2017年6月15日,发明名称:帧内预测方法和装置)的分案申请。
技术领域
2.本发明涉及一种用于对图像进行编码/解码的方法和设备。具体地,本发明涉及一种用于帧内预测(更具体地,曲线帧内预测)的方法和设备。
背景技术:
3.最近,对于高分辨率和高质量图像(诸如,高清晰度(hd)图像和超高清晰度(uhd)图像)的需求已在各种应用领域中增加。然而,更高分辨率和质量的图像数据与传统图像数据相比增加了数据量。因此,当通过使用诸如传统有线和无线宽带网络的介质传输图像数据时,或者当通过使用传统存储介质存储图像数据时,传输和存储的成本增加。为了解决随着图像数据的分辨率和质量提高而发生的这些问题,需要一种高效图像编码/解码技术用于更高分辨率和更高质量的图像。
4.图像压缩技术包括各种技术,包括:从当前画面的先前或随后画面对包括在当前画面中的像素值进行预测的帧间预测技术;通过使用当前画面中的像素信息对包括在当前画面中的像素值进行预测的帧内预测技术;用于对残差信号的能量进行压缩的变换和量化技术;将短码分配给具有高出现频率的值并将长码分配给具有低出现频率的值的熵编码技术;等等。图像数据可通过使用这样的图像压缩技术而被有效地压缩,并可被传输或存储。
5.在传统帧内预测中,当执行方向帧内预测时,仅使用了直线方向预测,从而对增强编码效率存在限制。
技术实现要素:
6.技术问题
7.本发明意在提供一种用于提高对图像进行编码/解码的效率的编码/解码方法和设备。
8.本发明意在提供一种用于提高帧内预测的效率的编码/解码方法和设备。
9.本发明意在提供一种用于当执行帧内预测时执行直线方向预测和/或曲线方向预测的方法和设备。
10.技术方案
11.根据本发明的一种图像解码方法可包括:对关于帧内预测的信息进行解码;以及通过基于关于帧内预测的信息对当前块执行帧内预测来产生预测块。
12.根据本发明的图像解码方法,关于帧内预测的信息可包括关于帧内预测模式的信息,帧内预测模式可包括曲线帧内预测模式。
13.根据本发明的图像解码方法,当前块的帧内预测模式可以是曲线帧内预测模式,并且关于帧内预测的信息可包括方向信息。
14.根据本发明的图像解码方法,关于帧内预测的信息可包括指定参考像素的位置的信息。
15.根据本发明的图像解码方法,当前块可包括至少一个像素组(其中,所述至少一个像素组包括至少一个像素),并且指定参考像素的位置的信息可以以像素组为单位被分配。
16.根据本发明的图像解码方法,像素组可以以像素单元、水平线单元、垂直线单元、对角线单元、直角线单元和子块单元中的至少一个为单位被配置,其中,像素单元、水平线单元、垂直线单元、对角线单元、直角线单元和子块单元均包括在当前块中。
17.根据本发明的图像解码方法,指定参考像素的位置的信息可包括关于至少一个曲率参数或至少一个权重参数的信息。
18.根据本发明的图像解码方法,指定参考像素的位置的信息可基于当前块的至少一个邻近块被解码。
19.根据本发明的图像解码方法,所述至少一个曲率参数或所述至少一个权重参数可通过使用默认值和增量值被解码。
20.根据本发明的图像解码方法,关于帧内预测的信息可包括关于曲线帧内预测的应用的信息,关于曲线帧内预测的应用的信息可按照预定单元被解码,并且所述预定单元可以是视频、序列、画面、条带、并行块、编码树单元、编码单元、预测单元和变换单元中的至少一个。
21.一种根据本发明的图像解码设备可包括:解码器,用于对关于帧内预测的信息进行解码;以及帧内预测器,用于通过基于关于帧内预测的信息对当前块执行帧内预测来产生预测块。
22.根据本发明的图像解码设备,关于帧内预测的信息可包括关于帧内预测模式的信息,帧内预测模式可包括曲线帧内预测模式。
23.根据本发明的一种图像编码方法可包括:通过对当前块执行帧内预测来产生预测块;以及对关于帧内预测的信息进行编码。
24.根据本发明的图像编码方法,关于帧内预测的信息可包括关于帧内预测模式的信息,帧内预测模式可包括曲线帧内预测模式。
25.根据本发明的图像编码方法,当前块的帧内预测模式可以是曲线帧内预测模式,并且关于帧内预测的信息可包括方向信息。
26.根据本发明的图像编码方法,关于帧内预测的信息可包括指定参考像素的位置的信息。
27.根据本发明的图像编码方法,当前块可包括至少一个像素组(其中,所述至少一个像素组包括至少一个像素),并且指定参考像素的位置的信息可以以像素组为单位被分配。
28.根据本发明的图像编码方法,像素组可以以像素单元、水平线单元、垂直线单元、对角线单元、直角线单元和子块单元中的至少一个为单位而被配置,其中,像素单元、水平线单元、垂直线单元、对角线单元、直角线单元和子块单元均包括在当前块中。
29.根据本发明的图像编码方法,指定参考像素的位置的信息可包括关于至少一个曲率参数或至少一个权重参数的信息。
30.根据本发明的图像编码方法,指定参考像素的位置的信息可基于当前块的至少一个邻近块被编码。
31.根据本发明的图像编码方法,所述至少一个曲率参数或所述至少一个权重参数可通过使用默认值和增量值被编码。
32.根据本发明的一种图像编码设备可包括:帧内预测器,用于通过对当前块执行帧内预测来产生预测块;以及编码器,用于对关于帧内预测的信息进行编码。
33.根据本发明的图像编码设备,关于帧内预测的信息可包括关于帧内预测模式的信息,帧内预测模式可包括曲线帧内预测模式。
34.根据本发明的一种记录介质可存储通过根据本发明的图像编码方法产生的比特流。
35.技术效果
36.通过本发明,可提高对图像进行编码/解码的效率。
37.通过本发明,可提高图像的帧内预测的编码/解码效率。
38.通过本发明,可通过使用直线方向预测和/或曲线方向预测来执行帧内预测。
附图说明
39.图1是示出根据本发明的实施例的编码设备的配置的框图。
40.图2是示出根据本发明的实施例的解码设备的配置的框图。
41.图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。
42.图4是示出可包括在编码单元(cu)中的预测单元(pu)的形式的示图。
43.图5是示出可包括在编码单元(cu)中的变换单元(tu)的形式的示图。
44.图6是用于解释帧内预测的处理的实施例的示图。
45.图7是用于解释帧间预测的处理的实施例的示图。
46.图8是用于解释根据帧内预测模式的变换集的示图。
47.图9是用于解释变换的处理的示图。
48.图10是用于解释量化的变换系数的扫描的示图。
49.图11是用于解释块分区的示图。
50.图12是示出根据本发明的执行帧内预测方法的编码设备的操作的示图。
51.图13是示出根据本发明的执行帧内预测方法的解码设备的操作的示图。
52.图14是示出可用于配置用于帧内预测的参考像素阵列p
ref
的像素的示图。
53.图15是示出将“不可用参考像素候选”替换为“可用参考像素候选”的像素值的实施例的示图。
54.图16是示例性地示出分配给块尺寸ns的阈值ntrahorverdistthresh的示图。
55.图17是示出根据当前块的块尺寸和方向预测模式是否执行针对参考像素的滤波的示图。
56.图18是示出当帧内预测模式是非方向平面模式intra_planar时的帧内预测的示图。
57.图19是示出当帧内预测模式是非方向dc模式intra_dc时的帧内预测的示图。
58.图20是示出包括33个直线方向模式的帧内预测模式predmodeintra中的每个直线方向模式与垂直方向之间的角度的实施例的示图。
59.图21是示出从p
ref
产生一维参考像素阵列p
1,ref
的示例的示图。
60.图22是示出当直线方向模式是水平方向时针对4
×
4块产生p
1,ref
的实施例的示图。
61.图23是示出当直线方向模式是垂直方向时针对4
×
4块产生p
1,ref
的实施例的示图。
62.图24是示出当预测模式是垂直方向时对预测块的边界行/列进行滤波的实施例的示图。
63.图25是示出根据预测块内的像素的位置使用具有不同角度的参考像素的实施例的示图。
64.图26是示出多条线的参考像素的实施例的示图,其中,参考像素用于当前块的帧内预测。
65.图27是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从右上侧到左下侧的方向执行曲线预测的实施例的示图。
66.图28是示出作为图27的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
67.图29是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左上侧到右下侧(类型-1)的方向执行曲线预测的实施例的示图。
68.图30是示出作为图29的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
69.图31是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左下侧到右上侧的方向执行曲线预测的实施例的示图。
70.图32是示出作为图31的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
71.图33是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左上侧到右下侧(类型-2)的方向执行曲线预测的实施例的示图。
72.图34是示出作为图33的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
73.图35是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从上侧到左下侧的方向执行曲线预测的实施例的示图。
74.图36是示出作为图35的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
75.图37是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从上侧到右下侧的方向执行曲线预测的实施例的示图。
76.图38是示出作为图37的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
77.图39是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从左侧到右上侧的方向执行曲线预测的实施例的示图。
78.图40是示出作为图39的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
79.图41是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具
有4
×
4尺寸的当前块,按照从左侧到右下侧的方向执行曲线预测的实施例的示图。
80.图42是示出作为图41的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
81.图43是示出曲线帧内预测的另一实施例的示图。
82.图44是示出根据本公开的包括关于帧内预测的信息的比特流的语法结构的实施例的示图。
83.图45是示例性地示出与当前块bc邻近的并已被编码/解码的两个块ba和bb的示图。
84.图46是示出色度分量的当前块的帧内预测模式的编码/解码的示图。
具体实施方式
85.发明模式
86.可对本发明做出多种修改,并且存在本发明的多种实施例,其中,现在将参照附图提供所述实施例的示例并且将详细描述所述实施例的示例。然而,本发明不限于此,尽管示例性实施例可被解释为包括本发明的技术构思和技术范围内的所有修改、等同形式或替换形式。相似的参考标号指在各方面相同或相似的功能。在附图中,为了清楚起见,元件的形状和尺寸可被夸大。在本发明的以下详细描述中,对通过图示的方式示出可对本发明进行实施的具体实施例的附图进行参照。这些实施例被足够详细地描述以使本领域技术人员能够实施本公开。应该理解,本公开的各种实施例尽管不同,但不必是相互排他的。例如,在不脱离本公开的精神和范围的情况下,这里描述的与一个实施例关联的特定特征、结构和特性可在其它实施例中被实施。此外,应该理解,在不脱离本公开的精神和范围的情况下,每个公开的实施例内的各个元件的位置或布置可被修改。因此,以下详细描述将不以限制的含义进行,本公开的范围仅由所附权利要求(在合适的解释的情况下,还连同权利要求所要求保护的等同物的全部范围)来限定。
87.在说明书中使用的术语“第一”、“第二”等可被用于描述各种组件,但这些组件并不被解释为限制所述术语。所述术语仅被用于将一个组件与另一组件区分开。例如,在不脱离本发明的范围的情况下,“第一”组件可被称为“第二”组件,并且“第二”组件也可被类似地称为“第一”组件。术语“和/或”包括多个项的组合或者多个项中的任意一项。
88.将理解的是,在本说明书中,当元件被简单称为“连接到”或“结合到”另一元件而不是“直接连接到”或“直接结合到”另一元件时,它可以“直接连接到”或“直接结合到”另一元件,或者是在其间插入其它元件的情况下连接到或结合到另一元件。相反,应该理解,当元件被称为“直接结合”或“直接连接”到另一元件时,不存在中间元件。
89.此外,在本发明的实施例中示出的组成部件被独立示出,以便呈现彼此不同的特性功能。因此,这并不意味着每个组成部件以单独的硬件或软件的组成单元被构成。换句话说,为了方便,每个组成部件包括枚举的组成部件中的每一个。因此,每个组成部件中的至少两个组成部件可被组合形成一个组成部件,或者一个组成部件可被划分为多个组成部件以执行每个功能。在没有脱离本发明的本质的情况下,每个组成部件被组合的实施例以及一个组成部件被划分的实施例也被包括在本发明的范围中。
90.在本说明书中使用的术语仅用于描述具体实施例,而不旨在限制本发明。以单数使用的表达包括复数表达,除非它在上下文中具有明显不同的含义。在本说明书中,将理
解,诸如“包括...的”、“具有...的”等的术语旨在指明说明书中所公开的特征、数量、步骤、行为、元件、部件、或其组合的存在,而并不旨在排除一个或更多个其它特征、数量、步骤、行为、元件、部件、或其组合可能存在或者可能被添加的可能性。换句话说,当特定元件被称为“被包括”时,除相应元件以外的元件并不被排除,而是,另外的元件可被包括在本发明的实施例或者本发明的范围中。
91.此外,一些组成元件可能不是执行本发明的必要功能的不可缺的组成元件,而是仅提升其性能的可选组成元件。可通过仅包括用于实施本发明的实质的不可缺的组成部件而排除在提升性能时使用的组成部件来实施本发明。仅包括所述不可缺的组成部件而排除在仅提升性能时使用的可选组成部件的结构也被包括在本发明的范围中。
92.在下文中,将参照附图详细描述本发明的实施例。在描述本发明的示例性实施例时,将不详细描述公知功能或结构,这是因为它们会不必要地模糊对本发明的理解。附图中的相同的组成元件通过相同的参考标号来表示,并且对相同元件的重复描述将被省略。
93.此外,在下文中,图像可意为构成视频的画面,或者可意为视频本身。例如,“对图像进行编码或解码或者进行两者”可意为“对视频进行编码或解码或者进行两者”,并且可意为“对视频的多个图像之中的一个图像进行编码或解码或者进行两者”。这里,画面和图像可具有相同的含义。
94.术语描述
95.编码器:可意为执行编码的设备。
96.解码器:可意为执行解码的设备。
97.解析:可意为通过执行熵解码来确定语法元素的值,或者可意为熵解码本身。
98.块:可意为m
×
n矩阵的样点。这里,m和n是正整数,并且块可意为二维形式的样点矩阵。
99.样点:是块的基本单元,并且可指示依据比特深度(bd)而范围为0至2bd
–
1的值。样点在本发明中可意为像素。
100.单元:可意为对图像进行编码和解码的单元。在对图像进行编码和解码时,单元可以是通过对一个图像进行分区而产生的区域。此外,单元可意为在编码或解码期间当一个图像被分区为多个子划分单元时的子划分单元。在对图像进行编码和解码时,可执行针对每个单元的预定处理。一个单元可被分区为尺寸比该单元的尺寸更小的子单元。依据功能,单元可意为块、宏块、编码树单元、编码树块、编码单元、编码块、预测单元、预测块、变换单元、变换块等。此外,为了将单元与块区分开,单元可包括亮度分量块、亮度分量块的色度分量块、以及每个颜色分量块的语法元素。单元可具有各种尺寸和形状,具体而言,单元的形状可以是二维几何图形,诸如矩形、正方形、梯形、三角形、五边形等。此外,单元信息可包括单元类型(指示编码单元、预测单元、变换单元等)、单元尺寸、单元深度、对单元进行编码和解码的顺序等中的至少一个。
101.重建邻近单元:可意为在空间上/时间上被在先编码或解码的重建单元,并且重建单元与编码/解码目标单元相邻。这里,重建邻近单元可意为重建邻近块。
102.邻近块:可意为与编码/解码目标块相邻的块。与编码/解码目标块相邻的块可意为具有与编码/解码目标块接触的边界的块。邻近块可意为位于编码/解码目标块的相邻顶点的块。邻近块可意为重建邻近块。
103.单元深度:可意为单元的被分区程度。在树结构中,根节点可以是最高节点,叶节点可以是最低节点。
104.符号:可意为编码/解码目标单元的语法元素、编码参数、变换系数的值等。
105.参数集:可意为比特流的结构中的头信息。参数集可包括视频参数集、序列参数集、画面参数集或自适应参数集中的至少一个参数集。此外,参数集可意为条带头信息和并行块(tile)头信息等。
106.比特流:可意为包括编码图像信息的比特串。
107.预测单元:可意为当执行帧间预测或帧内预测以及针对预测的补偿时的基本单元。一个预测单元可被分区为多个分区。在这种情况下,多个分区中的每个分区可以是在执行预测和补偿时的基本单元,并且从预测单元分区出的每个分区可以是预测单元。此外,一个预测单元可以被分区为多个小预测单元。预测单元可具有各种尺寸和形状,并且具体来说,预测单元的形状可以是二维几何图形,诸如矩形、正方形、梯形、三角形和五边形等。
108.预测单元分区:可意为分区出的预测单元的形状。
109.参考画面列表:可意为包括至少一个参考画面的列表,其中,所述至少一个参考画面被用于帧间预测或运动补偿。参考画面列表的类型可以是list combined(lc)、list 0(l0)、list 1(l1)、list 2(l2)、list 3(l3)等。至少一个参考画面列表可被用于帧间预测。
110.帧间预测指示符:可意为以下之一:帧间预测情况下的编码/解码目标块的帧间预测方向(单向预测、双向预测等)、用于通过所述编码/解码目标块产生预测块的参考画面的数量、以及用于通过所述编码/解码目标块执行帧间预测或运动补偿的参考块的数量。
111.参考画面索引:可意为参考画面列表中的特定参考画面的索引。
112.参考画面:可意为特定单元为了帧间预测或运动补偿所参考的画面。参考图像可被称为参考画面。
113.运动矢量:是用于帧间预测或运动补偿的二维矢量,并且可意为编码/解码目标画面与参考画面之间的偏移。例如,(mvx,mvy)可指示运动矢量,mvx可指示水平分量,mvy可指示垂直分量。
114.运动矢量候选:可意为当预测运动矢量时成为预测候选的单元,或者可意为该单元的运动矢量。
115.运动矢量候选列表:可意为通过使用运动矢量候选配置的列表。
116.运动矢量候选索引:可意为指示运动矢量候选列表中的运动矢量候选的指示符。运动矢量候选索引可被称为运动矢量预测因子的索引。
117.运动信息:可意为运动矢量、参考画面索引和帧间预测指示符、以及包括参考画面列表信息、参考画面、运动矢量候选、运动矢量候选索引等中的至少一个的信息。
118.合并候选列表:可意为通过使用合并候选配置的列表。
119.合并候选:可包括空间合并候选、时间合并候选、组合合并候选、组合双向预测合并候选、零合并候选等。合并候选可包括诸如预测类型信息的运动信息、用于每个列表的参考画面索引、运动矢量等。
120.合并索引:可意为指示合并候选列表中的合并候选的信息。此外,合并索引可指示与当前块在空间/时间上相邻的重建块之中的推导合并候选的块。此外,合并索引可指示合并候选的多条运动信息中的至少一条运动信息。
121.变换单元:可意为当对残差信号执行与变换、逆变换、量化、反量化以及变换系数编码/解码类似的编码/解码时的基本单元。一个变换单元可被分区为多个小变换单元。变换单元可具有各种尺寸和形状。具体而言,变换单元的形状可以是二维几何图形,诸如矩形、正方形、梯形、三角形、五边形等。
122.缩放:可意为将一因子与变换系数等级相乘的处理,其结果是,变换系数可被产生。缩放还可被称为反量化。
123.量化参数:可意为在量化和反量化期间在对变换系数等级进行缩放时使用的值。这里,量化参数可以是被映射到量化的步长大小的值。
124.增量(delta)量化参数:可意为编码/解码目标单元的量化参数与预测出的量化参数之间的差值。
125.扫描:可意为对块或矩阵内的系数顺序进行排序的方法。例如,将二维矩阵排序为一维矩阵的操作可被称为扫描,并且将一维矩阵排序为二维矩阵的操作可被称为扫描或逆扫描。
126.变换系数:可意为在执行变换之后产生的系数值。在本发明中,量化的变换系数等级(即被应用了量化的变换系数)可被称为变换系数。
127.非零变换系数:可意为值不为0的变换系数,或者可意为值不为0的变换系数等级。
128.量化矩阵:可意为在量化和反量化中使用以便提高图像的主体质量(subject quality)或对象质量(object quality)的矩阵。量化矩阵可被称为缩放列表。
129.量化矩阵系数:可意为量化矩阵的每个元素。量化矩阵系数可被称为矩阵系数。
130.默认矩阵:可意为在编码器和解码器中被预先定义的预定量化矩阵。
131.非默认矩阵:可意为在编码器和解码器中未被预先定义的情况下由用户用信号发送的量化矩阵。
132.编码树单元:可由一个亮度分量(y)编码树单元以及相关的两个色度分量(cb,cr)编码树单元构成。每个编码树单元可通过使用至少一种分区方法(诸如四叉树、二叉树等)被分区,以构成诸如编码单元、预测单元、变换单元等的子单元。编码树单元可被用作用于指示像素块(其中,像素块是在图像的解码/编码处理中的处理单元,如输入图像的分区)的术语。
133.编码树块:可用作用于指示y编码树单元、cb编码树单元和cr编码树单元之一的术语。
134.图1是示出根据本发明的实施例的编码设备的配置的框图。
135.编码设备100可以是视频编码设备或图像编码设备。视频可包括一个或更多个图像。编码设备100可按照时间顺序对视频的一个或更多个图像进行编码。
136.参照图1,编码设备100可包括运动预测单元111、运动补偿单元112、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180以及参考画面缓冲器190。
137.编码设备100可按照帧内模式或帧间模式或者帧内模式和帧间模式两者来对输入画面进行编码。此外,编码设备100可通过对输入画面进行编码来产生比特流,并可输出产生的比特流。当帧内模式被用作预测模式时,切换器115可切换到帧内。当帧间模式被用作预测模式时,切换器115可切换到帧间。这里,帧内模式可被称为帧内预测模式,帧间模式可
被称为帧间预测模式。编码设备100可产生输入画面的输入块的预测块。此外,在产生预测块之后,编码设备100可对输入块和预测块之间的残差进行编码。输入画面可被称为作为当前编码的目标的当前图像。输入块可被称为当前块或者可被称为作为当前编码的目标的编码目标块。
138.当预测模式是帧内模式时,帧内预测单元120可使用与当前块相邻的先前编码块的像素值作为参考像素。帧内预测单元120可通过使用参考像素来执行空间预测,并可通过使用空间预测来产生输入块的预测样点。这里,帧内预测可意为帧内帧预测。
139.当预测模式是帧间模式时,运动预测单元111可在运动预测处理中从参考画面搜索与输入块最优匹配的区域,并可通过使用搜索到的区域推导运动矢量。参考画面可被存储在参考画面缓冲器190中。
140.运动补偿单元112可通过使用运动矢量执行运动补偿来产生预测块。这里,运动矢量可以是用于帧间预测的二维矢量。此外,运动矢量可指示当前画面和参考画面之间的偏移。这里,帧间预测可意为帧间帧预测。
141.当运动矢量的值不为整数时,运动预测单元111和运动补偿单元112可通过对参考画面中的部分区域应用插值滤波器来产生预测块。为了基于编码单元执行帧间预测或运动补偿,可在跳过模式、合并模式、amvp模式和当前画面参考模式之中确定编码单元中的预测单元的运动预测和补偿方法使用哪种方法。可根据每种模式执行帧间预测或运动补偿。这里,当前画面参考模式可意为使用具有编码目标块的当前画面的预先构建的区域的预测模式。为了指明所述预先构建的区域,可定义针对当前画面参考模式的运动矢量。是否按照当前画面参考模式对编码目标块进行编码可通过使用编码目标块的参考画面索引而被编码。
142.减法器125可通过使用输入块和预测块之间的残差来产生残差块。残差块可被称为残差信号。
143.变换单元130可通过对残差块进行变换来产生变换系数,并可输出变换系数。这里,变换系数可以是通过对残差块进行变换而产生的系数值。在变换跳过模式下,变换单元130可跳过对残差块的变换。
144.可通过对变换系数应用量化来产生量化的变换系数等级。在下文中,在本发明的实施例中,量化的变换系数等级可被称为变换系数。
145.量化单元140可通过依据量化参数对变换系数进行量化来产生量化的变换系数等级,并可输出量化的变换系数等级。这里,量化单元140可通过使用量化矩阵来对变换系数进行量化。
146.熵编码单元150可通过根据概率分布对由量化单元140计算出的值或对在编码处理中计算出的编码参数值等执行熵编码来产生比特流,并可输出产生的比特流。熵编码单元150可对用于对图像进行解码的信息执行熵编码,并对图像的像素的信息执行熵编码。例如,用于对图像进行解码的信息可包括语法元素等。
147.当熵编码被应用时,通过向具有高出现概率的符号分配少量比特并向具有低出现概率的符号分配大量比特来表示符号,从而减小对目标符号进行编码的比特流的大小。因此,通过熵编码,图像编码的压缩性能可提高。对于熵编码,熵编码单元150可使用诸如指数哥伦布、上下文自适应变长编码(cavlc)以及上下文自适应二进制算术编码(cabac)的编码方法。例如,熵编码单元150可通过使用变长编码/码(vlc)表来执行熵编码。此外,熵编码单
元150可推导目标符号的二进制化方法以及目标符号/二进制位的概率模型,并且随后可通过使用推导出的二进制化方法或推导出的概率模型来执行算术编码。
148.为了对变换系数等级进行编码,熵编码单元150可通过使用变换系数扫描方法将二维块形式的系数改变为一维矢量形式。例如,通过用右上扫描来扫描块的系数,二维形式的系数可被改变为一维矢量。根据变换单元的尺寸以及帧内预测模式,可使用用于沿列方向扫描二维块形式的系数的垂直方向扫描以及用于沿行方向扫描二维块形式的系数的水平方向扫描,而不是使用右上扫描。也就是说,依据变换单元的尺寸以及帧内预测模式,可确定右上扫描、垂直方向扫描和水平方向扫描之中的哪种扫描方法将被使用。
149.编码参数可包括由编码器编码并被用信号发送到解码器的诸如语法元素的信息,并可包括可在编码或解码处理中推导出的信息。编码参数可意为对图像进行编码或解码所必要的信息。例如,编码参数可包括以下项中的至少一个值或组合形式:块尺寸、块深度、块分区信息、单元尺寸、单元深度、单元分区信息、四叉树形式的分区标志、二叉树形式的分区标志、二叉树形式的分区方向、帧内预测模式、帧内预测方向、参考样点滤波方法、预测块边界滤波方法、滤波器抽头、滤波器系数、帧间预测模式、运动信息、运动矢量、参考画面索引、帧间预测方向、帧间预测指示符、参考画面列表、运动矢量预测因子、运动矢量候选列表、关于运动合并模式是否被使用的信息、运动合并候选、运动合并候选列表、关于跳过模式是否被使用的信息、插值滤波器类型、运动矢量大小、运动矢量表示的精确度、变换类型、变换大小、关于附加(二次)变换是否被使用的信息、关于残差信号是否存在的信息、编码块样式、编码块标志、量化参数、量化矩阵、环路内的滤波器信息、关于滤波器是否在环路内被应用的信息、环路内的滤波器系数、二值化/反二值化方法、上下文模型、上下文二进制位、旁通二进制位、变换系数、变换系数等级、变换系数等级扫描方法、图像显示/输出顺序、条带识别信息、条带类型、条带分区信息、并行块识别信息、并行块类型、并行块分区信息、画面类型、比特深度、以及亮度信号或色度信号的信息。
150.残差信号可意为原始信号与预测信号之间的差。可选择地,残差信号可以是通过对原始信号和预测信号之间的差进行变换而产生的信号。可选择地,残差信号可以是通过对原始信号和预测信号之间的差进行变换和量化而产生的信号。残差块可以是块单元的残差信号。
151.当编码设备100通过使用帧间预测执行编码时。编码的当前画面可被用作针对将被随后处理的另一图像的参考画面。因此,编码设备100可对编码的当前画面进行解码,并可将解码的图像存储为参考画面。为了执行解码,可对编码的当前画面执行反量化和逆变换。
152.量化的系数可通过反量化单元160被反量化,并可通过逆变换单元170被逆变换。可由加法器175将经过反量化和逆变换的系数与预测块相加,由此可产生重建块。
153.重建块可通过滤波器单元180。滤波器单元180可向重建块或重建画面应用去块滤波器、样点自适应偏移(sao)以及自适应环路滤波器(alf)中的至少一个。滤波器单元180可被称为环路滤波器。
154.去块滤波器可去除在块之间的边界处出现的块失真。为了确定去块滤波器是否被运行,可基于包括在块中的若干行或列中的像素来确定去块滤波器是否被应用于当前块。当去块滤波器被应用于块时,可依据所需的去块滤波强度来应用强滤波器或弱滤波器。此
外,在应用去块滤波器时,可并行处理水平方向滤波和垂直方向滤波。
155.样点自适应偏移可将最优偏移值添加到像素值以便对编码误差进行补偿。样点自适应偏移可针对每个像素对经过去块滤波的图像和原始画面之间的偏移进行校正。为了对特定画面执行偏移校正,可使用考虑每个像素的边缘信息来应用偏移的方法,或使用以下方法:将图像的像素分区为预定数量的区域,确定将被执行偏移校正的区域,并对所确定的区域应用偏移校正。
156.自适应环路滤波器可基于通过将重建画面与原始画面进行比较而获得的值来执行滤波。图像的像素可被分区为预定组,被应用于每个组的一个滤波器被确定,并且不同的滤波可在每个组被执行。关于自适应环路滤波器是否被应用于亮度信号的信息可针对每个编码单元(cu)被用信号发送。被应用于每个块的自适应环路滤波器的形状和滤波器系数可变化。此外,具有相同形式(固定形式)的自适应环路滤波器可在不考虑目标块的特性的情况下被应用。
157.经过滤波器单元180的重建块可被存储在参考画面缓冲器190中。
158.图2是示出根据本发明的实施例的解码设备的配置的框图。
159.解码设备200可以是视频解码设备或图像解码设备。
160.参照图2,解码设备200可包括熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、运动补偿单元250、加法器255、滤波器单元260以及参考画面缓冲器270。
161.解码设备200可接收从编码设备100输出的比特流。解码设备200可按照帧内模式或帧间模式对比特流进行解码。此外,解码设备200可通过执行解码来产生重建画面,并可输出重建画面。
162.当在解码中使用的预测模式是帧内模式时,切换器可被切换到帧内。当在解码中使用的预测模式是帧间模式时,切换器可被切换到帧间。
163.解码设备200可从输入的比特流获得重建残差块,并可产生预测块。当重建残差块和预测块被获得时,解码设备200可通过将重建残差块与预测块相加来产生作为解码目标块的重建块。解码目标块可被称为当前块。
164.熵解码单元210可通过根据概率分布对比特流执行熵解码来产生符号。产生的符号可包括具有量化的变换系数等级的符号。这里,熵解码的方法可与上述熵编码的方法类似。例如,熵解码的方法可以是上述熵编码的方法的逆处理。
165.为了对变换系数等级进行解码,熵解码单元210可执行变换系数扫描,由此,一维矢量形式的系数可被改变为二维块形式。例如,通过用右上扫描来扫描块的系数,一维矢量形式的系数可被改变为二维块形式。根据变换单元的尺寸以及帧内预测模式,可使用垂直方向扫描以及水平方向扫描,而不是使用右上扫描。也就是说,依据变换单元的尺寸以及帧内预测模式,可确定在右上扫描、垂直方向扫描和水平方向扫描之中的哪种扫描方法被使用。
166.量化的变换系数等级可通过反量化单元220被反量化,并可通过逆变换单元230被逆变换。量化的变换系数等级被反量化并被逆变换以便产生重建残差块。这里,反量化单元220可对量化的变换系数等级应用量化矩阵。
167.当帧内模式被使用时,帧内预测单元240可通过执行空间预测来产生预测块,其中,空间预测使用与解码目标块相邻的先前解码块的像素值。
168.当帧间模式被使用时,运动补偿单元250可通过执行运动补偿来产生预测块,其中,运动补偿使用存储在参考画面缓冲器270中的参考画面以及运动矢量两者。当运动矢量的值不是整数时,运动补偿单元250可通过对参考画面中的部分区域应用插值滤波器来产生预测块。为了执行运动补偿,基于编码单元,可在跳过模式、合并模式、amvp模式和当前画面参考模式之中确定编码单元中的预测单元的运动补偿方法使用哪种方法。此外,可依据所述模式执行运动补偿。这里,当前画面参考模式可意为使用具有解码目标块的当前画面内的先前重建区域的预测模式。先前重建区域可不与解码目标块相邻。为了指明先前重建区域,可针对当前画面参考模式使用固定矢量。此外,指示解码目标块是否是按照当前画面参考模式被解码的块的标志或索引可被用信号发送,并可通过使用解码目标块的参考画面索引而被获得。针对当前画面参考模式的当前画面可存在于针对解码目标块的参考画面列表内的固定位置(例如,参考画面索引为0的位置或最后的位置)。此外,当前画面可以可变地位于参考画面列表内,为此,可用信号发送指示当前画面的位置的参考画面索引。这里,用信号发送标志或索引可表示在编码器对相应标志或索引进行熵编码并将其包括到比特流中,并可表示在解码器从比特流对相应标志或索引进行熵解码。
169.可通过加法器255将重建残差块与预测块相加。通过将重建残差块和预测块相加而产生的块可经过滤波器单元260。滤波器单元260可对重建块或重建画面应用去块滤波器、样点自适应偏移和自适应环路滤波器中的至少一个。滤波器单元260可输出重建画面。重建画面可被存储在参考画面缓冲器270中,并可被用于帧间预测。
170.图3是示意性地示出当对图像进行编码和解码时的图像的分区结构的示图。图3示意性地示出将一个单元分区为多个子单元的实施例。
171.为了对图像进行有效分区,编码单元(cu)可在编码和解码中被使用。这里,编码单元可意为进行编码的单元。单元可以是1)语法元素和2)包括图像样点的块的组合。例如,“单元的分区”可意为“与单元相关的块的分区”。块分区信息可包括关于单元深度的信息。深度信息可指示单元被分区的次数或单元被分区的程度或两者。
172.参照图3,图像300针对每个最大编码单元(lcu)被顺序分区,并且分区结构针对每个lcu被确定。这里,lcu和编码树单元(ctu)具有相同的含义。一个单元可具有基于树结构的深度信息,并可被分层分区。每个分区出的子单元可具有深度信息。深度信息指示单元被分区的次数或单元被分区的程度或两者,因此,深度信息可包括关于子单元的尺寸的信息。
173.分区结构可意为lcu 310中的编码单元(cu)的分布。cu可以是用于对图像进行有效编码/解码的单元。所述分布可基于一个cu是否将被多次(等于或大于2的正整数,包括2、4、8、16等)分区而被确定。分区出的cu的宽度大小和高度大小可分别为原始cu的一半宽度大小和一半高度大小。可选择地,根据分区的次数,分区出的cu的宽度大小和高度大小可分别小于原始cu的宽度大小和高度大小。分区出的cu可被递归地分区为多个进一步分区出的cu,其中,按照相同的分区方法,所述进一步分区出的cu具有比所述分区出的cu的宽度大小和高度大小更小的宽度大小和高度大小。
174.这里,cu的分区可被递归地执行直到预定深度。深度信息可以是指示cu的尺寸的信息,并且可被存储在每个cu中。例如,lcu的深度可以是0,并且最小编码单元(scu)的深度可以是预定最大深度。这里,lcu可以是具有上述最大尺寸的编码单元,并且scu可以是具有最小尺寸的编码单元。
175.每当lcu 310开始被分区,并且cu的宽度大小和高度大小通过分区操作而减小时,cu的深度增加1。在不能被分区的cu的情况下,cu针对每个深度可具有2n
×
2n尺寸。在能够被分区的cu的情况下,具有2n
×
2n尺寸的cu可被分区为多个n
×
n尺寸的cu。每当深度增加1时,n的大小减半。
176.例如,当一个编码单元被分区为四个子编码单元时,所述四个子编码单元之一的宽度大小和高度大小可分别为原始编码单元的一半宽度大小和一半高度大小。例如,当32
×
32尺寸的编码单元被分区为四个子编码单元时,所述四个子编码单元中的每一个可具有16
×
16尺寸。当一个编码单元被分区为四个子编码单元时,编码单元可按照四叉树形式被分区。
177.例如,当一个编码单元被分区为两个子编码单元时,所述两个子编码单元之一的宽度大小或高度大小可分别为原始编码单元的一半宽度大小或一半高度大小。例如,当32
×
32尺寸的编码单元被垂直分区为两个子编码单元时,所述两个子编码单元中的每一个可具有16
×
32尺寸。例如,当32
×
32尺寸的编码单元被水平分区为两个子编码单元时,所述两个子编码单元中的每一个可具有32
×
16尺寸。当一个编码单元被分区为两个子编码单元时,编码单元可按照二叉树形式被分区。
178.参照图3,具有最小深度0的lcu的尺寸可以是64
×
64像素,并且具有最大深度3的scu的尺寸可以是8
×
8像素。这里,可由深度0来表示具有64
×
64像素的cu(即,lcu),可由深度1来表示具有32
×
32像素的cu,可由深度2来表示具有16
×
16像素的cu,并且可由深度3来表示具有8
×
8像素的cu(即,scu)。
179.此外,可通过cu的分区信息来表示关于cu是否将被分区的信息。分区信息可以是1比特信息。分区信息可被包括在除scu之外的所有cu中。例如,当分区信息的值为0时,cu可不被分区,当分区信息的值为1时,cu可被分区。
180.图4是示出可被包括在编码单元(cu)中的预测单元(pu)的形式的示图。
181.从lcu分区出的多个cu之中的不再被分区的cu可被分区为至少一个预测单元(pu)。该处理也可被称为分区。
182.pu可以是用于预测的基本单元。pu可按照跳过模式、帧间模式和帧内模式中的任一模式而被编码和解码。pu可依据所述模式按照各种形式被分区。
183.此外,编码单元可不被分区为多个预测单元,并且编码单元和预测单元具有相同的尺寸。
184.如图4所示,在跳过模式中,cu可不被分区。在跳过模式中,可支持与不经分区的cu具有相同尺寸的2n
×
2n模式410。
185.在帧间模式中,在cu中可支持8个分区模式。例如,在帧间模式中,可支持2n
×
2n模式410、2n
×
n模式415、n
×
2n模式420、n
×
n模式425、2n
×
nu模式430、2n
×
nd模式435、nl
×
2n模式440以及nr
×
2n模式445。在帧内模式中,可支持2n
×
2n模式410和n
×
n模式425。
186.一个编码单元可被分区为一个或更多个预测单元。一个预测单元可被分区为一个或更多个子预测单元。
187.例如,当一个预测单元被分区为四个子预测单元时,所述四个子预测单元之一的宽度大小和高度大小可为原始预测单元的一半宽度大小和一半高度大小。例如,当32
×
32尺寸的预测单元被分区为四个子预测单元时,所述四个子预测单元中的每一个可具有16
×
16尺寸。当一个预测单元被分区为四个子预测单元时,预测单元可按照四叉树形式被分区。
188.例如,当一个预测单元被分区为两个子预测单元时,所述两个子预测单元之一的宽度大小或高度大小可为原始预测单元的一半宽度大小或一半高度大小。例如,当32
×
32尺寸的预测单元被垂直分区为两个子预测单元时,所述两个子预测单元中的每一个可具有16
×
32尺寸。例如,当32
×
32尺寸的预测单元被水平分区为两个子预测单元时,所述两个子预测单元中的每一个可具有32
×
16尺寸。当一个预测单元被分区为两个子预测单元时,预测单元可按照二叉树形式被分区。
189.图5是示出可被包括在编码单元(cu)中的变换单元(tu)的形式的示图。
190.变换单元(tu)可以是cu内的用于变换、量化、逆变换和反量化的基本单元。tu可具有正方形状或矩形形状等。tu可按照cu的尺寸或cu的形式或者以上两者而被独立确定。
191.从lcu分区出的cu之中的不再被分区的cu可被分区为至少一个tu。这里,tu的分区结构可以是四叉树结构。例如,如图5所示,一个cu 510可依据四叉树结构而被分区一次或更多次。一个cu被分区至少一次的情况可被称为递归分区。通过进行分区,一个cu 510可由具有不同尺寸的tu形成。可选择地,cu可依据对cu进行分区的垂直线的数量或对cu进行分区的水平线的数量或两者而被分区为至少一个tu。cu可被分区为彼此对称的tu,或者可被分区为彼此不对称的tu。为了将cu分区为彼此对称的tu,tu的尺寸/形状的信息可被用信号发送,并可被从cu的尺寸/形状的信息推导出。
192.此外,编码单元可不被分区为变换单元,并且编码单元和变换单元可具有相同的尺寸。
193.一个编码单元可被分区为至少一个变换单元,并且一个变换单元可被分区为至少一个子变换单元。
194.例如,当一个变换单元被分区为四个子变换单元时,所述四个子变换单元之一的宽度大小和高度大小可分别为原始变换单元的一半宽度大小和一半高度大小。例如,当32
×
32尺寸的变换单元被分区为四个子变换单元时,所述四个子变换单元中的每一个可具有16
×
16尺寸。当一个变换单元被分区为四个子变换单元时,变换单元可按照四叉树形式被分区。
195.例如,当一个变换单元被分区为两个子变换单元时,所述两个子变换单元之一的宽度大小或高度大小可分别为原始变换单元的一半宽度大小或一半高度大小。例如,当32
×
32尺寸的变换单元被垂直分区为两个子变换单元时,所述两个子变换单元中的每一个可具有16
×
32尺寸。例如,当32
×
32尺寸的变换单元被水平分区为两个子变换单元时,所述两个子变换单元中的每一个可具有32
×
16尺寸。当一个变换单元被分区为两个子变换单元时,变换单元可按照二叉树形式被分区。
196.当执行变换时,可通过使用预定变换方法中的至少一种变换方法对残差块进行变换。例如,所述预定变换方法可包括离散余弦变换(dct)、离散正弦变换(dst)、klt等。可通过使用以下项中的至少一个来确定哪种变换方法被应用于对残差块进行变换:预测单元的帧间预测模式信息、预测单元的帧内预测模式信息以及变换块的尺寸/形状。指示变换方法的信息可被用信号发送。
197.图6是用于解释帧内预测的处理的实施例的示图。
198.帧内预测模式可以是非方向模式或方向模式。非方向模式可以是dc模式或平面模
式。方向模式可以是具有特定方向或角度的预测模式,并且方向模式的数量可以是等于或大于1的m。方向模式可被指示为模式编号、模式值和模式角度中的至少一个。
199.帧内预测模式的数量可以是等于或大于1的n,包括非方向模式和方向模式。
200.帧内预测模式的数量可依据块的尺寸而变化。例如,当块的尺寸为4
×
4或8
×
8时,帧内预测模式的数量可以是67,当块的尺寸是16
×
16时,帧内预测模式的数量可以是35,当块的尺寸是32
×
32时,帧内预测模式的数量可以是19,当块的尺寸是64
×
64时,帧内预测模式的数量可以是7。
201.帧内预测模式的数量可被固定为n,而不管块的尺寸如何。例如,帧内预测模式的数量可被固定为35或67中的至少一个,而不管块的尺寸如何。
202.帧内预测模式的数量可依据颜色分量的类型而变化。例如,预测模式的数量可依据颜色分量是亮度信号还是色度信号而变化。
203.可通过使用重建邻近块中所包括的样点值或编码参数来执行帧内编码和/或解码。
204.为了按照帧内预测对当前块进行编码/解码,可识别包括在重建邻近块中的样点是否可用作编码/解码目标块的参考样点。当存在不能用作编码/解码目标块的参考样点的样点时,通过使用包括在重建邻近块中的样点中的至少一个样点,样点值被复制和/或插值到不能用作参考样点的样点,由此,不能用作参考样点的样点可被用作编码/解码目标块的参考样点。
205.在帧内预测中,基于帧内预测模式以及编码/解码目标块的尺寸中的至少一个,滤波器可被应用于参考样点或预测样点中的至少一个。这里,编码/解码目标块可意为当前块,并且可意为编码块、预测块和变换块中的至少一个。被应用于参考样点或预测样点的滤波器的类型可依据帧内预测模式或当前块的尺寸/形状中的至少一个而变化。滤波器的类型可依据滤波器抽头的数量、滤波器系数值或滤波器强度中的至少一个而变化。
206.在帧内预测模式之中的非方向平面模式中,当产生编码/解码目标块的预测块时,可根据样点位置通过使用当前样点的上参考样点、当前样点的左参考样点、当前块的右上参考样点、以及当前块的左下参考样点的加权和来产生预测块中的样点值。
207.在帧内预测模式之中的非方向dc模式中,当产生编码/解码目标块的预测块时,可通过当前块的上参考样点和当前块的左参考样点的均值来产生预测块。此外,可通过使用参考样点值对编码/解码块中与参考样点相邻的一个或更多个上方行以及一个或更多个左侧列执行滤波。
208.在帧内预测模式之中的多个方向模式(角度模式)的情况下,可通过使用右上参考样点和/或左下参考样点来产生预测块,并且所述多个方向模式可具有不同的方向。为了产生预测样点值,可执行实数单位的插值。
209.为了执行帧内预测方法,可从与当前预测块相邻的邻近预测块的帧内预测模式预测当前预测块的帧内预测模式。在通过使用从邻近帧内预测模式预测出的模式信息来预测当前预测块的帧内预测模式的情况下,在当前预测块和邻近预测块具有相同的帧内预测模式时,当前预测块和邻近预测块具有相同的帧内预测模式的信息可通过使用预定标志信息被用信号发送。在当前预测块的帧内预测模式不同于邻近预测块的帧内预测模式时,可通过执行熵编码来对编码/解码目标块的帧内预测模式信息进行编码。
210.图7是用于解释帧间预测的处理的实施例的示图。
211.图7中示出的四边形可指示图像(或画面)。此外,图7的箭头可指示预测方向。也就是说,图像可根据预测方向被编码或解码、或者被编码和解码。根据编码类型,每个图像可被分类为i画面(帧内画面)、p画面(单向预测画面)、b画面(双向预测画面)等。每个画面可依据每个画面的编码类型而被编码和解码。
212.当作为编码目标的图像是i画面时,画面本身可在无需帧间预测的情况下被帧内编码。当作为编码目标的图像是p画面时,可通过使用仅在前向上的参考画面进行帧间预测或运动补偿来对图像进行编码。当作为编码目标的图像是b画面时,可通过使用在前向和逆向两者上的参考画面进行帧间预测或运动补偿来对图像进行编码。可选择地,可通过使用在前向和逆向之一上的参考画面进行帧间预测或运动补偿来对图像进行编码。这里,当帧间预测模式被使用时,编码器可执行帧间预测或运动补偿,并且解码器可响应于编码器执行运动补偿。通过使用参考画面被编码或解码或者被编码和解码的p画面和b画面的图像可被视为用于帧间预测的图像。
213.在下文中,将详细描述根据实施例的帧间预测。
214.可通过使用参考画面和运动信息两者来执行帧间预测或运动补偿。此外,帧间预测可使用上述跳过模式。
215.参考画面可以是当前画面的先前画面和后续画面中的至少一个。这里,帧间预测可依据参考画面来预测当前画面的块。这里,参考画面可意为在对块进行预测时使用的图像。这里,参考画面内的区域可通过使用指示参考画面的参考画面索引(refidx)、运动矢量等来指明。
216.帧间预测可选择参考画面和参考画面内与当前块相关的参考块。可通过使用选择的参考块来产生当前块的预测块。当前块可以是当前画面的块之中的作为当前编码目标或当前解码目标的块。
217.可由编码设备100和解码设备200从帧间预测的处理推导运动信息。此外,推导出的运动信息可在执行帧间预测时被使用。这里,编码设备100和解码设备200可通过使用重建邻近块的运动信息或同位块(col块)的运动信息或以上两者来提高编码效率或解码效率或两者。col块可以是先前被重建的同位画面(col画面)内的与编码/解码目标块的空间位置相关的块。重建邻近块可以是当前画面内的块、以及通过编码或解码或者编码和解码两者先前被重建的块。此外,重建块可以是与编码/解码目标块相邻的块,或者是位于编码/解码目标块的外部拐角处的块,或者是以上两者。这里,位于编码/解码目标块的外部拐角处的块可以是与水平相邻于编码/解码目标块的邻近块垂直相邻的块。可选择地,位于编码/解码目标块的外部拐角处的块可以是与垂直相邻于编码/解码目标块的邻近块水平相邻的块。
218.编码设备100和解码设备200可分别确定存在于col画面内的与编码/解码目标块空间相关的位置处的块,并可基于确定的块来确定预定义的相对位置。所述预定义的相对位置可以是存在于与编码/解码目标块空间相关的位置处的块的内部位置或外部位置或者内部位置和外部位置两者。此外,编码设备100和解码设备200可基于所确定的所述预定义的相对位置来分别推导出col块。这里,col画面可以是在参考画面列表中包括的至少一个参考画面中的一个画面。
219.获得运动信息的方法可根据编码/解码目标块的预测模式而变化。例如,应用于帧间预测的预测模式可包括高级运动矢量预测(amvp)、合并模式等。这里,合并模式可被称为运动合并模式。
220.例如,当amvp作为预测模式被应用时,编码设备100和解码设备200可分别通过使用重建邻近块的运动矢量或col块的运动矢量或者以上两者来产生运动矢量候选列表。重建邻近块的运动矢量或col块的运动矢量或者以上两者可被用作运动矢量候选。这里,col块的运动矢量可被称为时间运动矢量候选,重建邻近块的运动矢量可被称为空间运动矢量候选。
221.编码设备100可产生比特流,比特流可包括运动矢量候选索引。也就是说,编码设备100可通过对运动矢量候选索引进行熵编码来产生比特流。运动矢量候选索引可指示从包括在运动矢量候选列表中的运动矢量候选中选择出的最优运动矢量候选。运动矢量候选索引可通过比特流从编码设备100被用信号发送到解码设备200。
222.解码设备200可从比特流对运动矢量候选索引进行熵解码,并可通过使用经过熵解码的运动矢量候选索引在运动矢量候选列表中所包括的运动矢量候选之中选择解码目标块的运动矢量候选。
223.编码设备100可计算解码目标块的运动矢量和运动矢量候选之间的运动矢量差(mvd),并对mvd进行熵编码。比特流可包括经过熵编码的mvd。mvd可通过比特流从编码设备100被用信号发送到解码设备200。这里,解码设备200可对从比特流接收到的mvd进行熵解码。解码设备200可通过解码的mvd与运动矢量候选之和来推导出解码目标块的运动矢量。
224.比特流可包括指示参考画面的参考画面索引等,并且参考画面索引可被熵编码并通过比特流从编码设备100被用信号发送到解码设备200。解码设备200可通过使用邻近块的运动信息来预测解码目标块的运动矢量,并可通过使用预测出的运动矢量以及运动矢量差来推导解码目标块的运动矢量。解码设备200可基于推导出的运动矢量和参考画面索引信息来产生解码目标块的预测块。
225.作为推导运动信息的另一方法,合并模式被使用。合并模式可意为多个块的运动的合并。合并模式可意为一个块的运动信息被应用于另一个块。当合并模式被应用时,编码设备100和解码设备200可分别通过使用重建邻近块的运动信息或col块的运动信息或者以上两者来产生合并候选列表。运动信息可包括以下项中的至少一个:1)运动矢量、2)参考画面索引、以及3)帧间预测指示符。预测指示符可指示单向(l0预测、l1预测)或双向。
226.这里,合并模式可被应用于每个cu或每个pu。当合并模式在每个cu或每个pu被执行时,编码设备100可通过对预定义的信息进行熵解码来产生比特流,并可将比特流用信号发送到解码设备200。比特流可包括所述预定义的信息。所述预定义的信息可包括:1)作为指示合并模式是否针对每个块分区被执行的信息的合并标志、2)作为指示与编码目标块相邻的邻近块之中的哪个块被合并的信息的合并索引。例如,与编码目标块相邻的邻近块可包括编码目标块的左邻近块、编码目标块的上邻近块、编码目标块的时间邻近块等。
227.合并候选列表可指示存储运动信息的列表。此外,合并候选列表可在执行合并模式之前被产生。存储在合并候选列表中的运动信息可以是以下运动信息中的至少一个:与编码/解码目标块相邻的邻近块的运动信息、参考画面中与编码/解码目标块相关的同位块的运动信息、通过对运动候选列表中存在的运动信息的预先组合而新产生的运动信息、以
及零合并候选。这里,与编码/解码目标块相邻的邻近块的运动信息可被称为空间合并候选。参考画面中与编码/解码目标块相关的同位块的运动信息可被称为时间合并候选。
228.跳过模式可以是将邻近块本身的模式信息应用于编码/解码目标块的模式。跳过模式可以是用于帧间预测的模式之一。当跳过模式被使用时,编码设备100可对关于哪个块的运动信息被用作编码目标块的运动信息的信息进行熵编码,并可通过比特流将该信息用信号发送到解码设备200。编码设备100可不将其它信息(例如,语法元素信息)用信号发送到解码设备200。语法元素信息可包括运动矢量差信息、编码块标志以及变换系数等级中的至少一个。
229.在帧内预测或帧间预测之后产生的残差信号可通过作为量化处理的一部分的变换处理被变换到频域。这里,首次变换可使用dct类型2(dct-ii)以及各种dct、dst核。这些变换核可对残差信号执行沿水平和/或垂直方向执行1d变换的可分离变换,或者可对残差信号执行2d不可分离变换。
230.例如,在1d变换的情况下,在变换中使用的dct和dst类型可使用如下表中所示的dct-ii、dct-v、dct-viii、dst-i以及dst-vii。例如,如表1和表2中所示,可推导出通过组成变换集而在变换中使用的dct或dst类型。
231.[表1]
[0232]
变换集变换0dst_vii、dct-viii1dst-vii、dst-i2dst-vii、dct-v
[0233]
[表2]
[0234]
变换集变换0dst_vii、dct-viii、dst-i1dst-vii、dst-i、dct-viii2dst-vii、dct-v、dst-i
[0235]
例如,如图8所示,根据帧内预测模式,不同的变换集针对水平方向和垂直方向被定义。接下来,编码器/解码器可通过使用当前编码/解码目标块的帧内预测模式和相关变换集的变换来执行变换和/或逆变换。在这种情况下,不对变换集执行熵编码/解码,并且编码器/解码器可根据相同的规则来定义变换集。在这种情况下,指示变换集的变换之中的哪种变换被使用的熵编码/解码可被执行。例如,当块的尺寸等于或小于64
×
64时,根据帧内预测模式,如表2中所示三个变换集被组成,并且三个变换被用于每个水平方向变换和垂直方向变换以组合并执行总共九个多变换方法。接下来,通过使用最优变换方法来对残差信号进行编码/解码,由此,编码效率可被提高。这里,为了对关于一个变换集中的三个变换之中哪个变换方法被使用的信息进行熵编码/解码,可使用截断一元二进制化。这里,为了进行垂直变换和水平变换中的至少一个,可对指示变换集的变换中的哪个变换被使用的信息执行熵编码/解码。
[0236]
在完成上述首次变换之后,如图9中所示,编码器可针对变换系数执行二次变换以提高能量集中度。二次变换可执行沿水平和/或垂直方向执行1d变换的可分离变换,或者可执行2d不可分离变换。所使用的变换信息可被用信号发送,或者可由编码器/解码器根据当
前编码信息和邻近编码信息推导出。例如,如1d变换,用于二次变换的变换集可被定义。不对该变换集执行熵编码/解码,并且编码器/解码器可根据相同的规则定义变换集。在这种情况下,指示变换集的变换之中的哪个变换被使用的信息可被用信号发送,并且该信息可通过帧内预测或帧间预测被应用于至少一个残差信号。
[0237]
变换候选的数量或类型中的至少一个针对每个变换集而不同。变换候选的数量或类型中的至少一个可基于以下至少一个而被不同地确定:块(cu、pu、tu等)的位置、尺寸、分区形式、以及预测模式(帧内/帧间模式)或帧内预测模式的方向/非方向。
[0238]
解码器可依据二次逆变换是否被执行来执行二次逆变换,并可从二次逆变换的结果依据首次逆变换是否被执行来执行首次逆变换。
[0239]
上述首次变换和二次变换可被应用于亮度/色度分量中的至少一个信号分量,或者可根据任意编码块的尺寸/形状被应用。可对指示首次变换/二次变换是否被使用以及任意编码块中的所使用的首次变换/二次变换两者的索引执行熵编码/解码。可选择地,所述索引可由编码器/解码器根据至少一条当前/邻近编码信息而默认推导出。
[0240]
在帧内预测或帧间预测之后获得的残差信号在经过首次变换和/或二次变换之后经过量化处理,并且量化的变换系数经过熵编码处理。这里,如图10中所示,量化的变换系数可基于帧内预测模式或最小块的尺寸/形状中的至少一个,按照对角方向、垂直方向和水平方向被扫描。
[0241]
此外,执行了熵解码的量化的变换系数可通过被逆扫描而按照块形式被布置,并且可对相关块执行反量化或逆变换中的至少一个。这里,作为逆扫描的方法,对角方向扫描、水平方向扫描和垂直方向扫描中的至少一个可被执行。
[0242]
例如,在当前编码块的尺寸为8
×
8时,可对针对8
×
8的块的残差信号执行首次变换、二次变换以及量化,接下来,可根据图10中示出的三种扫描顺序方法中的至少一种针对四个4
×
4的子块中的每一个对量化的变换系数执行扫描和熵编码。此外,可通过执行熵解码来对量化的变换系数执行逆扫描。执行了逆扫描的量化的变换系数在经过反量化之后成为变换系数,并且二次逆变换或首次逆变换中的至少一个被执行,由此,重建残差信号可被产生。
[0243]
在视频编码处理中,一个块可如图11所示被分区,并且与分区信息相应的指示符可被用信号发送。这里,分区信息可以是以下项中的至少一个:分区标志(split_flag)、四叉/二叉树标志(qb_flag)、四叉树分区标志(quadtree_flag)、二叉树分区标志(binarytree_flag)以及二叉树分区类型标志(btype_flag)。这里,split_flag是指示块是否被分区的标志,qb_flag是指示块是按照四叉树形式还是按照二叉树形式被分区的标志,quadtree_flag是指示块是否按照四叉树形式被分区的标志,binarytree_flag是指示块是否按照二叉树形式被分区的标志,btype_flag是指示在二叉树形式的分区的情况下块是被垂直分区还是被水平分区的标志。
[0244]
当分区标志为1时,它可指示分区被执行,当分区标志为0时,它可指示分区不被执行。在四叉/二叉树标志的情况下,0可指示四叉树分区,并且1可指示二叉树分区。可选择地,0可指示二叉树分区,1可指示四叉树分区。在二叉树分区类型标志的情况下,0可指示水平方向分区,1可指示垂直方向分区。可选择地,0可指示垂直方向分区,1可指示水平方向分区。
[0245]
例如,可通过将如表3中示出的quadtree_flag、binarytree_flag和btype_flag中的至少一个用信号发送来推导出图11的分区信息。
[0246]
[表3]
[0247][0248]
例如,可通过将如表4中示出的split_flag、qb_flag和btype_flag中的至少一个用信号发送来推导出图11的分区信息。
[0249]
[表4]
[0250][0251]
可根据块的尺寸/形状仅按照四叉树形式或仅按照二叉树形式来执行分区方法。在这种情况下,split_flag可意为指示是按照四叉树形式还是按照二叉树形式执行分区的标志。块的尺寸/形状可根据块的深度信息被推导,并且深度信息可被用信号发送。
[0252]
当块的尺寸在预定范围中时,可仅按照四叉树形式执行分区。这里,所述预定范围可被定义为仅能够按照四叉树形式被分区的最大块的尺寸或最小块的尺寸中的至少一个。可通过比特流用信号发送指示允许四叉树形式的分区的最大块/最小块的尺寸的信息,并且可以以序列、画面参数或条带(分段)中的至少一个为单位用信号发送该信息。可选择地,最大块/最小块的尺寸可以是在编码器/解码器中预设的固定尺寸。例如,当块的尺寸的范围是256x256至64x64时,可仅按照四叉树形式执行分区。在这种情况下,split_flag可以是指示是否按照四叉树形式执行分区的标志。
[0253]
当块的尺寸在预定范围中时,可仅按照二叉树形式执行分区。这里,所述预定范围可被定义为仅能够按照二叉树形式被分区的最大块的尺寸或最小块的尺寸中的至少一个。可通过比特流用信号发送指示允许二叉树形式的分区的最大块/最小块的尺寸的信息,并且可以以序列、画面参数或条带(段)中的至少一个为单位用信号发送该信息。可选择地,最大块/最小块的尺寸可以是在编码器/解码器中预设的固定尺寸。例如,当块的尺寸的范围是16x16至8x8时,可仅按照二叉树形式执行分区。在这种情况下,split_flag可以是指示是否按照二叉树形式执行分区的标志。
[0254]
在按照二叉树形式对一个块进行分区之后,当分区出的块被进一步分区时,可仅按照二叉树形式执行分区。
[0255]
当分区出的块的宽度大小或长度大小不能被进一步分区时,至少一个指示符可不被用信号发送。
[0256]
除了基于四叉树的二叉树分区以外,基于四叉树的分区可在二叉树分区之后被执行。
[0257]
图12是示出根据本发明的执行帧内预测方法的编码设备的操作的示图。
[0258]
在图12的步骤s1201,可配置用于帧内预测的参考像素。随后,在步骤s1202,可执行帧内预测,并且在步骤s1203,可对关于帧内预测的信息进行编码。
[0259]
图13是示出根据本发明的执行帧内预测方法的解码设备的操作的示图。
[0260]
在图13的步骤s1301,可对关于帧内预测的信息进行解码。随后,在步骤s1302,可配置用于帧内预测的参考像素,并且在步骤s1303,可执行帧内预测。
[0261]
首先,将参照图14至图17详细描述配置用于帧内预测的参考像素的步骤(步骤s1201和s1302)。
[0262]
图14是示出可用于配置用于帧内预测的参考像素阵列p
ref
的像素的示图。
[0263]
如图14所示,可通过使用已被编码/解码的邻近块内的像素来配置用于作为编码/解码目标块的当前块bc的帧内预测的参考像素。例如,参考的邻近块可以是位于当前块的上侧和/或左侧的块,但不限于此,参考的邻近块可以是包括在同一画面中的块,其中,该同一画面中包括当前块。当当前块的尺寸是n
×
m时,参考像素的数量可以是包括(2
×
n+2
×
m+1)的正整数。
[0264]
为了配置参考像素,可执行对邻近块的像素的可用性检查。可按照预定方向执行对邻近块的像素的可用性检查。例如,针对可用性检查,可按照从最左下侧像素到最右上侧像素的方向执行扫描。可选择地,可按照相反方向执行扫描。可选择地,可针对左邻近侧像素和上邻近侧像素按照不同方向分别执行扫描。
[0265]
例如,当当前块的参考像素候选位于画面之外时,可将相应的参考像素候选指定为“标记为不可用”。
[0266]
例如,当当前块的参考像素候选属于其它条带时,可将相应的参考像素候选指定为“标记为不可用”。
[0267]
例如,当当前块的参考像素候选属于已通过帧间预测或约束帧内预测被编码/解码的邻近块时,可将相应的参考像素候选指定为“标记为不可用”。
[0268]
可通过使用可用参考像素来替换指定为“标记为不可用”的参考像素候选(以下,称为“不可用参考像素候选”或“不可用参考像素”)。
[0269]
图15是示出将“不可用参考像素候选”替换为“可用参考像素候选”的像素值的实施例的示图。
[0270]
在图15中,灰度像素指示可用参考像素,空白像素指示不可用参考像素。在图15中,可按照从最左下侧像素至最右上侧像素的方向执行可用性检查。
[0271]
图15的(a)是示出当不可用参考像素存在于参考像素阵列p
ref
的中间(换句话说,在可用参考像素a和b的中间)时替换不可用参考像素的实施例的示图。
[0272]
在图15的(a)中,可通过填充参考像素阵列的可用参考像素中的与第一不可用参
考像素邻近的参考像素a的值来替换不可用参考像素(p
pad
=p
prev
=a)。p
pad
表示填充的像素值,p
prev
表示先前的邻近可用参考像素。
[0273]
可选择地,在图15的(a)中,可使用通过使用至少两个可用参考像素推导出的像素值来替换不可用参考像素。例如,可使用位于不可用参考像素的两端的可用参考像素。例如,在图15的(a)中,可通过使用可用参考像素a和b的像素值来替换不可用参考像素的值。例如,可通过使用可用参考像素a和b的像素值的平均值或加权和来替换不可用参考像素。在本说明书中,可将加权和用作包括加权平均。
[0274]
可选择地,可使用可用参考像素a和b的像素值之间的任意值来替换不可用参考像素的值。这里,可使用彼此不同的值来替换不可用参考像素。例如,不可用参考像素与参考像素a越接近,越可能使用与像素a的像素值接近的像素值来替换不可用参考像素。相似地,不可用参考像素与参考像素b越接近,越可能使用与像素b的像素值接近的像素值来替换不可用参考像素。换句话说,基于从不可用参考像素到可用参考像素a和/或可用参考像素b的距离,可确定不可用参考像素的像素值。
[0275]
可选择性地应用包括上述方法的多个方法中的至少一个以替换不可用参考像素。可以以包括在比特流中的信息用信号发送替换不可用参考像素的方法,或可使用由编码器和解码器预定的方法。可选择地,可通过预定方法推导出替换不可用参考像素的方法。例如,基于可用参考像素a和b的像素值之间的差和/或不可用参考像素的数量,可选择替换不可用参考像素的方法。例如,可基于将两个可用参考像素的像素值之间的差与阈值进行比较和/或将不可用参考像素的数量与阈值进行比较,来选择替换不可用参考像素的方法。例如,当两个可用参考像素的像素值之间的差大于阈值和/或不可用参考像素的数量大于阈值时,可将不可用参考像素替换为具有彼此不同的值。
[0276]
可按照预定单元执行对替换不可用参考像素的方法的选择。例如,可按照视频、序列、画面、条带、并行块、编码树单元、编码单元、预测单元和变换单元中的至少一个为单位来执行对替换不可用参考像素的方法的选择。这里,对替换不可用参考像素的方法的选择可基于按照上述预定单元用信号发送的信息,或者可按照上述预定单元被推导。可选择地,可应用由编码器和解码器预定的方法。
[0277]
图15的(b)是示出当可用参考像素不存在于参考像素阵列p
ref
中的不可用参考像素的前面时替换不可用参考像素的实施例的示图。
[0278]
在图15的(b)中,可通过填充与最后不可用参考像素邻近的可用参考像素a的像素值来替换不可用参考像素。例如,在图15的(b)中,可使用扫描序列内的作为第一可用参考像素的像素a的像素值来替换参考像素阵列中的第一不可用参考像素。在确定参考像素阵列中的第一不可用参考像素的像素值之后,可应用参照图15的(a)描述的方法。因此,可使用第一可用参考像素a的像素值来替换位于从扫描序列内的第一不可用参考像素到紧接在第一可用参考像素a之前的像素的不可用参考像素(p
pad
=p
prev
=a)。此外,可使用可用参考像素b的像素值来替换位于继可用参考像素b之后的不可用参考像素(p
pad
=p
prev
=b)。
[0279]
作为在图15中未示出的情况,例如,当不可用参考像素存在于参考像素阵列p
ref
中时,可使用任意值替换全部不可用参考像素。这里,作为任意值,可使用参照参考像素可具有的范围的像素值范围的中间值(例如,在具有8比特作为比特深度bd(2
bd-1
=128,bd=8)的图像的情况下)。可选择地,可将在0与2
bd
之间的正整数值用作任意值。
[0280]
在执行使用参考像素的帧内预测之前,可执行针对参考像素的滤波。
[0281]
在从已被编码/解码的邻近块产生了参考像素阵列p
ref
之后,可基于当前块的尺寸ns和/或帧内预测模式来执行针对参考像素的滤波。例如,当当前块的帧内预测模式是方向预测模式时,可基于垂直方向模式和/或水平方向模式之间的差执行滤波。例如,当当前块的帧内预测模式intrapredmode是方向预测模式时,在与垂直方向模式(假设33个方向模式,索引=26)的差以及与水平方向模式(假设33个方向模式,索引=10)的差中,可计算这两个值中的较小值,mindistverhor=min(abs(intrapredmode-26),abs(intrapredmode-10))。当上述较小值mindistverhor大于分配给相应的块尺寸的阈值intrahorverdistthresh(即,mindistverhor》intrahorverdistthresh)时,可执行滤波。当上述较小值mindistverhor小于或等于所述阈值时,可不执行滤波。
[0282]
图16是示例性地示出分配给块尺寸ns的阈值ntrahorverdistthresh的示图。
[0283]
例如,针对4
×
4的块,可将10分配为阈值,针对8
×
8的块,可将7分配为阈值,针对16
×
16的块,可将1分配为阈值,针对32
×
32的块,可将0分配为阈值,针对64
×
64的块,可将10分配为阈值。图16的阈值是示例,根据块尺寸,可将彼此相同或不同的任意阈值设置为阈值。根据块尺寸的阈值可以是由编码器和解码器预定的值。可选择地,阈值可以是基于通过比特流用信号发送的信息和/或基于当编码/解码时使用的内部参数而推导出的值。
[0284]
图17是示出根据当前块的块尺寸和方向预测模式是否执行针对参考像素的滤波的示图。
[0285]
如图17所示,针对块尺寸为8
×
8、16
×
16或32
×
32的当前块,可根据方向预测模式确定是否执行针对参考像素的滤波。x标记表示不执行滤波,o标记表示执行滤波。
[0286]
根据参照图14和图15描述的扫描序列,可按照p
ref
的从最左下侧像素到最右上侧像素的顺序来顺序地执行滤波。可选择地,可按照任意顺序执行针对p
ref
的滤波。这里,可跳过针对第一参考像素(最左下侧像素)和最后参考像素(最右上侧像素)的滤波。滤波器抽头的大小可以是大于2并包括3的正整数。当滤波器抽头的大小是3时,滤波器系数可以是例如1/4、1/2和1/4。可通过使用n个参考像素执行滤波。n个参考像素可包括经过滤波的参考像素或滤波之前的参考像素。例如,可使用滤波目标像素的像素值来替换n个参考像素的加权和(或加权平均)。这里,可基于数量n来确定滤波器抽头的大小,滤波器系数可以是用于加权和的权重。可基于滤波目标像素和用于滤波的参考像素的位置来确定权重。例如,滤波目标像素与用于滤波的参考像素越接近,越大的权重可被应用。
[0287]
作为应用滤波的另一实施例,可针对块尺寸等于或大于预定尺寸的当前块执行双线性插值滤波。例如,针对块尺寸等于或大于预定尺寸ns的当前块,可计算垂直方向和/或水平方向的二次差值。例如,可将垂直方向的二次差值计算为|p
ref
(-1,-1)-2
×
p
ref
(-1,ns/2)+p
ref
(-1,ns)|。可将计算出的二次差值与各个预定阈值进行比较。可基于比特深度bd确定各个预定阈值。例如,预定阈值可以是2
bd-c
。这里,c可以是1与bd之间的任意整数。可基于计算出的二次差值与各个预定阈值之间的比较结果来执行滤波。
[0288]
例如,当满足以下方程式1时,可执行滤波。
[0289]
【方程式1】
[0290]
|p
ref
(-1,-1)-2
×
p
ref
(n
s-1,-1)+p
ref
(2
×ns-1,-1)|《2
bd-c和/或
[0291]
|p
ref
(-1,-1)-2
×
p
ref
(-1,n
s-1)+p
ref
(-1,2
×ns-1)|《2
bd-c
[0292]
(bd是比特深度,1<=c<=bd的正整数)
[0293]
当满足以上方程式1时,可通过使用两个参考像素执行双线性插值来计算滤波目标像素的像素值。用于双线性插值的两个像素可以是例如在垂直方向上或在水平方向上位于参考像素阵列的两端的参考像素。可例如基于两个参考像素和滤波目标像素的位置来确定用于双线性插值的插值系数。可例如通过使用以下方程式2来执行使用双线性插值的滤波。
[0294]
【方程式2】
[0295]
p
ref
(-1,y)=(n
s-1-y)/ns×
p
ref
(-1,-1)+(y+1)/ns×
p
ref
(-1,n
s-1),
[0296]
其中,y=0、
…
、n
s-1,和/或
[0297]
p
ref
(x,-1)=(n
s-1-x)/ns×
p
ref
(-1,-1)+(x+1)/ns×
p
ref
(n
s-1,-1),
[0298]
其中,x=0、
…
、n
s-1
[0299]
如上所述,当在步骤s1201和s1302中配置了用于帧内预测的参考像素时,可在步骤s1202和s1303中使用参考像素执行帧内预测。
[0300]
为了执行针对当前块的帧内预测,必须确定帧内预测模式。编码设备可通过选择多个帧内预测模式中的单个帧内预测模式来执行帧内预测。解码设备可通过从编码器用信号发送的信息对当前块的帧内预测模式进行解码来执行帧内预测。可通过对关于帧内预测的信息进行解码来推导出对帧内预测模式的解码,并且后面将使用步骤s1301的描述来描述上述处理。
[0301]
以下,将参照图18至图43详细描述使用参考像素执行帧内预测的步骤s1202和s1303。
[0302]
图18是示出当帧内预测模式是非方向平面模式intra_planar时的帧内预测的示图。
[0303]
当帧内预测模式是非方向平面模式intra_planar时,可通过n个参考像素的加权和或加权平均来计算预测块。可根据预测块内的预测目标像素的位置(x,y)来确定n个参考像素。n可以是大于1的正整数,例如,4。
[0304]
如图18所示,当n=4并且块尺寸ns是4时,可通过上侧参考像素c、左侧参考像素b、当前块的右上角像素d和当前块的左下角像素d的加权和来确定预测块内的位于(x,y)处的像素的预测值。当计算加权和时,可使用以下方程式3。
[0305]
【方程式3】
[0306][0307]
图19是示出当帧内预测模式是非方向dc模式intra_dc时的帧内预测的示图。
[0308]
当帧内预测模式是非方向dc模式intra_dc时,可使用与当前块邻近的参考像素的像素值的平均值来填充预测块内的全部像素值。当计算平均值时,可使用以下方程式4。
[0309]
【方程式4】
[0310][0311]
在dc模式中,可针对当前块的左侧和/或上侧的n个行/列执行滤波,并且n可以是等于或大于1的整数。例如,当n=1时,如图19所示,可针对当前块的上侧的第一行和/或左
侧的第一列执行滤波。可例如通过使用以下方程式5来执行滤波。
[0312]
【方程式5】
[0313][0314][0315][0316]
在dc模式中,可通过使用v
dc
值获得第一预测块并通过将滤波应用于第一预测块的n个行和/或列来获得最终预测块。可选择地,在计算出v
dc
值之后,可基于预测块内的目标像素的位置,通过将v
dc
值分配给滤波后的值或通过将v
dc
值分配给相应像素的像素值来直接获得最终预测块。
[0317]
当帧内预测模式是方向模式时,可基于n个直线方向模式对当前块进行编码/解码。n可以是包括33、65等的正整数。例如,在图17中,n是33(从模式2到模式34),每个模式具有不同方向。
[0318]
图20是示出包括33个直线方向模式的帧内预测模式predmodeintra中的每个直线方向模式与垂直方向之间的角度的实施例的示图。
[0319]
除了直线方向模式之外,可基于m个曲线模式(m是正整数)对当前块进行编码/解码。可通过使用参数来确定数量m个曲线模式。作为参数,例如,可使用曲率参数cuv和/或权重参数cw。
[0320]
如图20所示例的,模式35可表示从右上侧到左下侧方向的曲线模式,模式36可表示从左上侧到右下侧(类型-1)方向的曲线模式,模式37可表示从左下侧到右上侧方向的曲线模式,模式38可表示从左上侧到右下侧(类型-2)方向的曲线模式,模式39可表示从上侧到左下侧方向的曲线模式,模式40可表示从上侧到左上侧方向的曲线模式,模式41可表示从左侧到右上侧方向的曲线模式,模式42可表示从左侧到右下侧方向的曲线模式。
[0321]
对于图20的各个曲线模式,可基于曲率参数和/或权重参数执行各种曲线预测。
[0322]
用作用于执行曲线预测的参数的曲率参数和/或权重参数仅是示例,并且可使用各种参数用于产生曲线预测块。例如,针对彼此不同的块尺寸,可在编码器/解码器中平等地使用指定用于搜索参考像素的位置的角度的查找表(用于像素的每个位置处的曲线预测)。
[0323]
对于帧内直线方向预测,可根据预测模式的方向不同地确定用于预测的左侧参考像素和/或上侧参考像素。此外,为了计算方便,在执行预测之前,如图21所示,可从p
ref
产生一维(1-d)参考像素阵列p
1,ref
。可根据方向预测模式的角度p
ang
不同地确定映射为p
1,ref
的多个参考像素。
[0324]
图22是示出当直线方向模式是水平方向时针对4
×
4块产生p
1,ref
的实施例的示图。
[0325]
例如,如图17中所示,当方向帧内预测模式的数量是33时,从模式2到模式18是按照水平方向执行预测的直线方向模式。这里,针对4
×
4块产生p
1,ref
可如图22中所示。
[0326]
图23是示出当直线方向模式是垂直方向时针对4
×
4块产生p
1,ref
的实施例的示图。
[0327]
例如,如图17中所示,当方向帧内预测模式的数量是33时,从模式19到模式34是按
照垂直方向执行预测的直线方向模式。这里,针对4
×
4块产生p
1,ref
可如图23中所示。
[0328]
参照图22和图23描述的实施例是直线方向模式的数量为33的实施例。相应地,当直线方向模式的数量改变时,可在保持相同方法的同时按照不同形式执行基于p
ang
产生p
1,ref
。
[0329]
当使用p
1,ref
产生预测块时,可执行按照实数单位的插值预测。例如,基于与每个直线方向预测模式相应的角度参数intrapredangle,可如下地确定根据当前块中的像素的位置的用于预测样点插值的偏移值iidx和/或权重ifact。
[0330]
例如,当按照1/32像素(1/32pel)单位执行插值时,可通过使用以下方程式6来确定用于从图17的模式19到模式34的直线方向模式并按照垂直方向执行预测的偏移值和权重。
[0331]
【方程式6】
[0332]
iidx=((y+1)*intrapredangle)>>5
[0333]
ifact=((y+1)*intrapredangle)&31
[0334]
可根据以上方程式6的ifact值不同地确定预测样点值。例如,当ifact值不是0时,p
1,ref
中的预测的位置变为实数单位而非整数单位(全像素位置)。因此,可通过使用与实数位置邻近的多个参考像素来产生预测样点值。这里,多个参考像素可以位于实数位置的上侧、下侧、左侧、右侧和对角侧中的至少一个处。参考像素的数量可以是2、3或更多。例如,可通过使用以下方程式7来产生在位置(x,y)处的预测样点值。
[0335]
【方程式7】
[0336]
predsamples[x][y]=((32-ifact)*p
1,ref
[x+iidx+1]+ifact*p
1,ref
[x+iidx+2]+16)>>5
[0337]
例如,当ifact值是0时,可通过使用以下方程式8来产生预测样点值。
[0338]
【方程式8】
[0339]
predsamples[x][y]=p
1,ref
[x+iidx+1]
[0340]
当预测模式按照水平方向(图17的从模式2到模式18)时,可应用方程式6到8中的x和y的位置被改变的方程式。描述的按照1/32像素(1/32pel)单位的插值预测可以是实施例,可应用按照1/n像素(1/n pel)单位(n是正整数)的插值预测。
[0341]
在方向预测模式中的水平方向模式和/或垂直方向模式的情况下,可不执行参考像素滤波。此外,通过使用参考目标像素以及x位置和y位置与预测样点相同的参考像素,插值预测可以不是必要的。此外,当预测通过使用仅上侧或左侧的参考像素而可用时,产生1-d参考像素阵列p
1,ref
的处理可以不是必要的。
[0342]
在方向预测模式中的水平方向模式和/或垂直方向模式的情况下,可在产生当前块的预测块之后另外针对预测块的边界行/列执行滤波。
[0343]
图24是示出当预测模式是垂直方向时对预测块的边界行/列进行滤波的实施例的示图。
[0344]
如图24中所示,可对预测块的左侧的第一列执行滤波。针对滤波,例如,可使用以下方程式9。
[0345]
【方程式9】
[0346][0347]
此外,对于按照水平和垂直方向的方向预测模式,可对预测块的左侧和/或上侧的n个行和/或列执行另一方法的滤波。这里,n可以是小于预测块的块尺寸的整数。
[0348]
例如,当使用等于或大于多个参考像素线来产生预测块时,可通过使用存在于同一线中的参考像素之间的改变量或存在于不同线中的参考像素之间的改变量来执行滤波。
[0349]
在直线方向预测的情况下,当具有多个图像特征的曲线包括在当前块中时,可降低编码效率。为了提高编码效率,可通过使用曲线模式执行针对当前块的帧内预测。
[0350]
此外,当通过使用仅直线方向模式对包括曲线的当前块执行编码/解码时,由于目标块可被划分为更小的块以减小编码误差,故可增大将被发送的数据量(换句话说,信令开销)。然而,当通过使用曲线预测对具有相同特征的当前块执行编码/解码时,由于即使块不被划分为子块也可产生具有相同等级的预测误差的预测块,故可提高编码效率。
[0351]
在直线方向预测的情况下,产生预测块内的所有像素的位置(x,y)的预测值可使用以与预测模式predmodeintra相应的intrapredangle分离布置的参考像素的参考像素值。
[0352]
例如,在图20中,当predmodeintra是2时,可通过使用基于直角方向向左下侧以32度分离布置的参考像素来计算预测块内的任意位置(x,y)的预测值。
[0353]
在曲线预测的情况下,与直线方向预测不同,可根据预测块内的预测目标像素的位置(x,y)通过使用具有彼此不同角度的参考像素(或具有彼此不同角度的predmodeintra)来执行预测。
[0354]
图25是示出根据预测块内的像素的位置使用具有不同角度的参考像素的实施例的示图。
[0355]
例如,如图25的(a)中所示,可通过使用以彼此不同的角度布置的参考像素在预测块内按照像素单位来产生预测值。
[0356]
可选择地,如图25的(b)中所示,可通过使用以彼此不同的角度布置的参考像素在预测块内按照水平线单位来产生预测值。
[0357]
可选择地,如图25的(c)中所示,可通过使用以彼此不同的角度布置的参考像素在预测块内按照垂直线单位来产生预测值。
[0358]
可选择地,如图25的(d)中所示,可通过使用以彼此不同的角度布置的参考像素在预测块内按照对角线单位来产生预测值。
[0359]
可选择地,如图25的(e)中所示,可通过使用以彼此不同的角度布置的参考像素在预测块内按照直角线(l形状线)单位来产生预测值。
[0360]
可通过在参照图25描述的多个方法中选择一个方法来执行帧内预测。可按照预定单元执行该一个方法的选择。例如,可以以视频、序列、画面、条带、并行块、编码树单元、编码单元、预测单元和变换单元中的至少一个为单位来执行该方法的选择。这里,选择可基于按照预定单元用信号发送的信息或可按照预定单元被推导。可选择地,可应用由编码器和解码器预定的方法。
[0361]
当通过按照线进行分组来产生曲线帧内预测块时,可将能够用于每条线的n(n是正整数)个角度按照lut进行存储并用作lut。
[0362]
当通过产生和变换曲线预测块与当前块之间的残差块将二维块形式系数转换为一维块形式系数时,可根据选择的曲线预测的类型应用彼此不同的扫描方法。对于扫描,例如,可应用右上扫描、垂直扫描、水平扫描、z字形扫描等。
[0363]
当通过执行方向或非方向帧内预测产生预测块时,可使用与当前块在左侧和/或上侧邻近的多条线(n条线,n是正整数)中的至少一个的参考像素。
[0364]
图26是示出多条线的参考像素的实施例的示图,其中,参考像素用于当前块的帧内预测。
[0365]
如图26中所示,当通过使用四条参考线对4
×
4块进行预测时,可从四条参考线中的一条参考线产生参考像素。
[0366]
可选择地,可从彼此不同的四条参考线产生参考像素。
[0367]
可选择地,可通过将加权和应用于从四条参考线中选择的多条参考线(例如,等于或大于2并且等于或小于4)的一条参考线来产生参考像素。
[0368]
可通过在参照图26描述的多个方法中选择一个方法来执行帧内预测。可按照预定单元执行该单个方法的选择。例如,可以以视频、序列、画面、条带、并行块、编码树单元、编码单元、预测单元和变换单元中的至少一个为单位来执行该方法的选择。这里,选择可基于按照预定单元用信号发送的信息或可按照预定单元被推导。可选择地,可应用由编码器和解码器预定的方法。
[0369]
可将方向或非方向帧内预测应用于正方形块和/或非正方形块。
[0370]
作为曲线帧内预测的实施例,如参照图20所述,可通过使用曲率参数cuv和权重参数cwi(i=0、1、
…
、n
s-1,ns:块尺寸)来确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0371]
例如,在“从右上侧到左下侧”的曲线帧内预测的情况下,如以下方程式10,可按照行单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0372]
【方程式10】
[0373]
第y行
→
p(pos,-1),其中,pos=x+1/2
×
(x+y)+cwy×
cuv
×
(x+1),其中,y=0、1、
…
、ns-1
[0374]
在使用上面的方程式10的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向右移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向左移动(到位置x为止)。
[0375]
当目标块是n
×
m时,cwi可以是包括表示块的高度或行的数量的n个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应行中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i行的预测像素使用的参考像素的位置可向右移动。可选择地,cwi值变得越小,参考像素的位置可向左移动(到位置x为止)。
[0376]
因此,可通过将曲率参数cuv和/或权重行参数cwi进行组合来执行各种形式的曲线帧内预测。
[0377]
图27是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从右上侧到左下侧的方向执行曲线预测的实施例的示图。
[0378]
图28是示出作为图27的应用cuv和cwi的结果的由当前块内的预测像素使用的参
考像素的位置的实施例的示图。
[0379]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0380]
例如,当预测目标像素的参考像素的位置是正整数单位时,可通过参考像素p(pos,-1)推导预测目标像素predpixels[x][y]。pos可表示参考像素的位置。
[0381]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(floor(pos),-1)和p(ceil(pos),-1)按照1/n像素(1/n pel)单位执行插值预测而获得的插值预测数。floor(pos)可以是等于或小于pos的整数值,并表示最大值。ceil(pos)可以是等于或大于pos的整数值,并表示最小值。
[0382]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0383]
当参考像素的位置pos超过可用参考像素的最大范围(在图27中,超过p(7,-1))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0384]
例如,在“从左上侧到右下侧(类型-1)”的曲线帧内预测的情况下,如以下方程式11,可按照行单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0385]
【方程式11】
[0386]
第y行
→
p(pos,-1),其中,pos=x-1/2
×
(ns-1-x+y)-cwy×
cuv
×
(ns-x),其中,y=0、1、
…
、ns-1
[0387]
在使用上面的方程式11的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向左移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向右移动(到位置x为止)。
[0388]
当目标块是n
×
m时,cwi可以是表示块的高度或行的数量的包括n个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应行中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i行的预测像素使用的参考像素的位置可向左移动。可选择地,cwi值变得越小,参考像素的位置可向右移动(到位置x为止)。
[0389]
因此,可通过将曲率参数cuv和/或权重行参数cwi进行组合来执行各种形式的曲线帧内预测。
[0390]
图29是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左上侧到右下侧(类型-1)的方向执行曲线预测的实施例的示图。
[0391]
图30是示出作为图29的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0392]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0393]
例如,当预测目标像素的参考像素的位置是正整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(pos,-1)。
[0394]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(floor(pos),-1)和p(ceil(pos),-1)执行按照1/n像素(1/n pel)单位的插
值预测而获得的插值预测值。
[0395]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0396]
当参考像素的位置pos超过可用参考像素的最大范围(在图29中,超过p(-7,-1))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0397]
例如,在“从左下侧到右上侧”的曲线帧内预测的情况下,如以下方程式12,可按照列单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0398]
【方程式12】
[0399]
第x列
→
p(-1,pos),其中,pos=y+1/2
×
(x+y)+cw
x
×
cuv
×
(y+1),其中,x=0、1、
…
、ns-1
[0400]
在使用上面的方程式12的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向下移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向上移动(到位置y为止)。
[0401]
当目标块是n
×
m时,cwi可以是表示块的宽度或列的数量的包括m个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应列中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i列的预测像素使用的参考像素的位置可向下移动。可选择地,cwi值变得越小,参考像素的位置可向上移动(到位置y为止)。
[0402]
因此,可通过将曲率参数cuv和/或权重列参数cwi进行组合来执行各种形式的曲线帧内预测。
[0403]
图31是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左下侧到右上侧的方向执行曲线预测的实施例的示图。
[0404]
图32是示出作为图31的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0405]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0406]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(-1,pos)。
[0407]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(-1,floor(pos))和p(-1,ceil(pos))执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0408]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0409]
当参考像素的位置pos超过可用参考像素的最大范围(在图31中,超过p(-1,7))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0410]
例如,在“从左上侧到右下侧(类型-2)”的曲线帧内预测的情况下,如以下方程式13,可按照列单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0411]
【方程式13】
[0412]
第x列
→
p(-1,pos),其中,pos=y-1/2
×
(ns-1-y+x)-cw
x
×
cuv
×
(ns-y),其中,x
=0、1、
…
、ns-1
[0413]
在使用上面的方程式13的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向上移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向下移动(到位置y为止)。
[0414]
当目标块是n
×
m时,cwi可以是表示块的宽度或列的数量的包括m个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应列中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i列的预测像素使用的参考像素的位置可向上移动。可选择地,cwi值变得越小,参考像素的位置可向下移动(到位置y为止)。
[0415]
因此,可通过曲率参数cuv和/或权重列参数cwi来执行各种形式的曲线帧内预测。
[0416]
图33是示出通过将cuv=0.1、cw0=1.0、cw1=1.2、cw2=1.4和cw3=1.6应用于具有4
×
4尺寸的当前块,按照从左上侧到右下侧(类型-2)的方向执行曲线预测的实施例的示图。
[0417]
图34是示出作为图33的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0418]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0419]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(-1,pos)。
[0420]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(-1,floor(pos))和p(-1,ceil(pos))执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0421]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0422]
当参考像素的位置pos超过可用参考像素的最大范围(在图33中,超过p(-1,-7))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0423]
例如,在“从上侧到左下侧”的曲线帧内预测的情况下,如以下方程式14,可按照行单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0424]
【方程式14】
[0425]
第y行
→
p(pos,-1),其中,pos=x+cwy×
cuv
×
y,其中,y=0、1、
…
、ns-1
[0426]
在使用上面的方程式14的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向右移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向左移动(到位置x为止)。
[0427]
当目标块是n
×
m时,cwi可以是表示块的高度或行的数量的包括n个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应行中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i行的预测像素使用的参考像素的位置可向右移动。可选择地,cwi值变得越小,参考像素的位置可向左移动(到位置x为止)。
[0428]
因此,可通过将曲率参数cuv和/或权重行参数cwi进行组合来执行各种形式的曲
线帧内预测。
[0429]
图35是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从上侧到左下侧的方向执行曲线预测的实施例的示图。
[0430]
图36是示出作为图35的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0431]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0432]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(pos,-1)。
[0433]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(floor(pos),-1)和p(ceil(pos),-1)执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0434]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0435]
当参考像素的位置pos超过可用参考像素的最大范围(在图35中,超过p(7,-1))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0436]
例如,在“从上侧到右下侧”的曲线帧内预测的情况下,如以下方程式15,可按照行单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0437]
【方程式15】
[0438]
第y行
→
p(pos,-1),其中,pos=x-cwy×
cuv
×
y,其中,y=0、1、
…
、ns-1
[0439]
在使用上面的方程式15的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向左移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向右移动(到位置x为止)。
[0440]
当目标块是n
×
m时,cwi可以是表示块的高度或行的数量的包括n个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应行中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i行的预测像素使用的参考像素的位置可向左移动。可选择地,cwi值变得越小,参考像素的位置可向右移动(到位置x为止)。
[0441]
因此,可通过将曲率参数cuv和/或权重行参数cwi进行组合来执行各种形式的曲线帧内预测。
[0442]
图37是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从上侧到右下侧的方向执行曲线预测的实施例的示图。
[0443]
图38是示出作为图37的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0444]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0445]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(pos,-1)。
[0446]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]
推导为通过对p(floor(pos),-1)和p(ceil(pos),-1)执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0447]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0448]
当参考像素的位置pos超过可用参考像素的最大范围(在图37中,超过p(-7,-1))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0449]
例如,在“从左侧到右上侧”的曲线帧内预测的情况下,如以下方程式16,可按照列单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0450]
【方程式16】
[0451]
第x列
→
p(pos,-1),其中,pos=y+cw
x
×
cuv
×
x,其中,x=0、1、
…
、ns-1
[0452]
在使用上面的方程式16的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向下移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向上移动(到位置y为止)。
[0453]
当目标块是n
×
m时,cwi可以是表示块的宽度或列的数量的包括m个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应列中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i列的预测像素使用的参考像素的位置可向下移动。可选择地,cwi值变得越小,参考像素的位置可向上移动(到位置y为止)。
[0454]
因此,可通过将曲率参数cuv和/或权重列参数cwi进行组合来执行各种形式的曲线帧内预测。
[0455]
图39是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从左侧到右上侧的方向执行曲线预测的实施例的示图。
[0456]
图40是示出作为图39的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0457]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0458]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(-1,pos)。
[0459]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(-1,floor(pos))和p(-1,ceil(pos))执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0460]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0461]
当参考像素的位置pos超过可用参考像素的最大范围(在图39中,超过p(-1,7))时,所有参考像素的计算出的位置可在通过与可用参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0462]
例如,在“从左侧到右下侧”的曲线帧内预测的情况下,如以下方程式17,可按照列单元确定用于产生预测块内的任意位置(x,y)的预测值的参考像素的位置。
[0463]
【方程式17】
[0464]
第x列
→
p(-1,pos),其中,pos=y
–
cw
x
×
cuv
×
x,其中,x=0、1、
…
、ns-1
[0465]
在使用上面的方程式17的曲线帧内预测的情况下,可通过调整cuv来调整曲率的大小。cuv可以是等于或大于0的实数。例如,cuv值变得越大,曲率就变得越大,并且参考像素的位置可向上移动。可选择地,cuv值变得越小,曲率就变得越小,并且参考像素的位置可向下移动(到位置y为止)。
[0466]
当目标块是n
×
m时,cwi可以是表示块的宽度或列的数量的包括m个权重的参数。每个权重可以是等于或大于0的实数。可通过调整cwi来调整由包括在相应列中的预测像素使用的参考像素的位置。例如,cwi值变得越大,由第i列的预测像素使用的参考像素的位置可向上移动。可选择地,cwi值变得越小,参考像素的位置可向下移动(到位置y为止)。
[0467]
因此,可通过将曲率参数cuv和/或权重列参数cwi进行组合来执行各种形式的曲线帧内预测。
[0468]
图41是示出通过将cuv=0.6、cw0=1.0、cw1=1.4、cw2=1.8和cw3=2.2应用于具有4
×
4尺寸的当前块,按照从左侧到右下侧的方向执行曲线预测的实施例的示图。
[0469]
图42是示出作为图41的应用cuv和cwi的结果的由当前块内的预测像素使用的参考像素的位置的实施例的示图。
[0470]
为了产生预测像素值,可执行所描述的按照1/n像素(1/n pel)单位的插值预测。n可以是正整数。
[0471]
例如,当预测目标像素的参考像素的位置是整数单位时,可将预测目标像素predpixels[x][y]推导为参考像素p(-1,pos)。
[0472]
例如,当预测目标像素的参考像素的位置是实数单位时,可将predpixels[x][y]推导为通过对p(-1,floor(pos))和p(-1,ceil(pos))执行按照1/n像素(1/n pel)单位的插值预测而获得的插值预测值。
[0473]
如上所述,为了计算方便,可在产生预测样点值之前将p
ref
转换为p
1,ref
。
[0474]
当参考像素的位置pos超过可用参考像素的最大范围(在图41中,超过p(-1,-7))时,所有参考像素的计算出的位置可在通过与参考像素的最大范围相匹配而被转换为各个归一化值之后被使用。
[0475]
在参照图27到图42描述的实施例中,将单个曲率参数cuv应用于当前块,并将单个权重参数cw应用于当前块的行或列。然而,不限于此。换句话说,可将至少一个曲率参数cuvi和/或至少一个权重参数cwi应用于当前块。例如,如参照图25所述,可将不同曲率参数cuvi和不同权重参数cwi应用于当前块的像素单元、水平线单元、垂直线单元、对角线单元、直角线单元、子块单元和/或任意像素组单元。
[0476]
图43是示出曲线帧内预测的另一实施例的示图。
[0477]
如图43中所示,当选择了直线帧内预测模式时,可基于直线帧内预测模式另外执行曲线帧内预测。
[0478]
例如,当选择的帧内预测模式是非方向模式(planar_mode或dc_mode)时,可不执行曲线预测。
[0479]
在图43的(a)中,当选择的直线帧内预测模式包括在范围a中时,可在从左下侧
→
右上侧的方向和从左侧
→
右上侧的方向中的至少一个上执行曲线预测。
[0480]
可选择地,在图43的(a)中,当选择的直线帧内预测模式包括在范围b中时,可在从左上侧
→
右下侧(类型-2)的方向和从左侧
→
右下侧的方向中的至少一个上执行曲线预测。
[0481]
可选择地,在图43的(a)中,当选择的直线帧内预测模式包括在范围c中时,可在从左上侧
→
右下侧(类型-1)的方向和从上侧
→
右下侧的方向中的至少一个上执行曲线预测。
[0482]
可选择地,在图43的(a)中,当选择的直线帧内预测模式包括在范围d中时,可在从右上侧
→
左下侧的方向和从上侧
→
左下侧的方向中的至少一个上执行曲线预测。
[0483]
可选择地,在图43的(b)中,当选择的直线帧内预测模式包括在范围a中时,可在从左侧
→
右下侧的方向和从左侧
→
右上侧的方向中的至少一个上执行曲线预测。
[0484]
可选择地,在图43的(b)中,当选择的直线帧内预测模式包括在范围b中时,可在从上侧
→
左下侧的方向和从上侧
→
右下侧的方向中的至少一个上执行曲线预测。
[0485]
以下,将参照图44到图46详细描述对关于帧内预测的信息进行编码或解码的步骤(s1203和s1301)。
[0486]
在步骤s1203,根据本公开的编码设备可将关于帧内预测的信息编码到比特流。所述编码可包括熵编码。
[0487]
图44是示出根据本公开的包括关于帧内预测的信息的比特流的语法结构的实施例的示图。
[0488]
如图44中所示,关于帧内预测的信息可包括以下信息中的至少一条信息。
[0489]-mpm(最可能模式)标志:prev_intra_luma_pred_flag
[0490]-mpm索引:mpm_idx
[0491]-关于亮度分量的帧内预测模式信息:rem_intra_luma_pred_mode
[0492]-关于色度分量的帧内预测模式信息:intra_chroma_pred_mode
[0493]-曲线帧内预测模式的曲率参数:cuv1、cuv2、
…
[0494]-曲线帧内预测模式的权重参数:cw1、cw2、
…
[0495]-用于曲线帧内预测的查找表(lut)
[0496]
编码设备可基于以上编码参数中的至少一个将关于帧内预测的信息编码到比特流。
[0497]
当mpm(最可能模式)标志是1时,可从包括已通过使用mpm索引mpm_idx被编码/解码的邻近单元的帧内模式的候选模式推导亮度分量的帧内预测模式。
[0498]
当mpm(最可能模式)标志是0时,可通过使用关于亮度分量的帧内预测模式信息rem_intra_luma_pred_mode对亮度分量的帧内预测模式进行编码/解码。
[0499]
可通过使用关于色度分量的帧内预测模式信息intra_chroma_pred_mode和/或色度分量块的相应的帧内预测模式对色度分量的帧内预测模式进行编码/解码。
[0500]
曲线帧内预测模式的曲率参数cuv可表示应用于曲线帧内预测模式的曲率。可通过使用至少一个cuv对当前块执行曲线帧内预测。该曲率参数可从邻近块的曲率参数中的至少一个曲率参数被推导出。
[0501]
可将曲线帧内预测模式的单个或多个权重参数cw应用于当前块。当将多个权重参数cw应用于当前块时,可将不同权重参数应用于当前块的预定单元,诸如,像素、行、列或子块等。该权重参数可从邻近块的权重参数中的至少一个权重参数被推导出。
[0502]
用于推导曲率参数和/或权重参数的邻近块可以是在上侧、左侧和/或右侧与当前块邻近并已被编码/解码的块。
[0503]
可通过使用cuv和cw中的至少一个执行各种形式的曲线帧内预测。
[0504]
当使用n个cuv和m个cw时,可通过产生至少(n
×
m)
×
4个预测块来执行当前块的帧内预测。
[0505]
例如,当使用单个cuv和单个cw时,可通过产生至少四个预测块来执行当前块的帧内预测。
[0506]
例如,当使用两个cuv和单个cw时,可通过产生至少八个预测块来执行当前块的帧内预测。
[0507]
例如,当使用单个cuv和两个cw时,可通过产生至少八个预测块来执行当前块的帧内预测。
[0508]
例如,当使用两个cuv和两个cw时,可通过产生至少十六个预测块来执行当前块的帧内预测。
[0509]
可通过使用默认值和增量值对关于至少两个cuv和/或cw的信息进行编码/解码。这里,默认值可表示单个cuv值和/或单个cw值,增量值可以是常量值。
[0510]
例如,当在当前块中使用两个cuv时,两个曲率参数可以是default_cuv和default_cuv+delta_cuv。
[0511]
例如,当在当前块中使用n个cuv时,n个曲率参数可以是default_cuv、default_cuv+delta_cuv、default_cuv+2
×
delta_cuv、
…
、default_cuv+(n-1)
×
delta_cuv(这里,n是大于2的正整数)。
[0512]
例如,当在当前块中使用2n+1个cuv时,2n+1个曲率参数可以是default_cuv、default_cuv+delta_cuv、default_cuv-delta_cuv、default_cuv+2
×
delta_cuv、default_cuv-2
×
delta_cuv、
…
、default_cuv+n
×
delta_cuv、default_cuv-n
×
delta_cuv(这里,n是大于1的正整数)。
[0513]
例如,当在当前块中使用两个cw时,两个权重参数可以是default_cw和default_cw+delta_cw(这里,default_cw+delta_cw是矢量的元素单元的和)。
[0514]
例如,当在当前块中使用m个cw时,m个权重参数可以是default_cw、default_cw+delta_cw、default_cw+2
×
delta_cw、
…
、default_cw+(m-1)
×
delta_cw(这里,default_cw+delta_cw是矢量的元素单元的和,m是大于2的正整数)。
[0515]
例如,当在当前块中使用2m+1个cw时,2m+1个权重参数可以是default_cw、default_cw+delta_cw、default_cw-delta_cw、default_cw+2
×
delta_cw、default_cw-2
×
delta_cw、
…
、default_cw+m
×
delta_cw、default_cw-m
×
delta_cw(这里,m是大于1的正整数)。
[0516]
可将上面描述的关于cuv和/或cw的信息编码到比特流或可从比特流对关于cuv和/或cw的信息进行解码。可选择地,编码器或解码器可以例如查找表的格式共享和存储关于cuv和/或cw的数量或者cuv和/或cw的值的信息。
[0517]
当对至少一条关于帧内预测的信息进行编码/解码时,可使用二进制化方法中的至少一个方法。
[0518]-使用截断莱斯二进制化方法
[0519]-使用k阶指数哥伦布二进制化方法
[0520]-使用约束的k阶指数哥伦布二进制化方法
[0521]-使用固定长度的二进制化方法
[0522]-一元二进制化方法
[0523]-使用截断一元的二进制化方法
[0524]
根据本公开的解码设备可接收在步骤s1203中编码的编码比特流,并在步骤s1301从接收的编码比特流对关于帧内预测的信息进行解码。所述解码可包括熵解码。
[0525]
以下,省略在步骤s1301的描述中的关于与步骤s1203的重复部分的详细描述。解码设备从编码设备接收编码比特流并对接收的编码比特流进行解码。因此,除了步骤s1203的描述中的关于比特流的语法结构、语法元素、语义的描述之外,可将不是编码器的独有特征的描述应用于步骤s1301。
[0526]
关于帧内预测的信息可包括参照图44描述的信息中的至少一条信息。
[0527]
解码设备可基于编码参数中的至少一个参数从比特流对关于帧内预测的信息进行解码。
[0528]
曲线帧内预测模式可根据预测块内的像素的位置(x,y)通过使用具有不同角度的参考像素来在参考像素内推导像素预测值。可将预测块内的像素分组为多个组(像素组)。此外,所述多个组中的第一组可使用具有不同于第二组的角度的方向帧内预测模式。每个组可包括至少一个像素。每个组可具有三角形形状、正方形形状或其它几何形状。
[0529]
当对当前块执行帧内预测时,由于存在多个方向/非方向模式,故可减少用于发送选择的预测模式的索引的信令开销。为此,可通过使用已被编码/解码的邻近单元的帧内模式对当前块的帧内预测模式进行编码/解码。
[0530]
可如下对用于亮度分量的当前块的选择的帧内预测模式进行编码/解码。
[0531]
例如,可按照具有m个条目的mpm(最可能模式)列表的索引形式来发送n个帧内预测模式。这里,n和m可以是正整数。
[0532]
例如,可通过使用固定长度二进制化对n个帧内预测模式进行编码/解码。
[0533]
当通过使用mpm列表对帧内预测模式进行编码/解码时,可将包括被已被编码/解码的邻近块选择的帧内预测模式的m个条目包括在mpm列表中。
[0534]
图45是示例性地示出与当前块bc邻近的并已被编码/解码的两个块ba和bb的示图。
[0535]
如图45中所示,可在基于目标块的左上侧像素(xc,yc)的正左侧像素(xa,ya)和正上侧像素(xb,yb)的位置定义ba和bb。
[0536]
当通过使用mpm对帧内预测模式进行编码/解码时,可根据被邻近块选择的帧内预测模式来确定将被包括在mpm列表中的m个预测模式候选。将被包括在mpm列表中的数量m个预测模式候选可由编码器/解码器固定,或者可由编码器/解码器不同地确定。例如,可用信号发送关于构成mpm列表的多个预测模式候选的信息。可按照序列、画面、条带和块的至少一个等级用信号发送所述信息。可通过考虑预测块的尺寸/形状、是否是对称/不对称分区来不同地确定构成mpm列表的多个预测模式候选。
[0537]
在图45中,可通过对ba和/或bb执行可用性检查来确定候选帧内预测模式candintrapredmodex(x是a或b)。当ba和/或bb不可用或者基于帧内预测(帧间编码的)被编码/解码时,或者当pcm_flag是1时,可将candintrapredmodex确定为dc模式。当基于帧内预测(帧间编码的)对ba和/或bb进行编码/解码时,可将candintrapredmodex确定为ba和/或bb的帧内预测模式。
[0538]
此外,可通过使用初始化的candintrapredmodex来填充mpm候选列表
candmodelist[x]。作为构成mpm列表的预测模式候选,可使用邻近块的帧内预测模式、通过将预定常量值与邻近块的帧内预测模式相加/从邻近块的帧内预测模式减去预定常量值而推导出的模式和默认模式中的至少一个。所述预定常量值可表示1、2或大于2的整数。默认模式可表示平面模式、dc模式、水平/垂直模式等。
[0539]
例如,当candintrapredmodea和candintrapredmodeb相同,并且两者均是intra_dc模式或intra_planar模式时,mpm候选列表可被确定如下。
[0540]
{intra_planar,intra_dc,垂直,水平,2(从左下到右上的对角),对角}
[0541]
例如,当candintrapredmodea和candintrapredmodeb相同,并且candintrapredmodea和candintrapredmodeb均既不是intra_dc模式也不是intra_planar模式时,mpm候选列表可被确定如下。
[0542]
{candintrapredmodea,intra_planar,candintrapredmodea+1,candintrapredmodea-1,candintrapredmodea+2,intra_dc}
[0543]
例如,当candintrapredmodea和candintrapredmodeb不同时,可如下通过考虑附加情况来确定mpm候选列表。
[0544]-当candintrapredmodea和candintrapredmodeb均不是intra_planar模式,并且两者之一是intra_dc模式时,mpm候选列表可被确定如下。
[0545]
{candintrapredmodea,candintrapredmodeb,intra_planar,max(candintrapredmodea,candintrapredmodeb)-1,max(candintrapredmodea,candintrapredmodeb)+1,max(candintrapredmodea,candintrapredmodeb)+2}
[0546]-当candintrapredmodea和candintrapredmodeb均既不是intra_planar模式也不是intra_dc模式时,mpm候选列表可被确定如下。
[0547]
{candintrapredmodea,candintrapredmodeb,intra_planar,max(candintrapredmodea,candintrapredmodeb)-1,max(candintrapredmodea,candintrapredmodeb)+1,max(candintrapredmodea,candintrapredmodeb)+2}
[0548]-当candintrapredmodea和candintrapredmodeb中的至少一个是intra_planar模式,并且candintrapredmodea+candintrapredmodeb《2时,mpm候选列表可被确定如下。
[0549]
{candintrapredmodea,candintrapredmodeb,垂直或intra_dc,水平,2,对角}
[0550]-否则,mpm候选列表可被确定如下。
[0551]
{candintrapredmodea,candintrapredmodeb,垂直或intra_dc,max(candintrapredmodea,candintrapredmodeb)-1,max(candintrapredmodea,candintrapredmodeb)+1,max(candintrapredmodea,candintrapredmodeb)+2}
[0552]
当当前块的帧内预测模式intrapredmodey包括在mpm候选列表candmodelist[x]中(即,prev_intra_luma_pred_flag==1)时,可将帧内预测模式编码/解码为mpm候选列表的索引。
[0553]
当当前块的帧内预测模式intrapredmodey未包括在mpm候选列表(candmodelist[x])中(即,prev_intra_luma_pred_flag==0)时,可通过使用k比特二进制化的rem_intra_luma_pred_mode对帧内预测模式进行编码/解码。这里,k可以是正整数。
[0554]
例如,为了从编码的rem_intra_luma_pred_mode对帧内预测模式进行解码,可按照升序对包括在candmodelist[x]中的预测模式候选进行排序。当通过在预测模式候选与
rem_intra_luma_pred_mode之间进行比较而等于或小于rem_intra_luma_pred_mode的l个预测模式候选存在于排序后的candmodelist[x]中时,可将被编码/解码目标块选择的帧内预测模式推导为intrapredmodey=rem_intra_luma_pred_mode+l。
[0555]
图46是示出色度分量的当前块的帧内预测模式的编码/解码的示图。
[0556]
可通过使用关于色度分量的帧内预测模式信息intra_chroma_pred_mode和/或被相应的亮度分量块选择的帧内预测模式对色度分量的当前块的帧内预测模式进行编码/解码。
[0557]
例如,可通过使用如图46中所示的intra_chroma_pred_mode对色度分量的当前块的帧内预测模式intrapredmodec进行编码/解码。可根据intra_chroma_pred_mode的索引和被相应的亮度分量块选择的帧内预测模式intrapredmodey来确定intrapredmodec。
[0558]
可独立于被相应的亮度分量块选择的帧内预测模式来确定色度分量的当前块的帧内预测模式的编码/解码。
[0559]
例如,可通过intra_chroma_pred_mode的索引来确定色度分量的当前块的帧内预测模式intrapredmodec。
[0560]
可针对亮度信号和色度信号中的每一个执行帧内编码/解码处理。例如,在帧内编码/解码处理中,推导帧内预测模式、对块进行划分、构建参考样点和执行帧内预测中的至少一个方法可不同地应用于亮度信号和色度信号。
[0561]
可针对亮度信号和色度信号同等地执行帧内编码/解码处理。例如,在帧内编码/解码处理被应用于亮度信号时,推导帧内预测模式、对块进行划分、构建参考样点和执行帧内预测中的至少一个可同等地应用于色度信号。
[0562]
可按照相同方式在编码器和解码器中执行所述方法。例如,在帧内编码/解码处理中,可在编码器和解码器中同等地应用推导帧内预测模式、对块进行划分、构建参考样点和执行帧内预测中的至少一个方法。此外,应用所述方法的顺序可以在编码器和解码器中不同。例如,在针对当前块执行帧内编码/解码的处理中,编码器可在构建参考样点之后对通过执行至少一个帧内预测而确定的帧内预测模式进行编码。
[0563]
本发明的实施例可根据编码块、预测块、块和单元中的至少一个的尺寸而被应用。这里,所述尺寸可被定义为最小尺寸和/或最大尺寸以便应用实施例,并且可被定义为实施例被应用于的固定尺寸。此外,第一实施例可按照第一尺寸被应用,第二实施例可按照第二尺寸被应用。也就是说,实施例可根据所述尺寸而被多次应用。此外,本发明的实施例可仅在尺寸等于或大于最小尺寸并且等于或小于最大尺寸时被应用。也就是说,实施例可仅在块尺寸在预定范围中时被应用。
[0564]
例如,仅当编码/解码目标块的尺寸等于或大于8
×
8时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于16
×
16时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于32
×
32时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于64
×
64时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于128
×
128时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸为4
×
4时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或小于8
×
8时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于16
×
16时,实施例才可被应用。例如,仅当编码/解码目标块的尺寸等于或大于8
×
8且等于或小于16
×
16时,实施例才可被应用。例如,
仅当编码/解码目标块的尺寸等于或大于16
×
16且等于或小于64
×
64时,实施例才可被应用。
[0565]
本发明的实施例可根据时间层而被应用。用于标识实施例可被应用于的时间层的标识符可用信号发送,并且可针对由所述指示符指明的时间层应用实施例。这里,所述标识符可被定义为指示实施例可被应用于的最小层和/或最大层,并且可被定义为指示实施例可被应用于的特定层。
[0566]
例如,仅在当前画面的时间层为最底层时,实施例才可被应用。例如,仅在当前画面的时间层标识符为0时,实施例才可被应用。例如,仅在当前画面的时间层标识符等于或大于1时,实施例才可被应用。例如,仅在当前画面的时间层为最高层时,实施例才可被应用。
[0567]
如在本发明的实施例中所描述的,在参考画面列表构建和参考画面列表修改的处理中使用的参考画面集可使用参考画面列表l0、l1、l2和l3中的至少一个。
[0568]
根据本发明的实施例,当去块滤波器计算边界强度时,可使用编码/解码目标块的至少一个至最多n个运动矢量。这里,n指示等于或大于1的正整数,诸如2、3、4等。
[0569]
在运动矢量预测中,当运动矢量具有以下单位中的至少一个时,可应用本发明的实施例:16-像素(16-pel)单位、8-像素(8-pel)单位、4-像素(4-pel)单位、整数-像素(整数-pel)单位、1/2-像素(1/2-pel)单位、1/4-像素(1/4-pel)单位、1/8-像素(1/8-pel)单位、1/16-像素(1/16-pel)单位、1/32-像素(1/32-pel)单位以及1/64-像素(1/64-pel)单位。此外,在执行运动矢量预测时,可针对每个像素单元可选地使用运动矢量。
[0570]
可定义应用本发明的实施例的条带类型并且可根据条带类型应用本发明的实施例。
[0571]
例如,当条带类型是t(三向预测)-条带时,预测块可通过使用至少三个运动矢量来产生,并且可通过计算至少三个预测块的加权和而被用作编码/解码目标块的最终预测块。例如,当条带类型是q(四向预测)-条带时,预测块可通过使用至少四个运动矢量来产生,并且可通过计算至少四个预测块的加权和而被用作编码/解码目标块的最终预测块。
[0572]
本发明的实施例可被应用于使用运动矢量预测的帧间预测和运动补偿方法以及使用跳过模式、合并模式等的帧间预测和运动补偿方法。
[0573]
应用了本发明的实施例的块的形状可具有正方形形状或非正方形形状。
[0574]
在上述实施例中,基于具有一系列步骤或单元的流程图描述了所述方法,但本发明不限于所述步骤的顺序,而是,一些步骤可与其它步骤被同时执行,或者可与其它步骤按照不同顺序被执行。此外,本领域普通技术人员应该理解,流程图中的步骤不彼此相斥,并且在不影响本发明的范围的情况下,其它步骤可被添加到流程图中,或者一些步骤可从流程图被删除。
[0575]
实施例包括示例的各种方面。针对各种方面的所有可能组合可不被描述,但本领域技术人员将能够认识到不同组合。因此,本发明可包括权利要求范围内的所有替换形式、修改形式和改变。
[0576]
本发明的实施例可按照程序指令的形式来实施,其中,所述程序指令可由各种计算机组件来执行,并被记录在计算机可读记录介质上。计算机可读记录介质可包括单独的程序指令、数据文件、数据结构等,或者是程序指令、数据文件、数据结构等的组合。记录在
计算机可读记录介质中的程序指令可被特别设计和构造用于本发明,或者对于计算机软件技术领域的普通技术人员而言是公知的。计算机可读记录介质的示例包括:磁记录介质(诸如硬盘、软盘和磁带);光学数据存储介质(诸如cd-rom或dvd-rom);磁光介质(诸如软光盘);以及被特别构造用于存储和实施程序指令的硬件装置(诸如只读存储器(rom)、随机存取存储器(ram)、闪存等)。程序指令的示例不仅包括由编译器格式化出的机器语言代码,还包括可由计算机使用解释器实施的高级语言代码。硬件装置可被配置为由一个或更多个软件模块操作以进行根据本发明的处理,反之亦可。
[0577]
虽然已根据特定术语(诸如详细元件)以及有限实施例和附图描述了本发明,但它们仅被提供用于帮助更通俗地理解本发明,本发明不限于上述实施例。本发明所属领域的技术人员将理解,可从上述描述做出各种修改和改变。
[0578]
因此,本发明的精神不应受限于上述实施例,所附权利要求及其等同物的全部范围将落入本发明的范围和精神之内。
[0579]
工业可用性
[0580]
本发明可用于对图像进行编码/解码。
技术特征:
1.一种由解码设备执行的图像解码方法,所述图像解码方法包括以下步骤:从比特流中获得包括选择信息的关于帧内预测的信息;推导出当前块的帧内预测模式;选择多条参考线中的一条参考线用于所述帧内预测;基于所选择的参考线推导出用于所述帧内预测的参考样点;以及基于所述帧内预测模式和所述参考样点产生预测块,其中,基于所述选择信息选择所述多条参考线中的用于所述帧内预测的所述参考样点所位于的所述一条参考线。2.根据权利要求1所述的图像解码方法,其中,以编码单元为单位用信号发送所述选择信息。3.根据权利要求1所述的图像解码方法,其中,对于作为非正方形块的所述当前块,基于所述选择信息选择所述多条参考线中的所述一条参考线。4.根据权利要求1所述的图像解码方法,其中,对于帧内预测模式是非方向预测模式的所述当前块,基于所述选择信息选择所述多条参考线中的所述一条参考线,其中,所述非方向预测模式包含dc模式。5.根据权利要求1所述的图像解码方法,其中,所述选择信息是基于截断莱斯二进制化的。6.一种由编码设备执行的图像编码方法,所述图像编码方法包括以下步骤:确定当前块的帧内预测模式;选择多条参考线中的一条参考线用于帧内预测;基于所选择的参考线推导出用于所述帧内预测的参考样点;基于所述帧内预测模式和所述参考样点产生预测块;产生包括选择信息的关于所述帧内预测的信息;以及对包括所述关于所述帧内预测的信息的图像信息进行编码,其中,基于所述选择信息来表示所述多条参考线中的用于所述帧内预测的所述参考样点所位于的所述一条参考线。7.根据权利要求6所述的图像编码方法,其中,以编码单元为单位用信号发送所述选择信息。8.根据权利要求6所述的图像编码方法,其中,对于作为非正方形块的所述当前块,基于所述选择信息表示所述多条参考线中的所述一条参考线。9.根据权利要求6所述的图像编码方法,其中,对于帧内预测模式是非方向预测模式的所述当前块,基于所述选择信息表示所述多条参考线中的所述一条参考线,其中,所述非方向预测模式包含dc模式。10.一种用于图像数据的传输方法,所述传输方法包括以下步骤:获得基于图像编码方法产生的编码的图像信息的比特流,其中,所述图像编码方法包括:确定当前块的帧内预测模式,选择多条参考线中的一条参考线用于帧内预测,基于所选择的参考线推导出用于所述帧内预测的参考样点,基于所述帧内预测模式和所述参考样点产生预测块,产生包括选择信息的关于所述帧内预测的信息,以及对包括所述关于所述帧内预测的信息的图像信息进行编码;以及
传输包括所述比特流的所述图像数据,其中,基于所述选择信息来表示所述多条参考线中的用于所述帧内预测的所述参考样点所位于的所述一条参考线。
技术总结
本申请涉及图像编码/解码方法以及图像数据的传输方法。根据本发明的一种由解码设备执行的图像解码方法包括:从比特流中获得包括选择信息的关于帧内预测的信息;推导出当前块的帧内预测模式;选择多条参考线中的一条参考线用于帧内预测;基于所选择的参考线推导出用于帧内预测的参考样点;以及基于帧内预测模式和参考样点产生预测块,其中,基于选择信息选择多条参考线中的用于帧内预测的参考样点所位于的一条参考线。于的一条参考线。于的一条参考线。
技术研发人员:高玄硕 李镇浩 林成昶 姜晶媛 李河贤 全东山 赵承眩 金晖容 崔振秀
受保护的技术使用者:LX半导体科技有限公司
技术研发日:2017.06.15
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种刹车盘码垛线及码垛方法与流程 下一篇:一种提高筛分能力的小麦粉分料器的制作方法
