对视频进行编码、解码的方法及存储压缩视频数据的设备与流程

文档序号:26759764发布日期:2021-09-25 05:28阅读:89来源:国知局
对视频进行编码、解码的方法及存储压缩视频数据的设备与流程
对视频进行编码、解码的方法及存储压缩视频数据的设备
1.本发明申请为申请日为2017年4月4日并于2018年9月29日进入中国国家阶段的发明名称为“用于处理视频信号的方法和设备”的第201780021724.6号发明专利申请的分案申请。
技术领域
2.本发明涉及用于处理视频信号的方法和设备。


背景技术:

3.近来,在各种应用领域中对高分辨率和高质量图像(例如,高清晰度(hd)图像和超高清晰度(uhd)图像)的需求已经增加。然而,与常规图像数据相比,更高分辨率和质量的图像数据的数据量增加。因此,当通过使用介质(例如,常规的有线和无线宽带网络)传送图像数据时,或者当通过使用常规的存储介质存储图像数据时,传送和存储的成本增加。为了解决随着图像数据的分辨率和质量的提高而出现的这些问题,可以利用高效的图像编码/解码技术。
4.图像压缩技术包括各种技术,包括:根据当前图片的先前图片或后续图片来对包括在当前图片中的像素值进行预测的帧间预测技术;通过使用当前图片中的像素信息对包括在当前图片中的像素值进行预测的帧内预测技术;将短代码分配给出现频率高的值并且将长代码分配给出现频率低的值的熵编码技术等。可以通过使用这样的图像压缩技术来有效地压缩图像数据,并且图像数据可以被传送或存储。
5.同时,随着对高分辨率图像的需求的增加,对作为新的图像服务的立体图像内容的需求也在增加。正在探讨的是用于有效地提供具有高分辨率和超高分辨率的立体图像内容的视频压缩技术。


技术实现要素:

6.技术问题
7.本发明的一个目的意在提供用于在编码/解码视频信号时对编码/解码目标块有效地执行帧内预测的方法和设备。
8.本发明的一个目的意在提供用于在编码/解码视频信号时使用与编码/解码目标块相邻的相邻块来获得编码/解码目标块的帧内预测模式的方法和设备。
9.本发明的一个目的意在提供用于基于多条参考线对编码/解码目标块执行帧内预测的方法和设备。
10.本发明要实现的技术目的不限于上述技术问题。此外,根据以下描述,本领域技术人员将清楚地理解未提及的其他技术问题。
11.技术方案
12.一种对视频进行解码的方法,所述方法包括:选择当前块的参考样本线;确定所述当前块的帧内预测模式;以及基于所述当前块的帧内预测模式和包括在所述参考样本线中
的参考样本对所述当前块执行帧内预测,其中,所述当前块的参考样本线是基于指定一个或更多个参考样本线候选之一的索引信息而确定的,其中,所述参考样本线候选包括邻近所述当前块的相邻参考样本线候选和不邻近所述当前块的非相邻参考样本线候选,并且其中,仅在选择了所述相邻参考样本线的情况下,才能够将无方向帧内预测模式确定为所述当前块的帧内预测模式。
13.一种对视频进行编码的方法,所述方法包括:选择当前块的参考样本线;确定所述当前块的帧内预测模式;以及基于所述当前块的帧内预测模式和包括在所述参考样本线中的参考样本对所述当前块执行帧内预测,其中,将在一个或更多个参考样本线候选中指定所述当前块的参考样本线的索引信息编码在比特流中,其中,所述参考样本线候选包括邻近所述当前块的相邻参考样本线候选和不邻近所述当前块的非相邻参考样本线候选,并且其中,仅在选择了所述相邻参考样本线的情况下,才能够将无方向帧内预测模式确定为所述当前块的帧内预测模式。
14.一种存储压缩视频数据的设备,所述压缩视频数据是通过程序指令生成的,在所述程序指令被执行时,所述设备被配置成:选择当前块的参考样本线;确定所述当前块的帧内预测模式;以及基于所述当前块的帧内预测模式和包括在所述参考样本线中的参考样本对所述当前块执行帧内预测,其中,将在一个或更多个参考样本线候选中指定所述当前块的参考样本线的索引信息编码在比特流中,其中,所述参考样本线候选包括邻近所述当前块的相邻参考样本线候选和不邻近所述当前块的非相邻参考样本线候选,并且其中,仅在选择了所述相邻参考样本线的情况下,才能够将无方向帧内预测模式确定为所述当前块的帧内预测模式。
15.根据本发明的用于解码视频信号的方法和设备可以:生成多个最可能模式(mpm)候选,确定在多个mpm候选中是否存在与当前块的帧内预测模式相同的mpm候选,基于确定的结果来获得当前块的帧内预测模式,以及基于当前块的帧内预测模式对当前块执行帧内预测。这里,多个mpm候选是基于与当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
16.在根据本发明的用于解码视频信号的方法和设备中,对多个mpm候选的生成可以包括生成第一mpm候选组,以及生成第二mpm候选组。
17.在根据本发明的用于解码视频信号的方法和设备中,第二mpm候选组可以包括这样的mpm候选,所述mpm候选具有与第一mpm候选组中包括的mpm候选类似的方向。
18.在根据本发明的用于解码视频信号的方法和设备中,对在多个mpm候选中是否存在与当前块的帧内预测模式相同的mpm候选的确定可以包括;确定第一mpm候选组是否包括与当前块的帧内预测模式相同的mpm候选,以及在确定第一mpm候选组不包括与当前块的帧内预测模式相同的mpm候选的情况下,确定第二mpm候选组是否包括与当前块的帧内预测模式相同的mpm候选。
19.在根据本发明的用于解码视频信号的方法和设备中,多个mpm候选可以包括:在与当前块相邻的多个顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式,以及在与当前块相邻的多个左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式。
20.在根据本发明的用于解码视频信号的方法和设备中,多个mpm候选可以包括:顶部
相邻块的帧内预测模式以及相邻块的帧内预测模式中的最大帧内预测模式或最小帧内预测模式。
21.在根据本发明的用于解码视频信号的方法和设备中,在确定在多个mpm候选中不存在与当前块的帧内预测模式相同的mpm候选的情况下,获得当前块的帧内预测模式可以包括:对剩余模式进行解码,以及基于剩余模式来确定当前块的帧内预测模式。
22.在根据本发明的用于解码视频信号的方法和设备中,剩余模式可以被编码为固定长度。
23.在根据本发明的用于解码视频信号的方法和设备中,对当前块执行帧内预测可以包括:在当前块的多条参考线中选择参考线,以及使用所选择的参考线来获得用于当前块的预测样本。
24.在根据本发明的用于解码视频信号的方法和设备中,在多条参考线中,第n条参考线比第n

