用于处理视频信号的方法和装置转让专利

申请号 : CN201780041685.6

文献号 : CN109417641B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李培根

申请人 : 株式会社KT

摘要 :

根据本发明的用于对图像进行解码的方法可以包括以下步骤:基于第一预测模式来生成当前块的第一预测块;基于第二预测模式来生成当前块的第二预测块;以及基于第一预测块和第二预测块来生成当前块的最终预测块。

权利要求 :

1.一种用于对视频进行解码的方法,所述方法包括:获得当前块的L0运动向量,所述L0运动向量通过将L0运动向量差值与L0运动向量预测值相加来获得;

获得所述当前块的L1运动向量,所述L1运动向量通过将L1运动向量差值与L1运动向量预测值相加来获得;

通过使用所述L0运动向量和所述当前块的L0参考图片来生成所述当前块的L0预测块;

通过使用所述L1运动向量和所述当前块的L1参考图片来生成所述当前块的L1预测块;

基于经由比特流直接用信号通知的索引信息来确定第一权重和第二权重;以及通过将所述第一权重应用于所述L0预测块并且将所述第二权重应用于所述L1预测块来生成所述当前块的最终预测块,其中,所述索引信息指定多个加权预测参数候选之一,由所述索引信息指定的加权预测参数表示所述第一权重或所述第二权重之一;

其中,基于所述L0参考图片和所述L1参考图片的时间方向来确定所述索引信息的最大位长,所述时间方向表示参考图片的输出顺序在包括所述当前块的当前图片前还是在所述当前图片后,以及

其中,所述索引信息的所述最大位长在所述L0参考图片和所述L1参考图片两者在当前图片前或在当前图片后的情况与所述L0参考图片和所述L1参考图片之一在当前图片前而另一个在当前图片后的情况之间不同。

2.根据权利要求1所述的方法,其中,由所述索引信息指定的所述加权预测参数与所述第二权重相同,并且所述第一权重通过常数值减去由所述索引信息指定的所述加权预测参数来得到。

3.根据权利要求1所述的方法,其中,通过截断一元二值化对所述索引信息进行二值化。

4.一种用于对视频进行编码的方法,所述方法包括:从当前块的L0参考图片来生成所述当前块的L0预测块,其中,所述L0预测块对应于所述当前块的L0运动向量,以及其中,指定所述L0运动向量与L0运动向量预测值之间的差的L0运动向量差被编码至比特流中;

从所述当前块的L1参考图片来生成所述当前块的L1预测块,其中,所述L1预测块对应于所述当前块的L1运动向量,以及其中,指定所述L1运动向量与L1运动向量预测值之间的差的L1运动向量差被编码至比特流中;以及

通过将第一权重应用于所述L0预测块并且将第二权重应用于所述L1预测块来生成所述当前块的最终预测块,

其中,指定多个加权预测参数候选中的加权预测参数的索引信息被直接编码至所述比特流中,所述加权预测参数表示所述第一权重或所述第二权重,以及其中,基于所述L0参考图片和所述L1参考图片的时间方向来确定所述索引信息的最大位长,所述时间方向表示参考图片的输出顺序在包括所述当前块的当前图片前还是在所述当前图片后,以及

其中,所述索引信息的所述最大位长在所述L0参考图片和所述L1参考图片两者在当前图片前或在当前图片后的情况与所述L0参考图片和所述L1参考图片之一在当前图片前而另一个在当前图片后的情况之间不同。

说明书 :

用于处理视频信号的方法和装置

技术领域

[0001] 本发明涉及用于处理视频信号的方法和装置。

背景技术

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

发明内容

[0005] 技术问题
[0006] 本发明的目的旨在提供在对视频信号进行编码/解码时用于有效地预测编码/解码目标块的方法和装置。
[0007] 本发明的目的旨在提供在对视频信号进行编码/解码时对多个预测模式进行组合的预测方法和使用该预测方法的装置。
[0008] 本发明的目的旨在提供在对视频信号进行编码/解码时用于以子块为单位执行预测的方法和装置。
[0009] 通过本发明要实现的技术目的不限于上面提到的技术问题。并且本领域技术人员将从下面的描述中清楚地理解没有提到的其他技术问题。
[0010] 技术方案
[0011] 根据本发明的用于对视频信号进行解码的方法和装置可以基于第一预测模式来生成当前块的第一预测块,基于第二预测模式来生成当前块的第二预测块,并且基于第一
预测块和第二预测块来生成当前块的最终预测块。
[0012] 根据本发明的用于对视频信号进行编码的方法和装置可以基于第一预测模式来生成当前块的第一预测块,基于第二预测模式来生成当前块的第二预测块,并且基于第一
预测块和第二预测块来生成当前块的最终预测块。
[0013] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,第一预测模式可以与第二预测模式不同。
[0014] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,第一预测模式可以是帧内预测模式,而第二预测模式可以是帧间预测模式。
[0015] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,第一预测模式可以是与第二预测模式不同的帧间预测模式,并且帧间预测模式可以包括跳过模式、合并
模式、AMVP(高级运动向量预测)模式或当前图片参考模式中的至少一个。
[0016] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,可以基于第一预测块与第二预测块之间的加权和运算来获得最终预测块。
[0017] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,可以基于当前块的加权预测参数来确定被应用于第一预测块和第二预测块的权重。
[0018] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,可以基于当前块的形状或尺寸来确定是否要使用对第一预测模式和第二预测模式进行组合的预测方法。
[0019] 在根据本发明的用于对视频信号进行编码/解码的方法和装置中,当前块可以包括第一子块和第二子块,第一子块的最终预测块可以基于第一预测块来生成,而第二子块
的最终预测块可以基于第一预测块和第二预测块来生成。
[0020] 上面针对本发明简要概述的特征仅是下面的本发明的详细描述的说明性方面,而且不限制本发明的范围。
[0021] 有益效果
[0022] 根据本发明,可以有效地预测编码/解码目标块。
[0023] 根据本发明,可以通过对多个预测模式进行组合来预测编码/解码目标块。
[0024] 根据本发明,可以以子块为单位确定预测方法,并且可以以子块为单位执行预测。
[0025] 能够通过本发明获得的效果不限于上面提到的效果,并且本领域技术人员可以从下面的描述中清楚地理解没有提到的其他效果。

附图说明

[0026] 图1是示出了根据本发明的实施方式的用于对视频进行编码的设备的框图。
[0027] 图2是示出了根据本发明的实施方式的用于对视频进行解码的设备的框图。
[0028] 图3是示出了根据本发明的实施方式的基于树结构对编码块进行分级划分的示例的图。
[0029] 图4是示出了根据本发明的实施方式的允许基于二叉树的划分的划分类型的图。
[0030] 图5是示出了根据本发明的实施方式的仅允许预定类型的基于二叉树的划分的示例的图。
[0031] 图6是根据应用了本发明的实施方式的用于说明对与二叉树划分的可允许数目有关的信息进行编码/解码的示例的图。
[0032] 图7是示出了根据本发明的实施方式的适用于编码块的划分模式的图。
[0033] 图8是示出了根据应用了本发明的实施方式的获得残差样本的过程的流程图。
[0034] 图9是示出了根据应用了本发明的实施方式的帧间预测方法的流程图。
[0035] 图10是示出了当将合并模式应用于当前块时得到当前块的运动信息的过程的图。
[0036] 图11是示出了当将AMVP模式应用于当前块时得到当前块的运动信息的过程的图。
[0037] 图12是根据本发明的实施方式的双方向加权预测方法的流程图。
[0038] 图13是用于说明双方向加权预测的原理的图。
[0039] 图14是示出了相邻块之间的扫描顺序的图。
[0040] 图15是示出了根据本发明的组合预测方法的流程图。
[0041] 图16和图17是示出了基于通过不同预测模式获得的多个预测块的加权和来生成当前块的预测块的示例的图。
[0042] 图18是示出了以子块为单位执行预测的示例的图。
[0043] 图19是根据本发明的光照补偿预测的方法的流程图。
[0044] 图20是基于光照补偿的双方向加权预测方法的流程图。
[0045] 图21是示出了使用应用了光照补偿的预测块来执行双方向加权预测的示例的图。

具体实施方式

