用于预测划分为任意形状的块的解码装置和方法

文档序号:30945622发布日期:2022-07-30 04:00阅读:70来源:国知局
用于预测划分为任意形状的块的解码装置和方法

1.本发明涉及视频的编码和解码,更具体地,本发明涉及一种通过对以给定形状划分的块执行帧间预测和帧内预测来进一步提高编码和解码的效率的方法和装置。


背景技术:

2.由于视频数据与音频数据或静止影像数据相比具有较大的数据量,因此在进行压缩处理之前,需要大量的硬件资源(包括存储器)以原始形式来存储或发送数据。
3.相应地,在解码器可以接收、解压和再现压缩的视频数据之前,存储或传输视频数据通常伴随着通过利用编码器对其进行压缩。现有的视频压缩技术包括h.264/avc和高效率视频编码(high efficiency video coding,hevc),所述高效率视频编码(hevc)比h.264/avc的编码效率提高了大约40%。
4.然而,视频影像在尺寸、分辨率和帧速率上的不断增加以及由此产生的要编码数据量的增加需要一种与现有压缩技术相比具有更好的编码效率改善和更高的影像质量改善的新的且优秀的压缩技术。


技术实现要素:

5.为了满足这些需要,本发明的目的是提供一种改善的视频编码和解码技术。具体地,本发明的一个方面涉及通过将从一个块划分的非矩形块分类为用于帧间预测的块和用于帧内预测的块来提高编码和解码的效率的技术。
6.此外,本发明的另一个方面涉及用于通过简化自适应滤波处理来提高编码和解码的效率的技术。
7.根据一个方面,本发明提供了基于第一模式来预测当前块的方法。所述方法包括:基于划分模式语法元素,将当前块划分为非矩形块;在非矩形块中确定帧内预测的帧内块和帧间预测的帧间块;以及基于运动信息来推导包括帧间块的第一区域的预测样本,并且基于帧内预测模式来推导包括帧内块的第二区域的预测样本。
8.根据另一个方面,本发明提供了用于基于第一模式来预测当前块的解码装置。所述装置包括熵解码器和预测器。熵解码器配置为基于划分模式语法元素将当前块划分为非矩形块。所述预测器配置为在非矩形块中确定要进行帧内预测的帧内块和要进行帧间预测的帧间块,基于运动信息来推导包括帧间块的第一区域的预测样本,并且基于帧内预测模式推导包括帧内块的第二区域的预测样本。
9.与仅执行帧间预测的传统方法相比,本发明可以进一步扩展其适用性,这是因为可以对非矩形块执行帧内预测,而不只是帧间预测。
10.此外,本发明可以提高帧内预测的性能,这是因为可以参考任何非矩形块的帧间预测值来执行另一个非矩形块的帧内预测。
11.此外,本发明可以通过基于相邻块的预测类型对帧间预测值和帧内预测值应用权重来有效地去除在块边缘中发生的不连续性。
12.此外,本发明可以提高比特效率,这是因为可以基于1位标志来对帧间块和帧内块的确定、是否执行混合处理以及是否应用去块滤波进行确定。
13.此外,本发明可以提高编码和解码的效率,这是因为可以通过集成样本自适应偏移的特征提取处理和自适应环路滤波的特征提取处理来简化自适应滤波。
附图说明
14.图1是示出能够实现本发明技术的视频编码装置的框图。
15.图2是用于解释通过利用qtbttt结构来分割块的方法的示意图。
16.图3a是示出多个帧内预测模式的示意图。
17.图3b是示出包括宽角度帧内预测模式的多个帧内预测模式的示意图。
18.图4是示出可以实现本发明技术的视频编码装置的框图。
19.图5是用于描述三角形划分模式的示例性图。
20.图6是用于描述基于本发明中提出的第一模式来预测当前块的方法的示例的流程图。
21.图7是用于描述划分边缘的示例性图。
22.图8是用于确定是否应用第一模式的相邻块的示例性图。
23.图9是用于描述确定帧间块和帧内块的方法的示例的示例性图。
24.图10是用于描述确定帧内预测模式的方法的示例的示例性图。
25.图11是用于描述将帧间块的预测样本用作帧内块的预测的参考样本的方法的示例的流程图。
26.图12和图13是用于描述图11的方法的示例的示例性图。
27.图14是用于描述去除划分边缘中的不连续性的方法的示例的流程图。
28.图15是用于描述推导在图14的方法中使用的权重的方法的示例的示例性图。
29.图16是滤波单元的示例性框图。
30.图17是本发明中提出的滤波单元的示例性框图。
31.图18是用于描述自适应滤波方法的示例的流程图。
32.图19a和图19b是用于描述一次差分滤波器和二次差分滤波器的示例性图。
33.图20a和图20b是在方向上划分重构的样本的示例性图。
34.图21是用于描述确定重构的样本的类别的方法的重构的样本的示例性图。
具体实施方式
35.在下文中,将参考所附附图对本发明的一些实施方案进行详细描述。在下面的描述中,相同的附图标记优选地表示相同的元件,尽管元件在不同的附图中示出。此外,在一些实施方案的以下描述中,当认为模糊了本发明的主题时,为了清楚和简洁起见,将省略对相关的已知组件和功能的具体描述。
36.图1是示出能够实现本发明技术的视频编码装置的框图。在下文中,将参考图1来描述视频编码装置以及该装置的元件。
37.视频编码装置包括:图像分割器110、预测器120、减法器130、变换器140、量化器145、重排单元150、熵编码器155、逆量化器160、逆变换器165、加法器170、滤波单元180和存
储器190。
38.视频编码装置的每个元件可以以硬件或软件或者硬件和软件的组合来实现。各个元件的功能可以实现为软件,并且微处理器可以实现为执行对应于各个元件的软件功能。
39.一个视频包括多个图像。每个图像分割为多个区域,并且对每个区域执行编码。例如,一个图像分割为一个或更多个瓦片(tile)或/和切片(slice)。这里,一个或更多个瓦片可以被定义为瓦片组。每个瓦片或切片分割为一个或更多个编码树单元(coding tree unit,ctu)。每个ctu通过树结构分割为一个或更多个编码单元(coding unit,cu)。应用于每个cu的信息被编码为cu的语法,并且共同应用于包括在一个ctu中的cu的信息被编码为ctu的语法。另外,共同应用于一个切片中的所有块的信息被编码为切片头的语法,而应用于构成一个图像的所有块的信息被编码在图像参数集(picture parameter set,pps)或图像头中。此外,由多个图像共同参考的信息被编码在序列参数集(sequence parameter set,sps)中。另外,由一个或更多个sps共同参考的信息被编码在视频参数集(video parameter set,vps)中。共同应用于一个瓦片或瓦片组的信息可以被编码为瓦片头或瓦片组头的语法。
40.图像分割器110确定编码树单元(ctu)的大小。关于ctu的大小(ctu尺寸)的信息被编码为sps或pps的语法,并且被传输至视频解码装置。
41.图像分割器110将构成视频的每个图像分割为具有预定大小的多个ctu,然后利用树结构递归地分割ctu。在树结构中,叶节点用作编码单元(cu),所述编码单元(cu)是编码的基本单元。
42.树结构可以是四叉树(quadtree,qt)、二叉树(binarytree,bt)、三叉树(ternarytree,tt)、或者由两个或更多个qt结构、bt结构和tt结构的组合形成的结构,所述四叉树(qt)即节点(或父节点)被分割为相同大小的四个从节点(或子节点),所述二叉树(bt)即节点被分割为两个从节点,所述三叉树(tt)即节点以1:2:1的比率被分割为三个从节点。例如,可以利用四叉树加二叉树(quadtree plus binarytree,qtbt)结构,或者可以利用四叉树加二叉树三叉树(quadtree plus binarytree ternarytree,qtbttt)结构。这里,bttt可以统称为多类型树(multiple-type tree,mtt)。
43.图2示例性地示出qtbttt分割树结构。如图2所示,ctu可以首先分割为qt结构。可以重复qt分割,直到分割块的大小达到qt中允许的叶节点的最小块大小minqtsize。由熵编码器155对指示qt结构的每个节点是否被分割为下层的四个节点的第一标志(qt_split_flag)进行编码,并将其用信号通知给视频解码装置。当qt的叶节点不大于bt中允许的根节点的最大块大小(maxbtsize)时,可以进一步将其分割为一个或更多个bt结构或tt结构。bt结构和/或tt结构可以具有多个分割方向。例如,可以存在两个方向,即,水平地分割节点的块的方向和竖直地分割块的方向。如图2所示,当mtt分割开始时,通过熵编码器155对指示节点是否被分割的第二标志(mtt_split_flag)、指示分割情况下的分割方向(竖直或水平)的标志、和/或指示分割类型(二叉或三叉)的标志进行编码,并将其用信号通知给视频解码装置。
44.替选地,在对指示每个节点是否被分割为下层的4个节点的第一标志(qt_split_flag)进行编码之前,可以对指示节点是否被分割的cu分割标志(split_cu_flag)进行编码。当cu分割标志(split_cu_flag)的值指示出没有执行分割时,节点的块成为分割树结构
中的叶节点,并用作编码单元(cu),编码单元(cu)是编码的基本单元。当cu分割标志(split_cu_flag)的值指示出执行分割时,视频编码装置开始以上述方式从第一标志起对标志进行编码。
45.当利用qtbt作为树结构的另一个示例时,可以存在两种分割类型,即将块水平地分割为相同大小的两个块的类型(即,对称水平分割)以及将块竖直地分割为相同大小的两个块的类型(即,对称竖直分割)。由熵编码器155对指示bt结构的每个节点是否被分割为下层的块的分割标志(split_flag)和指示分割类型的分割类型信息进行编码,并将其传输至视频解码装置。可以存在将节点的块分割为两个非对称块的额外类型。非对称分割类型可以包括以1:3的大小比率将块分割为两个矩形块的类型,或者对角线地分割节点的块的类型。
46.cu可以根据ctu的qtbt或qtbttt分割而具有各种大小。在下文中,与要编码或解码的cu(即,qtbttt的叶节点)相对应的块被称为“当前块”。在采用qtbttt分割时,当前块的形状可以是正方形或矩形。
47.预测器120对当前块进行预测以生成预测块。预测器120包括帧内预测器122和帧间预测器124。
48.通常,图像中的每个当前块可以被预测地编码。通常,利用帧内预测技术(其利用来自包括当前块的图像的数据)或帧间预测技术(其利用在包括当前块的图像之前被编码的图像的数据)。帧间预测包括单向预测和双向预测两者。
49.帧内预测器122利用在包括当前块的当前图像中位于当前块周围的像素(参考像素)来预测当前块中的像素。根据预测方向,存在多个帧内预测模式。例如,如图3a所示,多个帧内预测模式可以包括2种非方向模式和65种方向模式,2种非方向模式包括平面(planar)模式和dc模式。针对每种预测模式不同地定义要使用的相邻像素和等式。下表列出帧内预测模式编号及其名称。
50.为了对矩形形状的当前块进行有效的方向预测,可以额外使用由图3b中的虚线箭头指示的方向模式(帧内预测模式67至80和-1至-14)。这些模式可以称为“宽角度帧内预测模式”。在图3b中,箭头指示用于预测的相应参考样本,而非指示预测方向。预测方向与由箭头指示的方向相反。宽角度帧内预测模式是在当前块为矩形形状时在与特定方向模式相反的方向上执行预测而无需额外的比特传输的模式。在这种情况下,在宽角度帧内预测模式中,可以基于矩形当前块的宽度与高度的比率来确定可用于当前块的一些宽角度帧内预测模式。例如,在当前块具有高度小于宽度的矩形形状时,可以利用角度小于45度的宽角度帧内预测模式(帧内预测模式67至80)。在当前块具有宽度大于高度的矩形形状时,可以利用角度大于-135度的宽角度帧内预测模式(帧内预测模式-1至-14)。
51.帧内预测器122可以确定在对当前块进行编码时要使用的帧内预测模式。在一些示例中,帧内预测器122可以利用若干帧内预测模式来对当前块进行编码,并且从测试的模式中选择要使用的适当的帧内预测模式。例如,帧内预测器122可以利用若干测试的帧内预测模式的率失真(rate-distortion)分析来计算率失真值,并且可以在测试的模式中选择具有最佳率失真特性的帧内预测模式。
52.帧内预测器122从多个帧内预测模式中选择一个帧内预测模式,并且利用根据选择的帧内预测模式确定的相邻像素(参考像素)和等式来预测当前块。由熵编码器155对关
于选择的帧内预测模式的信息进行编码,并将其传输至视频解码装置。
53.帧间预测器124通过运动补偿来生成当前块的预测块。帧间预测器124在比当前图像更早已被编码和解码的参考图像中搜索与当前块最相似的块,并且利用搜索到的块来生成当前块的预测块。然后,帧间预测器生成与当前图像中的当前块和参考图像中的预测块之间的位移(displacement)相对应的运动向量(motion vector)。通常,对亮度(luma)分量执行运动估计,并且基于亮度分量计算的运动向量用于亮度分量和色度分量两者。由熵编码器155对包括关于参考图像的信息和关于用于预测当前块的运动向量的信息的运动信息进行编码,并将其传输至视频解码装置。
54.减法器130将当前块减去由帧内预测器122或帧间预测器124生成的预测块来生成残差块。
55.变换器140可以将残差块划分为一个或更多个变换块,对变换块执行变换,并且将变换块的残差值从像素域变换到频域。在频域中,变换块被称为包含一个或更多个变换系数值的系数块。二维(2d)变换核可以用于变换,一维(1d)变换核可以用于水平变换和竖直变换的每个。变换核可以基于离散余弦变换(dct)、离散正弦变换(dst)等。
56.变换器140可以通过利用残差块的整个大小作为变换单元来变换残差块中的残差信号。此外,变换器140可以将残差块在水平方向或竖直方向上划分为两个子块,并且可以仅对两个子块的一个执行变换。相应地,变换块的大小可以与残差块的大小(进而预测块的大小)不同。非零残差样本值可能在未变换的子块中不存在或非常稀疏。未变换的子块的残差样本可以不用信号通知,并且可以由视频解码装置全部视为“0”。根据划分方向和划分比率,可以存在数种划分类型。变换器140可以向熵编码器155提供关于残差块的编码模式(或变换模式)的信息(例如,关于编码模式的信息包括:指示是变换残差块还是变换残差块的子块的信息,指示选择为将残差块划分为子块的划分类型的信息,以及用于识别要被变换的子块的信息等)。熵编码器155可以对关于残差块的编码模式(或变换模式)的信息进行编码。
57.量化器145对从变换器140输出的变换系数进行量化,并且将量化的变换系数输出到熵编码器155。量化器145可以不经变换而对用于特定块或帧的相关的残差块直接地进行量化。
58.重排单元150可以用量化的变换系数执行系数值的重排。重排单元150可以使用系数扫描(coefficient scanning)将二维系数阵列改变为一维系数序列。例如,重排单元150可以通过锯齿形扫描(zig-zag scan)或对角线扫描(diagonal scan)从dc系数向高频区域中的系数对系数进行扫描,以输出一维系数序列。根据变换单元的大小和帧内预测模式,使用的锯齿形扫描可以被用于在列方向上扫描二维系数阵列的竖直扫描和用于在行方向上扫描二维块形状系数的水平扫描代替。换句话说,可以根据变换单元的大小和帧内预测模式在锯齿形扫描、对角线扫描、竖直扫描和水平扫描中确定要使用的扫描方法。
59.熵编码器155通过利用诸如基于上下文的自适应二进制算术编码(context-based adaptive binary arithmetic code,cabac)、指数哥伦布(exponential golomb)等各种编码方法对从重排单元150输出的一维量化的变换系数的序列进行编码,进行编码以生成比特流。
60.熵编码器155对与块分割相关的信息(例如,ctu大小、cu分割标志、qt分割标志、
mtt分割类型和mtt分割方向)进行编码,使得视频解码装置可以采用与视频编码装置相同的方式来分割块。另外,熵编码器155对关于指示当前块是由帧内预测进行编码还是由帧间预测进行编码的预测类型的信息进行编码,并且根据预测类型对帧内预测信息(即,关于帧内预测模式的信息)或帧间预测信息(即,关于参考图像索引和运动向量的信息)进行编码。
61.逆量化器160对从量化器145输出的量化的变换系数进行逆量化,以生成变换系数。逆变换器165将从逆量化器160输出的变换系数从频域变换到空域,并且重构残差块。
62.加法器170将重构的残差块和由预测器120生成的预测块相加,以重构当前块。重构的当前块中的像素在执行后续块的帧内预测时用作参考像素。
63.滤波单元180对重构的像素进行滤波,以减少由于基于块的预测和变换/量化而产生的块伪影(blocking artifacts)、振铃伪影(ringing artifacts)和模糊伪影(blurring artifacts)。滤波单元180可以包括去块滤波器182和样本自适应偏移(sample adaptive offset,sao)滤波器184。
64.去块滤波器180对重构的块之间的边界进行滤波,以去除由逐块编码/解码而引起的块伪影,并且sao滤波器184对去块滤波的视频执行额外的滤波。sao滤波器184是用于对由有损编码(lossy coding)引起的重构的像素与原始的像素之间的差进行补偿的滤波器。
65.通过去块滤波器182和sao滤波器184滤波的重构的块存储在存储器190中。一旦一个图像中的所有块被重构,重构的图像就可以用作后续要被编码的图像中的块的帧间预测的参考图像。
66.图4是能够实现本发明技术的视频解码装置的示例性功能框图。在下文中,将参考图4来描述视频解码装置及其组件。
67.视频解码装置可以包括:熵解码器410、重排单元415、逆量化器420、逆变换器430、预测器440、加法器450、滤波单元460和存储器470。
68.类似于图1的视频编码装置,视频解码装置的每个元件可以用硬件、软件或硬件和软件的组合来实现。此外,每个元件的功能可以用软件来实现,并且微处理器可以实现为执行对应于每个元件的软件功能。
69.熵解码器410通过对由视频编码装置生成的比特流进行解码并提取与块分割相关的信息来确定要解码的当前块,并且提取重构当前块所需的预测信息和关于残差信号的信息等。
70.熵解码器410从序列参数集(sps)或图像参数集(pps)中提取关于ctu大小的信息,确定ctu的大小,并且将图像分割为确定大小的ctu。然后,解码器将ctu确定为树结构的最高层(即,根节点),并且提取关于ctu的分割信息,以利用树结构来分割ctu。
71.例如,当利用qtbttt结构来分割ctu时,提取与qt的分割相关的第一标志(qt_split_flag),以将每个节点分割为子层的四个节点。对于与qt的叶节点相对应的节点,提取与mtt的分割有关的第二标志(mtt_split_flag)以及关于分割方向(竖直/水平)和/或分割类型(二叉/三叉)的信息,从而以mtt结构来分割相应的叶节点。由此,以bt或tt结构来递归地分割qt的叶节点下方的每个节点。
72.作为另一个示例,当利用qtbttt结构来分割ctu时,可以提取指示是否分割cu的cu分割标志(split_cu_flag)。当分割相应块时,可以提取第一标志(qt_split_flag)。在分割操作中,在零个或更多个递归qt分割之后,每个节点可能发生零个或更多个递归mtt分割。
例如,ctu可以直接经历mtt分割而不经历qt分割,或者仅经历qt分割多次。
73.作为另一个示例,当利用qtbt结构来分割ctu时,提取与qt分割相关的第一标志(qt_split_flag),并且将每个节点分割为下层的四个节点。然后,提取指示是否以bt进一步分割与qt的叶节点相对应的节点的分割标志(split_flag)以及分割方向信息。
74.一旦通过树结构分割来确定要解码的当前块,熵解码器410就提取关于指示当前块是被帧内预测还是被帧间预测的预测类型的信息。当预测类型信息指示帧内预测时,熵解码器410提取当前块的帧内预测信息(帧内预测模式)的语法元素。当预测类型信息指示帧间预测时,熵解码器410提取用于帧间预测信息(即,指示运动向量和由运动向量参考的参考图像的信息)的语法元素。
75.另一方面,熵解码器410从比特流提取关于残差块的编码模式的信息(例如,关于是对残差块进行编码还是仅对残差块的子块进行编码的信息,指示选择为将残差块划分为子块的划分类型的信息,用于识别被编码的残差子块的信息,量化参数等)。此外,熵解码器410提取关于量化的当前块的变换系数的信息作为关于残差信号的信息。
76.重排单元415可以以由视频编码装置执行的系数扫描的相反顺序,将由熵解码器410进行熵解码的量化的1d变换系数的序列改变为2d系数阵列(即,块)。
77.逆量化器420对量化的变换系数进行逆量化,并且逆变换器430基于关于残差块的编码模式的信息,通过将逆量化的变换系数从频域逆变换到空域,经由重构残差信号来生成重构的当前块的残差块。
78.当关于残差块的编码模式的信息指示出在视频编码装置中对当前块的残差块进行编码时,逆变换器430利用当前块的大小(以及因此要恢复的残差块的大小)作为变换单元,通过对逆量化的变换系数执行逆变换来生成重构的当前块的残差块。
79.此外,当关于残差块的编码模式的信息指示出在视频编码装置中仅对残差块的一个子块编码时,逆变换器430利用变换的子块的大小作为变换单位,经由对逆量化的变换系数进行逆变换,通过重构变换的子块的残差信号,并且通过将未变换的子块的残差信号设置为“0”,生成重构的当前块的残差块。
80.预测器440可以包括帧内预测器442和帧间预测器444。在当前块的预测类型是帧内预测时,激活帧内预测器442,而在当前块的预测类型是帧间预测时,激活帧间预测器444。
81.帧内预测器442基于从熵解码器410提取的帧内预测模式的语法元素,在多个帧内预测模式中确定当前块的帧内预测模式,并且根据帧内预测模式,利用当前块周围的参考像素来预测当前块。
82.帧间预测器444利用从熵解码器410提取的帧间预测模式的语法元素来确定当前块的运动向量和由运动向量参考的参考图像,并且基于运动向量和参考图像来预测当前块。
83.加法器450通过将从逆变换器430输出的残差块与从帧间预测器444或帧内预测器442输出的预测块相加来重构当前块。在对后续要被解码的块进行帧内预测时,重构的当前块中的像素用作参考像素。
84.滤波单元460可以包括去块滤波器462和sao滤波器464。去块滤波器462对重构的块之间的边界进行去块滤波,以去除由逐块解码引起的块伪影。sao滤波器464在对相应偏
移进行去块滤波之后对重构的块执行额外的滤波,以便补偿由有损编码引起的重构的像素与原始的像素之间的差。通过去块滤波器462和sao滤波器464滤波的重构的块存储在存储器470中。当一个图像中的所有块被重构时,重构的图像用作后续要被编码的图像中的块的帧间预测的参考图像。
85.编码装置和解码装置可以将当前块划分为具有矩形形状的块,并且可以将当前块划分为具有三角形形状的块,以便提高预测性能。为此,编码装置和解码装置还可以支持三角形划分模式(triangle partition mode,tpm)。
86.在tpm中,如图5所示,编码装置将当前块划分为两个三角形块,并且基于合并模式对三角形块的每个执行帧间预测。编码装置对指示两种划分形式(在右下对角线方向上的划分(图5(a))和在右上对角线方向上的划分(图5(b))的任何一个的语法元素和用于三角形块的每个的合并索引(运动信息)的语法元素进行编码,然后将其用信号通知给解码装置。解码装置通过利用指示分割形式的语法元素将当前块划分为三角形块,并且基于用信号发送的合并索引对三角形块的每个执行帧间预测。编码装置和解码装置可以对划分边缘额外地执行混合,以去除在划分边缘中发生的样本值的不连续性。
87.然而,随着图像分辨率的逐渐增加,预测块的大小也增加。相应地,需要具有更多不同形状(例如,给定形状或非矩形形状)的块划分以及对划分的块应用帧内预测。
88.本发明提出了一种将当前块划分为非矩形块的方法以及一种除了帧间预测之外还将帧内预测应用于非矩形块的方法。本发明的方法可以表示为giip模式(用于帧内和帧间预测的几何划分)或第一模式。
89.图6示出了在本发明中提出的方法的示例的流程图。
90.1.块划分
91.编码装置可以将当前块划分为非矩形块,可以对指示非矩形块被划分的结构的划分模式语法元素进行编码,并且可以将划分模式语法元素用信号通知给解码装置。熵解码器410可以从比特流解码划分模式语法元素,并且可以基于解码的划分模式语法元素将当前块划分为非矩形块(s604)。
92.在图7的示例中,可以通过从当前块(cu)的中心到划分边缘的垂直距离(di)以及由划分边缘和当前块的水平方向形成的角度(ai)来确定划分边缘或边界。ai可以具有在0度至360度之间的值。d
max
(也就是说,di的最大值)可以基于ai以及当前块的宽度(w)和高度(h)如等式1所示确定。
93.[等式1]
[0094][0095]
在等式1中,指示从水平轴线到块边缘的角度(ai)。b的减法用于防止当前块的拐角和块边缘变得彼此过于接近。
[0096]
划分模式语法元素可以直接指示ai和di或者可以是在ai和di的预设值中指示当前块的划分边缘的索引。如果划分模式语法元素实现为索引,则编码装置和解码装置可以通过利用用于ai和di的预设值的查找表来确定与由划分模式语法元素指示的索引相对应的ai和di。
[0097]
2.确定是否执行giip模式
[0098]
根据实施方案,在执行处理s604之前,可以首先执行确定是否应用giip模式的处理s602。可以基于语法元素、相邻块的预测类型、划分边缘的角度等来确定是否应用giip模式。
[0099]
作为一个示例,编码装置可以确定是否已经将giip模式应用于当前块,并且将应用语法元素的值设置为对应于确定结果的值。编码装置可以编码应用语法元素,并且可以将应用语法元素用信号通知给解码装置。熵解码器410可以从比特流解码应用语法元素,并且可以基于应用语法元素的值来确定是否应用giip模式(s602)。
[0100]
应用语法元素可以是1位标志。当应用语法元素==0时,不应用giip模式。在这种情况下,如在常规tpm中,可以执行利用非矩形块的每个的合并索引的帧间预测。当应用语法元素==1时,可以应用giip模式,可以对帧间块(基于非矩形块中的帧间预测类型而预测的块)执行利用运动信息的帧间预测,并且可以对帧内块(基于非矩形块中的帧内预测类型而预测的块)执行利用帧内预测模式的帧内预测。
[0101]
作为另一个示例,编码装置和解码装置可以基于块的数量来确定是否应用giip模式,所述块的数量是基于在位于与当前块相邻的相邻块中帧内预测类型来预测的。
[0102]
在图8的示例中,可以通过考虑相邻的块a、b、c和d的预测类型或者通过考虑相邻的块a和b的预测类型来确定是否应用giip模式。
[0103]
如果考虑a、b、c和d的预测类型,则当帧内预测的相邻块的数量为3或更多时,可以确定出应用giip模式。当帧内预测的相邻块的数量为2时,可以基于应用语法元素的值来确定是否应用giip模式。当帧内预测的相邻块的数量为1或更少时,可以确定出不应用giip模式。根据实施方案,当帧内预测的相邻块的数量为2或更多或者3时,可以确定出应用giip模式。根据实施方案,当相邻块的数量少于2或3时,可以确定出不应用giip模式。
[0104]
如果考虑相邻的块a和b的预测类型,则当帧内预测的相邻块的数量为2时,可以确定出应用giip模式。当帧内预测的相邻块的数量为1时,可以基于应用语法元素的值来确定是否应用giip模式。当帧内预测的相邻块的数量为0时,可以确定出不应用giip模式。根据实施方案,当帧内预测的相邻块的数量为1或更多或者2时,可以确定出应用giip模式。根据实施方案,当帧内预测的相邻块的数量少于1或2时,可以确定出不应用giip模式。
[0105]
3.确定帧间块和帧内块
[0106]
返回参考处理s604,在将当前块划分为非矩形块时,执行处理s606,用于确定非矩形块中要进行帧内预测的帧内块和要进行帧间预测的帧间块。处理s606可以是确定非矩形块的预测类型的处理。
[0107]
非矩形块的预测类型可以是1)由指示非矩形块的预测类型的类型语法元素显式地确定,或者2)可以由划分边缘的角度和从当前块的中心到划分边缘的垂直距离的一个或更多个隐式地确定(s608)。
[0108]
在1)的情况下,编码装置可以将非矩形块的预测类型设置为类型语法元素的值,编码类型语法元素,并且将类型语法元素用信号通知给解码装置。解码装置可以从比特流解码类型语法元素。预测器440可以基于类型语法元素的值来确定非矩形块的预测类型。
[0109]
在2)的情况下,预测器120、预测器440可以基于划分边缘的角度(由划分边缘和当前块的水平方向形成的角度)和垂直距离(划分边缘与中心之间的垂直距离)的一个或更多
个来确定非矩形块的预测类型。
[0110]
如图9(a)所示,当划分边缘的角度为0度至90度时,位于顶部的非矩形块(顶部块)比位于底部的非矩形块(底部块)更靠近用于帧内预测的参考样本(用图案标记的样本)。相应地,可以将顶部块确定为帧内块,并且可以将底部块确定为帧间块。
[0111]
替选地或附加地,在图9(a)的情况下,随着划分边缘到当前块的中心的垂直距离增加,邻近顶部块的参考样本的数量减少,并且邻近底部块的参考样本的数量增加。如果垂直距离变得非常大,并且邻近顶部块的参考样本的数量少于邻近底部块的参考样本的数量,则可以将顶部块确定为帧间块,并且可以将底部块确定为帧内块。
[0112]
如图9(b)所示,如果划分边缘的角度为90度至180度,则位于左侧的非矩形块(块a)比位于右侧的非矩形块(块b)更靠近参考样本。相应地,在这种情况下,可以将块a确定为帧内块,并且可以将块b确定为帧间块。
[0113]
替选地或附加地,在图9(b)的情况下,随着划分边缘到中心的垂直距离增加,邻近左侧块(块a)的参考样本的数量减少,并且邻近右侧块(块b)的参考样本的数量增加。如果垂直距离变得非常大,并且邻近块a的参考样本的数量少于邻近块b的参考样本的数量,则可以将块a确定为帧间块,并且可以将块b确定为帧内块。
[0114]
如图9(c)所示,如果划分边缘的角度为90度至180度,并且划分边缘位于当前块的中心上方,则与位于底部的非矩形块(块a)相比,位于顶部的非矩形块(块b)更靠近参考样本。相应地,在这种情况下,可以将块b确定为帧内块,并且可以将块a确定为帧间块。
[0115]
替选地或附加地,在图9(c)的情况下,随着划分边缘到中心的垂直距离增加,邻近块b的参考样本的数量减少,并且邻近块a的参考样本的数量增加。如果垂直距离变得非常大,并且邻近块b的参考样本的数量少于邻近块a的参考样本的数量,则可以将块b确定为帧间块,并且可以将块a确定为帧内块。
[0116]
4.推导非矩形块的预测样本(预测的执行)
[0117]
当确定帧间块和帧内块时,执行处理s610,用于推导或生成针对帧间块和帧内块的每个的预测样本。
[0118]
可以基于运动信息来执行推导帧间块的预测样本的处理。编码装置可以对在帧间块的帧间预测中使用的运动信息(例如,合并索引)进行编码,并且将运动信息用信号通知给解码装置。解码装置可以从比特流解码运动信息。帧间预测器444可以通过利用运动信息推导第一区域的预测样本。
[0119]
第一区域是包括帧间块的区域,并且可以包括在当前块中。相应地,第一区域可以与帧间块相同,或者是包括位于划分边缘周围的更多样本的区域,或者与当前块相同。如果第一区域与当前块相同,则可以推导用于整个当前块的帧间预测样本。
[0120]
确定帧内预测模式
[0121]
可以基于帧内预测模式来执行推导帧内块的预测样本的处理。编码装置可以对关于在帧内块的帧内预测中使用的预测模式(帧内预测模式)的信息进行编码,并且可以将该信息用信号通知给解码装置。关于帧内预测模式的信息可以是指示预设的帧内预测模式候选的任何一个的索引(模式索引)。解码装置可以从比特流解码关于帧内预测模式的信息。帧内预测器442可以通过利用由解码的信息指示的帧内预测模式来推导第二区域的预测样本。
[0122]
第二区域是包括帧内块的区域,并且可以包括在当前块中。相应地,第二区域可以与帧内块相同,或者是包括位于划分边缘周围的更多样本的区域,或者与当前块相同。如果第二区域与当前块相同,则可以推导用于整个当前块的帧内预测样本。
[0123]
根据实施方案,帧内预测模式候选可以包括与划分边缘的角度相同或类似(对应于划分边缘的角度)的一个或更多个方向模式。根据另一个实施方案,帧内预测模式候选可以进一步包括除了对应于划分边缘的方向模式之外的水平(horizontal,hor)模式和竖直(vertical,ver)模式,并且可以进一步包括作为非方向模式的平面模式。
[0124]
如图9(a)所示,如果与划分边缘的角度相对应的方向模式是模式a和模式b,则帧内预测模式候选可以包括方向模式a和方向模式b。除了方向模式a和方向模式b之外,帧内预测模式候选可以进一步包括平面模式、hor模式和ver模式的一个或更多个。
[0125]
如图9(b)所示,如果与划分边缘的角度相对应的方向模式是模式a,则帧内预测模式候选可以包括方向模式a。除了方向模式a之外,帧内预测模式候选可以进一步包括平面模式和hor模式的一个或更多个。
[0126]
如图9(c)所示,如果与划分边缘的角度相对应的方向模式是模式a,则帧内预测模式候选可以包括方向模式a。除了方向模式a之外,帧内预测模式候选可以进一步包括平面模式和ver模式的一个或更多个。
[0127]
根据实施方案,帧内预测模式候选可以包括如图3b所示的93个方向模式(除了广角帧内预测模式中的平面模式和dc模式),而与划分边缘的角度无关,或者可以包括如图3a所示的67个帧内预测模式。根据另一个实施方案,帧内预测模式候选可以包括35个帧内预测模式(包括hor方向模式、ver方向模式和平面模式)。
[0128]
在另一些实施方案中,在帧内块的预测中使用的帧内预测模式不是由关于帧内预测模式的信息显式地指示的,而是可以在编码装置与解码装置之间预先约定的。例如,在帧内块的预测中使用的帧内预测模式可以预先约定为帧内预测模式候选的任何一个,例如,预先约定为平面模式。
[0129]
推导帧内块的预测样本
[0130]
帧内块的预测样本可以仅参考位于当前块周围的样本(第一类型)来推导,或者可以参考位于当前块周围的样本和帧间块的预测样本二者(第二类型)来推导。
[0131]
是否执行第二类型可以通过1位标志显式地指示,或者可以预先约定出当应用giip模式时总是执行第二类型(隐式)。如果显式地指示是否执行第二类型,则编码装置可以确定是否执行第二类型,并且可以将其结果设置为1位标志的值。编码装置可以编码1位标志,并且可以将1位标志用信号通知给解码装置。熵解码器410可以从比特流解码1位标志。
[0132]
如果执行第二类型,则帧间预测器124、帧间预测器444可以通过基于运动信息执行运动补偿处理来推导帧间块的预测样本(s1102)。帧内预测器122、帧内预测器442可以参考位于当前块周围的样本和帧间块的预测样本两者来推导帧内块的预测样本(s1104)。用于第二类型的帧内预测模式候选可以包括如图12中示例的覆盖360度的方向模式、平面模式和dc模式。
[0133]
可以在处理s1102与处理s1104之间执行对帧间块的预测样本应用平滑滤波器的处理。也就是说,帧内预测器122、帧内预测器442可以参考已经应用了平滑滤波器的帧间块
的预测样本来推导帧内块的预测样本。是否应用平滑滤波器可以通过由编码装置用信号通知的1位标志显式地指示,或者可以在编码装置与解码装置之间预先约定。
[0134]
帧内预测器122、帧内预测器442可以参考帧间块的预测样本的一些或全部来推导帧内块的预测样本。例如,帧内预测器122、帧内预测器442可以参考帧间块的预测样本中邻近划分边缘的预测样本来推导帧内块的预测样本(s1106)。
[0135]
图13示出了参考邻近划分边缘的帧间块的预测样本,基于平面模式来推导帧内块的预测样本的示例。
[0136]
在图13(a)的示例中,可以参考相邻样本(标记有图案的样本)中的r
0,9
和r
9,0
以及帧间块的预测样本(p
1,8
、p
2,7
、p
3,6
、p
4,5
、p
5,4
、p
6,3
、p
7,2
和p
8,1
)中的p
3,6
和p
7,2
来推导帧内块内的样本(p)的预测样本。
[0137]
在图13(b)的示例中,可以参考相邻样本(标记有图案的样本)中的r
0,2
和r
2,0
以及帧间块的预测样本(p
1,6
、p
2,5
、p
3,4
、p
4,3
、p
5,2
和p
6,1
)中的p
2,5
和p
5,2
来推导帧内块内的样本(p)的预测样本。
[0138]
在图13(c)的示例中,可以参考相邻样本(标记有图案的样本)中的r
0,6
和r
0,9
以及帧间块的预测样本(p
1,2
、p
2,3
、p
3,4
、p
4,5
、p
5,6
、p
6,7
和p
7,8
)中的p
3,4
和p
5,6
来推导帧内块内的样本(p)的预测样本。
[0139]
在图13(d)的示例中,可以参考相邻样本(标记有图案的样本)中的r
7,0
和r
9,0
以及帧间块的预测样本(p
2,1
、p
3,2
、p
4,3
、p
5,4
、p
6,5
、p
7,6
和p
8,7
)中的p
4,3
和p
7,6
来推导帧内块内的样本(p)的预测样本。
[0140]
5.预测样本混合
[0141]
当预测样本的推导完成时,可以执行混合处理,用于去除或减少在划分边缘中发生的不连续性。混合处理可以是基于目标样本与划分边缘之间的距离,针对当前块内的要预测的目标样本执行帧间预测值和帧内预测值的加权和的处理。
[0142]
是否执行混合处理可以通过从编码装置用信号通知给解码装置的1位标志显式地指示,或者可以在编码装置与解码装置之间预先约定。可以基于帧内块的帧内预测模式、划分边缘的相邻样本之间的样本值差等来确定是否执行混合处理。例如,当样本值差大于或小于预设的特定值时,可以执行混合处理。
[0143]
推导权重
[0144]
如果确定出应用混合处理,则预测器120、预测器440可以推导帧间权重和帧内权重(s1402)。可以通过考虑当前块中的目标样本与划分边缘之间的距离、相邻块的预测类型、帧内预测模式等来推导帧间权重和帧内权重。帧间权重与要应用于目标样本的帧间预测值的权重相对应。帧内权重与要应用于目标样本的帧内预测值的权重相对应。
[0145]
通过考虑目标样本与划分边缘之间的距离,可以推导帧间权重和帧内权重。例如,可以使用等式2。
[0146]
[等式2]
[0147]
sampleweight
intra
[x][y]=blendfilter[dist]
[0148]
sampleweight
inter
[x][y]=y-blendfilter[dist]
[0149]
在等式2中,(x,y)指示目标样本的位置,sampleweight
intra
指示帧内权重,并且sampleweight
inter
指示帧间权重。y由混合滤波器确定,并且如果使用n位混合滤波器,则将y
设置为等于2n。相应地,如果使用3位混合滤波器,则y=8。变量dist是通过缩放目标样本与划分边缘之间的垂直距离而获得的值,并且变量dist可以通过基于目标样本的位置与划分边缘之间的距离以及划分边缘的角度的查找表来获得。当dist值为0至14时,可以通过下面的表1来推导3位blendfilter[dist]的值。
[0150]
[表1]
[0151]
dist01234567891011121314blendfilter[dist]445555666677778
[0152]
可以通过进一步考虑相邻块的预测类型,例如通过等式2、等式3和等式4来推导帧间权重和帧内权重。
[0153]
[等式3]
[0154]
sampleweight
intra
[x][y]=blendfilter[dist]-a
[0155]
sampleweight
inter
[x][y]=y-blendfilter[dist]+a
[0156]
[等式4]
[0157]
sampleweight
intra
[x][y]=blendfilter[dist]+a
[0158]
sampleweight
inter
[x][y]=y-blendfilter[dist]-a
[0159]
当由帧内预测类型预测的相邻块(帧内相邻块)的数量小于由帧间预测类型预测的相邻块(帧间相邻块)的数量时,可以应用等式3。也就是说,当帧间相邻块的数量大于帧内相邻块的数量时,可以通过将偏移(a)与值“y-blendfilter[dist]”相加来推导帧间权重,并且可以通过将值blendfilter[dist]减去偏移(a)来推导帧内权重。在这种情况下,可以基于帧内相邻块的数量与帧间相邻块的数量之间的差来预设偏移(a)。
[0160]
当帧内相邻块的数量大于帧间相邻块的数量时,可以应用等式4。也就是说,当帧内相邻块的数量大于帧间相邻块的数量时,可以通过将偏移(a)与值blendfilter[dist]相加来推导帧内权重,并且可以通过将值“y-blendfilter[dist]”减去偏移(a)来推导帧间权重。
[0161]
图15示出了通过进一步考虑两个相邻块的预测类型来推导帧间权重和帧内权重的示例。
[0162]
在图15中,a和b指示两个相邻块,(x,y)指示目标样本的位置,di指示目标样本与划分边缘之间的距离(表示为虚线的直线)。
[0163]
如果a和b的任何一个是基于帧内预测类型预测的,并且另一个是基于帧间预测类型预测的,则可以通过等式2来推导帧间权重和帧内权重。如果a和b两者是基于帧间预测类型预测的,则可以通过等式3来推导帧间权重和帧内权重。如果a和b两者是基于帧内预测类型预测的,则可以通过等式4来推导帧间权重和帧内权重。
[0164]
推导加权的预测值
[0165]
当推导帧间权重和帧内权重时,预测器120、预测器440可以通过混合处理来推导针对加权的目标样本的预测值,在所述混合处理中,将帧内权重和帧间权重分别应用于针对目标样本的帧内预测值和帧间预测值。
[0166]
可以通过等式5来执行推导加权的预测值的处理。
[0167]
[等式5]
[0168]
p
blended
=(sampleweight
intra
*p
intra
+sampleweight
inter
*p
inter
+2
n-1
)>>n
[0169]
在等式5中,p
blended
指示加权的预测值。p
intra
指示针对目标样本的帧内预测值。p
inter
指示针对目标样本的帧间预测值。
[0170]
6.划分边缘去块滤波
[0171]
如果已经执行了giip模式,则可以将去块滤波器应用于块边缘。
[0172]
是否执行去块滤波可以通过从编码装置用信号通知给解码装置的1位标志显式地指示,或者可以在编码装置与解码装置之间预先约定出总是执行去块滤波。当邻近块边缘的样本的值之间的差大于或小于预设的特定值(阈值)时可以执行去块滤波,或者当邻近块边缘的样本的值的量化参数值大于或小于预设的参数值时可以执行去块滤波。此外,可以基于帧内预测模式来确定是否执行去块滤波。可以基于帧内预测模式来确定在去块滤波中使用的去块滤波器。
[0173]
当预测样本(预测块)和残差样本(残差块)相加以重构图像时,对重构的图像执行滤波。滤波的图像可以用于另一个图像的预测或存储在存储器190、存储器470中用于显示。
[0174]
如图16所示,常规滤波单元可以配置为包括去块滤波器、sao和自适应环路滤波器(adaptive loop filter,alf)。可以按照去块滤波器、sao和alf的次序对重构的图像顺序地滤波,以便输出滤波的图像。
[0175]
sao根据预定义的准则对重构的图像内的样本进行分类,并且基于相应的分类来自适应地应用偏移。也就是说,sao将偏移自适应地应用于样本。对于sao的应用,模式信息(指示边缘偏移、频带偏移和不执行sao中的任何一个类型(模式)的信息)和偏移信息在ctu级别从编码装置用信号通知给解码装置。
[0176]
alf以每块为基础对样本特征应用自适应滤波,以便使原始图像与重构的图像之间的误差最小化。对于alf的应用,在自适应参数集(adaption parameter set,aps)级别将与滤波器集有关的信息从编码装置用信号通知给解码装置,并且在ctu级别选择滤波器集。可以在ctu内的块单元中推导模式(根据块内的样本的方向和活动,所述模式指示总共n个类别(模式)中相应的块所属的任何一个类别)。将与推导出的模式相对应的滤波器应用于块的重构的图像。
[0177]
如上所述,sao和alf对样本单元中的样本应用自适应偏移和滤波器。此外,sao和alf执行“推导样本特征的处理”和“应用适合该特征的偏移和滤波器的处理”。
[0178]
当应用sao和alf时,针对sao和alf的每个冗余地执行或单独地执行“推导样本特征的处理”。本发明提出了一种将单独执行的处理集成到一个处理中以针对重构的图像有效地执行滤波处理的方法。
[0179]
图17是本发明中提出的滤波单元180、滤波单元460的示例性框图。图18是用于描述自适应滤波方法的示例的流程图。
[0180]
如图17所示,滤波单元180、滤波单元460可以配置为包括去块滤波器182、去块滤波器462和自适应滤波单元1700。自适应滤波单元1700可以配置为包括提取单元1710、映射单元1720、确定单元1730、滤波单元1740和裁剪单元1750。
[0181]
a.特征的提取
[0182]
提取单元1710可以从已经应用了去块滤波的重构的图像内的一个或更多个重构的样本提取一个或更多个特征(s1802)。
[0183]
可以针对在重构的图像内的重构的样本中执行滤波的每个单元来提取特征。在这
种情况下,执行滤波的单元可以是样本、块、ctu等的任何一个。特征可以是重构的样本的代表值,例如重构的样本的平均值、最可能值、中心值、最小值、最大值等。此外,特征可以是利用重构的样本的代表性值而计算的值。
[0184]
可以通过三个抽头的一维滤波器或二维滤波器来提取特征。一维滤波器可以在数个方向上应用,所述数个方向例如是竖直方向、水平方向和对角线方向。对于每个方向,可以提取从应用一维滤波器得到的值作为该方向的特征。例如,可以提取滤波的值的绝对值作为特征。二维滤波器可以是一阶微分滤波器或二阶微分滤波器。二维滤波器可以是针对数个方向定义的一阶微分滤波器或二阶微分滤波器,所述数个方向例如是水平方向(图19a的(b)、图19b的(b))、竖直方向(图19a的(a)、图19b的(a))和对角线方向(图19a的(c)和(d)、图19b的(c)和(d))。
[0185]
可以利用对特征的提取所需的信息来提取特征。用于特征的提取的信息可以是滤波器相关的信息。滤波器相关的信息可以包括滤波器的形状、大小、系数等,可以包括滤波器的模式信息,或者可以包括残差滤波器的系数。在这种情况下,解码装置的提取单元1710可以通过利用对特征的提取所需的信息来确定滤波器,并且可以通过利用确定的滤波器从重构的样本提取特征。
[0186]
对特征的提取所需的信息可以是根据方向指示可用于重构的样本的若干模式的任何一个的模式信息。在这种情况下,解码装置的提取单元1710可以通过利用对特征的提取所需的信息来确定重构的样本的模式(方向),并且可以通过利用确定的模式从重构的样本提取特征(当前重构的样本和相邻重构的样本)。
[0187]
图20a和图20b示出了可以提取为特征的当前重构的样本和相邻重构的样本的示例。特征可以是如图20a的(a)中水平布置的当前重构的样本(c)和相邻重构的样本(a,b)的一些,或者可以是如图20a的(b)中竖直布置的当前重构的样本(c)和相邻重构的样本(a,b)的一些。特征可以是如图20b的(a)所示在135度对角线方向上布置的当前重构的样本(c)和相邻重构的样本(a,b)的一些,或者可以是如图20b的(b)所示在45度对角线方向上布置的当前重构的样本(c)和相邻重构的样本(a,b)的一些。
[0188]
对特征的提取所需的信息可以由编码装置编码,并且可以通过sps级别、pps级别、切片头(slice header,sh)级别、图像头(picture header,ph)级别和ctu级别的一个或更多个用信号通知给解码装置。
[0189]
可以将提取的特征输入至映射单元1720。根据实施方案,可以将对提取的特征进行量化的量化值输入至映射单元1720,或者可以将利用查找表映射的提取的特征的映射值输入至映射单元1720。关于查找表的信息可以从编码装置用信号通知给解码装置,或者可以在编码装置与解码装置之间预先约定,以便使用相同的查找表。
[0190]
b.类别映射
[0191]
映射单元1720可以基于提取的特征值来确定重构的样本所属的类别(s1804)。该处理可以是将提取的特征映射到预设的类别中重构的样本所属的类别的处理。
[0192]
例如,类别映射可以通过利用等式来执行。用于类别映射的等式可以从编码装置用信号通知给解码装置,或者等式的参数可以从编码装置用信号通知给解码装置。
[0193]
作为示例,等式6可以用作类别映射的等式。
[0194]
[等式6]
[0195]
c=a
×
m+b
[0196]
在等式6中,c指示映射的类别,并且a和b指示输入至映射单元1720的两个特征。a和b的任何一个可以是以当前重构的样本为中心的变化幅度,或者可以是变化的方向。可以基于a、b和n(预设的类别的数量)来确定m。例如,如果n=25、c=0至24、a=0至4并且b=0至4,则可以确定m=5。
[0197]
作为另一个示例,类别映射可以利用查找表来执行。编码装置可以对用于类别映射的查找表进行编码,并且将查找表用信号通知给解码装置,或者编码装置和解码装置可以预先配置为使用相同的查找表。
[0198]
作为又一个示例,如果提取当前重构的样本和相邻重构的样本作为特征并且将其输入至映射单元1720,则可以基于当前重构的样本的样本值和相邻重构的样本的样本值来对类别进行映射。
[0199]
参考图21,当相邻重构的样本(a,c)的值大于当前重构的样本(b)的值并且相邻重构的样本(a,c)的值与图21(a)中所示相同时,可以对第一类别进行映射。当相邻重构的样本(a,c)的任何一个的值与当前重构的样本(b)的值相同,并且相邻重构的样本(a,c)的另一个的值大于当前重构的样本(b)的值时,如图21(b)和图21(c)中所示,可以对第二类别进行映射。当相邻重构的样本(a,c)的任何一个的值与当前重构的样本(b)的值相同,并且相邻重构的样本(a,c)的另一个的值小于当前重构的样本(b)的值时,如图21(d)和图21(e)中所示,可以对第三类别进行映射。在当前重构的样本(b)的值大于相邻重构的样本(a,c)的值,并且相邻重构的样本(a,c)的值与图21(f)中所示相同时,可以对第四类别进行映射。此外,与图21(a)至图21(f)不对应的情况可以确定为第五类别。可以将映射的类别输入至确定单元1730。
[0200]
c.确定滤波器
[0201]
确定单元1730可以确定与映射的类别相对应的sao滤波器和alf滤波器。
[0202]
编码装置可以基于映射的类别,针对执行滤波的每个单元来生成或确定最佳滤波器系数(最佳alf滤波器)和偏移(最佳sao滤波器)。例如,最佳alf滤波器和最佳sao滤波器可以利用以下方法来确定:通过将最小二乘法应用于原始样本的值和重构的样本的值来确定最佳alf滤波器,并且然后利用重构的样本的值与已经应用了最佳alf的原始样本的值之间的误差的平均值来确定偏移。
[0203]
可以对关于最佳alf滤波器的信息(滤波器系数信息)和关于最佳sao滤波器的信息(偏移信息)进行编码并且将其从编码装置用信号通知给解码装置。可以在aps级别或高于aps级别的级别(例如,切片头级别)用信号通知滤波器系数信息和偏移信息。
[0204]
解码装置可以通过利用用信号通知的滤波器系数信息和偏移信息来确定与类别相对应的sao滤波器和alf滤波器。例如,解码装置可以通过利用“在较高级别用信号通知的滤波器系数信息和偏移信息”、“在aps级别用信号通知的滤波器系数信息和偏移信息”或“在先前滤波单元中使用的滤波器系数和偏移”来确定或更新在当前要滤波的单元中使用的滤波器系数和偏移。确定的滤波器系数可以是滤波器的所有系数的一些。此外,可以在后续要滤波的单元中共享一些滤波器系数。共享的一些滤波器系数可以由从编码装置用信号通知的类别或模式信息来确定。
[0205]
关于确定的sao滤波器和alf滤波器的信息可以被输入至滤波单元1740。
[0206]
d.滤波
[0207]
滤波单元1740可以通过利用由确定单元1730确定的sao滤波器和alf滤波器来对重构的样本进行滤波(s1808)。
[0208]
通过滤波单元1740对重构的样本进行滤波的处理s1808可以分为对重构的样本应用sao滤波器的处理(sao滤波)和对重构的样本应用alf滤波器的处理(alf滤波)。sao滤波和alf滤波可以同时执行。替选地,可以在首先执行sao滤波之后执行alf滤波。
[0209]
如果同时执行sao滤波和alf滤波,则对重构的样本进行滤波的处理可以表示为等式7。
[0210]
[等式7]
[0211]
x=w
·
x+o
[0212]
在等式7中,w指示alf滤波器的系数向量,o指示sao滤波器系数(偏移),x指示与滤波器系数位置相对应的重构的样本向量,并且x指示从sao滤波和alf滤波得到的重构的样本。w和x是具有相同长度的向量。如等式7所示,可以通过对w和x执行点积计算,然后应用o来推导x。
[0213]
如果首先执行sao滤波,然后执行alf滤波,则对重构的样本进行滤波的处理可以表示为等式8。
[0214]
[等式8]
[0215]
x=w
·
(x+o)
[0216]
如等式8所示,在将o首先应用于x之后,可以执行(x+o)与w之间的点积计算,从而可以推导x。
[0217]
e.裁剪
[0218]
裁剪单元1750可以基于滤波的重构的样本的值(当前重构的样本的值和相邻重构的样本的值)和阈值来对重构的样本的值进行裁剪(限制)。
[0219]
可以基于图像的比特深度等来确定阈值。编码装置可以对关于确定的阈值的信息进行编码,并且可以将所述信息用信号通知给解码装置。解码装置可以通过利用关于阈值的解码的信息来确定将应用于裁剪的阈值。
[0220]
尽管出于说明的目的已经描述了本发明的示例性实施方案,但是本领域的技术人员应当理解的是,在不脱离本发明思想和范围的情况下,各种修改和改变是可能的。为了简洁和清楚起见,已经描述了示例性实施方案。相应地,普通技术人员应当理解,实施方案的范围不受以上明确描述的实施方案限制,而是包括在权利要求书及其等同形式内。
[0221]
相关申请的交叉引用
[0222]
本技术要求2019年12月16日提交的韩国专利申请no.10-2019-0168016、2020年1月9日提交的韩国专利申请no.10-2020-0003143以及2020年12月15日提交的韩国专利申请no.10-2020-0175629的优先权,其全部内容通过引用结合于本文中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1