1条参考线包括数量更多的参考样本。
25.根据本发明的用于编码视频信号的方法和设备可以:生成多个最可能模式(mpm)候选,确定在多个mpm候选中是否存在与当前块的帧内预测模式相同的mpm候选,以及对指示在多个mpm候选中是否包括与当前块的帧内预测模式相同的mpm候选的信息进行编码。这里,多个mpm候选是基于与当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
26.以上对本发明简要概述的特征仅是随后的本发明的详细描述的说明性方面,而不限制本发明的范围。
27.有益效果
28.根据本发明,可以对编码/解码目标块执行有效的帧内预测。
29.根据本发明,可以使用与编码/解码目标块相邻的相邻块来获得编码/解码目标块的帧内预测模式。
30.根据本发明,可以基于多条参考线来执行针对编码/解码目标块的帧内预测。
31.通过本发明能够获得的效果不限于上述效果,并且根据下面的描述,本领域技术人员可以清楚地理解未提及的其他效果。
附图说明
32.图1是示出根据本发明的实施方式的用于对视频进行编码的装置的框图。
33.图2是示出根据本发明的实施方式的用于对视频进行解码的装置的框图。
34.图3是示出根据本发明的实施方式的基于树结构对编码块进行分层划分的示例的视图。
35.图4是示出根据本发明的实施方式的用于对视频进行编码/解码的装置的预定义的帧内预测模式的类型的视图。
36.图5是简要示出根据本发明的实施方式的帧内预测方法的流程图。
37.图6是示出根据本发明的实施方式的基于相邻样本的差分信息来校正当前块的预测样本的方法的视图。
38.图7和图8是示出根据本发明的实施方式的基于预定校正滤波器来校正预测样本的方法的视图。
39.图9是示出根据本发明的实施方式的基于偏移来校正预测样本的方法的视图。
40.图10至图14是示出根据本发明的实施方式的当前块的帧内预测模式的示例的视图。
41.图15是示出根据本发明的实施方式的使用帧内块复制技术来执行预测的方法的视图。
42.图16示出了根据应用了本发明的实施方式的用于帧内预测的参考样本的范围。
43.图17至图19示出了对参考样本进行滤波的示例。
44.图20是示出根据本发明的实施方式的得到当前块的帧内预测模式的方法的流程图。
45.图21是用于说明使用与当前块相邻的相邻块的帧内预测模式生成mpm候选的示例的图。
46.图22是示出在与当前块相邻的顶部相邻块或左侧相邻块的帧内预测模式不可用的情况下生成mpm候选的示例的图。
47.图23是用于说明获得相邻块的帧内预测模式的顺序的图。
48.图24示出了使用2个mpm候选组得到当前块的帧内预测模式的示例。
49.图25示出了使用3个mpm候选组得到当前块的帧内预测模式的示例。
50.图26例示了多条参考样本线。
51.图27是示出根据本发明的使用扩展参考线执行帧内预测的方法的流程图。
52.图28是例示非正方形块的多条参考线的图。
具体实施方式
53.可以对本发明进行各种修改,并且存在本发明的各种实施方式,现在将参照附图提供实施方式的示例,并且详细描述它们。然而,本发明不限于此,并且示例性实施方式可以被解释为包括本发明的技术构思和技术范围内的所有修改、等同物或替代方案。在所描述的附图中,相似的附图标记指代相似的元件。
54.说明书中使用的术语“第一”、“第二”等可以用于描述各种部件,但是这些部件不被解释为限制于这些术语。这些术语仅用于区分一个部件与其他部件。例如,在不偏离本发明的范围的情况下,“第一”部件可以被称为“第二”部件,并且“第二”部件也可以被类似地称为“第一”部件。术语“和/或”包括多个项的组合或者多个术语中的任意一个术语。
55.应该理解的是,在本说明书中,当元件被简单地称为“连接至”或“耦接至”另一元件而不是“直接连接至”或“直接耦接至”另一元件时,该元件可以“直接连接至”或“直接耦接至”另一元件,或者该元件可以连接至或耦接至另一元件,并且存在其他元件介于它们之间。相反地,应该理解的是,当元件被称为“直接耦接”或“直接连接”至另一元件时,不存在中间元件。
56.本说明书中使用的术语仅用于描述特定实施方式,而并不意在限制本发明。以单数形式使用的表述包含复数形式的表述,除非该表述在上下文中有明显不同的含义。在本说明书中,应当理解的是,诸如“包括”、“具有”等术语意在指示本说明书中公开的特征、数字、步骤、动作、元件、部分或其组合的存在,并且不意在排除可以存在或可以添加一个或更多个其他特征、数字、步骤、动作、元件、部分或其组合的可能性。
57.在下文中,将参照附图详细描述本发明的优选实施方式。在下文中,附图中的相同
组成元件通过相同的附图标记来表示,并且将省略对相同元件的重复描述。
58.图1是示出根据本发明的实施方式的用于对视频进行编码的装置的框图。
59.参照图1,用于对视频进行编码的装置100可以包括:图片划分模块110、预测模块120和125、变换模块130、量化模块135、重排模块160、熵编码模块165、逆量化模块140、逆变换模块145、滤波器模块150以及存储器155。
60.图1所示的组成部分被独立地示出,以表示在用于对视频进行编码的装置中的彼此不同的特征功能。因此,这并不意味着每个组成部分都是由单独的硬件或软件的组成单元组成的。换言之,为了方便起见,每个组成部分包括列举的组成部分中的每一个。因此,每个组成部分的至少两个组成部分可以被组合,以形成一个组成部分,或者一个组成部分可以被分成多个组成部分以执行每个功能。在不偏离本发明的实质的情况下,组合每个组成部分的实施方式和分割一个组成部分的实施方式也被包括在本发明的范围内。
61.此外,组成部分中的一些可能不是执行本发明的基本功能的必不可少的的组成部分,而是仅用于改进本发明的性能的可选组成部分。可以通过排除用于改进性能的组成部分而仅包括用于实现本发明的实质的必不可少的组成部分来实现本发明。排除仅用于改进性能的可选组成部分而仅包括必不可少的组成部分的结构也被包括在本发明的范围内。
62.图片划分模块110可以将输入图片划分为一个或更多个处理单元。这里,处理单元可以是预测单元(pu)、变换单元(tu)或编码单元(cu)。图片划分模块110可以将一个图片划分为多个编码单元、预测单元和变换单元的组合,并且可以通过使用预定准则(例如,成本函数)来选择编码单元、预测单元和变换单元的一个组合来对图片进行编码。
63.例如,一个图片可以被划分为多个编码单元。可以使用递归树结构(例如四叉树结构)来将图片划分为编码单元。在一个图片或最大编码单元作为根的情况下被划分成其他编码单元的编码单元可以以子节点对应于所划分的编码单元的数目的方式进行划分。按照预定限制不能再划分的编码单元用作叶节点。也就是说,当假设对于一个编码单元仅正方形划分可行时,一个编码单元可以最多被划分为四个其他编码单元。
64.在下文中,在本发明的实施方式中,编码单元可以意指执行编码的单元或者执行解码的单元。
65.预测单元可以是被划分成在单个编码单元中具有相同大小的正方形形状或矩形形状的划分之一,或者预测单元可以是被划分成使得在单个编码单元中具有不同的形状/大小的划分之一。
66.当基于编码单元生成要进行帧内预测的预测单元并且编码单元不是最小编码单元时,可以在不将编码单元划分为多个预测单元n
×
n的情况下执行帧内预测。
67.预测模块120和125可以包括执行帧间预测的帧间预测模块120和执行帧内预测的帧内预测模块125。可以确定对于预测单元是执行帧间预测还是帧内预测,并且可以确定根据每个预测方法的详细信息(例如,帧内预测模式、运动矢量、参考图片等)。这里,要进行预测的处理单元可以不同于对其确定了预测方法和详细内容的处理单元。例如,可以由预测单元确定预测方法、预测模式等,并且可以由变换单元执行预测。所生成的预测块与原始块之间的残差值(残差块)可以被输入至变换模块130。此外,用于预测的预测模式信息、运动矢量信息等可以与残差值一起由熵编码模块165进行编码,并且可以被传送至用于对视频进行解码的装置。当使用特定编码模式时,可以通过对原始块进行编码而不通过预测模块
120和125生成预测块来向用于对视频进行解码的装置进行传送。
68.帧间预测模块120可以基于当前图片的先前图片或后续图片中的至少一个的信息来预测预测单元,或者在一些情况下,可以基于当前图片中的一些编码区域的信息来预测预测单元。帧间预测模块120可以包括参考图片插值模块、运动预测模块以及运动补偿模块。
69.参考图片插值模块可以从存储器155接收参考图片信息,并且可以根据参考图片来生成整像素或小于整像素的像素信息。在亮度像素的情况下,可以使用具有不同滤波器系数的基于dct的8抽头插值滤波器,来以1/4像素为单位生成整像素或小于整像素的像素信息。在色度信号的情况下,可以使用具有不同滤波器系数的基于dct的4抽头插值滤波器,来以1/8像素为单位生成整像素或小于整像素的像素信息。
70.运动预测模块可以基于由参考图片插值模块进行插值的参考图片来执行运动预测。作为用于计算运动矢量的方法,可以使用各种方法,例如,基于全搜索的块匹配算法(fbma)、三步搜索(tss)和新三步搜索算法(nts)等。基于插值像素,运动矢量可以具有以1/2像素或1/4像素为单位的运动矢量值。运动预测模块可以通过改变运动预测方法来预测当前预测单元。作为运动预测方法,可以使用各种方法,例如,跳过方法、合并方法、amvp(高级运动矢量预测)方法、帧内块复制方法等。
71.帧内预测模块125可以基于与作为当前图片中的像素信息的当前块相邻的参考像素信息来生成预测单元。在当前预测单元的相邻块是要进行帧间预测的块并且因此参考像素是要进行帧间预测的像素时,可以使用要进行帧内预测的相邻块的参考像素信息来代替包括在要进行帧间预测的块中的参考像素。也就是说,当参考像素不可用时,可以使用可用参考像素中的至少一个参考像素来代替不可用的参考像素信息。
72.帧内预测中的预测模式可以包括根据预测方向使用参考像素信息的方向预测模式和在执行预测时不使用方向信息的无方向预测模式。用于预测亮度信息的模式可以与用于预测色度信息的模式不同,并且为了预测色度信息,可以利用用于预测亮度信息的帧内预测模式信息或者预测的亮度信号信息。
73.在执行帧内预测时,当预测单元的大小与变换单元的大小相同时,可以基于位于该预测单元的左侧、左上侧和顶部的像素对预测单元执行帧内预测。然而,在执行帧内预测时,当预测单元的大小与变换单元的大小不同时,可以使用基于变换单元的参考像素来执行帧内预测。此外,可以仅针对最小编码单元使用n
×
n划分的帧内预测。
74.在帧内预测方法中,可以在根据预测模式将ais(自适应帧内平滑)滤波器应用于参考像素之后生成预测块。应用于参考像素的ais滤波器的类型可以变化。为了执行帧内预测方法,可以根据与当前预测单元相邻的预测单元的帧内预测模式来预测当前预测单元的帧内预测模式。在通过使用根据相邻预测单元预测到的模式信息来预测当前预测单元的预测模式中,在当前预测单元的帧内预测模式与相邻预测单元的帧内预测模式相同时,可以使用预定的标记信息来传送指示当前预测单元的预测模式与相邻预测单元的预测模式彼此相同的信息。在当前预测单元的预测模式与相邻预测单元的预测模式不同时,可以执行熵编码,以对当前块的预测模式信息进行编码。
75.此外,可以基于由预测模块120和125生成的预测单元来生成包括关于残差值的信息的残差块,残差值是要进行预测的预测单元与预测单元的原始块之间的差。可以将所生
成的残差块输入到变换模块130。
76.变换模块130可以通过使用变换方法(例如,离散余弦变换(dct)、离散正弦变换(dst)和klt)来对包括关于原始块与由预测模块120和125生成的预测单元之间的残差值的信息的残差块进行变换。可以基于用于生成残差块的预测单元的帧内预测模式信息来确定是应用dct、dst或klt以便对残差块进行变换。
77.量化模块135可以对由变换模块130变换到频域的值进行量化。量化系数可以取决于图片的块或重要性而变化。可以将由量化模块135计算的值提供至逆量化模块140和重排模块160。
78.重排模块160可以对经量化的残差值的系数进行重排。
79.重排模块160可以通过系数扫描方法将二维块形式的系数变为一维矢量形式的系数。例如,重排模块160可以使用锯齿形扫描方法从dc系数扫描至高频域的系数,以便将系数变为一维矢量形式。取决于变换单元的大小和帧内预测模式,可以使用沿列方向扫描二维块形式的系数的垂直方向扫描或沿行方向扫描二维块形式的系数的水平方向扫描来代替锯齿形扫描。也就是说,可以取决于变换单元的大小和帧内预测模式来确定使用锯齿形扫描、垂直方向扫描和水平方向扫描中的哪种扫描方法。
80.熵编码模块165可以基于由重排模块160计算的值来执行熵编码。熵编码可以使用各种编码方法,例如,指数哥伦布(golomb)编码、上下文自适应变长编码(cavlc)和上下文自适应二进制算术编码(cabac)。
81.熵编码模块165可以对来自重排模块160以及预测模块120和125的各种信息进行编码,例如,编码单元的残差值系数信息和块类型信息、预测模式信息、划分单元信息、预测单元信息、变换单元信息、运动矢量信息、参考帧信息、块插值信息、滤波信息等。
82.熵编码模块165可以对从重排模块160输入的编码单元的系数进行熵编码。
83.逆量化模块140可以对由量化模块135量化的值进行逆量化,并且逆变换模块145可以对由变换模块130变换的值进行逆变换。可以将由逆量化模块140和逆变换模块145生成的残差值与由预测模块120和125的运动估计模块、运动补偿模块和帧内预测模块预测的预测单元进行组合,使得可以生成重构块。
84.滤波器模块150可以包括去块滤波器、偏移校正单元以及自适应环路滤波器(alf)中的至少一个。
85.去块滤波器可以去除由于在重构图片中的块之间的边界而出现的块失真。为了确定是否执行去块,包括在块的若干行或若干列中的像素可以是确定是否对当前块应用去块滤波器的基础。当对块应用去块滤波器时,可以取决于所需的去块滤波强度来应用强滤波器或弱滤波器。此外,在应用去块滤波器时,可以并行地处理水平方向滤波和垂直方向滤波。
86.偏移校正模块可以在要进行去块的图片中以像素为单位来校正与原始图片的偏移。为了对特定图片执行偏移校正,可以使用考虑每个像素的边缘信息来施加偏移的方法,或者可以使用下述方法:将图片的像素划分为预定数目的区域,确定要执行偏移的区域,并且对所确定的区域施加偏移。
87.可以基于通过将经滤波的重构图片与原始图片进行比较而获得的值来执行自适应环路滤波(alf)。可以将包括在图片中的像素分成预定组,可以确定要应用于每个组的滤
波器,并且可以针对每个组单独执行滤波。可以通过编码单元(cu)传送关于是否应用alf和亮度信号的信息。用于alf的滤波器的形状和滤波器系数可以取决于每个块而变化。此外,无论应用目标块的特征如何,都可以应用用于alf的相同形状(固定形状)的滤波器。
88.存储器155可以存储通过滤波器模块150计算的重构块或重构图片。可以在执行帧间预测时将所存储的重构块或重构图片提供至预测模块120和125。
89.图2是示出根据本发明的实施方式的用于对视频进行解码的装置的框图。
90.参照图2,用于对视频进行解码的装置200可以包括:熵解码模块210、重排模块215、逆量化模块220、逆变换模块225、预测模块230和235、滤波器模块240以及存储器245。
91.当从用于对视频进行编码的装置输入视频比特流时,可以根据用于对视频进行编码的装置的逆过程来对输入比特流进行解码。
92.根据由用于对视频进行编码的装置的熵编码模块进行的熵编码的逆过程可以对熵解码模块210执行熵解码。例如,对应于由用于对视频进行编码的装置执行的方法,可以应用各种方法,例如,指数哥伦布编码、上下文自适应变长编码(cavlc)和上下文自适应二进制算术编码(cabac)。
93.熵解码模块210可以解码由用于对视频进行编码的装置执行的关于帧内预测和帧间预测的信息。
94.重排模块215可以基于在用于对视频进行编码的装置中使用的重排方法对由熵解码模块210进行熵解码的比特流执行重排。重排模块可以将一维矢量形式的系数重构和重排为二维块形式的系数。重排模块215可以接收与在用于对视频进行编码的装置中执行的系数扫描相关的信息,并且可以基于在用于对视频进行编码的装置中执行的扫描顺序经由对系数进行逆扫描的方法来执行重排。
95.逆量化模块220可以基于从用于对视频进行编码的装置接收的量化参数和经重排的块的系数来执行逆量化。
96.逆变换模块225可以执行逆变换,即,逆dct、逆dst和逆klt,这是由变换模块对用于编码视频的装置的量化结果执行的变换的逆过程,即dct、dst和klt。可以基于用于编码视频的装置所确定的变换单元来执行逆变换。用于对视频进行解码的装置的逆变换模块225可以取决于多条信息(例如,预测方法、当前块的大小、预测方向等)来选择性地执行变换方案(例如,dct、dst、klt)。
97.预测模块230和235可以基于从熵解码模块210接收到的关于预测块生成的信息和从存储器245接收到的图片信息或先前解码的块来生成预测块。
98.如上所述,类似于用于对视频进行编码的装置的操作,在执行帧内预测时,当预测单元的大小与变换单元的大小相同时,可以基于位于预测单元的左侧、左上侧和顶部的像素对预测单元执行帧内预测。在执行帧内预测时,当预测单元的大小与变换单元的大小不同时,可以使用基于变换单元的参考像素来执行帧内预测。此外,使用n
×
n划分的帧内预测可以仅用于最小编码单元。
99.预测模块230和235可以包括预测单元确定模块、帧间预测模块以及帧内预测模块。预测单元确定模块可以从熵解码模块210接收各种信息,例如,预测单元信息、帧内预测方法的预测模式信息、关于帧间预测方法的运动预测的信息等,可以将当前编码单元分成预测单元,并且可以确定对预测单元执行帧间预测还是帧内预测。通过使用从用于对视频
进行编码的装置接收的当前预测单元的帧间预测所需的信息,帧间预测模块230可以基于关于包括当前预测单元的当前图片的先前图片或后续图片中的至少一个的信息来对当前预测单元执行帧间预测。可替选地,可以基于关于包括当前预测单元的当前图片中的一些预先重构区域的信息来执行帧间预测。
100.为了执行帧间预测,可以针对编码单元来确定将跳过模式、合并模式、amvp模式和帧间块复制模式中的哪一个用作为包括在编码单元中的预测单元的运动预测方法。
101.帧内预测模块235可以基于当前图片中的像素信息来生成预测块。当预测单元是要进行帧内预测的预测单元时,可以基于从用于对视频进行编码的装置接收到的预测单元的帧内预测模式信息来执行帧内预测。帧内预测模块235可以包括自适应帧内平滑(ais)滤波器、参考像素插值模块以及dc滤波器。ais滤波器对当前块的参考像素执行滤波,并且可以取决于当前预测单元的预测模式来确定是否应用滤波器。可以通过使用从用于对视频进行编码的装置接收到的预测单元的预测模式和ais滤波器信息来对当前块的参考像素执行ais滤波。在当前块的预测模式是不执行ais滤波的模式时,可以不应用ais滤波器。
102.当预测单元的预测模式是基于通过对参考像素进行插值而获得的像素值来执行帧内预测的预测模式时,参考像素插值模块可以对参考像素进行插值,以生成整像素或小于整像素的参考像素。在当前预测单元的预测模式是在没有对参考像素进行插值的情况下生成预测块的预测模式时,可以不对参考像素进行插值。在当前块的预测模式是dc模式时,dc滤波器可以通过滤波来生成预测块。
103.可以将重构块或重构图片提供至滤波器模块240。滤波器模块240可以包括去块滤波器、偏移校正模块以及alf。
104.可以从用于对视频进行编码的装置接收关于是否将去块滤波器应用于相应的块或图片的信息以及关于在当应用去块滤波器时应用强滤波器和弱滤波器中的哪个滤波器的信息。用于对视频进行解码的装置的去块滤波器可以从用于对视频进行编码的装置接收关于去块滤波器的信息,并且可以对相应的块执行去块滤波。
105.偏移校正模块可以基于在执行编码时应用于图片的偏移校正的类型和偏移值信息来对重构图片执行偏移校正。
106.可以基于从用于对视频进行编码的装置接收到的关于是否应用alf的信息和alf系数信息等来将afl应用于编码单元。alf信息可以被提供为被包括在特定参数集中。
107.存储器245可以存储重构图片或重构块以用作参考图片或参考块,并且可以将重构图片提供至输出模块。
108.如上所述,在本发明的实施方式中,为了便于说明,编码单元被用作表示用于编码的单元的术语,然而,编码单元可以用作执行解码以及编码的单元。
109.图3是示出根据本发明的实施方式的基于树结构对编码块进行分层划分的示例的视图。
110.以预定的块单元对输入视频信号进行解码。用于对输入视频信号进行解码的这样的默认单元是编码块。编码块可以是执行帧内/帧间预测、变换以及量化的块。编码块可以是具有在8
×
8至64
×
64范围内的任意大小的正方形块或非正方形块,或者可以是具有128
×
128、256
×
256或更大的大小的正方形块或非正方形块。
111.具体地,可以基于四叉树和二叉树中的至少一个来对编码块进行分层划分。这里,
基于四叉树的划分可以意指将2n
×
2n的编码块划分成四个n
×
n的编码块,并且基于二叉树的划分可以意指将一个编码块划分成两个编码块。可以对称地执行或者非对称地执行基于二叉树的划分。基于二叉树划分的编码块可以是正方形块或非正方形块,例如,长方形形状。可以对不再执行基于四叉树的划分的编码块执行基于二叉树的划分。可以不再对基于二叉树划分的编码块执行基于四叉树的划分。
112.为了实现基于四叉树或二叉树的自适应划分,可以使用下述信息:指示基于四叉树划分的信息、关于允许基于四叉树的划分的编码块的大小/深度的信息、指示基于二叉树的划分的信息、关于允许基于二叉树的划分的编码块的大小/深度的信息、关于不允许基于二叉树的划分的编码块的大小/深度的信息、关于是沿垂直方向还是沿水平方向执行基于二叉树的划分的信息等。
113.如图3所示,可以基于四叉树将划分深度(拆分深度)为k的第一编码块300划分成多个第二编码块。例如,第二编码块310至340可以是具有第一编码块的一半宽度和一半高度的正方形块,并且第二编码块的划分深度可以增加至k+1。
114.具有k+1的划分深度的第二编码块310可以被划分为具有k+2的划分深度的多个第三编码块。可以取决于划分方法通过选择性地使用四叉树和二叉树中的一个来执行第二编码块310的划分。这里,可以基于指示基于四叉树划分的信息和指示基于二叉树划分的信息中的至少一个来确定划分方法。
115.当基于四叉树对第二编码块310进行划分时,第二编码块310可以被划分成具有第二编码块的一半宽度和一半高度的四个第三编码块310a,并且第三编码块310a的划分深度可以增加至k+2。相比之下,当基于二叉树对第二编码块310进行划分时,第二编码块310可以被划分成两个第三编码块。这里,两个第三编码块中的每一个可以是具有第二编码块的一半宽度和一半高度中的一个的非正方形块,并且划分深度可以增加至k+2。可以取决于划分方向将第二编码块确定为水平方向或垂直方向的非正方形块,并且可以基于关于是沿垂直方向还是沿水平方向执行基于二叉树的划分的信息来确定划分方向。
116.同时,第二编码块310可以被确定为不再基于四叉树或二叉树划分的叶编码块。在这种情况下,叶编码块可以被用作为预测块或变换块。
117.类似于第二编码块310的划分,第三编码块310a可以被确定为叶编码块,或者可以基于四叉树或二叉树被进一步划分。
118.同时,基于二叉树划分的第三编码块310b可以基于二叉树被进一步划分成垂直方向的编码块310b