[0046] 可以对本发明进行各种修改,并且存在本发明的各种实施方式,现在将参照附图提供实施方式的示例,并且详细描述这些示例。然而,本发明不限于此,并且示例性实施方
式可以被解释为包括本发明的技术构思和技术范围内的全部修改、等同物或替代方案。在
所描述的附图中,相似的附图标记指代相似的元件。
[0047] 说明书中使用的术语“第一”、“第二”等可以用于描述各种部件,但是这些部件不被解释为限制于这些术语。这些术语仅用于区分一个部件与其他部件。例如,在不偏离本发
明的范围的情况下,“第一”部件可以被称为“第二”部件,并且“第二”部件也可以被类似地
称为“第一”部件。术语“和/或”包括多个项或者多个术语中的任意一个术语的组合。
[0048] 应当理解的是,在本说明书中,当元件被简称为“连接至”或“耦接至”另一元件而不是“直接连接至”或“直接耦接至”另一元件时,该元件可以是“直接连接至”或“直接耦接
至”另一个元件,或者该元件可以被连接至或耦接至另一元件,并且存在其他元件介于它们
之间。相反地,应该理解的是,当元件被称为“直接耦接”或“直接连接”至另一元件时,不存
在中间元件。
[0049] 本说明书中使用的术语仅用于描述特定实施方式,而并不旨在限制本发明。以单数形式使用的表述包含复数形式的表述,除非该表述在上下文中有明显不同的含义。在本
说明书中,应当理解的是,诸如“包括”、“具有”等术语旨在指示本说明书中公开的特征、数
字、步骤、动作、元件、部件或其组合的存在,并且不旨在排除可以存在或可以添加一个或更
多个其他特征、数字、步骤、动作、元件、部件或其组合的可能性。
[0050] 在下文中,将参照附图详细描述本发明的优选实施方式。在下文中,附图中的相同组成元件用相同的附图标记来表示,并且将省略对相同元件的重复描述。
[0051] 图1是示出了根据本发明的实施方式的用于对视频进行编码的设备的框图。
[0052] 参照图1,用于对视频进行编码的设备100可以包括:图片划分模块110、预测模块120和125、变换模块130、量化模块135、重排模块160、熵编码模块165、逆量化模块140、逆变
换模块145、滤波器模块150和存储器155。
[0053] 图1中所示的组成部分被独立地示出,以表示用于对视频进行编码的设备中彼此不同的特征功能。因此,并不意味着每个组成部分是由分开的硬件或软件的组成单元组成
的。换句话说,为了方便起见,每个组成部分包括列举的组成部分中的每个。因此,每个组成
部分中的至少两个组成部分可以被组合以形成一个组成部分,或者一个组成部分可以被分
成多个组成部分以执行每个功能。在不偏离本发明的本质的情况下,组合每个组成部分的
实施方式和分割一个组成部分的实施方式也包括在本发明的范围内。
[0054] 此外,组成部分中的一些可以不是执行本发明的基本功能的不可缺少的组成部分,而是仅用于改善本发明的性能的可选组成部分。可以通过排除用于改善性能的组成部
分之外仅包括用于实现本发明的实质的不可缺少的组成部分来实现本发明。排除仅用于改
善性能的可选组成部分之外仅包括不可缺少的组成部分的结构也包括在本发明的范围内。
[0055] 图片划分模块110可以将输入图片划分成一个或更多个处理单元。在此,处理单元可以是预测单元(PU)、变换单元(TU)或编码单元(CU)。图片划分模块110可以将一个图片划
分成多个编码单元、预测单元和变换单元的组合,并且可以通过使用预定准则(例如,成本
函数)选择编码单元、预测单元和变换单元的一个组合来对图片进行编码。
[0056] 例如,一个图片可以被划分成多个编码单元。可以使用递归树结构如四叉树结构将图片划分成编码单元。在一个图片或最大编码单元作为根的情况下被划分成其他编码单
元的编码单元可以以子节点与所划分的编码单元的数目对应的方式进行划分。按照预定限
制不能再划分的编码单元用作叶节点。也就是说,当假设对于一个编码单元仅正方形划分
可行时,一个编码单元可以最多被划分成四个其他编码单元。
[0057] 在下文中,在本发明的实施方式中,编码单元可以意指执行编码的单元或者执行解码的单元。
[0058] 预测单元可以是被划分成在单个编码单元中具有相同尺寸的正方形形状或矩形形状的划分中的一个,或者预测单元可以是被划分成在单个编码单元中具有不同的形状/
尺寸的划分中的一个。
[0059] 当基于编码单元生成要进行帧内预测的预测单元并且编码单元不是最小编码单元时,可以在不将编码单元划分成多个预测单元N×N的情况下执行帧内预测。
[0060] 预测模块120和125可以包括执行帧间预测的帧间预测模块120和执行帧内预测的帧内预测模块125。可以确定对于预测单元是执行帧间预测还是执行帧内预测,并且可以确
定根据每个预测方法的详细信息(例如,帧内预测模式、运动向量、参考图片等)。在此,要进
行预测的处理单元可以不同于对其确定了预测方法和详细内容的处理单元。例如,可以由
预测单元确定预测方法、预测模式等,并且可以由变换单元执行预测。所生成的预测块与原
始块之间的残差值(残差块)可以被输入至变换模块130。此外,用于预测的预测模式信息、
运动向量信息等可以与残差值一起由熵编码模块165进行编码,并且可以被传送至用于对
视频进行解码的设备。当使用特定编码模式时,可以通过按原样对原始块进行编码来传送
至用于对视频进行解码的设备,而不通过预测模块120和125生成预测块。
[0061] 帧间预测模块120可以基于当前图片的先前图片或后续图片中的至少一个的信息来预测预测单元,或者在一些情况下,可以基于当前图片中的一些编码区域的信息来预测
预测单元。帧间预测模块120可以包括参考图片插值模块、运动预测模块和运动补偿模块。
[0062] 参考图片插值模块可以从存储器155接收参考图片信息,并且可以根据参考图片来生成整像素或小于整像素的像素信息。在亮度像素的情况下,可以使用具有不同滤波器
系数的基于DCT的8抽头插值滤波器以1/4像素为单位生成整像素或小于整像素的像素信
息。在色度信号的情况下,可以使用具有不同滤波器系数的基于DCT的4抽头插值滤波器以
1/8像素为单位生成整像素或小于整像素的像素信息。
[0063] 运动预测模块可以基于由参考图片插值模块进行插值的参考图片来执行运动预测。作为用于计算运动向量的方法,可以使用诸如基于全搜索的块匹配算法(FBMA)、三步搜
索(TSS)和新三步搜索算法(NTS)等的各种方法。基于插值像素,运动向量可以具有以1/2像
素或1/4像素为单位的运动向量值。运动预测模块可以通过改变运动预测方法来预测当前
预测单元。作为运动预测方法,可以使用诸如跳过方法、合并方法、AMVP(高级运动向量预
测)方法、帧内块复制方法等的各种方法。
[0064] 帧内预测模块125可以基于与作为当前图片中的像素信息的当前块相邻的参考像素信息来生成预测单元。在当前预测单元的相邻块是要进行帧间预测的块并且因此参考像
素是要进行帧间预测的像素时,可以使用要进行帧内预测的相邻块的参考像素信息来代替
包括在要进行帧间预测的块中的参考像素。也就是说,当参考像素不可用时,可以使用可用
参考像素中的至少一个参考像素来代替不可用的参考像素信息。
[0065] 帧内预测中的预测模式可以包括根据预测方向使用参考像素信息的方向预测模式和在执行预测时不使用方向信息的无方向性预测模式。用于预测亮度信息的模式可以与
用于预测色度信息的模式不同,并且为了预测色度信息,可以利用用于预测亮度信息的帧
内预测模式信息或者可以利用预测的亮度信号信息。
[0066] 在执行帧内预测时,当预测单元的尺寸与变换单元的尺寸相同时,可以基于位于该预测单元的左侧、左上侧和上侧的像素对预测单元执行帧内预测。然而,在执行帧内预测
时,当预测单元的尺寸与变换单元的尺寸不同时,可以使用基于变换单元的参考像素来执
行帧内预测。此外,可以使用仅针对最小编码单元使用N×N划分的帧内预测。
[0067] 在帧内预测方法中,可以在根据预测模式将AIS(自适应帧内平滑)滤波器应用于参考像素之后生成预测块。应用于参考像素的AIS滤波器的类型可以不同。为了执行帧内预
测方法,可以根据与当前预测单元相邻的预测单元的帧内预测模式来预测当前预测单元的
帧内预测模式。在通过使用根据相邻预测单元预测到的模式信息来预测当前预测单元的预
测模式的过程中,在当前预测单元的帧内预测模式与相邻预测单元的帧内预测模式相同
时,可以使用预定的标记信息来传送指示当前预测单元的预测模式与相邻预测单元的预测
模式彼此相同的信息。在当前预测单元的预测模式与相邻预测单元的预测模式不同时,可
以执行熵编码,以对当前块的预测模式信息进行编码。
[0068] 此外,可以基于由预测模块120和125生成的预测单元来生成包括关于残差值的信息的残差块,残差值是要进行预测的预测单元与预测单元的原始块之间的差。可以将所生
成的残差块输入至变换模块130。
[0069] 变换模块130可以通过使用变换方法(例如,离散余弦变换(DCT)、离散正弦变换(DST)和KLT)来对包括关于原始块与由预测模块120和125生成的预测单元之间的残差值的
信息的残差块进行变换。可以基于用于生成残差块的预测单元的帧内预测模式信息来确定
是应用DCT、DST还是KLT来对残差块进行变换。
[0070] 量化模块135可以对由变换模块130变换到频域的值进行量化。量化系数可以根据图片的块或重要性而变化。可以将由量化模块135计算的值提供至逆量化模块140和重排模
块160。
[0071] 重排模块160可以对经量化的残差值的系数进行重排。
[0072] 重排模块160可以通过系数扫描方法将二维块形式的系数变为一维向量形式的系数。例如,重排模块160可以使用之字形扫描方法从DC系数扫描至高频域的系数,以将系数
变为一维向量形式。根据变换单元的尺寸和帧内预测模式,可以使用沿列方向扫描二维块
形式的系数的垂直方向扫描或沿行方向扫描二维块形式的系数的水平方向扫描来代替之
字形扫描。也就是说,可以根据变换单元的尺寸和帧内预测模式来确定使用之字形扫描、垂
直方向扫描和水平方向扫描中的哪种扫描方法。
[0073] 熵编码模块165可以基于由重排模块160计算的值来执行熵编码。熵编码可以使用各种编码方法,例如,指数哥伦布(Golomb)编码、上下文自适应变长编码(CAVLC)和上下文
自适应二进制算术编码(CABAC)。
[0074] 熵编码模块165可以对来自重排模块160以及预测模块120和125的诸如编码单元的残差值系数信息和块类型信息、预测模式信息、划分单元信息、预测单元信息、变换单元
信息、运动向量信息、参考帧信息、块插值信息、滤波信息等的各种信息进行编码。
[0075] 熵编码模块165可以对从重排模块160输入的编码单元的系数进行熵编码。
[0076] 逆量化模块140可以对由量化模块135量化的值进行逆量化,并且逆变换模块145可以对由变换模块130变换的值进行逆变换。可以将由逆量化模块140和逆变换模块145生
成的残差值与由预测模块120和125的运动估计模块、运动补偿模块和帧内预测模块预测的
预测单元进行组合,使得可以生成重构块。
[0077] 滤波器模块150可以包括去块滤波器、偏移校正单元和自适应环路滤波器(ALF)中的至少一个。
[0078] 去块滤波器可以去除由于重构图片中的块之间的边界而出现的块失真。为了确定是否执行去块,包括在块的若干行或若干列中的像素可以是确定是否对当前块应用去块滤
波器的基础。当对块应用去块滤波器时,可以根据所需的去块滤波强度来应用强滤波器或
弱滤波器。此外,在应用去块滤波器时,可以并行地处理水平方向滤波和垂直方向滤波。
[0079] 偏移校正模块可以针对要进行去块的图片以像素为单位校正与原始图片的偏移。为了对特定图片执行偏移校正,可以使用考虑每个像素的边缘信息来施加偏移的方法,或
者可以使用下述方法:将图片的像素划分为预定数目的区域、确定要执行偏移的区域,并且
对所确定的区域施加偏移。
[0080] 可以基于通过将经滤波的重构图片与原始图片进行比较而获得的值来执行自适应环路滤波(ALF)。可以将包括在图片中的像素分成预定组,可以确定要应用于每个组的滤
波器,并且可以针对每个组单独地执行滤波。可以通过编码单元(CU)传送关于是否应用ALF
和亮度信号的信息。用于ALF的滤波器的形状和滤波器系数可以根据每个块而不同。此外,
无论应用目标块的特性如何,都可以应用相同形状(固定形状)的用于ALF的滤波器。
[0081] 存储器155可以存储通过滤波器模块150计算的重构块或重构图片。可以在执行帧间预测时将所存储的重构块或重构图片提供至预测模块120和125。
[0082] 图2是示出了根据本发明的实施方式的用于对视频进行解码的设备的框图。
[0083] 参照图2,用于对视频进行解码的设备200可以包括:熵解码模块210、重排模块215、逆量化模块220、逆变换模块225、预测模块230和235、滤波器模块240和存储器245。
[0084] 当从用于对视频进行编码的设备输入视频比特流时,可以根据用于对视频进行编码的设备的逆过程来对输入比特流进行解码。
[0085] 熵解码模块210可以根据由用于对视频进行编码的设备的熵编码模块进行的熵编码的逆过程来执行熵解码。例如,对应于由用于对视频进行编码的设备执行的方法,可以应
用诸如指数哥伦布编码、上下文自适应变长编码(CAVLC)和上下文自适应二进制算术编码
(CABAC)的各种方法。
[0086] 熵解码模块210可以对关于由用于对视频进行编码的设备执行的帧内预测和帧间预测的信息进行解码。
[0087] 重排模块215可以基于在用于对视频进行编码的设备中使用的重排方法对由熵解码模块210进行熵解码的比特流执行重排。重排模块可以将一维向量形式的系数重构和重
排为二维块形式的系数。重排模块215可以接收与在用于对视频进行编码的设备中执行的
系数扫描有关的信息,并且可以基于在用于对视频进行编码的设备中执行的扫描顺序经由
对系数进行逆扫描的方法来执行重排。
[0088] 逆量化模块220可以基于从用于对视频进行编码的设备接收的量化参数和经重排的块的系数来执行逆量化。
[0089] 逆变换模块225可以执行逆变换,即,逆DCT、逆DST和逆KLT,这是由变换模块对由用于对视频进行编码的设备的量化结果执行的变换的逆过程,即DCT、DST和KLT。可以基于
由用于对视频进行编码的设备所确定的传输单元来执行逆变换。用于对视频进行解码的设
备的逆变换模块225可以根据多条信息(例如,预测方法、当前块的尺寸、预测方向等)来选
择性地执行变换方案(例如,DCT、DST、KLT)。
[0090] 预测模块230和235可以基于关于从熵解码模块210接收到的预测块生成的信息和从存储器245接收到的图片信息或先前解码的块来生成预测块。
[0091] 如上所述,类似于用于对视频进行编码的设备的操作,在执行帧内预测时,当预测单元的尺寸与变换单元的尺寸相同时,可以基于位于预测单元的左侧、左上侧和上侧的像
素对预测单元执行帧内预测。在执行帧内预测时,当预测单元的尺寸与变换单元的尺寸不
同时,可以使用基于变换单元的参考像素来执行帧内预测。此外,可以使用仅针对最小编码
单元使用N×N划分的帧内预测。
[0092] 预测模块230和235可以包括预测单元确定模块、帧间预测模块和帧内预测模块。预测单元确定模块可以从熵解码模块210接收诸如预测单元信息、帧内预测方法的预测模
式信息、关于帧间预测方法的运动预测的信息等的各种信息,可以将当前编码单元分成预
测单元,并且可以确定对预测单元执行帧间预测还是帧内预测。通过使用从用于对视频进
行编码的设备接收的当前预测单元的帧间预测所需的信息,帧间预测模块230可以基于包
括当前预测单元的当前图片的先前图片或后续图片中的至少一个的信息来对当前预测单
元执行帧间预测。可替选地,可以基于包括当前预测单元的当前图片中的一些预先重构区
域的信息来执行帧间预测。
[0093] 为了执行帧间预测,可以针对编码单元来确定将跳过模式、合并模式、AMVP模式和帧间块复制模式中的哪个用作包括在编码单元中的预测单元的运动预测方法。
[0094] 帧内预测模块235可以基于当前图片中的像素信息来生成预测块。当预测单元是要进行帧内预测的预测单元时,可以基于从用于对视频进行编码的设备接收到的预测单元
的帧内预测模式信息来执行帧内预测。帧内预测模块235可以包括自适应帧内平滑(AIS)滤
波器、参考像素插值模块和DC滤波器。AIS滤波器对当前块的参考像素执行滤波,并且可以
根据当前预测单元的预测模式来确定是否应用滤波器。可以通过使用从用于对视频进行编
码的设备接收到的预测单元的预测模式和AIS滤波器信息来对当前块的参考像素执行AIS
滤波。在当前块的预测模式是不执行AIS滤波的模式时,可以不应用AIS滤波器。
[0095] 当预测单元的预测模式是基于通过对参考像素进行插值而获得的像素值来执行帧内预测的预测模式时,参考像素插值模块可以对参考像素进行插值,以生成整像素或小
于整像素的参考像素。在当前预测单元的预测模式是在没有对参考像素进行插值的情况下
生成预测块的预测模式时,可以不对参考像素进行插值。在当前块的预测模式是DC模式时,
DC滤波器可以通过滤波来生成预测块。
[0096] 可以将重构块或重构图片提供至滤波器模块240。滤波器模块240可以包括去块滤波器、偏移校正模块和ALF。
[0097] 可以从用于对视频进行编码的设备接收关于是否将去块滤波器应用于相应的块或图片的信息以及关于当应用去块滤波器时应用强滤波器和弱滤波器中的哪个滤波器的
信息。用于对视频进行解码的设备的去块滤波器可以从用于对视频进行编码的设备接收关
于去块滤波器的信息,并且可以对相应的块执行去块滤波。
[0098] 偏移校正模块可以基于在执行编码时应用于图片的偏移校正的类型和偏移值信息来对重构图片执行偏移校正。
[0099] 可以基于从用于对视频进行编码的设备接收到的关于是否应用ALF的信息、ALF系数信息等将AFL应用于编码单元。ALF信息可以被提供为被包括在特定参数集中。
[0100] 存储器245可以存储重构图片或重构块以用作参考图片或参考块,并且可以将重构图片提供至输出模块。
[0101] 如上所述,在本发明的实施方式中,为了便于说明,编码单元被用作表示用于编码的单元的术语,然而,编码单元可以用作执行解码以及编码的单元。
[0102] 另外,当前块可以表示要进行编码/解码的目标块。并且,当前块可以根据编码/解码步骤来表示编码树块(或编码树单元)、编码块(或编码单元)、变换块(或变换单元)、预测
块(或预测单元)等。
[0103] 可以通过将图片分成具有正方形形状或非正方形形状的基础块来对图片进行编码/解码。此时,基础块可以被称为编码树单元。编码树单元可以被定义为序列或片内允许
的最大尺寸的编码单元。可以通过序列参数集、图片参数集或片头来用信号通知关于编码
树单元是具有正方形形状还是具有非正方形形状的信息或者关于编码树单元的尺寸的信
息。编码树单元可以被分成较小的尺寸划分。此时,如果假设通过分割编码树单元生成的划
分的深度为1,则通过分割深度为1的划分生成的划分的深度可以被定义为2。也就是说,通
过在编码树单元中分割深度为k的划分而生成的划分可以被定义为具有深度k+1。
[0104] 通过分割编码树单元生成的任意尺寸的划分可以被定义为编码单元。编码单元可以被递归地分割或分割成用于执行预测、量化、变换或环路内滤波等的基础单元。例如,通
过分割编码单元生成的任意尺寸的划分可以被定义为编码单元,或者可以被定义为变换单
元或预测单元,该单元是用于执行预测、量化、变换或环路内滤波等的基础单元。
[0105] 可以基于垂直线和水平线中的至少一个来执行编码树单元或编码单元的划分。另外,划分编码树单元或编码单元的垂直线或水平线的数目可以是至少一个或更多个。例如,
可以使用一条垂直线或一条水平线将编码树单元或编码单元分成两个划分,或者可以使用
两条垂直线或两条水平线将编码树单元或编码单元分成三个划分。可替选地,可以通过使
用一条垂直线和一条水平线将编码树单元或编码单元分成长度为1/2且宽度为1/2的四个
划分。
[0106] 当使用至少一条垂直线或至少一条水平线将编码树单元或编码单元分成多个划分时,该划分可以具有统一尺寸或不同尺寸。可替选地,任意一个划分可以具有与剩余划分
不同的尺寸。
[0107] 在以下描述的实施方式中,假设编码树单元或编码单元被分成四叉树结构或二叉树结构。然而,还可以使用更多数目的垂直线或更多数目的水平线来分割编码树单元或编
码单元。
[0108] 图3是示出了根据本发明的实施方式的基于树结构对编码块进行分级划分的示例的图。
[0109] 以预定的块为单位对输入视频信号进行解码。用于对输入视频信号进行解码的这样的默认单元是编码块。编码块可以是执行帧内/帧间预测、变换和量化的单元。另外,以编
码块为单位来确定预测模式(例如,帧内预测模式或帧间预测模式),并且包括在编码块中
的预测块可以共享所确定的预测模式。编码块可以是具有在8×8至64×64的范围内的任意
尺寸的正方形块或非正方形块,或者可以是具有128×128、256×256或更大尺寸的正方形
块或非正方形块。
[0110] 具体地,可以基于四叉树和二叉树中的至少一个来对编码块进行分级划分。在此,基于四叉树的划分可以意指将2N×2N的编码块分成四个N×N的编码块,并且基于二叉树的
划分可以意指将一个编码块分成两个编码块。尽管基于二叉树的划分被执行,但是正方形
形状的编码块可以存在于较下深度中。
[0111] 可以对称地或非对称地执行基于二叉树的划分。基于二叉树划分的编码块可以是正方形块或诸如矩形形状的非正方形块。例如,允许基于二叉树划分的划分类型可以包括
对称类型的2N×N(水平方向非正方形编码单元)或N×2N(垂直方向非正方形编码单元)、非
对称类型的nL×2N、nR×2N、2N×nU或2N×nD中的至少一个。
[0112] 基于二叉树的划分可以限制性地允许对称类型划分或非对称类型划分中之一。在这种情况下,构建具有正方形块的编码树单元可以对应于四叉树CU划分,而构建具有对称
的非正方形块的编码树单元可以对应于二叉树划分。构建具有正方形块和对称的非正方形
块的编码树单元可以对应于四叉树CU划分和二叉树CU划分。
[0113] 可以对不能再执行基于四叉树的划分的编码块执行基于二叉树的划分。可以不再对基于二叉树划分的编码块执行基于四叉树的划分。
[0114] 此外,可以根据较上深度的划分类型来确定较下深度的划分。例如,如果允许在两个或更多个深度中基于二叉树的划分,则可以仅允许在较下深度中二叉树划分的类型与在
较上深度中二叉树划分的类型相同。例如,如果利用2N×N类型执行在较上深度中基于二叉
树的划分,则也利用2N×N类型来执行在较下深度中基于二叉树的划分。可替选地,如果利
用N×2N类型执行在较上深度中基于二叉树的划分,则也利用N×2N类型来执行在较下深度
中基于二叉树的划分。
[0115] 相反地,也可以仅允许在较下深度中二叉树划分的类型与在较上深度中二叉树划分的类型不同。
[0116] 可以限制仅特定类型的基于二叉树的划分用于序列、片、编码树单元或编码单元。作为示例,对编码树单元,可以仅允许2N×N类型的基于二叉树的划分或N×2N类型的基于
二叉树的划分。可以在编码器或解码器中预定义可用划分类型。或者可以对关于可用划分
类型或不可用划分类型的信息进行编码,然后通过比特流用信号通知该信息。
[0117] 图5是示出了仅允许特定类型的基于二叉树的划分的示例的图。图5的上部示出了仅允许N×2N类型的基于二叉树的划分的示例,图5的下部示出了仅允许2N×N类型的基于
二叉树的划分的示例。为了实现基于四叉树或基于二叉树的自适应划分,可以使用指示基
于四叉树的划分的信息、关于允许基于四叉树的划分的编码块的尺寸/深度的信息、指示基
于二叉树的划分的信息、关于允许基于二叉树的划分的编码块的尺寸/深度的信息、关于不
允许基于二叉树的划分的编码块的尺寸/深度的信息、关于是沿垂直方向还是沿水平方向
执行基于二叉树的划分的信息等。
[0118] 另外,可以针对编码树单元或特定编码单元获得关于允许二叉树划分的次数、允许二叉树划分的深度或允许二叉树划分的深度的数目的信息。可以以编码树单元或编码单
元为单位对该信息进行编码,并且可以通过比特流将该信息传送至解码器。
[0119] 例如,可以通过比特流对指示允许二叉树划分的最大深度的语法“max_binary_depth_idx_minus1”进行编码/解码。在这种情况下,“max_binary_depth_idx_minus1+1”可
以指示允许二叉树划分的最大深度。
[0120] 参考图6所示的示例,在图6中,已经对深度为2的编码单元和深度为3的编码单元执行了二叉树划分。因此,可以通过比特流对下述信息中的至少一个进行编码/解码:指示
在编码树单元中已经执行二叉树划分的次数(即,2次)的信息、指示在编码树单元中已经允
许二叉树划分的最大深度(即,深度为3)的信息或者在编码树单元中已经执行二叉树划分
的深度的数目(即,2(深度2和深度3))的信息。
[0121] 作为另一示例,可以针对每个序列或每个片获得关于允许二叉树划分的次数、允许二叉树划分的深度或允许二叉树划分的深度的数目的信息中的至少一个。例如,可以以
序列单元、图片单元或片单元为单位对该信息进行编码,并且通过比特流传送该信息。因
此,在第一片中二叉树划分的数目、在第一片中允许二叉树划分的最大深度或者在第一片
中执行二叉树划分的深度的数目中的至少一个可以与第二片不同。例如,在第一片中,可以
允许仅一个深度的二叉树划分,而在第二片中,可以允许两个深度的二叉树划分。
[0122] 作为另一示例,可以根据片或图片的时间水平标识符(Temporal ID)来不同地设置允许二叉树划分的次数、允许二叉树划分的深度或允许二叉树划分的深度的数目。在此,
使用时间水平标识符(Temporal ID)来标识具有视图、空间、时间或质量中的至少一个的可
扩展性的多个视频层中的每个视频层。
[0123] 如图3所示,可以基于四叉树将划分深度(分割深度)为k的第一编码块300划分成多个第二编码块。例如,第二编码块310至340可以是宽度为第一编码块的一半且高度为第
一编码块的一半的正方形块,并且第二编码块的划分深度可以增加至k+1。
[0124] 划分深度为k+1的第二编码块310可以被划分为划分深度为k+2的多个第三编码块。可以通过选择性地使用四叉树和二叉树中之一根据划分方法来执行第二编码块310的
划分。在此,可以根据指示基于四叉树的划分的信息和指示基于二叉树的划分的信息中的
至少一个来确定划分方法。
[0125] 当基于四叉树对第二编码块310进行划分时,第二编码块310可以被划分成宽度为第二编码块的一半且高度为第二编码块的一半的四个第三编码块310a,并且第三编码块
310a的划分深度可以增加至k+2。相比之下,当基于二叉树对第二编码块310进行划分时,可
以将第二编码块310划分成两个第三编码块。在此,两个第三编码块中的每个可以是宽度为
第二编码块的一半和高度为第二编码块的一半中之一的非正方形块,并且划分深度可以增
加至k+2。可以根据划分方向将第二编码块确定为水平方向或垂直方向的非正方形块,并且
可以基于关于是沿垂直方向还是沿水平方向执行基于二叉树的划分的信息来确定划分方
向。
[0126] 同时,可以将第二编码块310确定为不再基于四叉树或二叉树进行划分的叶编码块。在这种情况下,可以将叶编码块用作预测块或变换块。
[0127] 类似于第二编码块310的划分,可以将第三编码块310a确定为叶编码块,或者可以基于四叉树或二叉树进一步划分第三编码块310a。
[0128] 同时,可以基于二叉树将基于二叉树划分的第三编码块310b进一步划分成垂直方向的编码块310b‑2或水平方向的编码块310b‑3,并且相关编码块的划分深度可以增加至k+
3。可替选地,可以将第三编码块310b确定为不再基于二叉树划分的叶编码块310b‑1。在这
种情况下,可以将编码块310b‑1用作预测块或变换块。然而,可以基于下述信息中的至少一
个来限制性地执行上述划分过程:关于允许基于四叉树的划分的编码块的尺寸/深度的信
息、关于允许基于二叉树的划分的编码块的尺寸/深度的信息以及关于不允许基于二叉树
的划分的编码块的尺寸/深度的信息。
[0129] 表示编码块的尺寸的候选的数目可以被限制为预定数目或者预定单元中的编码块的尺寸可以具有固定值。作为示例,可以将序列或图片中的编码块的尺寸限制为256×
256、128×128或32×32。可以通过序列头或图片头用信号通知指示序列或图片中的编码块
的尺寸的信息。
[0130] 作为基于四叉树和二叉树划分的结果,可以将编码单元表示为任意尺寸的正方形形状或矩形形状。
[0131] 使用跳过模式、帧内预测、帧间预测或跳过方法中的至少一个对编码块进行编码。一旦确定编码块,可以通过编码块的预测划分来确定预测块。可以通过指示编码块的划分
类型的划分模式(Part_mode)来执行编码块的预测划分。可以根据编码块的划分模式来确
定预测块的尺寸或形状。例如,根据划分模式确定的预测块的尺寸可以等于或小于编码块
的尺寸。
[0132] 图7是示出了当通过帧间预测对编码块进行编码时可以应用于编码块的划分模式的图。
[0133] 如在图4所示的示例中,当通过帧间预测对编码块进行编码时,可以将8个划分模式中之一应用于编码块。
[0134] 当通过帧内预测对编码块进行编码时,可以将划分模式PART_2N×2N或划分模式PART_N×N应用于编码块。
[0135] 当编码块具有最小尺寸时,可以应用PART_N×N。在此,可以在编码器和解码器中预定义编码块的最小尺寸。或者可以经由比特流用信号通知关于编码块的最小尺寸的信
息。例如,可以通过片头用信号通知编码块的最小尺寸,使得可以针对每个片定义编码块的
最小尺寸。
[0136] 通常,预定块的尺寸可以从64×64到4×4。然而,当通过帧间预测对编码块进行编码时,可以限制预测块不具有4×4的尺寸,以在执行运动补偿时减少存储器带宽。
[0137] 图8是示出了根据应用了本发明的实施方式的获得残差样本的过程的流程图。
[0138] 首先,可以获得当前块的残差系数S810。解码器可以通过系数扫描方法来获得残差系数。例如,解码器可以使用之字形扫描、垂直扫描或水平扫描来执行系数扫描,并且可
以获得以二维块形式的残差系数。
[0139] 可以对当前块的残差系数执行逆量化S820。
[0140] 根据是否要跳过对当前块的逆量化的残差系数的逆变换来选择性地执行逆变换S830。具体地,解码器可以确定是否要跳过在当前块的水平方向或垂直方向中的至少一个
上的逆变换。当确定在当前块的水平方向或垂直方向中的至少一个上应用逆变换时,可以
通过对当前块的逆量化的残差系数进行逆变换来获得当前块的残差样本。在此,可以使用
DCT、DST和KLT中的至少一个来执行逆变换。
[0141] 当跳过在当前块的水平方向和垂直方向两者上的逆变换时,不在当前块的水平方向和垂直方向上执行逆变换。在这种情况下,可以通过利用预定值缩放逆量化的残差系数
来获得当前块的残差样本。
[0142] 跳过水平方向上的逆变换意指:不在水平方向上执行逆变换,但是在垂直方向上执行逆变换。此时,可以在水平方向上执行缩放。
[0143] 跳过垂直方向上的逆变换意指:不在垂直方向上执行逆变换,但是在水平方向上执行逆变换。此时,可以在垂直方向上执行缩放。
[0144] 可以根据当前块的划分类型来确定是否可以将逆变换跳过技术用于当前块。例如,如果通过基于二叉树的划分来生成当前块,则可以针对当前块限制逆变换跳过方案。因
此,当通过基于二叉树的划分来生成当前块时,可以通过对当前块进行逆变换来获得当前
块的残差样本。另外,当通过基于二叉树的划分来生成当前块时,可以省略指示是否跳过逆
变换的信息(例如,transform_skip_flag)的编码/解码。
[0145] 可替选地,当通过基于二叉树的划分来生成当前块时,可以将逆变换跳过方案限制于水平方向或垂直方向中的至少一个。在此,可以基于从比特流解码的信息来确定逆变
换跳过方案被限制的方向,或者可以基于当前块的尺寸、当前块的形状或当前块的帧内预
测模式中的至少一个来自适应地确定逆变换跳过方案被限制的方向。
[0146] 例如,在当前块是宽度大于高度的非正方形块时,可以仅允许垂直方向上的逆变换跳过方案并且限制水平方向上的逆变换跳过方案。也就是说,在当前块是2N×N时,在当
前块的水平方向上执行逆变换,并且可以在垂直方向上选择性地执行逆变换。
[0147] 换句话说,在当前块是高度大于宽度的非正方形块时,可以仅允许水平方向上的逆变换跳过方案并且限制垂直方向上的逆变换跳过方案。也就是说,在当前块是N×2N时,
在当前块的垂直方向上执行逆变换,并且可以在水平方向上选择性地执行逆变换。
[0148] 与上述示例相比,在当前块是宽度大于高度的非正方形块时,可以仅允许水平方向上的逆变换跳过方案,并且在当前块是高度大于宽度的非正方形块时,可以仅允许垂直
方向上的逆变换跳过方案。
[0149] 可以通过比特流用信号通知指示是否要跳过水平方向上的逆变换的信息或指示是否要跳过垂直方向上的逆变换的信息。例如,指示是否要跳过水平方向上的逆变换的信
息是1比特的标记“hor_transform_skip_flag”,而指示是否要跳过垂直方向上的逆变换的
信息是1比特的标记“ver_transform_skip_flag”。编码器可以根据当前块的形状来对
“hor_transform_skip_flag”或“ver_transform_skip_flag”中的至少一个进行编码。此
外,解码器可以通过使用“hor_transform_skip_flag”或“ver_transform_skip_flag”中的
至少一个来确定是否跳过水平方向上的逆变换或垂直方向上的逆变换。
[0150] 可以根据当前块的划分类型进行设置,以跳过当前块的任意一个方向上的逆变换。例如,如果通过基于二叉树的划分生成当前块,则可以跳过水平方向上的逆变换或垂直
方向上的逆变换。也就是说,如果通过基于二叉树的划分生成当前块,则在没有对指示是否
跳过当前块的逆变换的信息(例如,transform_skip_flag、hor_transform_skip_flag、
ver_transform_skip_flag)进行编码/解码的情况下,就可以确定跳过在水平方向或垂直
方向中的至少一个上对当前块的逆变换。
[0151] 图9是示出了根据应用了本发明的实施方式的帧间预测方法的流程图。
[0152] 参照图9,确定当前块的运动信息S910。当前块的运动信息可以包括与当前块有关的运动向量、当前块的参考图片索引或当前块的帧间预测方向中的至少一个。
[0153] 可以基于通过比特流用信号通知的信息或与当前块相邻的相邻块的运动信息中的至少一个来获得当前块的运动信息。
[0154] 图10是示出了当将合并模式应用于当前块时得到当前块的运动信息的过程的图。
[0155] 如果将合并模式应用于当前块,则可以从当前块的空间相邻块得到空间合并候选S1010。空间相邻块可以包括与当前块的左边、上边或角(例如,左上角、右上角或左下角中
的至少一个)相邻的块中的至少一个。
[0156] 空间合并候选的运动信息可以被设置成与空间相邻块的运动信息相同。
[0157] 可以从当前块的时间相邻块得到时间合并候选S1020。时间相邻块可以意指包括在并置图片中的块。并置图片具有与包括当前块的当前图片不同的图片顺序计数(POC)。可
以将并置图片确定为在参考图片列表中具有预定索引的图片,或者可以通过从比特流用信
号通知的索引来确定并置图片。时间相邻块可以被确定为包括与并置图片中的当前块具有
相同位置的并置块中的坐标的块或与并置块相邻的块。例如,包括并置块的中心坐标的块
或与并置块的左下边界相邻的块中的至少一个可以被确定为时间相邻块。
[0158] 可以基于时间相邻块的运动信息来确定时间合并候选的运动信息。例如,可以基于时间相邻块的运动向量来确定时间合并候选的运动向量。另外,时间合并候选的帧间预
测方向可以被设置成与时间相邻块的帧间预测方向相同。然而,时间合并候选的参考图片
索引可以具有固定值。例如,时间合并候选的参考图片索引可以被设置为“0”。
[0159] 此后,可以生成包括空间合并候选和时间合并候选的合并候选列表S1030。如果包括在合并候选列表中的合并候选的数目小于最大合并候选数目,则对两个或更多个合并候
选进行组合的组合合并候选可以包括在合并候选列表中。
[0160] 当生成合并候选列表时,可以基于合并候选索引来指定包括在合并候选列表中的合并候选中的至少一个S1040。
[0161] 当前块的运动信息可以被设置成与通过合并候选索引指定的合并候选的运动信息相同S1050。例如,当通过合并候选索引来选择空间合并候选时,当前块的运动信息可以
被设置成与空间相邻块的运动信息相同。可替选地,当通过合并候选索引来选择时间合并
候选时,当前块的运动信息可以被设置成与时间相邻块的运动信息相同。
[0162] 图11是示出了当将AMVP模式应用于当前块时得到当前块的运动信息的过程的图。
[0163] 当将AMVP模式应用于当前块时,可以根据比特流对当前块的帧间预测方向或参考图片索引中的至少一个进行解码S1110。也就是说,当应用AMVP模式时,可以基于通过比特
流编码的信息来确定当前块的帧间预测方向或参考图片索引中的至少一个。
[0164] 可以基于当前块的空间相邻块的运动向量来确定空间运动向量候选S1120。空间运动向量候选可以包括从当前块的顶相邻块得到的第一空间运动向量候选和从当前块的
左相邻块得到的第二空间运动向量候选中的至少一个。在此,顶相邻块可以包括与当前块
的顶部或右上角相邻的块中的至少一个,并且当前块的左相邻块可以包括与当前块的左边
或左下角相邻的块中的至少一个。与当前块的左上角相邻的块可以被视为顶相邻块或左相
邻块。
[0165] 在当前块与空间相邻块之间的参考图片彼此不同时,还可以通过缩放空间相邻块的运动向量来获得空间运动向量。
[0166] 可以基于当前块的时间相邻块的运动向量来确定时间运动向量候选S1130。在当前块与时间相邻块之间的参考图片彼此不同时,还可以通过缩放时间相邻块的运动向量来
获得时间运动向量。
[0167] 可以生成包括空间运动向量候选和时间运动向量候选的运动向量候选列表S1140。
[0168] 当生成了运动向量候选列表时,可以基于从运动向量候选列表中指定至少一个的信息来指定包括在运动向量候选列表中的运动向量候选中的至少一个S1150。
[0169] 通过该信息指定的运动向量候选可以被设置为当前块的运动向量预测值,并且可以将运动向量差值与运动向量预测值相加以获得当前块的运动向量S1160。此时,可以通过
比特流来解析运动向量差值。
[0170] 当获得了当前块的运动信息时,可以基于所获得的运动信息来执行对当前块的运动补偿S920。更具体地,可以基于帧间预测方向、参考图片索引和当前块的运动向量来执行
对当前块的运动补偿。
[0171] 帧间预测方向可以指示N个方向。此处,N是自然数并且可以是1、2或3或更大。如果帧间预测方向指示N个方向,则这意指基于N个参考图片或N个参考块来执行当前块的帧间
预测。例如,在当前块的帧间预测方向指示单方向时,可以基于一个参考图片来执行当前块
的帧间预测。另一方面,在当前块的帧间预测指示双方向时,可以使用两个参考图片或两个
参考块来执行当前块的帧间预测。
[0172] 还可以基于当前块的尺寸或形状中的至少一个来确定是否允许对当前块的多方向预测。例如,当编码单元具有正方形形状时,对于该编码单元的编码/解码,允许多方向预
测。换句话说,当编码单元具有非正方形形状时,对于该编码单元的编码/解码,仅允许单方
向预测。与上述情况相反,还可以设定,在编码单元具有非正方形形状时,对于编码/解码该
编码单元,允许多方向预测,而在编码单元具有正方形形状时,对于编码/解码该编码单元,
仅允许单方向预测。可替选地,还可以设定,当预测单元具有4×8或8×4等的非正方形形状
时,对于编码/解码该预测单元,不允许多方向预测。
[0173] 参考图片索引可以指定要用于当前块的帧间预测的参考图片。具体地,参考图片索引可以指定包括在参考图片列表中的参考图片中的任意一个。例如,在当前块的帧间预
测方向是双方向时,通过参考图片索引L0来指定包括在参考图片列表L0中的参考图片(参
考图片L0),并且通过参考图片索引L1来指定包括在参考图片列表L1中的参考图片(参考图
片L1)。
[0174] 可替选地,一个参考图片可以包括在两个或更多个参考图片列表中。因此,即使包括在参考图片列表L0中的参考图片的参考图片索引与包括在参考图片列表L1中的参考图
片的参考图片索引不同,但是两个参考图片的时间顺序(图片顺序计数,POC)可以相同。
[0175] 运动向量可以用于对应于当前块的预测块来指定参考块在参考图片中的位置。可以基于由运动向量在参考图片中指定的参考块来执行当前块的帧间预测。例如,包括在参
考块中的整像素或通过对整像素进行插值而生成的非整像素可以被生成为当前块的预测
样本。以下也是可以的:由不同运动向量指定的参考块可以包括在同一参考图片中。例如,
当选自参考图片列表L0的参考图片和选自参考图片列表L1的参考图片相同时,通过运动向
量L0指定的参考块和通过运动向量L1指定的参考块可以包括在同一参考图片中。
[0176] 如上所述,在当前块的帧间预测方向指示两个或更多个方向时,可以基于两个或更多个参考图片或者两个或更多个参考块来执行对当前块的运动补偿。
[0177] 例如,在利用双方向预测对当前块进行编码时,可以基于从两个参考图片获得的两个参考块来获得当前块的预测块。此外,在利用双方向预测对当前块进行编码时,可以对
指示原始块与基于两个参考块获得的预测块之间的差的残差块进行编码/解码。
[0178] 当使用两个或更多个参考图片时,可以通过将相同或不同的权重应用于相应的参考图片来执行对当前块的运动补偿。在下文中,在帧间预测方向指示两个或更多个方向时,
将在下面的实施方式中详细描述对当前块执行加权预测的方法。为了便于说明,假设当前
块的帧间预测方向是双方向的。然而,甚至在当前块的帧间预测方向指示三个或更多个方
向时,下面的实施方式仍然可以适用于本申请。另外,使用两个预测图像对当前块的运动补
偿将被称为双方向预测方法或双方向预测编码/解码方法。
[0179] 当将双方向预测应用于当前块时,用于当前块的双方向预测的参考图片可以包括:时间顺序(图片顺序计数,POC)在当前图片之前的图片、时间顺序在当前图片之后的图
片或当前图片。例如,两个参考图片中之一可以是时间顺序在当前图片之前的图片,而另一
图片可以是时间顺序在当前图片之后的图片。可替选地,两个参考图片中之一可以是当前
图片,而另一图片可以是时间顺序在当前块之前的图片或者时间顺序在当前图片之后的图
片。可替选地,两个参考图片都可以具有在当前图片之前的时间顺序,或者都可以具有在当
前图片之后的时间顺序。可替选地,两个参考图片都可以是当前图片。
[0180] 可以从两个参考图片列表中的每个生成两个预测块。例如,可以基于运动向量L0来生成基于参考图片L0的预测块,并且可以基于运动向量L1来生成基于参考图片L1的预测
块。以下也是可以的:可以基于同一参考图片来生成通过运动向量L0生成的预测块和通过
运动向量L1生成的预测块。
[0181] 可以基于根据两个参考图片生成的预测块的平均值来获得当前块的预测块。例如,等式1示出了基于多个预测块的平均值来获得当前块的预测块的示例。
[0182] [等式1]
[0183] P(x)=1/2*P0(x)+1/2*P1(x)
[0184] 在等式1中,P(x)指代当前块的最终预测样本或双方向预测的预测样本,PN(x)指代基于参考图片LN生成的预测块LN的样本值。例如,P0(x)可以意指基于参考图片L0生成的
预测块的预测样本,P1(x)可以意指基于参考图片L1生成的预测块的预测样本。也就是说,
根据等式1,可以基于根据多个参考图片生成的多个预测块的加权和来获得当前块的最终
预测块。此时,可以为每个预测块分配在编码器/解码器中预定义的是固定值的权重。
[0185] 根据本发明的实施方式,基于多个预测块的加权和来获得当前块的最终预测块,并且可以可变地/自适应地确定分配给每个预测块的权重。例如,当两个参考图片或两个预
测块具有不同的亮度时,与通过对预测块进行平均来对当前块执行双方向预测相比,通过
将不同的权重应用于预测块中的每个来对当前块执行双方向预测是更有效的。在下文中,
为了便于说明,双方向预测方法在可变地/自适应地确定分配给预测块中的每个的权重时
将被称为“双方向加权预测”。
[0186] 还可以基于当前块的尺寸或形状中的至少一个来确定:对于当前块,是否允许双方向加权预测。例如,如果编码单元具有正方形形状,则允许使用双方向加权预测对该编码
单元进行编码/解码,而如果编码单元具有非正方形形状,则不允许使用双方向加权预测对
该编码单元进行编码/解码。与上述情况相反,还可以设定,当编码块具有非正方形形状时,
允许使用双方向加权预测对该编码块进行编码/解码,并且在编码块具有正方形形状时,不
允许使用双方向加权预测对该编码块进行编码/解码。可替选地,还可以设定,在预测单元
是尺寸为4×8或8×4等的非正方形划分时,对于编码/解码该预测单元,不允许双方向加权
预测。
[0187] 图12是根据本发明的实施方式的双方向加权预测方法的流程图。
[0188] 为了执行双方向加权预测,可以确定用于当前块的加权预测参数S1210。该加权预测参数可以用于确定要应用于两个参考图片的权重。例如,如图13中描绘的,可以将权重1‑
w应用于基于参考图片L0生成的预测块,并且可以将权重w应用于基于参考图片L1生成的预
测块。基于加权预测参数,确定要应用于每个预测块的权重S1220,并且基于所确定的权重
来执行多个预测块的加权和运算以生成当前块的最终预测块S1230。例如,可以基于下面的
等式2来生成当前块的最终预测块。
[0189] [等式2]
[0190] P(x)=(1‑w)*P0(x)+w*P1(x)
[0191] 在等式2中,w表示加权预测参数。
[0192] 如等式2所示,可以通过将权重1‑w分配给预测块P0并且将权重w分配给预测块P1来获得当前块的最终预测块P(x)。与等式2所示的相反,还可以将权重w分配给预测块P0并且
将权重1‑w分配给预测块P1。
[0193] 可以基于参考图片之间的亮度的差来确定加权预测参数,或者可以基于当前图片与参考图片之间的距离(即,POC差)来确定加权预测参数。可替选地,还可以基于当前块的
尺寸或形状来确定加权预测参数。
[0194] 可以以块为单位(例如,编码树单元、编码单元、预测单元或变换单元)来确定加权预测参数,或者可以以片或图片为单位来确定加权预测参数。
[0195] 此时,可以基于预定的候选加权预测参数来确定加权预测参数。作为示例,加权预测参数可以被确定为预定值如‑1/4、1/4、3/8、1/2、5/8、3/4或5/4中之一。
[0196] 可替选地,在确定用于当前块的加权预测参数集之后,还可以从包括在所确定的加权预测参数集中的候选加权预测参数中的至少一个来确定加权预测参数。可以以块为单
位(例如,编码树单元、编码单元、预测单元或变换单元)来确定加权预测参数集,或者可以
以片或图片为单位来确定加权预测参数集。
[0197] 例如,如果选择了加权预测参数集w0和w1中之一,则包括在所选择的加权预测参数集中的候选加权预测参数中的至少一个可以被确定为用于当前块的加权预测参数。例
如,假设加权预测参数集为:w0={‑1/4,1/4,3/8,1/2,5/8,3/4,5/4},w1={‑3/8,‑1/4,1/
4,3/8,1/2,5/8,3/4}。当选择了加权预测参数集w0时,当前块的加权预测参数w可以被确定
为包括在w0中的候选加权预测参数‑1/4、1/4、3/8、1/2、5/8、3/4和5/4中之一。
[0198] 可以根据用于双方向预测的参考图片的时间顺序或时间方向来确定可用于当前块的加权预测参数集。时间顺序可以指示图片之间的编码/解码顺序,或者可以指示图片的
输出顺序(例如,POC)。另外,时间方向可以指示参考图片的时间顺序是在当前图片之前还
是在当前图片之后。
[0199] 作为示例,根据用于双方向预测的两个参考图片是否具有相同的时间顺序,可以确定可用于当前图片的加权预测参数集。例如,根据参考图片L0和参考图片L1是否是相同
的图片(也就是说,图片的时间顺序相同)或者参考图片L0和参考图片L1是否彼此不同(也
就是说,图片的时间顺序不同),可以可变地确定可用于当前块的加权预测参数集。
[0200] 不同的加权预测参数集可以意指:包括在每个加权预测参数集中的加权预测参数的绝对值、符号或数量中的至少一个是不同的。例如,当参考图片L0和参考图片L1的时间方
向相同时,可以使用加权预测参数集w0={‑1/4,1/4,3/8,1/2,5/8,3/4,5/4},并且当参考
图片L0和参考图片L1的时间方向不同时,可以使用加权预测参数集w1={‑3/8,‑1/4,1/4,
3/8,1/2,5/8,3/4}。
[0201] 作为示例,根据用在双方向预测中的两个参考图片的时间方向是否相同,可以确定可用于当前图片的加权预测参数集。例如,可以在两个参考图片的时间方向相同时与在
两个参考图片的时间方向不同时之间不同地确定可用于当前块的加权预测参数集。具体
地,可以根据参考图片L0和参考图片L1是否都在当前图片之前、参考图片L0和参考图片L1
是否都在当前图片之后或者参考图片L0与参考图片L1的时间方向是否不同来不同地确定
当前块的加权预测参数。
[0202] 可以针对每个块、每个片或每个图片不同地设置可用的候选加权预测参数的数目或可用的加权预测参数集的数目。例如,可以以片为单位用信号通知可用的候选加权预测
参数的数目或可用的加权预测参数集的数目。因此,对于每个片而言,可用的候选加权预测
参数的数目或可用的加权预测参数集的数目可以不同。
[0203] 可以从与当前块相邻的相邻块来得到加权预测参数。在此,与当前块相邻的相邻块可以包括当前块的空间相邻块或时间相邻块中的至少一个。
[0204] 作为示例,当前块的加权预测参数可以被设置为与当前块相邻的相邻块的加权预测参数中的最小值或最大值,或者可以被设置为相邻块的加权预测参数的平均值。
[0205] 作为示例,可以从与当前块相邻的相邻块中的位于预定位置处的相邻块来得到当前块的加权预测参数。在此,可以可变地或固定地确定预定位置。具体地,通过当前块(例
如,编码单元、预测单元或变换单元)的尺寸、当前块在编码树单元中的位置、当前块的形状
(例如,当前块的划分类型)或当前块的划分索引来确定相邻块的位置。可替选地,可以在编
码器/解码器中预定义并且固定地确定相邻块的位置。
[0206] 作为示例,可以从与当前块相邻的相邻块中的应用了双方向加权预测的相邻块来得到当前块的加权预测参数。具体地,当以预定顺序扫描与当前块相邻的相邻块时,可以从
应用了双方向加权预测的第一检测相邻块的加权预测参数来得到当前块的加权预测参数。
图14是示出了相邻块之间的扫描顺序的图。在图14中,按照左相邻块、上相邻块、右上相邻
块、左下相邻块和左上相邻块的顺序来执行该扫描,但是本发明不限于示出的示例。当按照
下面的预定顺序来执行该扫描时,应用了双方向加权预测的第一检测相邻块的加权预测参
数可以用作当前块的加权预测参数。
[0207] 可替选地,当按照下面的预定顺序来执行该扫描时,还可以将应用了双方向加权预测的第一检测相邻块的加权预测参数设置为当前块的加权预测参数预测值。在这种情况
下,可以通过使用加权预测参数预测值和加权预测参数残差值来获得当前块的加权预测参
数。
[0208] 作为示例,还可以从与当前块的运动信息合并的空间相邻块或时间相邻块或者从用于得到当前块的运动向量预测值的空间相邻块或时间相邻块来得到当前块的加权预测
参数。
[0209] 还可以通过比特流用信号通知用于确定加权预测参数的信息。例如,可以基于指示加权预测参数的值的信息、指定候选加权预测参数中之一的索引信息或指定加权预测参
数集中之一的集索引信息中的至少一个来确定当前块的加权预测参数。
[0210] 在对加权预测参数进行二值化和编码时,可以将最小二进制码字映射至统计上具有最高使用频率的加权预测参数。例如,如下面的表1中所示,可以对加权预测参数执行截
断一元二值化。表1是在cMax为6的情况下的示例。
[0211] [表1]
[0212] 索引 加权预测参数 二进制码字0 ‑1/4 111111
1 1/4 11110
2 3/8 110
3 1/2 0
4 5/8 10
5 3/4 1110
6 5/4 111110
[0213] 除了在预先接收输入的最大值(cMax)之后执行转换之外,表1中所示的截断一元二值化方法与一元二值化方法基本上相同。表2示出了在cMax为13的情况下的截断一元二
值化。
[0214] [表2]
[0215]值 二值化
0 0
1 1 0
2 1 1 0
3 1 1 1 0
...  
12 1 1 1 1 1 1 1 1 1 1 1 1 0
13 1 1 1 1 1 1 1 1 1 1 1 1 1
[0216] 在加权预测参数二值化期间,还可以根据用于双方向预测的参考图片的时间方向是否相同来使用不同的二进制码字。例如,表3示出了根据参考图片L0与参考图片L1的时间
方向是否相同的二进制码字。
[0217] [表3]
[0218]
[0219]
[0220] 还可以根据当前图片与参考图片之间的时间顺序差来确定当前块的加权预测参数。在此,时间顺序差可以指示图片之间的编码/解码顺序差或图片之间的输出顺序差(例
如,POC差值)。例如,可以基于当前图片与参考图片L0之间的POC差值(在下文中被称为第一
参考距离)以及当前图片与参考图片L1之间的POC差值(在下文中被称为第二参考距离)中
的至少一个来确定当前图片的加权预测参数。
[0221] 具体地,可以基于第一参考距离与第二参考距离之间的比率来确定当前块的加权预测参数。当第一参考距离是w并且第二参考距离是h时,可以将w/(w+h)用作当前块的加权
预测参数。例如,当第一参考距离和第二参考距离相同时,可以将当前块的加权预测参数确
定为1/2。另外,当第一参考距离是1并且第二参考距离是3时,可以将当前块的加权预测参
数确定为1/4。
[0222] 可替选地,当第一参考距离是w并且第二参考距离是h时,还可以将候选加权预测参数中的具有与w/(w+h)最类似的值的候选加权预测参数用作当前块的加权预测参数。
[0223] 可替选地,还可以在考虑第一参考距离和第二参考距离的情况下对当前块的加权预测参数进行二值化。表4示出了基于第一参考距离和第二参考距离的二进制码字。
[0224] [表4]
[0225]
[0226]
[0227] 在表4所示的示例中,当第一参考距离与第二参考距离相同时,将加权预测参数设置为1/2的概率高。因此,当第一参考距离与第二参考距离相同时,可以给最小码字分配1/
2。
[0228] 当第一参考距离与第二参考距离不同时,可以将最小二进制码字映射至统计上最频繁使用的加权预测参数。例如,当第一参考距离大于第二参考距离时,为参考图片L1分配
更大的权重的概率高。因此,可以将最小二进制码字映射至大于1/2的加权预测参数。换句
话说,当第一参考距离小于第二参考距离时,为参考图片L0分配更大的权重的概率高。因
此,可以将最小二进制码字映射至小于1/2的加权预测参数。
[0229] 与表4中所示的示例相反,还可以在第一参考距离大于第二参考距离时将最小二进制码字映射至小于1/2的加权预测参数,而在第一参考距离小于第二参考距离时将最小
二进制码字映射至大于1/2的加权预测参数。
[0230] 还可以通过对两个或更多个预测模式进行组合来对当前块执行预测。组合预测模式可以是帧间预测模式和帧内预测模式的组合或者两个或更多个帧间预测方法的组合。在
此,帧间预测方法可以包括跳过模式、合并模式、AMVP模式或当前图片参考模式中的至少一
个。当前图片参考模式表示使用包括当前块的当前图片作为参考图片的帧间预测方法。当
使用当前图片参考模式时,可以从在当前块之前重构的区域来得到当前块的预测块。还可
以将当前图片参考模式分类为帧内预测模式中之一而不是帧间预测模式。可替选地,当前
图片参考模式可以被理解为跳过模式、合并模式或AMVP模式的一个实施方式。可替选地,还
可以利用两个或更多个帧内预测模式(例如,方向预测模式和非方向预测模式或者两个或
更多个方向预测模式等)来构建组合预测模式。
[0231] 在下文中,将详细描述通过对两个或更多个预测模式进行组合来对当前块执行预测的方法。
[0232] 图15是示出了根据本发明的组合预测方法的流程图。
[0233] 首先,基于第一预测模式,可以生成用于当前块的第一预测块S1510。然后,基于第二预测模式,可以生成用于当前块的第二预测块S1520。第一预测模式与第二预测模式可以
是不同的预测模式。可以通过多方向预测来生成第一预测块或第二预测块中的任意一个。
[0234] 可以确定用于当前块的加权预测参数S1530。由于已经参照图12详细描述了用于确定加权预测参数的实施方式,因此将在本实施方式中省略对其的详细描述。
[0235] 基于加权预测参数来确定要应用于第一预测块和第二预测块的权重S1540。并且通过基于所确定的权重执行多个预测块的加权和运算来生成当前块的最终预测块S1550。
[0236] 图16和图17是示出了基于通过不同预测模式获得的多个预测块的加权和来生成当前块的预测块的示例的图。
[0237] 参照图16,可以基于参考图片L0或参考图片L1来生成预测块P0(帧间预测),并且可以基于在当前块之前编码/解码的相邻样本来生成预测块P1(帧内预测)。在这种情况下,
可以基于预测块P0和预测块P1的加权和运算来生成当前块的预测块。
[0238] 参照图17,可以基于参考图片L0或参考图片L1来生成预测块P0,并且可以基于在当前图片参考模式下的当前图片来生成预测块P1。在这种情况下,可以基于预测块P0和预
测块P1的加权和运算来生成当前块的预测块。
[0239] 可以基于通过比特流用信号通知的信息来确定:是否要使用对两个或更多个预测模式进行组合的组合预测方法。例如,可以通过比特流用信号通知指示帧内预测模式、帧间
预测模式或组合预测模式中的至少一个的信息。还可以根据块的尺寸或形状来限制组合预
测模式的使用。例如,如果当前块的尺寸等于或小于8×8或者如果当前块具有非正方形形
状,则可以限制组合预测模式的使用。
[0240] 可以以子块为单位来确定当前块的预测模式。例如,在当前块被划分为N个划分时,可以针对N个划分中的每个划分单独确定预测模式。当前块的划分类型可以是对称的或
非对称的。因此,子块可以具有正方形形状或非正方形形状。可以以子块为单位来确定是使
用单个预测模式还是使用组合预测模式。
[0241] 此时,可以在考虑距参考样本的距离的情况下确定用于每个子块的预测模式。例如,当利用帧内预测模式对当前块进行编码时,随着距参考样本的距离增加,与参考样本的
相关性变得越小。因此,可以认为,当前块中远离参考样本的样本(例如,包括在当前块的右
列或下行中的样本)与参考样本之间的相关性小。因此,可以通过帧内预测对与参考样本相
邻的子块(例如,顶参考样本或左参考样本)进行编码/解码,并且可以通过对帧内预测和帧
间预测进行组合的组合预测方法来对远离参考样本的子块进行编码/解码。
[0242] 如在图18所示的示例中,可以基于帧内预测模式来生成子块0的预测块。换句换说,可以基于第一预测块和第二预测块的加权和运算来生成子块1的预测块,所述第一预测
块基于帧内预测模式来生成,所述第二预测块通过帧间预测模式来生成。
[0243] 尽管当前块与参考图片中的参考块类似,但是如果在当前图片与先前图片之间存在亮度的变化,则可以降低帧内预测或帧间预测的效率。因此,可以针对当前图片与参考图
片之间的亮度的变化来考虑光照补偿,以用于补偿通过帧内预测或帧间预测生成的预测样
本或者基于该预测样本重构的重构样本。可以通过将光照补偿权重和偏移应用于在帧内预
测或帧间预测中被编码/解码的图像来执行光照补偿。例如,可以基于下面的等式3来执行
光照补偿预测。
[0244] [等式3]
[0245] p′=l×p+f
[0246] 在等式3中,p可以指代通过帧内预测或帧间预测编码/解码的预测样本。1指代光照补偿权重,f指代偏移。p′可以指代应用了光照补偿的加权预测样本。
[0247] 还可以将光照补偿应用于基于在帧内预测或帧间预测中被编码/解码的预测样本获得的重构样本。具体地,可以在应用环路内滤波器之前将光照补偿应用于重构样本,或者
在应用环路内滤波器之后将光照补偿应用于重构样本。在这种情况下,在等式3中,p可以指
代重构样本,p′可以指代应用了光照补偿的加权重构样本。
[0248] 在将当前图片或当前片与先前图片或先前片进行比较时,可能跨当前图片或当前片的整个区域发生光照改变。因此,可以以序列、图片或片为单位执行光照补偿。
[0249] 可替选地,在将当前片或当前序列与先前片或先前序列进行比较时,可能仅在片或序列内的部分区域中发生光照改变。因此,可以以图片或片中的预定区域为单位来执行
光照补偿。也就是说,通过确定是否以预定区域为单位执行光照补偿,可以仅对图片或片中
的发生光照改变的部分区域执行光照补偿。
[0250] 当仅对图片或片内的预定区域执行光照补偿时,可以对用于确定执行光照补偿的区域的信息进行编码/解码。例如,可以对下述信息进行编码/解码,所述信息指示执行光照
补偿的区域的位置、执行光照补偿的区域的尺寸或执行光照补偿的区域的形状。
[0251] 可替选地,还可以对指示是否以块为单位执行光照补偿的信息进行编码/解码。该信息可以是1比特的标记,但不限于此。例如,可以以编码树单元、编码单元、预测单元或变
换单元为单位来确定是否要执行光照补偿。因此,可以以编码树单元、编码单元、预测单元
或变换单元为单位来确定指示是否要执行光照补偿的信息。
[0252] 还可以确定图片或片中执行光照补偿的区域,然后确定是否要对包括在该区域中的每个块执行光照补偿。例如,当预定区域包括多个编码树单元、多个编码单元、多个预测
单元或多个变换单元时,可以用信号通知指示是否要对包括在预定区域中的每个块执行光
照补偿的信息。因此,可以对包括在要执行光照补偿的单元中的每个块选择性地执行光照
补偿。
[0253] 基于上面的描述,将详细描述根据本发明的光照补偿预测方法。
[0254] 图19是根据本发明的光照补偿预测的方法的流程图。
[0255] 首先,可以确定用于当前块的光照补偿参数S1910。光照补偿参数可以包括光照补偿权重或偏移中的至少一个。
[0256] 可以以序列、图片、片或编码/解码块为单位通过比特流用信号通知光照补偿参数。在此,编码/解码块的单位可以表示编码树单元、编码单元、预测单元或变换单元中的至
少一个。
[0257] 可替选地,还可以用信号通知用于执行光照补偿的每个预定区域的光照补偿参数。例如,可以用信号通知用于包括多个块的预定区域的光照补偿参数。包括在预定区域中
的多个块可以使用相同的光照补偿参数。
[0258] 无论当前块的编码模式如何,都可以用信号通知光照补偿参数。可替选地,可以根据当前块的编码模式来确定是否要用信号通知光照补偿参数。例如,可以仅在当前块的编
码模式具有预定义的模式时才用信号通知光照补偿参数。在此,编码模式可以指示是以帧
内预测(即,帧内预测模式)对当前块进行编码还是以帧间预测(即,帧间预测模式)对当前
块进行编码。例如,可以仅在利用帧间预测对当前块进行编码时才用信号通知光照补偿参
数。可替选地,以下也是可以的:编码模式可以指示作为当前块的帧间预测方法的跳过模
式、合并模式、AMVP模式或当前图片参考模式中之一。
[0259] 作为示例,当利用跳过模式或当前图片参考模式对当前块进行编码时,可以不用信号通知光照补偿参数。换句话说,当利用合并模式或AMVP模式对当前块进行编码时,可以
通过比特流用信号通知光照补偿参数。如果不用信号通知光照补偿参数,则可以不执行对
当前块的光照补偿。可替选地,如果不用信号通知光照补偿参数,则可以使用在编码器/解
码器中预定义的光照补偿参数来执行当前块的光照补偿。
[0260] 可以基于当前图片中的第一模板区域与参考图片中的第二模板区域之间的光照改变来得到光照补偿参数。第一模板区域可以与当前块相邻,第二模板区域可以与参考块
相邻。在此,参考块用于生成当前块的预测块,并且可以通过当前块的运动向量来指定参考
块。可替选地,第二模板区域可以在参考图片中具有与第一模板区域协同定位的位置。可以
根据参考图片或当前块的编码模式可变地确定第二模板区域的位置。
[0261] 当不可用样本被包括在第二模板区域中时,可以使用可用样本为不可用样本分配替换值。例如,可用样本可以被复制到不可用样本的位置,或者可以将使用多个可用样本计
算的内插值分配至不可用样本的位置。可用样本可以包括在第二模板区域中或者可以位于
第二模板区域外部。例如,可以基于包括在参考块中的可用样本来计算包括在第二模板区
域中的不可用样本的替换值。可以基于模板区域的尺寸或形状中的至少一个可变地确定在
内插中使用的滤波器的滤波器系数、形状或滤波器抽头的数目中的至少一个。
[0262] 可以基于包括在第一模板区域中的样本与包括在第二模板区域中的样本之间的差值来计算光照补偿参数。例如,当将当前块的相邻样本假设为yi(i为0到N‑1)并且将参考
块的相邻样本假设为xi(i为0到N‑1)时,可以通过计算等式4中的E(w,f)的最小值来得到光
照补偿权重1和偏移f。
[0263] [等式4]
[0264] E(w,f)=∑i(pi‑(lpi‑f))2+λ(w‑1)2
[0265] 等式4可以被修改为下面的等式5。
[0266] [等式5]
[0267]
[0268] 根据等式5,可以得到用于得到光照补偿权重1的等式6和用于得到偏移f的等式7。
[0269] [等式6]
[0270]
[0271] [等式7]
[0272] f=∑iyi‑a*∑ixi
[0273] 如果确定了光照补偿参数,就可以使用所确定的光照补偿参数来执行对当前块的光照补偿S1920。可以通过将光照补偿权重和偏移应用于在帧内预测或帧间预测中被编码/
解码的块(例如,预测块或重构块)来执行光照补偿。
[0274] 在当前块的帧间预测方向指示多个方向时,可以对多个预测块中的至少一个预测块执行补偿,并且可以基于应用了光照补偿的预测块对当前块执行多方向预测。例如,如果
将双方向加权预测应用于当前块,则可以对第一预测块和第二预测块中的至少一个执行光
照补偿,然后可以基于第一预测块与第二预测块之间的加权和运算来生成当前块的最终预
测块或双方向预测块。
[0275] 图20是基于光照补偿的双方向加权预测方法的流程图。
[0276] 参照图20,首先,可以确定是否对参考图片执行光照补偿S2010。可以基于通过比特流用信号通知的信息来确定是否对参考图片执行光照补偿。该信息可以是1比特的标记,
但不限于此。例如,pred_ic_comp_flag可以指示是否对参考图片执行光照补偿。
[0277] 如果确定要对参考块执行光照补偿,则可以确定要执行光照补偿的参考图片S2020。具体地,当确定对参考块执行光照补偿时,可以确定是对参考图片L0执行光照补偿
还是对参考图片L1执行光照补偿。可以基于通过比特流用信号通知的信息来执行该确定。
该信息可以指定参考图片中的任意一个。可替选地,该信息可以是指示是否对每个参考图
片执行光照补偿的多个1比特的标记。例如,可以通过比特流用信号通知指示是否对参考图
片L0执行光照补偿的pred_ic_comp_l0_enalbed_flag或指示是否对参考图片L1执行光照
补偿的pred_ic_comp_l1_enalged_flag中的至少一个。
[0278] 如果确定了将对其执行光照补偿的参考图片,则可以确定要应用于参考图片的光照补偿参数S2030。因为已经参照图19详细描述了光照补偿参数的确定,所以将在本实施方
式中省略对其的详细描述。
[0279] 基于所确定的光照补偿参数,可以对基于要执行光照补偿的参考图片生成的预测块执行光照补偿S2040。然后,可以使用光照补偿的预测块来执行对当前块的双方向加权预
测S2050。
[0280] 图21是示出了使用应用了光照补偿的预测块来执行双方向加权预测的示例的图。在图21中,示出了已经对基于参考图片L1生成的预测块执行了光照补偿。因此,可以基于预
测块P0和光照补偿预测块(1*P1+f)的加权和来执行对当前块的双方向加权预测,所述预测
块P0基于参考图片L0来生成,所述光照补偿预测块(1*P1+f)基于参考图片L1来生成。
[0281] 还可以基于用于光照补偿的光照补偿权重来执行对当前块的双方向加权预测。
[0282] 作为示例,基于光照补偿权重,可以得到当前块的加权预测参数,以对当前块执行双方向加权预测。此时,当前块的加权预测参数w可以被设置为与光照补偿权重l相同的值,
或者可以被设置为(1‑l)。例如,当将基于光照补偿权重1的光照补偿应用于基于参考图片
L0生成的预测块时,可以基于下面的等式8来计算对当前块的双方向加权预测。
[0283] [等式8]
[0284] P(x)=l×P0(x)+f+(1‑l)*P1(x)
[0285] 作为示例,还可以通过将由加权预测参数确定的权重应用于多个预测块中之一并且将光照补偿权重应用于多个预测块中的其他预测块来执行当前块的双方向加权预测。例
如,可以基于下面的等式9来计算对当前块的双方向加权预测。
[0286] [等式9]
[0287] P(x)=l×P0(x)+f+w*P1(x)
[0288] 尽管已经基于一系列步骤或流程图描述了上述实施方式,但是它们不限制本发明的时间序列顺序,并且可以根据需要同时或以不同顺序来执行。此外,构成上述实施方式中
的框图的部件(例如,单元、模块等)中的每个可以由硬件设备或软件以及多个部件来实现。
或者可以通过单个硬件设备或软件来组合并实现多个部件。上述实施方式可以以程序指令
的形式来实现,所述程序指令可以通过各种计算机部件来执行并且被记录在计算机可读记
录介质中。计算机可读记录介质可以包括程序命令、数据文件、数据结构等中之一或者程序
命令、数据文件、数据结构等的组合。计算机可读介质的示例包括磁介质(如硬盘、软盘和磁
带)、光记录介质(如CD‑ROM和DVD)、磁光介质(如光磁软盘)、介质以及专门被配置成存储和
执行程序指令的硬件设备(如ROM、RAM、闪速存储器)等。硬件设备可以被配置成操作为用于
执行根据本发明的处理的一个或更多个软件模块,反之亦然。
[0289] 工业适用性
[0290] 本发明可以应用于能够对视频进行编码/解码的电子设备。