2或水平方向的编码块310b

3,相关编码块的划分深度可以增加至k+3。可替选地,第三编码块310b可以被确定为不再基于二叉树划分的叶编码块310b

1。在这种情况下,编码块310b

1可以被用作为预测块或变换块。然而,可以基于以下信息中的至少一个来限制性地执行上述划分处理:关于允许基于四叉树的划分的编码块的大小/深度的信息、关于允许基于二叉树的划分的编码块的大小/深度的信息以及关于不允许基于二叉树的划分的编码块的大小/深度的信息。
119.图4是示出根据本发明的实施方式的用于对视频进行编码/解码的装置的预定义的帧内预测模式的类型的视图。
120.用于对视频进行编码/解码的装置可以使用预定义的帧内预测模式之一来执行帧内预测。用于帧内预测的预定义帧内预测模式可以包括无方向预测模式(例如,平面模式、
dc模式)和33个方向预测模式。
121.可替选地,为了提高帧内预测的准确性,可以使用多于33个方向预测模式的更大数目的方向预测模式。也就是说,可以通过对方向预测模式的角度进行细分来定义m个扩展的方向预测模式(m>33),并且可以使用33个预定义的方向预测模式中的至少一个来得到具有预定角度的方向预测模式。
122.图4示出了扩展的帧内预测模式的示例,并且扩展的帧内预测模式可以包括两个无方向预测模式和65个扩展的方向预测模式。相同数目的扩展的帧内预测模式可以用于亮度分量和色度分量,或者可以针对每个分量使用不同数目的帧内预测模式。例如,67个扩展的帧内预测模式可以用于亮度分量,并且35个帧内预测模式可以用于色度分量。
123.可替选地,取决于色度格式,可以在执行帧内预测时使用不同数目的帧内预测模式。例如,在4:2:0格式的情况下,67个帧内预测模式可以用于亮度分量以执行帧内预测,并且35个帧内预测模式可以用于色度分量。在4:4:4格式情况下,67个帧内预测模式可以用于亮度分量和色度分量二者,以执行帧内预测。
124.可替选地,取决于块的大小和/或形状,可以使用不同数目的帧内预测模式来执行帧内预测。也就是说,取决于pu或cu的大小和/或形状,可以使用35个帧内预测模式或67个帧内预测模式来执行帧内预测。例如,当cu或pu具有小于64
×
64的大小或者被非对称地划分时,可以使用35个帧内预测模式来执行帧内预测。当cu或pu的大小等于或大于64
×
64时,可以使用67个帧内预测模式来执行帧内预测。对于intra_2n
×
2n,可以允许65个方向帧内预测模式,而对于intra_n
×
n,仅可以允许35个方向帧内预测模式。
125.图5是简要示出根据本发明的实施方式的帧内预测方法的流程图。
126.参照图5,可以在步骤s500处确定当前块的帧内预测模式。
127.具体地,可以基于候选列表和索引来得到当前块的帧内预测模式。这里,候选列表包括多个候选,并且可以基于与当前块邻近的相邻块的帧内预测模式来确定多个候选。相邻块可以包括位于当前块的顶部、底部、左侧、右侧以及角上的块中的至少一个。索引可以指定候选列表的多个候选中的一个候选。由索引指定的候选可以被设置成当前块的帧内预测模式。
128.可以将用于相邻块中的帧内预测的帧内预测模式设置为候选。此外,可以将具有与相邻块的帧内预测模式的方向性相似的方向性的帧内预测模式设置为候选。这里,可以通过将使相邻块的帧内预测模式加上预定的恒定值或者从相邻块的帧内预测模式减去预定恒定值来确定具有相似的方向性的帧内预测模式。预定的恒定值可以是整数,例如,一、二或更大。
129.候选列表还可以包括默认模式。默认模式可以包括平面模式、dc模式、垂直模式和水平模式中的至少一个。在考虑可以包括在当前块的候选列表中的候选的最大数目的情况下,可以自适应地添加默认模式。
130.可以包括在候选列表中的候选的最大数目可以是三、四、五、六或更大。可以包括在候选列表中的候选的最大数目可以是在用于对视频进行编码/解码的装置中预设的固定值,或者可以基于当前块的特性而可变地确定。特性可以意指块的位置/大小/形状、块可以使用的帧内预测模式的数目/类型等。可替选地,可以单独地用信号传送指示可以包括在候选列表中的候选的最大数目的信息,并且可以使用该信息来可变地确定可以包括在候选列
表中的候选的最大数目。可以以序列级别、图片级别、片(slice)级别和块级别中的至少一个来用信号传送指示候选的最大数目的信息。
131.当选择性地使用扩展的帧内预测模式和35个预定义的帧内预测模式时,可以将相邻块的帧内预测模式变换成与扩展的帧内预测模式相对应的索引,或者变换成与35个帧内预测模式相对应的索引,由此可以得到候选。为了变换成索引,可以使用预定义的表格,或者可以使用基于预定值的缩放操作。这里,预定义的表格可以定义不同的帧内预测模式组(例如,扩展的帧内预测模式和35个帧内预测模式)之间的映射关系。
132.例如,当左侧相邻块使用35个帧内预测模式并且左侧相邻块的帧内预测模式是10(水平模式)时,该帧内预测模式可以被变换成与扩展的帧内预测模式中的水平模式相对应的索引16。
133.可替选地,当顶部相邻块使用扩展的帧内预测模式并且顶部相邻块的帧内预测模式具有索引50(垂直模式)时,该帧内预测模式可以被变换成与35个帧内预测模式中的垂直模式相对应的索引26。
134.基于上述确定帧内预测模式的方法,可以针对亮度分量和色度分量中的每一个来独立地得到帧内预测模式,或者可以取决于亮度分量的帧内预测模式来得到色度分量的帧内预测模式。
135.具体地,如下表1所示,可以基于亮度分量的帧内预测模式来确定色度分量的帧内预测模式。
136.[表1]
[0137][0138]
在表1中,intra_chroma_pred_mode意指被用信号传送以指定色度分量的帧内预测模式的信息,并且intrapredmodey指示亮度分量的帧内预测模式。
[0139]
参照图5,在步骤s510处,可以得到用于当前块的帧内预测的参考样本。
[0140]
具体地,可以基于当前块的相邻样本来得到用于帧内预测的参考样本。相邻样本可以是相邻块的重构样本,并且重构样本可以是在应用环路滤波器之前的重构样本,或者在应用环路滤波器之后的重构样本。
[0141]
在当前块之前重构的相邻样本可以用作参考样本,并且基于预定的帧内滤波器滤波的相邻样本可以用作参考样本。帧内滤波器可以包括应用于位于同一水平线上的多个相
邻样本的第一帧内滤波器和应用于位于同一垂直线上的多个相邻样本的第二帧内滤波器中的至少一个。取决于相邻样本的位置,可以选择性地应用第一帧内滤波器和第二帧内滤波器中的一个,或者可以应用两个帧内滤波器。
[0142]
可以基于当前块的帧内预测模式和当前块的变换块的大小中的至少一个来自适应地执行滤波。例如,在当前块的帧内预测模式是dc模式、垂直模式或水平模式时,可以不执行滤波。当变换块的大小是n
×
m时,可以不执行滤波。这里,n和m可以是相同的值或不同的值,或者可以是4、8、16或更大的值。可替选地,可以基于将预定义的阈值与当前块的帧内预测模式与垂直模式(或水平模式)之间的差进行比较的结果来选择性地执行滤波。例如,在当前块的帧内预测模式与垂直模式之间的差大于阈值时,可以执行滤波。如表2所示,可以针对变换块的每个大小来定义阈值。
[0143]
[表2]
[0144] 8x8变换16x16变换32x32变换阈值710
[0145]
帧内滤波器可以被确定为在用于对视频进行编码/解码的装置中预定义的多个帧内滤波器候选中的一个。为此,可以用信号传送在多个帧内滤波器候选中指定当前块的帧内滤波器的索引。可替选地,可以基于以下中的至少一个来确定帧内滤波器:当前块的大小/形状、变换块的大小/形状、关于滤波器强度的信息以及相邻样本的变化。
[0146]
参照图5,在步骤520处,可以使用当前块的帧内预测模式和参考样本来执行帧内预测。
[0147]
也就是说,可以使用在步骤s500处确定的帧内预测模式和在步骤s510处得到的参考样本来获得当前块的预测样本。然而,在帧内预测的情况下,可以使用相邻块的边界样本,并且因此可能降低预测图片的质量。因此,可以对通过上述预测处理生成的预测样本执行校正处理,并且将参照图6至图14来详细描述校正处理。然而,校正处理不限于仅应用于帧内预测样本,并且校正处理可以应用于帧间预测样本或重构样本。
[0148]
图6是示出根据本发明的实施方式的基于相邻样本的差分信息来校正当前块的预测样本的方法的视图。
[0149]
可以基于当前块的多个相邻样本的差分信息来校正当前块的预测样本。可以对当前块中的所有预测样本执行校正,或者可以对一些预定区域中的预定样本执行校正。一些区域可以是一行/列或多行/列,或者可以是用于在用于对视频进行编码/解码的装置中校正的预设区域,或者可以基于当前块的大小/形状和帧内预测模式中的至少一个来可变地确定。
[0150]
相邻样本可以属于位于当前块的顶部、左侧、左上角的相邻块。用于校正的相邻样本的数目可以是二、三、四或更大。可以取决于作为当前块中的校正目标的预测样本的位置来可变地确定相邻样本的位置。可替选地,无论作为校正目标的预测样本的位置如何,相邻样本中的一些样本可以具有固定的位置,并且取决于作为校正目标的预测样本的位置,其余相邻样本可以具有可变的位置。
[0151]
相邻样本的差分信息可以意指相邻样本之间的差分样本,或者可以意指通过将差分样本缩放预定的恒定值(例如,一、二、三等)而获得的值。这里,可以在考虑作为校正目标的预测样本的位置、包括作为校正目标的预测样本的行或列的位置、预测样本在行或列内
的位置等的情况下来确定预定的恒定值。
[0152]
例如,在当前块的帧内预测模式是垂直模式时,如等式1所示,可以使用左上侧相邻样本p(

1,

1)和与当前块的左边界相邻的相邻样本p(

1,y)之间的差分样本来获得最终预测样本。
[0153]
[等式1]
[0154]
p

(0,y)=p(0,y)+((p(

1,y)

p(

1,

1))>>1,其中y=0...n
‑1[0155]
例如,在当前块的帧内预测模式是水平模式时,如等式2所示,可以使用左上侧相邻样本p(

1,

1)和与当前块的上边界邻近的相邻样本p(x,

1)之间的差分样本来获得最终预测样本。
[0156]
[等式2]
[0157]
p

(x,0)=p(x,0)+((p(x,

1)

p(

1,

1))>>1,其中x=0...n
‑1[0158]
例如,在当前块的帧内预测模式是垂直模式时,可以使用左上侧相邻样本p(

1,

1)和与当前块的左边界邻近的相邻样本p(

1,y)之间的差分样本来获得最终预测样本。这里,可以将差分样本添加至预测样本,或者可以将差分样本缩放预定的恒定值,然后添加至预测样本。可以取决于行和/或列来不同地确定在缩放时使用的预定的恒定值。例如,可以如等式3和等式4所示来校正预测样本。
[0159]
[等式3]
[0160]
p

(0,y)=p(0,y)+((p(

1,y)

p(

1,

1))>>1,其中y=0..,n
‑1[0161]
[等式4]
[0162]
p

(1,y)=p(1,y)+((p(

1,y)

p(

1,

1))>>2,其中y=0..,n
‑1[0163]
例如,在当前块的帧内预测模式是水平模式时,可以使用左上侧相邻样本p(

1,

1)和与当前块的上边界邻近的相邻样本p(x,

1)之间的差分样本来获得最终预测样本,如在垂直模式的情况下所描述的。例如,可以如等式5和等式6所示地校正预测样本。
[0164]
[等式5]
[0165]
p

(x,0)=p(x,0)+((p(x,

1)

p(

1,

1))>>1,其中x=0...n
‑1[0166]
[等式6]
[0167]
p

(x,1)=p(x,1)+((p(x,

1)

p(

1,

1))>>2,其中x=0...n
‑1[0168]
图7和图8是示出根据本发明的实施方式的基于预定的校正滤波器对预测样本进行校正的方法的视图。
[0169]
可以基于作为校正目标的预测样本的相邻样本和预定的校正滤波器来对预测样本进行校正。这里,相邻样本可以通过当前块的方向预测模式的角度线来指定,或者相邻样本可以是与作为校正目标的预测样本位于同一角度线上的至少一个样本。此外,相邻样本可以是当前块中的预测样本,或者可以是在当前块之前重构的相邻块中的重构样本。
[0170]
可以基于以下中的至少一个来确定校正滤波器的抽头数目、强度和滤波器系数中的至少一个:作为校正目标的预测样本的位置、作为校正目标的预测样本是否位于当前块的边界、当前块的帧内预测模式、方向预测模式的角度、相邻块的预测模式(帧间模式或帧内模式)以及当前块的大小/形状。
[0171]
参照图7,当方向预测模式具有索引2或34时,可以使用位于作为校正目标的预测样本的左下侧的至少一个预测/重构样本和预定的校正滤波器来获得最终预测样本。这里,
左下侧的预测/重构样本可以属于包括作为校正目标的预测样本的行的前一行。左下侧处的预测/重构样本可以属于与当前样本相同的块,或者属于与当前块相邻的相邻块。
[0172]
可以仅对位于块边界的行执行对于预测样本的滤波,或者可以对多个行执行对于预测样本的滤波。可以使用以下校正滤波器:针对每行,滤波器抽头数目和滤波器系数中的至少一个是不同的。例如,(1/2,1/2)滤波器可以用于最接近块边界的左侧第一行,(12/16,4/16)滤波器可以用于第二行,(14/16,2/16)滤波器可以用于第三行,(15/16,1/16)滤波器可以用于第四行。
[0173]
可替选地,当方向预测模式具有3至6或30至33的索引时,可以如图8所示对块边界执行滤波,并且可以使用3抽头校正滤波器来校正预测样本。可以使用作为校正目标的预测样本的左下侧样本、左下侧样本的底部样本以及将作为校正目标的预测样本作为输入的3抽头校正滤波器来执行滤波。可以基于方向预测模式来不同地确定由校正滤波器使用的相邻样本的位置。可以取决于方向预测模式来不同地确定校正滤波器的滤波器系数。
[0174]
取决于是以帧间模式还是帧内模式对相邻块进行编码,可以应用不同的校正滤波器。当以帧内模式对相邻块进行编码时,与当以帧间模式对相邻块进行编码时相比,可以使用对预测样本给予更多权重的滤波方法。例如,在帧内预测模式是34的情况下,当以帧间模式对相邻块进行编码时,可以使用(1/2,1/2)滤波器,并且当以帧内模式对相邻块进行编码时,可以使用(4/16,12/16)滤波器。
[0175]
当前块中要滤波的行的数目可以取决于当前块(例如,编码块或预测块)的大小/形状而变化。例如,在当前块的大小等于或小于32
×
32时,可以仅对块边界处的一行执行滤波;否则,可以对包括块边界处的一行的多个行执行滤波。
[0176]
图7和图8基于使用图4中的35个帧内预测模式的情况,但是还可以等同地/类似地应用于使用扩展的帧内预测模式的情况。
[0177]
当基于方向帧内预测模式对当前块执行帧内预测时,由于所使用的参考样本的范围有限(例如,仅使用与当前块相邻的相邻样本来执行帧内预测),所以所生成的预测样本可能不能反映原始图片的特征。例如,在当前块中存在边缘时,或者在当前块的边界周围出现新的对象时,取决于预测样本在当前块中的位置,预测样本与原始图片之间的差异可能较大。
[0178]
在这种情况下,残差值相对较大,并且因此要进行编码/解码的比特数可能增加。具体地,在距当前块的边界相对较远的区域中的残差值可能包括大量的高频分量,这可能导致编码/解码效率下降。
[0179]
为了解决上述问题,可以使用在子块单元中生成或更新预测样本的方法。据此,可以提高距块边界相对较远的区域中的预测准确性。
[0180]
为了便于说明,在以下实施方式中,基于方向帧内预测模式生成的预测样本被称作第一预测样本。此外,基于无方向帧内预测模式生成的预测样本或通过执行帧间预测生成的预测样本也可以被包括在第一预测样本的类别中。
[0181]
将参照图9详细地描述基于偏移来校正预测样本的方法。
[0182]
图9是示出根据本发明的实施方式的基于偏移来校正预测样本的方法的视图。
[0183]
参照图9,对于当前块,可以在步骤s900处确定是否使用偏移来更新第一预测样本。可以通过从比特流解码的标记来确定是否使用偏移来更新第一预测样本。例如,可以通
过比特流来用信号传送指示是否使用偏移来更新第一预测样本的句法

is_sub_block_refinement_flag’。当is_sub_block_refinement_flag的值是1时,可以在当前块中使用利用偏移来更新第一预测样本的方法。当is_sub_block_refinement_flag的值是0时,在当前块中可以不使用利用偏移来更新第一预测样本的方法。然而,步骤s900意在选择性地执行对第一预测样本的更新,并且不是用于实现本发明的目的的必要配置,因此在一些情况下可以省略步骤s900。
[0184]
当确定使用利用偏移来更新第一预测样本的方法时,可以在步骤s910处确定当前块的帧内预测方式。通过帧内预测方式,可以确定当前块的被施加偏移的全部或一些区域、当前块的划分类型、是否向包括在当前块中的子块施加偏移、分配给每个子块的偏移的大小/符号等。
[0185]
可以将在用于对视频进行编码/解码的装置中预定义的多个方式中的一个选择性地用作当前块的帧内预测方式,并且为此,可以通过比特流用信号传送指定当前块的帧内预测方式的索引。作为另一示例,可以基于以下来确定当前块的帧内预测方式:当前块的预测单元或编码单元的划分模式、块的大小/形状、是否使用方向帧内预测模式、方向帧内预测模式的角度等。
[0186]
通过经由比特流用信号传送的预定的标记信息来确定是否用信号传送指示当前块的帧内预测方式的索引。例如,当标记信息指示从比特流用信号传送了指示当前块的帧内预测方式的索引时,可以基于从比特流解码的索引来确定当前块的帧内预测方式。这里,可以以图片级别、片级别和块级别中的至少一个来用信号传送标记信息。
[0187]
当标记信息指示没有从比特流用信号传送指示当前块的帧内预测方式的索引时,可以基于当前块的预测单元或编码单元的划分模式等来确定当前块的帧内预测方式。例如,当前块被划分成子块的方式可以与编码块被划分成预测单元的方式相同。
[0188]
当确定了当前块的帧内预测方式时,可以在步骤s920处获得子块单元中的偏移。可以以片、编码单元或预测单元为单位来用信号传送偏移。作为另一示例,可以根据当前块的相邻样本来得到偏移。偏移可以包括偏移值信息和偏移符号信息中的至少一个。这里,偏移值信息可以在等于或大于零的整数范围内。
[0189]
当确定了偏移时,可以在步骤s930处针对每个子块获得第二预测样本。可以通过向第一预测样本施加偏移来获得第二预测样本。例如,可以通过给第一预测样本加上偏移或从第一预测样本减去偏移来获得第二预测样本。
[0190]
图10至图14是示出根据本发明的实施方式的当前块的帧内预测方式的示例的视图。
[0191]
例如,在图10所示的示例中,当索引为“0”或“1”时,当前块可以被划分成上子块和下子块。可以不对上子块设置偏移,并且可以对下子块设置偏移“f”。因此,第一预测样本(p(i,j))可以如其在上子块中那样进行使用,并且通过给第一预测样本加上偏移或从第一预测样本减去偏移而生成的第二预测样本(p(i,j)+f或p(i,j)

f)可以用于下子块中。在本发明中,“不设置”可以意指偏移未被分配至块,或者意指可以将具有值“0”的偏移分配至块。
[0192]
当索引为“2”或“3”时,当前块被划分成左子块和右子块。可以不对左子块设置偏移,并且可以对右子块设置偏移“f”。因此,第一预测样本(p(i,j))可以如其在左子块中那样进行使用,并且通过给第一预测样本加上偏移或从第一预测样本减去偏移而生成的第二
预测样本(p(i,j)+f或p(i,j)

f)可以用于右子块中。
[0193]
可以基于当前块的帧内预测模式来限制可用帧内预测方式的范围。例如,在当前块的帧内预测模式是垂直方向帧内预测模式或沿与垂直方向帧内预测模式类似的方向的预测模式时(例如,在33个方向预测模式中,当帧内预测模式具有索引22至30时),可以仅将沿水平方向划分当前块的帧内预测方式(例如,图17中的索引0或1)应用于当前块。
[0194]
作为另一示例,在当前块的帧内预测模式是水平方向帧内预测模式或沿与水平方向帧内预测模式类似的方向的预测模式时(例如,在33个方向预测模式中,当帧内预测模式具有索引6至14时),可以仅将沿垂直方向划分当前块的帧内预测方式(例如,图17中的索引2或索引3)应用于当前块。
[0195]
在图10中,不针对包括在当前块中的子块中的一个子块设置偏移,但是对另一子块设置偏移。可以基于针对每个子块用信号传送的信息来确定是否对子块设置偏移。
[0196]
可以基于子块的位置、用于标识在当前块中的子块的索引等来确定是否对子块设置偏移。例如,基于当前块的预定边界,可以不对与预定边界相邻的子块设置偏移,并且可以对与预定边界不相邻的子块设置偏移。
[0197]
当假设预定边界是当前块的上边界时,在与索引“0”或“1”对应的帧内预测方式下,可以不对与当前块的上边界相邻的子块设置偏移,并且可以对与当前块的上边界不相邻的子块设置偏移。
[0198]
当假设预定边界是当前块的左边界时,在与索引“2”或“3”对应的帧内预测方式下,可以不对与当前块的左边界相邻的子块设置偏移,并且可以对与当前块的左边界不相邻的子块设置偏移。
[0199]
在图10中,假设不对包括在当前块中的子块中的一个子块设置偏移,但是对另一子块设置偏移。作为另一示例,可以对包括在当前块中的子块设置不同的偏移值。
[0200]
将参照图11来描述针对每个子块设置不同偏移的示例。
[0201]
参照图11,当索引为“0”或“1”时,可以对当前块的上子块设置偏移“h”,并且可以对当前块的下子块设置偏移“f”。因此,可以在上子块中通过给第一预测样本加上偏移“h”或从第一预测样本减去偏移“h”来生成第二预测样本(p(i,j)+h或p(i,j)

h),并且可以通过给第一预测样本加上偏移“f”或从第一预测样本减去偏移“f”来生成第二预测样本(p(i,j)+f或p(i,j)

f)。
[0202]
参照图11,当索引为“2”或“3”时,可以对当前块的左子块设置偏移“h”,并且可以对当前块的右子块设置偏移“f”。因此,可以在左子块中通过给第一预测样本加上偏移“h”或从第一预测样本减去偏移“h”来生成第二预测样本(p(i,j)+h或p(i,j)

h),并且可以在右子块中通过给第一预测样本加上偏移“f”或从第一预测样本减去偏移“f”来生成第二预测样本(p(i,j)+f或p(i,j)

f)。
[0203]
在图10和图11中,当前块被划分成具有相同大小的两个子块,但是包括在当前块中的子块的数目和/或子块的大小不限于图10和图11所示的示例。包括在当前块中的子块的数目可以是三个或更多,并且子块可以具有不同的大小。
[0204]
当多个帧内预测方式可用时,可用帧内预测方式可以被分组成多个类别。在这种情况下,可以基于用于标识类别的第一索引和标识该类别中的帧内预测方式的第二索引来选择当前块的帧内预测方式。
[0205]
将参照图12来描述基于第一索引和第二索引来确定当前块的帧内预测方式的示例。
[0206]
在图12示出的示例中,可以将12种帧内预测方式分成三个类别,每个类别包括四种帧内预测方式。例如,与索引0至3对应的帧内预测方式可以被归类为类别0,与索引4至7对应的帧内预测方式可以被归类为类别1,与索引8至11对应的帧内预测方式可以被归类为类别2。
[0207]
用于对视频进行解码的装置可以从比特流解码第一索引,以指定包括至少一个帧内预测方式的类别。在图12所示的示例中,第一索引可以指定类别0、1和2中的一个。
[0208]
当基于第一索引指定了类别时,可以基于从比特流解码的第二索引来确定当前块的帧内预测方式。当由第一索引指定类别1时,第二索引可以指定类别1的四个帧内预测方式(即索引4至索引7)中的一个。
[0209]
在图12中,示出了类别包括相同数目的帧内预测方式。但是类别不需要包括相同数目的帧内预测方式。
[0210]
可以以序列或片为单位来确定可用的帧内预测方式的数目或类别的数目。此外,可以通过序列头或片头来用信号传送可用的帧内预测方式的数目和类别的数目中的至少一个。
[0211]
作为另一示例,可以基于当前块的预测单元或编码单元的大小来确定可用的帧内预测方式的数目和/或类别的数目。例如,在当前块(例如,当前块的编码单元)的大小等于或大于64
×
64时,可以从图13所示的五个帧内预测方式中选择当前块的帧内预测方式。相反,在当前块(例如,当前块的编码单元)的大小小于64
×
64时,可以从图10、图11或图12所示的帧内预测方式中选择当前块的帧内预测方式。
[0212]
在图10至图13中,描述了包括在各帧内预测方式中的子块具有长方形形状。作为另一示例,可以使用子块的大小和形状中的至少一个彼此不同的帧内预测方式。例如,图14是示出具有不同大小和形状的子块的帧内预测方式的示例的视图。
[0213]
每个子块的偏移(例如,图10至图14中示出的每个子块的偏移h、f、g或i)可以从比特流解码,或者可以从与当前块相邻的相邻样本得到。
[0214]
作为另一示例,可以考虑至当前块中的特定位置处的样本的距离来确定子块的偏移。例如,可以与表示当前块中的预定位置处的样本与子块中的预定位置处的样本之间的距离的值成比例地确定偏移。
[0215]
作为另一示例,可以通过使预设值加上或去下述值来确定子块的偏移,该值基于当前块中的预定位置处的样本与子块中的预定位置处的样本之间的距离来确定。
[0216]
作为另一示例,可以基于表示当前块的大小的值与表示当前块中的预定位置处的样本与子块中的预定位置处的样本之间的距离的值的比率来确定偏移。
[0217]
这里,当前块中的预定位置处的样本可以包括与当前块的左边界相邻的样本、位于当前块的上边界处的样本、与当前块的左上角相邻的样本等。
[0218]
图15是示出根据本发明的实施方式的使用帧内块复制方案来执行预测的方法的视图。
[0219]
帧内块复制(ibc)是使用已经在与当前块相同的图片中重构的块(在下文中被称作“参考块”)来预测/重构当前块的方法。如果图片包含大量文字(例如,韩文字符、字母等)
并且在重构当前块时包含在当前块中的字母被包含在已解码的块中,则帧内块复制可以提高编码/解码性能。
[0220]
帧内块复制方法可以被归类为帧内预测方法或帧间预测方法。当帧内块复制方法被归类为帧内预测方法时,可以定义用于帧内块复制方法的帧内预测模式。当帧内块复制方法被归类为帧间预测方法时,比特流可以包括指示是否对当前块应用帧内块复制方法的标记。可替选地,可以通过当前块的参考图片索引来确认当前块是否使用帧内块复制。也就是说,在当前块的参考图片索引指示当前图片时,可以使用帧内块复制对当前块执行帧间预测。为此,可以将预先重构的当前图片添加至当前块的参考图片列表。当前图片可以存在于参考图片列表中的固定位置(例如,参考图片索引为0的位置或最后的位置)处。可替选地,当前图片可以在参考图片列表中具有不同的位置,并且为此,可以分别用信号传送指示当前图片的位置的参考图片索引。
[0221]
为了指定当前块的参考块,可以将当前块与参考块之间的位置差定义为运动矢量(在下文中被称作块矢量)。
[0222]
可以通过预测块矢量与差分块矢量的和来得到块矢量。用于对视频进行编码的装置可以通过预测编码来生成预测块矢量,并且可以对指示块矢量与预测块矢量之间的差的差分块矢量进行编码。在这种情况下,用于对视频进行解码的装置可以通过使用利用预先解码信息得到的预测块矢量和从比特流解码的差分块矢量来得到当前块的块矢量。
[0223]
这里,可以基于以下各项来得到预测块矢量:与当前块相邻的相邻块的块矢量、当前块的lcu中的块矢量、当前块的lcu行/列中的块矢量等。
[0224]
用于对视频进行编码的装置可以在不执行对块矢量的预测编码的情况下对块矢量进行编码。在这种情况下,用于对视频进行解码的装置可以通过对通过比特流用信号传送的块矢量信息进行解码来获得块矢量。可以对通过帧内块复制方法生成的预测/重构样本执行校正处理。在这种情况下,可以同样地/类似地应用参照图6至图14描述的校正方法,并且因此将省略其详细描述。
[0225]
图16示出了根据应用了本发明的实施方式的用于帧内预测的参考样本的范围。
[0226]
参照图16,可以通过使用位于当前块的边界的参考样本p(

1,

1)、p(

1,y)(0<=y<=2n

1)和p(x,

1)(0<=x<=2n

1)来执行帧内预测。此时,基于当前块的帧内预测模式(例如,帧内预测模式的索引、方向性、角度等)或者与当前块相关的变换块的大小中的至少一个来选择性地执行对参考样本的滤波。
[0227]
可以选择多个帧内滤波器候选中的至少一个,以对参考样本执行滤波。这里,多个帧内滤波器候选可以在滤波器强度、滤波器系数或抽头数目(例如,滤波器系数的数目、滤波器长度)中的至少一个方面彼此不同。可以在序列、图片、片别或块级别中的至少一个中限定多个帧内滤波器候选。也就是说,包括当前块的序列、图片、片或块可以使用相同的多个帧内滤波器候选。
[0228]
在下文中,为了便于说明,假设多个帧内滤波器候选包括第一帧内滤波器和第二帧内滤波器。还假设第一帧内滤波器是(1,2,1)3抽头滤波器,第二帧内滤波器是(2,3,6,3,2)5抽头滤波器。
[0229]
当通过应用第一帧内滤波器对参考样本进行滤波时,可以如等式7所示得到经滤波的参考样本。
[0230]
[等式7]
[0231]
p(

1,

1)=(p(

1,0)+2p(

1,

1)+p(0,

1)+2)>>2
[0232]
p(

1,y)=(p(

1,y+1)+2p(

1,y)+p(

1,y

1)+2)>>2
[0233]
p(x,

1)=(p(x+1,

1)+2p(x,

1)+p(x

1,

1)+2)>>2
[0234]
当通过应用第二帧内滤波器对参考样本进行滤波时,可以如以下等式8所示得到经滤波的参考样本。
[0235]
[等式8]
[0236]
p(

1,

1)=(2p(

2,0)+3p(

1,0)+6p(

1,

1)+3p(o,

1)+2p(o,

2)+8)>>4
[0237]
p(

1,y)=(2p(

1,y+2)+3p(

1,y+1)+6p(

1,y)+3p(

1,y

1)+2p(

1,y

2)+8)>>4
[0238]
p(x,

1)=(2p(x+2,

1)+3p(x+1,

1)+6p(x,

1)+3p(x

1,

1)+2p(x

2,

1)+8)>>4
[0239]
基于参考样本的位置,可以确定多个帧内滤波器候选中的一个,并且用于通过使用所确定的一个帧内滤波器候选来对参考样本执行滤波。例如,第一帧内滤波器可以应用于当前块的边界处的参考样本,并且第二帧内滤波器可以应用于其他参考样本。具体地,如图17所示,通过应用如等式7所示的第一帧内滤波器来对参考样本p(

1,

1)、p(

1,0)、p(

1,1)、

、p(

1,n

1)和p(0,

1)、p(1,

1)、

执行滤波,并且通过应用如等式8所示的第二参考滤波器来对其他参考样本执行滤波。
[0240]
可以基于用于当前块的变换类型来选择多个帧内滤波器候选中的一个,并且使用所选择的一个帧内滤波器候选来对参考样本执行滤波。这里,变换类型可以意指:(1)变换方案,诸如dct、dst或klt,(2)变换模式指示符,诸如2d变换、1d变换或非变换,或者(3)变换的数目,诸如第一变换和第二变换。在下文中,为了便于描述,假设变换类型意指变换方案,诸如dct、dst和klt。
[0241]
例如,如果使用dct对当前块进行编码,则可以使用第一帧内滤波器来执行滤波,如果使用dst对当前块进行编码,则可以使用第二帧内滤波器来执行滤波。或者,如果使用dct或dst对当前块进行编码,则可以使用第一帧内滤波器来执行滤波,并且如果使用klt对当前块进行编码,则可以使用第二帧内滤波器来执行滤波。
[0242]
可以使用基于当前块的变换类型和参考样本的位置选择的滤波器来执行滤波。例如,如果使用dct对当前块进行编码,则可以通过使用第一帧内滤波器来对参考样本p(

1,

1)、p(

1,0)、p(

1,1)、...、p(

1,n

1)和p(0,

1)、p(1,

1)、...、p(n

1,

1)执行滤波,并且可以通过使用第二帧内滤波器来对其他参考样本执行滤波。如果使用dst对当前块进行编码,则可以通过使用第二帧内滤波器来对参考样本p(

1,

1)、p(

1,0)、p(

1,1)、...、p(

1,n

1)和p(0,

1)、p(1,

1)、...、p(n

1,

1)执行滤波,并且可以通过使用第一帧内滤波器来对其他参考样本执行滤波。
[0243]
可以基于包括参考样本的相邻块的变换类型与当前块的变换类型是否相同来选择多个帧内滤波器候选中的一个,并且可以使用所选择的帧内滤波器候选来执行滤波。例如,在当前块与相邻块使用相同的变换类型时,使用第一帧内滤波器执行滤波,并且在当前块与相邻块的变换类型彼此不同时,第二帧内滤波器可以用于执行滤波。
[0244]
可以基于相邻块的变换类型来选择多个帧内滤波器候选中的任何一个,并且使用
所选择的一个帧内滤波器候选对参考样本执行滤波。也就是说,可以考虑包括参考样本的块的变换类型来选择特定滤波器。例如,如图18所示,如果与当前块的左/左下相邻的块是使用dct进行编码的块,并且与当前块的上/右上相邻的块是使用dst进行编码的块,则通过应用第一帧内滤波器对与当前块的左/左下相邻的参考样本执行滤波,并且通过应用第二帧内滤波器来对与当前块的上/右上相邻的参考样本执行滤波。
[0245]
在预定区域的单元中,可以限定可在相应区域中使用的滤波器。在本文中,预定区域的单位可以是序列、图片、片、块组(例如,编码树单元的行)或块(例如,编码树单元)中的任何一个。或者,可以限定共享一个或更多个滤波器的另外的区域。可以通过使用映射到包括当前块的区域的滤波器来对参考样本进行滤波。
[0246]
例如,如图19所示,可以使用ctu单元中的不同滤波器对参考样本执行滤波。在这种情况下,可以经由序列参数集(sps)或图片参数集(pps)用信号传送指示在序列或图片中是否使用相同滤波器的信息、用于每个ctu的滤波器的类型、指定在可用的帧内滤波器候选中的相应的ctu中使用的滤波器的索引。
[0247]
在当前图片与先前图片没有连续性的情况下或者在当前图片包括具有方向性的纹理时的情况下,可以有效地使用帧内预测模式。具体地,在当前图片包括具有方向性的纹理的情况下,当前块的帧内预测模式可能具有与相邻块的帧内预测模式相同或相似的方向。因此,可以基于相邻块的帧内预测模式对当前块的帧内预测模式进行编码/解码。具体地,可以基于根据相邻块的帧内预测模式生成的多个mpm(最可能模式)候选来对当前块的帧内预测模式进行编码/解码。
[0248]
例如,在编码过程中,在当前块的帧内预测模式与mpm候选中的任何一个mpm候选相同的情况下,可以通过选择与当前块的帧内预测模式相同的mpm候选来对当前块的帧内预测模式进行编码。这里,编码器可以对索引信息(例如,'mpm_idx')进行编码,该索引信息指示多个mpm候选中的与当前块的帧内预测模式相同的mpm候选。可以通过比特流来用信号传送索引信息。
[0249]
在解码过程中,可以通过指示mpm候选中的任何一个mpm候选是否被用作当前块的帧内预测模式的信息以及索引信息(例如,'mpm_idx')来得到当前块的帧内预测模式。这里,指示mpm候选中的任何一个mpm候选是否被用作当前块的帧内预测模式的信息可以是1比特标志(例如,'prev_intra_luma_pred_flag'),然而不限于此。
[0250]
为了得到当前块的帧内预测模式,可以使用多个mpm候选。对于要解码的每个序列、片或目标块,mpm候选的数目可以是固定数目,并且可以是可变数目。
[0251]
例如,可以基于从比特流用信号传送的信息来确定mpm候选的数目。可以通过以序列/片为单位用信号传送的语法元素'num_mpm_idx'来确定对于每个序列/片的mpm候选的数目。
[0252]
用于得到当前块的帧内预测模式的mpm候选的数目可以是从3到6的数目,然而不限于此。也可以使用多于6个mpm候选。
[0253]
在下文中,假设使用图4所示的扩展帧内预测模式,将详细描述用于使用mpm候选得到当前块的帧内预测模式的方法。不仅可以在使用比图4所示的帧内预测模式数目更多的帧内预测模式的情况下,而且还可以在使用比图4所示的帧内预测模式数目更少的帧内预测模式的情况下,应用下面描述的实施方式。
[0254]
图20是示出根据本发明的实施方式的得到当前块的帧内预测模式的方法的流程图。
[0255]
参照图20,首先,使用与当前块相邻的相邻块的帧内预测模式来得到mpm候选(s2010)。这里,与当前块相邻的相邻块可以是比当前块更早解码的块,并且可以包括与当前块的顶部相邻的顶部相邻块,以及与当前块的左侧相邻的左侧相邻块。
[0256]
这里,与当前块的顶侧相邻的顶部相邻块不仅可以包括与当前块的顶边界邻接的相邻块,而且还可以包括与当前块的顶角(例如,当前块的左上角或当前块的右上角)相邻的相邻块。另外,在当前块的顶边界被扩展预定长度的情况下,与扩展顶边界邻接的块或者包括与扩展顶边界相对应的坐标的块可以被称为当前块的顶部相邻块。
[0257]
与当前块的左侧相邻的左侧相邻块不仅可以包括与当前块的左边界邻接的相邻块,而且还可以包括与当前块的左角(例如,当前块的左上角或当前块的左下角)相邻的相邻块。另外,在当前块的左边界被扩展预定长度的情况下,与扩展左边界邻接的块或者包括与扩展左边界相对应的坐标的块可以被称为当前块的左侧相邻块。
[0258]
可以使用以下帧内预测模式中的至少一个来生成当前块的mpm候选:与当前块相邻的相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式、与当前块相邻的相邻块的帧内预测模式中的具有最大值的帧内预测模式或者与当前块相邻的相邻块的帧内预测模式中的具有最小值的帧内预测模式。
[0259]
例如,表3示出了基于相邻块的帧内预测模式来确定mpm候选的示例。
[0260]
[表3]
[0261][0262]
在表3中,l指示在左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式,并且a指示在顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式。max指示左侧相邻块和顶部相邻块的帧内预测模式中的最大帧内预测模式,并且min指示左侧相邻块和顶部相邻块的帧内预测模式中的最小帧内预测模式。在表3中,例示了生成6个mpm候选。然而,还可以通过生成更少或更多的mpm候选来得到当前块的帧内预测模式。
[0263]
另外,代替基于帧内预测模式的出现频率来确定l或a,可以将特定位置处的相邻
块的帧内预测模式确定为l或a。
[0264]
参考表3中所示的示例,可以基于帧内预测模式l和a是否相同来确定mpm候选。
[0265]
例如,在l和a相同并且l和a是方向模式(即,既不是平面也不是dc)的情况下,当前块的mpm候选可以包括l、具有与l类似的方向的帧内预测模式、平面模式和dc模式中的至少一个。这里,具有与帧内预测模式l类似的方向的帧内预测模式意指与帧内预测模式l的差异等于或小于阈值的帧内预测模式。例如,与帧内预测模式l类似的帧内预测模式可以包括l+1、l

1、l+2或l

2等。在表3中,例示了生成诸如l、平面、l+1、l

1、l+2和dc的6个mpm候选。
[0266]
在l和a相同并且l和a是无方向模式(即,平面或dc)的情况下,当前块的mpm候选可以包括平面模式、dc模式和预设方向模式中的至少一个。这里,预设方向模式可以包括垂直和水平,并且可以包括对角线方向模式(例如,2、34或66等)。可替选地,预设方向模式可以具有与上述示例不同的方向。在表3中,例示了生成诸如平面、dc、垂直(ver)、水平(hor)、2和18的6个mpm候选。
[0267]
在l和a不相同的情况下,l和a中的每一个可以被设置为mpm候选。另外,基于l和a是否是无方向模式,可以将平面、dc、max、与max类似的帧内预测模式、min或者与min类似的帧内预测模式中的至少一个生成为mpm候选。
[0268]
例如,在l和a不相同并且l和a不是平面模式,但l或a是dc的情况下,可以将l、a、平面、max或与max类似的帧内预测模式中的至少一个生成为mpm候选。在表3中,例示了生成诸如l、a、平面、max

1、max+1和max+2的6个mpm候选。
[0269]
在l和a不相同并且l和a既不是平面也不是dc的情况下,可以将l、a、无方向模式、max、min、与max类似的帧内预测模式或者与min类似的帧内预测模式中的至少一个生成为mpm候选。在表3中,例示了生成诸如l、a、平面、dc、max+1和min

1的6个mpm候选。
[0270]
在l和a不相同但l和a都是无方向模式(即,l和a中的一个是平面而另一个是dc,即l+a<2)的情况下,可以将l、a和预设方向模式生成为mpm候选。在表3中,例示了生成诸如l、a、垂直(ver)、水平(hor)、2和18的6个mpm候选。
[0271]
在l和a不相同并且l和a中的一个是平面模式而另一个是方向模式的情况下,可以将l、a、dc、max或与max类似的帧内预测模式中的至少一个生成为mpm候选。在表3中,例示了生成诸如l、a、dc、max

1、max+1和max+2的6个mpm候选。
[0272]
在下文中,将参照图21的示例来详细描述用于生成mpm候选的示例。
[0273]
图21是用于说明使用与当前块相邻的相邻块的帧内预测模式来生成mpm候选的示例的图。
[0274]
在图21中,例示了存在与当前块相邻的多个左侧相邻块和多个顶部相邻块。
[0275]
参照图21,左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式“l”是10。顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式“a”是26。另外,左侧相邻块和顶部相邻块的最大帧内预测模式“max”是26,并且左侧相邻块和顶部相邻块的最小帧内预测模式“min”是0。将以上应用于表3所示的示例,可以将10、26、平面、25、27和29生成为当前块的mpm候选。
[0276]
用于生成当前块的mpm候选的相邻块可以被限制于与当前块包括在同一编码树单元中的相邻块。这里,当前块与编码树单元的左边界和顶边界相邻,并且在编码树单元中可能没有与当前块的左侧或顶部相邻的相邻块。可替选地,在与当前块的左侧或顶部相邻的
相邻块可能不是通过帧内预测模式编码的块的情况下,可以不使用与当前块相邻的相邻块的帧内预测模式。在这种情况下,可以基于预定义模式来生成当前块的mpm候选。这里,预定义模式可以包括dc、平面、垂直或水平中的至少一个。
[0277]
例如,在不存在与当前块相邻的左侧相邻块和顶部相邻块的情况下,假设l是平面并且a是dc,并且根据表3中例示的规则来生成当前块的mpm候选。
[0278]
在生成mpm候选时,可以使用顶部相邻块和左侧相邻块之一的帧内预测模式,然而在生成mpm候选时,另一个可能不可用。可以用可用的帧内预测模式替换不可用的帧内预测模式,从而可以生成当前块的mpm候选。
[0279]
具体地,为了生成当前块的mpm候选,在顶部相邻块的帧内预测模式或左侧相邻块的帧内预测模式不可用的情况下,可以基于与帧内预测模式不可用的相邻块最接近的块或者与帧内预测模式不可用的相邻块最邻近的块的帧内预测模式来生成当前块的mpm候选。
[0280]
例如,在当前块的顶部相邻块的帧内预测模式不可用的情况下,可以使用与顶部相邻块最接近(或最邻近)的左侧相邻块的帧内预测模式来代替顶部相邻块的帧内预测模式。另外,在当前块的左侧相邻块的帧内预测模式不可用的情况下,可以使用与左侧相邻块最接近(或最邻近)的顶部相邻块的帧内预测模式来代替左侧相邻块的帧内预测模式。
[0281]
图22是示出在与当前块相邻的顶部相邻块或左侧相邻块的帧内预测模式不可用的情况下生成mpm候选的示例的图。
[0282]
在顶部相邻块的帧内预测模式不可用的情况下,可以将当前块的左侧相邻块中的最接近顶部相邻块的左侧相邻块(即,最接近当前块的顶边界的块)的帧内预测模式设置为帧内预测模式a。
[0283]
例如,参照图22所示的示例(a),左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式l是10,并且帧内预测模式a是10,a是最接近顶部相邻块的左侧相邻块的帧内预测模式。在确定了a和l的情况下,可以根据表3的示例来确定当前块的mpm候选。
[0284]
在顶部相邻块的帧内预测模式不可用,然而存在与当前块相邻的多个左侧相邻块的情况下,解码器可以顺序地获得左侧相邻块的帧内预测模式。也就是说,解码器可以按照与顶部相邻块(或当前块的左上相邻块)相邻的顺序来获得左侧相邻块的帧内预测模式。
[0285]
例如,在图23所示的示例(a)中,解码器可以从当前块的左上块开始顺序地获得位于左上块下方的相邻块的帧内预测模式,然后可以获得位于左上块上方的相邻块的帧内预测模式。因此,在图23所示的示例(a)中,按照a0、a1、a2、a3、a4、b0、b1的顺序来获得左侧相邻块的帧内预测模式,其中可以使用第一可用帧内预测模式来代替顶部相邻块的帧内预测模式(或帧内预测模式a)。
[0286]
在左侧相邻块的帧内预测模式不可用的情况下,可以将当前块的顶部相邻块中的最接近左侧相邻块的块(即,最接近当前块的左边界的块)的帧内预测模式设置为帧内预测模式l。
[0287]
例如,参照图22所示的示例(b),顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式a是26,并且帧内预测模式l是26,l是最接近左侧相邻块的左侧相邻块的帧内预测模式。在确定了l和a的情况下,可以根据表3的示例来确定当前块的mpm候选。
[0288]
在左侧相邻块的帧内预测模式不可用,然而存在与当前块相邻的多个顶部相邻块的情况下,解码器可以顺序地获得顶部相邻块的帧内预测模式。也就是说,解码器可以按照
与左侧相邻块(或当前块的左上相邻块)相邻的顺序来获得顶部相邻块的帧内预测模式。
[0289]
例如,在图23所示的示例(b)中,解码器可以从当前块的左上块开始顺序地获得位于左上块右侧的相邻块的帧内预测模式,然后可以获得位于左上块的左侧的相邻块的帧内预测模式。因此,在图23所示的示例(b)中,按照a0、a1、a2、a3、a4、b0、b1的顺序来获得顶部相邻块的帧内预测模式,其中可以使用第一可用帧内预测模式来代替左侧相邻块的帧内预测模式(或帧内预测模式l)。
[0290]
对于另外的示例,在顶部相邻块的帧内预测模式不可用的情况下,可以使用左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式来代替顶部相邻块的帧内预测模式。例如,参照图23中所示的示例(a),可以使用块a0、a1、a2、a3、a4、b0和b1的帧内预测模式中的具有最高出现频率的帧内预测模式来代替顶部相邻块的帧内预测模式(或帧内预测模式a)。
[0291]
另外,在左侧相邻块的帧内预测模式不可用的情况下,可以使用顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式来代替左侧相邻块的帧内预测模式。例如,参照图23中所示的示例(b),可以使用块a0、a1、a2、a3、a4、b0和b1的帧内预测模式中的具有最高出现频率的帧内预测模式来代替左侧相邻块的帧内预测模式(或帧内预测模式l)。
[0292]
在生成了当前块的mpm候选的情况下,确定是否存在与当前块的帧内预测模式相同的mpm候选(s2020)。这里,可以由通过比特流用信号传送的信息(例如,'prev_intra_pred_flag')来指示是否存在与当前块的帧内预测模式相同的mpm候选。例如,prev_intra_pred_flag值为1指示存在与当前块的帧内预测模式相同的mpm候选,并且prev_intra_pred_flag值为0指示不存在与当前块的帧内预测模式相同的mpm候选。
[0293]
在确定了存在与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定与当前块的帧内预测模式相同的mpm候选的信息进行解码(s2030),并且基于该信息可以确定当前块的帧内预测模式。
[0294]
另一方面,在确定了不存在与当前块的帧内预测模式相同的mpm候选的情况下,从比特流解码剩余模式(s2040),并且可以基于经解码的剩余模式来确定当前块的帧内预测模式。剩余模式是被编码以指定当前块的帧内预测模式的信息,除了帧内预测模式中的mpm候选之外。解码器可以通过将剩余模式与mpm候选进行比较来确定当前块的帧内预测模式。
[0295]
在使用扩展帧内预测模式的情况下,随着帧内预测模式的数目增加,用于对剩余模式进行编码的比特数也可能增加。例如,假设使用67个帧内预测模式并且使用6个mpm候选,则剩余模式应该足够长以表示61个帧内预测模式。例如,在假设剩余模式被编码为固定长度的情况下,剩余模式应该具有至少6比特的长度以表示61个帧内预测模式。
[0296]
因此,为了使剩余预测模式的信令最小化并且更有效地对当前块的帧内预测模式进行编码/解码,可以使用多个mpm候选组来得到当前块的帧内预测模式。
[0297]
在下文中,将详细描述用于使用多个mpm候选组来得到当前块的帧内预测模式的方法。
[0298]
图24示出了使用2个mpm候选组来得到当前块的帧内预测模式的示例,图25示出了使用3个mpm候选组来得到当前块的帧内预测模式的示例。
[0299]
参照图24,解码器可以基于比特流来确定第一mpm候选组中是否包括与当前块的
帧内预测模式相同的mpm候选(s2410)。这里,可以由通过比特流用信号传送的第一信息(例如,'prev_intra_pred_flag')来指示第一mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选。
[0300]
在确定了第一mpm候选组中包括与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定第一mpm候选组中的与当前块的帧内预测模式相同的mpm候选的信息(例如,'mpm_idx')进行解码(s2420),并且可以基于该信息来确定当前块的帧内预测模式。
[0301]
另一方面,在确定了第一mpm候选组中不包括与当前块的帧内预测模式相同的mpm候选的情况下,可以确定第二mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选(s2430)。这里,可以由通过比特流用信号传送的第二信息(例如,'2nd_prev_intra_pred_flag')来指示第二mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选。
[0302]
在确定了第二mpm候选组中包括与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定第二mpm候选组中的与当前块的帧内预测模式相同的mpm候选的信息(例如,'2nd_mpm_idx')进行解码(s2440),并且可以基于该信息来确定当前块的帧内预测模式。
[0303]
另一方面,在确定了第一mpm候选组和第二mpm候选组都不包括与当前块的帧内预测模式相同的mpm候选的情况下,从比特流解码剩余模式(s2450),并且可以基于经解码的剩余模式来确定当前块的帧内预测模式。
[0304]
这里,第一mpm候选组可以包括基于当前块的相邻块的帧内预测模式生成的mpm候选。例如,第一mpm候选组可以包括通过表3的示例生成的6个mpm候选。
[0305]
第二mpm候选组可以包括未包括在第一mpm候选组中的mpm候选。例如,在表3中,在l和a相同并且l和a是方向模式的情况下,第一mpm候选组可以包括与平面、dc、垂直、水平、2和18相对应的mpm候选。因此,第二mpm候选组可以包括除平面、dc、垂直、水平、2和18之外的mpm候选。
[0306]
第二mpm候选组可以包括预设帧内预测模式或者基于包括在第一mpm候选组中的mpm候选生成的mpm候选。例如,第二mpm候选组可以包括:具有与包括在第一mpm候选组中的方向性mpm候选类似的方向的mpm候选。
[0307]
对于另外的示例,第一mpm候选组和第二mpm候选组中的一个是基于当前块的左侧相邻块的帧内预测模式而生成的,并且另一个是基于当前块的顶部相邻块的帧内预测模式而生成的。
[0308]
包括在第二mpm候选组中的mpm候选的数目可以等于或大于包括在第一mpm候选组中的mpm候选的数目。例如,第一mpm候选组可以包括最多6个mpm候选,而第二mpm候选组可以包括最多16个mpm候选。
[0309]
在第一mpm候选组中包括最多6个mpm候选的情况下,用于标识包括在第一mpm候选组中的mpm候选的信息(例如,'mpm_idx')可以被编码为3比特的固定长度。另一方面,在第二mpm候选组中包括最多16个mpm候选的情况下,用于标识包括在第二mpm候选组中的mpm候选的信息(例如,'2nd_mpm_idx')可以被编码为4比特的固定长度。在第一mpm候选组中包括6个mpm候选并且第二mpm候选组中包括16个mpm候选的情况下,剩余模式被编码为6比特的固定长度以标识45个帧内预测模式。
[0310]
参照图25,解码器可以基于比特流来确定第一mpm候选组中是否包括与当前块的
帧内预测模式相同的mpm候选(s2510)。这里,可以由通过比特流用信号传送的第一信息(例如,'prev_intra_pred_flag')来指示第一mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选。
[0311]
在确定了第一mpm候选组中包括与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定第一mpm候选组中的与当前块的帧内预测模式相同的mpm候选的信息(例如,'mpm_idx')进行解码(s2520),并且可以基于该信息来确定当前块的帧内预测模式。
[0312]
另一方面,在确定了第一mpm候选组中不包括与当前块的帧内预测模式相同的mpm候选的情况下,可以确定第二mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选(s2530)。这里,可以由通过比特流用信号传送的第二信息(例如,'2nd_prev_intra_pred_flag')来指示第二mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选。
[0313]
在确定了第二mpm候选组中包括与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定第二mpm候选组中的与当前块的帧内预测模式相同的mpm候选的信息(例如,'2nd_mpm_idx')进行解码(s2540),并且可以基于该信息来确定当前块的帧内预测模式。
[0314]
另一方面,在确定了第二mpm候选组中不包括与当前块的帧内预测模式相同的mpm候选的情况下,可以确定第三mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选(s2550)。这里,可以由通过比特流用信号传送的第三信息(例如,'3rd_prev_intra_pred_flag')来指示第三mpm候选组中是否包括与当前块的帧内预测模式相同的mpm候选。
[0315]
在确定了第三mpm候选组中包括与当前块的帧内预测模式相同的mpm候选的情况下,可以对指定第三mpm候选组中的与当前块的帧内预测模式相同的mpm候选的信息(例如,'3rd_mpm_idx')进行解码(s2560),并且可以基于该信息来确定当前块的帧内预测模式。
[0316]
另一方面,在确定了第一mpm候选组、第二mpm候选组和第三mpm候选组均不包括与当前块的帧内预测模式相同的mpm候选的情况下,从比特流解码剩余模式(s2570),并且可以基于经解码的剩余模式来确定当前块的帧内预测模式。
[0317]
第三mpm候选组可以包括未包括在第一mpm候选组或第二mpm候选组中的mpm候选。可以基于预设帧内预测模式、包括在第一mpm候选组中的mpm候选或包括在第二mpm候选组中的mpm候选来生成包括在第三mpm候选组中的mpm候选。例如,第三mpm候选组可以包括这样的mpm候选,该mpm候选具有与包括在第一mpm候选组或第一mpm候选组中的方向性mpm候选类似的方向。
[0318]
包括在第三mpm候选组中的mpm候选的数目可以等于或大于包括在第一mpm候选组中的mpm候选的数目。另外,包括在第三mpm候选组中的mpm候选的数目可以等于或大于包括在第二mpm候选组中的mpm候选的数目。例如,第一mpm候选组可以包括6个mpm候选,而第二mpm候选组和第三mpm候选组可以包括16个mpm候选。
[0319]
在第三mpm候选组包括16个mpm候选的情况下,用于标识包括在第三mpm候选组中的mpm候选的信息(例如,'3rd_mpm_idx')可以被编码为4比特的固定长度。在第一mpm候选组包括6个mpm候选并且第二mpm候选组和第三mpm候选组中的每一个包括16个mpm候选的情况下,可以将剩余模式编码为5比特的固定长度以标识29个帧内预测模式。
[0320]
参照图24和图25,示出了分别使用2个mpm候选组和3个mpm候选组获得当前块的帧
内预测模式。用于得到当前块的帧内预测模式的mpm候选组的数目不限于所描述的示例。另外,包括在第一mpm候选组至第三mpm候选组中的mpm候选的数目不限于所描述的示例。
[0321]
可以基于以序列、图片、片、要编码/解码的单元为单位用信号传送的信息来确定是否使用多个mpm候选组。这里,该信息可以是指示mpm候选的最大数目的信息或指示是否使用多个mpm候选组的标志信息。
[0322]
在确定了当前块的帧内预测模式的情况下,可以使用与当前块相邻的参考样本来执行帧内预测。例如,可以通过对参考样本求平均来生成当前块的预测样本,或者可以通过考虑帧内预测模式的方向性在特定方向上复制参考样本来生成当前块的预测样本。如上面参照图16的示例中所述,位于当前块的边界处的p(

1,

1)、p(

1,y)(0<=y<=2n

1)、p(x,

1)(0<=x<=2n

1)可以用作参考样本。
[0323]
在确定参考样本不可用的情况下,可以用可用的参考样本替换不可用的参考样本。这里,在以下情况下参考样本可以被确定为不可用:参考样本的位置在图片外部、参考样本存在于与当前块不同的片中或者参考样本包括在通过帧间预测编码的块中。这里,当执行对当前块的帧内预测时,可以基于指示是否使用包括在通过帧间预测编码的块中的参考样本的信息来确定包括在通过帧间预测编码的块中的参考样本是否不可用。这里,信息可以是1比特标志(例如,

constrained_intra_prediction_flag

),然而不限于此。例如,在

constrained_intra_prediction_flag

的值为1的情况下,包括在通过帧间预测编码的块中的参考样本可以被确定为不可用。
[0324]
在图16所示的示例中,在确定位于最左下的参考样本(例如,p(

1,2n

1))不可用的情况下,位于最左下的参考样本可以用以预定顺序扫描的第一可用参考样本来替换。这里,可以从与最左下参考样本相邻的参考样本开始顺序地执行扫描顺序。例如,在图16所示的示例中,在p(

1,2n

1)不可用的情况下,可以按照p(

1,2n

2)至p(

1,

1)、p(

1)至p(2n

1,

1)的顺序执行扫描。p(

1,2n

1)可以用作为扫描结果找到的第一可用参考样本来替换。
[0325]
在除了位于最左下的参考样本之外的左侧参考样本不可用的情况下,左侧参考样本可以用与左侧参考样本的底部相邻的参考样本替换。例如,p(

1,2n

1)与p(

1,

1)之间的不可用参考样本p(

1,
y
)可以用参考样本p(

1,y+1)替换。
[0326]
在顶部参考样本不可用的情况下,顶部参考样本可以用与顶部参考样本的左侧相邻的参考样本替换。例如,p(0,

1)与p(2n

1,

1)之间的不可用的参考样本p(x,

1)可以用参考样本p(x

1,

1)替换。
[0327]
与当前块相邻的参考样本集可以被称为“参考线(reference line)”(或“帧内参考线”或“参考样本线”)。例如,在图16所示的示例中,“参考线”表示包括p(

1,2n

1)到p(

1,

1)、p(0,

1)到p(2n

2,

1)的参考样本集。可以基于包括在参考线中的参考样本来执行对当前块的帧内预测。可以基于当前块的帧内预测模式,使用包括在参考线中的参考样本来执行对当前块的帧内预测。例如,在当前块的帧内预测模式是dc模式的情况下,可以使用包括在参考线中的参考样本的平均和加权预测来生成预测信号。例如,在当前块的帧内预测模式是dc模式的情况下,可以根据等式9来获得当前块的预测样本。
[0328]
[等式9]
[0329]
p(0,0)=(p(

1,0)+p(0,

1)+2*dcval)>>2
[0330]
p(x,0)=(p(x,

1)+3*dcval)>>2
[0331]
p(0,y)=(p(

1,y)+3*dcval)>>2
[0332]
在等式9中,可以基于包括在参考线中的参考样本中的除了p(

1,

1)之外的样本的平均值来生成dcval。
[0333]
平面模式在没有强边缘的平滑区域中提供有效的预测效率,并且有效地改善块边界的不连续性或块边界的图像质量劣化。在当前块的帧内预测模式是平面模式的情况下,可以使用与当前块的右上角相邻的参考样本和具有与水平方向临时预测样本相同的y坐标的参考样本来获得当前块的水平方向临时预测样本,并且可以使用与当前块的左下角相邻的参考样本和具有与垂直方向临时预测样本相同的x坐标的参考样本来获得当前块的垂直方向临时预测样本。例如,可以通过根据等式10来获得当前块的水平方向临时预测样本和垂直方向临时预测样本。
[0334]
[等式10]
[0335]
p
h
(x,y)=(n
‑1‑
x)*p(

1,y)+(x+1)*p(n,

1)
[0336]
pv(x,y)=(n
‑1‑
y)*p(x,

1)+(y+1)*p(

1,n)
[0337]
可以通过以下方式来生成当前块的预测样本:对水平方向临时预测样本和垂直方向临时预测样本进行求和,然后将求和结果移位根据当前块的大小确定的值。例如,可以根据等式11来获得当前块的预测样本。
[0338]
[等式11]
[0339]
p(x,y)=(p
h
(x,y)+pv(x,y)+n)>>(log2(n)+1)
[0340]
可以使用多条参考线来执行对当前块的帧内预测。假设当前块具有w
×
h大小,第m条参考线可以包括p(

m,

m)、位于与p(

m,

m)相同的行中的参考样本(例如,从p(

m+1,

m)到p(w+h+2(m

1),

m)的参考样本或从p(

m+1,

m)到p(2w+2(m

1),

m)的参考样本)和位于与p(

m,

m)相同的列中的参考样本(例如,从p(

m,

m+1)到p(

m,w+h+2(m

1)的参考样本或者从p(

m,

m+1)到p(

m,2h+2(m

1))的参考样本)。
[0341]
例如,图26例示了多条参考样本线。如在图26中所示的示例中,在与当前块的边界相邻的第一参考线被称为“参考线0”的情况下,第m参考线可以被设置为与第(m

1)参考线相邻。
[0342]
可以通过多条参考线中的至少一条参考线来执行对当前块的帧内预测。如上所述的使用多条参考线执行帧内预测的方法可以被称为“使用扩展参考样本的帧内预测方法”或“扩展帧内预测方法”。
[0343]
可以基于通过比特流用信号传送的信息来确定是否使用扩展参考线来执行帧内预测。这里,信息可以是1比特标志,然而不限于此。可以以编码树单元、编码单元或预测单元为单位用信号传送或者可以以图片或片为单位用信号传送关于是否使用扩展参考线执行帧内预测的信息。
[0344]
可以基于当前块的大小、形状、深度或帧内预测模式中的至少一个来确定是否使用扩展参考线来执行帧内预测。
[0345]
在确定使用扩展参考线执行帧内预测的情况下,解码器可以确定参考线的数目。这里,参考线的数目可以具有固定值,并且可以根据当前块的大小、形状或帧内预测模式来自适应地确定参考线的数目。例如,在当前块的帧内预测模式是无方向模式的情况下,使用一条参考线来执行对当前块的帧内预测。在当前块的帧内预测模式是方向模式的情况下,
可以使用多条参考线来执行对当前块的帧内预测。
[0346]
对于另外的示例,可以通过以要解码的序列、图片、片或单元为单位用信号传送的信息来确定参考线的数目。例如,可以通过序列头或片头用信号传送指示序列或片中可用的参考线的数目的语法元素

max_intra_line_idx’。
[0347]
在下文中,将详细描述使用扩展参考线执行帧内预测的方法。
[0348]
图27是示出根据本发明的使用扩展参考线执行帧内预测的方法的流程图。
[0349]
首先,解码器可以生成多条参考线(s2710)。可以基于包括在比当前块更早解码的块中的重构样本来生成每条参考线中所包括的参考样本。在不可用的参考样本包括在参考线中的情况下,不可用参考样本可以被替换为同一参考线中的可用参考样本或另一参考线中的可用参考样本的值。
[0350]
在当前块的帧内预测模式是方向模式的情况下,解码器可以考虑帧内预测模式的定向性来生成参考线。考虑帧内预测模式的方向性,在第m条参考线中可以比在第(m

1)条参考线中包括数目更多的参考样本。也就是说,远离当前块的参考线可以比接近当前块的参考线包括数目更多的参考样本。
[0351]
这里,可以根据当前块的大小可变地确定与第(m

1)条参考线相比进一步包括在第m条参考线中的参考样本的数目。
[0352]
例如,在当前块具有4
×
4大小的情况下,第m条参考线还可以比第(m

1)条参考线多包括四个(具体地,水平方向上2个,垂直方向上2个)参考样本。另外,在当前块具有8
×
8大小的情况下,第m条参考线还可以比第(m

1)条参考线多包括八个(具体地,水平方向上4个,垂直方向上4个)参考样本。
[0353]
参照图26,由于当前块的大小是4
×
4,因此例示了第一参考样本包括总共9个参考样本,并且第二参考样本包括总共13(=9+2
×
2)个参考样本。
[0354]
在当前块是非正方形的情况下,可以根据当前块的水平长度和垂直长度来确定参考线中包括的参考样本的数目。
[0355]
例如,图28是例示非正方形块的多条参考线的图。通过比较图26和图28进行描述,随着当前块的宽度减小至1/2,包括在参考线0中的除了左上参考样本之外的顶部参考样本的数目从8减少为4。
[0356]
也就是说,一起考虑图26和图28,在假设当前块具有w
×
h大小的情况下,第m条参考线可以包括总共2{(w+h)+2(m

1)}+1个参考样本,包括:w+h+2(m

1)个顶部参考样本(或2w+2(m

1)个顶部参考样本)(即水平方向参考样本)、w+h+2(m

1)个左侧参考样本(或2h+2(m

1)个左侧参考样本)(即垂直方向参考样本)以及左上参考样本。
[0357]
解码器可以基于比特流对指定多条参考线之一的索引信息进行解码(s2820)。例如,在如图26所示的示例中在4条参考线可用的情况下,索引信息可以指定4条参考线中的任何一个。
[0358]
可以基于当前块的大小、当前块的类型、当前块的帧内预测模式、相邻块中的索引信息或者当前块的帧内预测模式与预定帧内预测模式之间的差异等来自适应地指定用于对当前块执行帧内预测的参考线。
[0359]
在指定了多条参考线中的任何一条参考线的情况下,解码器可以使用所指定的参考线对当前块执行帧内预测(s2730)。在当前块的帧内预测模式是方向模式的情况下,可以
通过借助方向模式指定的参考样本来获得当前块的预测样本。在当前块的帧内预测模式指向参考样本之间的情况下,可以基于通过帧内预测模式指定的第一参考样本和第二参考样本的加权和(加权预测)来生成当前块的预测样本。
[0360]
在上述示例中,例示了在生成多条参考线之后对指定多条参考线之一的索引信息进行解码。还可以在对指定多条参考线之一的索引信息进行解码之后,仅获得多条参考线中的由索引信息指定的参考线。
[0361]
在上述实施方式中,描述了使用多条参考线中的由索引信息指定的任何一条参考线来执行针对当前块的帧内预测。还可以使用多条参考线中的两条或更多条参考线来执行针对当前块的帧内预测。可以基于从比特流用信号传送的信息、当前块的大小、当前块的类型、当前块的帧内预测模式、当前块的帧内预测模式是否是无方向性的或者当前块的帧内预测模式与预定帧内预测模式之间的差异等来确定是否在对当前块执行帧内预测时使用两条或更多条参考线。
[0362]
可以由从比特流用信号传送的多个索引信息来指定两条或更多条参考线。例如,在两条参考线被设置为被使用的情况下,两条参考线中的任何一条可以由第一索引信息指定,而另一参考线可以由第二索引信息指定。
[0363]
对于另外的示例,可以将针对当前块的帧内预测设置成使用两条或更多条空间连续的参考线。在这种情况下,在由从比特流用信号传送的索引信息指定了两条或更多条参考线中的任何一条的情况下,可以考虑相对于所指定参考线的位置来指定剩余参考线。例如,在设置为使用两条参考线并且索引信息指示“参考线0”的情况下,可以基于参考线0和与参考线0相邻的参考线1来执行对当前块的帧内预测。
[0364]
在设置为使用多条参考线的情况下,可以基于包括在多条参考线中的参考样本的平均值、最大值、最小值或加权和来执行对当前块的帧内预测。
[0365]
例如,假设当前块的帧内预测模式是方向模式(即,角度模式),则可以基于第一参考样本和与第一参考样本相邻的第二参考样本来生成当前块的预测样本。这里,第一参考样本可以包括在多条参考线中的第一参考线中,并且第二参考样本可以包括在多条参考线中的第二参考线中。第一参考线和第二参考线可以彼此相邻地定位,然而不限于此。可以根据当前块的帧内预测模式的方向性来指定第一参考样本和第二参考样本。可以考虑第一参考样本和第二参考样本的加权和来生成当前块的预测样本,或者可以基于第一参考样本和第二参考样本的平均值来生成当前块的预测样本。
[0366]
可以通过以下方式来执行对当前块的帧内预测:基于多条参考线的一部分来执行第一帧内预测并且基于剩余参考线执行第二帧内预测。这里,在第一帧内预测中使用的帧内预测模式和在第二帧内预测中使用的帧内预测模式可以相同或不同。可以基于通过执行第一帧内预测生成的第一预测样本和通过执行第二帧内预测生成的第二预测样本来生成当前块的预测样本。
[0367]
主要关于解码处理描述了上述实施方式,可以以与所描述的顺序相同的顺序或以相反的顺序来执行编码处理。
[0368]
尽管已经基于一系列步骤或流程图描述了上述实施方式,但是它们不限制本发明的时序顺序,并且可以根据需要同时或以不同顺序执行。此外,构成上述实施方式中的框图的部件(例如,单元、模块等)中的每一个可以由硬件装置或软件以及多个部件来实现。或
者,可以通过单个硬件装置或软件来组合并实现多个部件。上述实施方式可以以程序指令的形式实现,所述程序指令可以通过各种计算机部件执行并记录在计算机可读记录介质中。计算机可读记录介质可以包括程序命令、数据文件、数据结构等之一或其组合。计算机可读介质的示例包括磁介质(诸如硬盘、软盘和磁带)、光学记录介质(诸如cd

rom和dvd)、磁光介质(诸如光磁软盘)、介质和专门配置成存储和执行程序指令的硬件装置(诸如rom、ram、闪存)等。硬件装置可以被配置成作为一个或更多个软件模块来进行操作,以用于执行根据本发明的过程,反之亦然。
[0369]
工业应用性
[0370]
本发明可以用于能够对视频进行编码/解码的电子装置。
[0371]
另外,本技术还可以配置如下:
[0372]
(1)一种用于解码视频的方法,所述方法包括:
[0373]
生成多个最可能模式(mpm)候选;
[0374]
确定在所述多个mpm候选中是否存在与当前块的帧内预测模式相同的mpm候选;
[0375]
基于所述确定的结果来获得所述当前块的帧内预测模式;以及
[0376]
基于所述当前块的帧内预测模式对所述当前块执行帧内预测,
[0377]
其中,所述多个mpm候选是基于与所述当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
[0378]
(2)根据(1)所述的方法,
[0379]
其中,生成所述多个mpm候选包括:
[0380]
生成第一mpm候选组;以及
[0381]
生成第二mpm候选组。
[0382]
(3)根据(2)所述的方法,
[0383]
其中,所述第二mpm候选组包括这样的mpm候选:该mpm候选具有与所述第一mpm候选组中包括的mpm候选类似的方向。
[0384]
(4)根据(2)所述的方法,
[0385]
其中,确定在所述多个mpm候选中是否存在与所述当前块的帧内预测模式相同的mpm候选包括:
[0386]
确定所述第一mpm候选组是否包括与所述当前块的帧内预测模式相同的mpm候选;以及
[0387]
在确定所述第一mpm候选组不包括与所述当前块的帧内预测模式相同的mpm候选的情况下,确定所述第二mpm候选组是否包括与所述当前块的帧内预测模式相同的mpm候选。
[0388]
(5)根据(1)所述的方法,
[0389]
其中,所述多个mpm候选包括:
[0390]
在与所述当前块相邻的多个顶部相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式,以及
[0391]
在与所述当前块相邻的多个左侧相邻块的帧内预测模式中的具有最高出现频率的帧内预测模式。
[0392]
(6)根据(1)所述的方法,
[0393]
其中,所述多个mpm候选包括:顶部相邻块的帧内预测模式以及相邻块的帧内预测模式中的最大帧内预测模式或最小帧内预测模式。
[0394]
(7)根据(1)所述的方法,
[0395]
其中,在确定在所述多个mpm候选中不存在与所述当前块的帧内预测模式相同的mpm候选的情况下,获得所述当前块的帧内预测模式包括:
[0396]
对剩余模式进行解码;以及
[0397]
基于所述剩余模式来确定所述当前块的帧内预测模式。
[0398]
(8)根据(7)所述的方法,
[0399]
其中,所述剩余模式被编码为固定长度。
[0400]
(9)根据(1)所述的方法,
[0401]
其中,对所述当前块执行帧内预测包括:
[0402]
在所述当前块的多条参考线中选择参考线;以及
[0403]
使用所选择的参考线来获得用于所述当前块的预测样本。
[0404]
(10)根据(9)所述的方法,
[0405]
其中,在所述多条参考线中,第n条参考线比第n

1条参考线包括数量更多的参考样本。
[0406]
(11)一种用于编码视频的方法,所述方法包括:
[0407]
生成多个最可能模式(mpm)候选;
[0408]
对关于在所述多个mpm候选中是否存在与当前块的帧内预测模式相同的mpm候选的信息进行编码;以及
[0409]
基于所述当前块的帧内预测模式对所述当前块执行帧内预测,
[0410]
其中,所述多个mpm候选是基于与所述当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
[0411]
(12)根据(11)所述的方法,
[0412]
其中,生成所述多个mpm候选包括:
[0413]
生成第一mpm候选组;以及
[0414]
生成第二mpm候选组。
[0415]
(13)根据(12)所述的方法,
[0416]
其中,所述第二mpm候选组包括这样的mpm候选:该mpm候选具有与所述第一mpm候选组中包括的mpm候选类似的方向。
[0417]
(14)一种用于解码视频的设备,所述设备包括:
[0418]
解码单元,用于对指示在多个最可能模式(mpm)候选中是否包括与当前块的帧内预测模式相同的mpm候选的信息进行解码;以及
[0419]
帧内预测单元,用于生成所述多个mpm候选,并且基于所述信息来获得所述当前块的帧内预测模式,
[0420]
其中,所述多个mpm候选是基于与所述当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
[0421]
(15)一种用于解码视频的设备,所述设备包括:
[0422]
帧内预测单元,用于生成多个最可能模式(mpm)候选,并且确定在所述多个mpm候
选中是否包括与当前块的帧内预测模式相同的mpm候选,以及
[0423]
编码单元,用于基于确定结果对信息进行编码,所述信息指示在所述多个mpm候选中是否包括与所述当前块的帧内预测模式相同的mpm候选,
[0424]
其中,所述多个mpm候选是基于与所述当前块相邻的多个相邻块的帧内预测模式的出现频率而生成的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1