CN117044197A - 利用推导帧内预测模式的视频编解码的方法和装置 - Google Patents
利用推导帧内预测模式的视频编解码的方法和装置 Download PDFInfo
- Publication number
- CN117044197A CN117044197A CN202280017239.2A CN202280017239A CN117044197A CN 117044197 A CN117044197 A CN 117044197A CN 202280017239 A CN202280017239 A CN 202280017239A CN 117044197 A CN117044197 A CN 117044197A
- Authority
- CN
- China
- Prior art keywords
- block
- current block
- prediction
- prediction mode
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 239000013074 reference sample Substances 0.000 claims abstract description 13
- 238000009795 derivation Methods 0.000 claims description 64
- 238000004364 calculation method Methods 0.000 claims description 59
- 238000005192 partition Methods 0.000 claims description 28
- 238000005070 sampling Methods 0.000 claims description 11
- 238000000638 solvent extraction Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 2
- 239000013598 vector Substances 0.000 description 47
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 238000013139 quantization Methods 0.000 description 12
- 239000011159 matrix material Substances 0.000 description 11
- 238000001914 filtration Methods 0.000 description 10
- 230000003044 adaptive effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 8
- 230000009466 transformation Effects 0.000 description 8
- 230000011218 segmentation Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000008707 rearrangement Effects 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 108010063123 alfare Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及利用推导帧内预测模式的视频编解码的方法和装置。本实施方案提供了用于视频编解码的方法和装置,其中利用恢复的相邻参考样本值来推导当前块的帧内预测模式,然后基于推导的预测模式来生成当前块的预测块。
Description
技术领域
本发明涉及一种视频编解码方法和装置,其使用利用推导帧内预测模式的视频编解码的方法和装置。
背景技术
本部分中的陈述仅提供与本发明有关的背景技术信息,并不一定构成现有技术。
由于视频数据与音频数据或静止影像数据相比具有较大的数据量,视频数据需要大量的硬件资源(包括存储器)来存储或发送未经压缩处理的视频数据。
相应地,编码器通常用于压缩并存储或发送视频数据。解码器接收压缩的视频数据,解压接收到的压缩的视频数据,并且播放解压的视频数据。视频压缩技术包括H.264/AVC、高效率视频编解码(High Efficiency Video Coding,HEVC)和多功能视频编解码(Versatile Video Coding,VVC),所述多功能视频编解码(VVC)比HEVC的编解码效率提高了大约30%或更多。
然而,由于影像大小、分辨率和帧速率逐渐增加,要编码的数据量也在增多。相应地,需要一种与现有的压缩技术相比提供更高的编解码效率和改善的影像增强效果的新的压缩技术。特别地,就编解码效率而言,有必要考虑推导当前块的帧内预测模式的方法,而不是解析帧内预测模式。
发明内容
技术问题
本发明试图提供一种视频编解码方法和装置,其利用预恢复的相邻参考样本值来推导当前块的帧内预测模式,并且基于推导的预测模式来生成当前块的预测块。
技术方案
本发明的至少一个方面提供了一种由视频解码装置执行的方法,用于当前块的帧内预测。该方法包括从比特流解析预测模式推导标志,所述预测模式推导标志指示是否推导当前块的预测模式,并且该方法包括检查预测模式推导标志。当预测模式推导标志为真时,该方法包括:根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域;在用于当前块的计算区域中计算方向模式的梯度直方图;基于梯度直方图来推导当前块的预测模式;以及通过利用推导的预测模式执行帧内预测来生成当前块的预测块。
本发明的另一个方面提供了一种帧内预测装置。该装置包括预测模式推导确定单元,其配置为通过从比特流解析预测模式推导标志来确定是否推导当前块的预测模式。该装置还包括梯度计算区域确定单元,其配置为根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域。该装置还包括直方图计算单元,其配置为在用于当前块的计算区域中计算方向模式的梯度直方图。该装置还包括预测模式推导单元,其配置为基于梯度直方图来推导当前块的预测模式。该装置还包括帧内预测执行单元,其配置为通过利用推导的预测模式执行帧内预测来生成当前块的预测块。
有益效果
如上所述,本发明提供了一种视频编解码方法和装置,其利用预恢复的相邻参考样本值来推导当前块的帧内预测模式,并且基于推导的预测模式来生成当前块的预测块,以提高编解码效率。
附图说明
图1是可以实现本发明技术的视频编码装置的框图。
图2示出利用四叉树加二叉树三叉树(QTBTTT)结构来对块进行分区的方法。
图3a和图3b示出包括宽角度帧内预测模式的多个帧内预测模式。
图4示出当前块的相邻块。
图5是可以实现本发明技术的视频解码装置的框图。
图6是根据本发明的一个实施方案利用预测模式推导的帧内预测装置的框图。
图7示出根据本发明的一个实施方案用于计算梯度值的计算区域。
图8示出根据本发明的一个实施方案的方向模式的梯度直方图。
图9示出根据本发明的一个实施方案计算梯度值的子采样像素。
图10示出根据本发明的一个实施方案的矩阵形式的权重值。
图11示出根据本发明的一个实施方案在子块分区时的预测模式的推导。
图12是示出根据本发明的一个实施方案利用预测模式推导的帧内预测方法的流程图。
具体实施方式
在下文中,将参考所附说明性附图对本发明的一些实施方案进行详细描述。在下面的描述中,相同的附图标记表示相同的元件,尽管元件在不同的附图中示出。此外,在一些实施方案的以下描述中,当认为相关的已知组件和功能的详细描述模糊了本发明的主题时,为了清楚和简洁起见,可以省略对相关的已知组件和功能的详细描述。
图1是可以实现本发明技术的视频编码装置的框图。在下文中,参考图1的图示,对视频编码装置以及该装置的组件进行描述。
编码装置可以包括:图像分割器110、预测器120、减法器130、变换器140、量化器145、重排单元150、熵编码器155、逆量化器160、逆变换器165、加法器170、环路滤波单元180和存储器190。
编码装置的每个组件可以实现为硬件或软件,或者实现为硬件和软件的组合。另外,每个组件的功能可以实现为软件,并且微处理器也可以实现为执行对应于每个组件的软件的功能。
一个视频由包括多个图像的一个或更多个序列组成。每个图像分割为多个区域,并且对每个区域执行编码。例如,一个图像分割为一个或更多个瓦片(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)。此外,共同应用于一个瓦片或瓦片组的信息也可以被编码为瓦片或瓦片组头的语法。包括在SPS、PPS、切片头、瓦片或瓦片组头中的语法可以称为高级语法。
图像分割器110确定编码树单元(CTU)的大小。关于CTU的大小(CTU尺寸)的信息被编码为SPS或PPS的语法,并且被传送至视频解码装置。
图像分割器110将构成视频的每个图像分割为具有预定大小的多个CTU,然后通过利用树结构递归地分割CTU。树结构中的叶节点成为CU,所述CU是编码的基本单元。
树结构可以是四叉树(quadtree,QT),其中较高节点(或父节点)被分割为具有相同大小的四个较低节点(或子节点)。树结构也可以是二叉树(binarytree,BT),其中较高的节点分割为两个较低的节点。树结构还可以是三叉树(ternarytree,TT),其中较高的节点以1:2:1的比率分割为三个较低的节点。树结构还可以是QT结构、BT结构和TT结构中的两个或更多个结构混合的结构。例如,可以使用四叉树加二叉树(quadtree plus binarytree,QTBT)结构,或者可以使用四叉树加二叉树三叉树(quadtree plus binarytreeternarytree,QTBTTT)结构。这里,BTTT被添加到树结构以称为多类型树(multiple-typetree,MTT)。
图2是用于描述通过利用QTBTTT结构来对块进行分割的方法的示意图。
如图2所示,CTU可以首先分割为QT结构。四叉树分割可以是递归的,直到分割块的大小达到QT中允许的叶节点的最小块大小(MinQTSize)。由熵编码器155对指示QT结构的每个节点是否被分割为下层的四个节点的第一标志(QT_split_flag)进行编码,并将其用信号通知视频解码装置。当QT的叶节点不大于BT中允许的根节点的最大块大小(MaxBTSize)时,可以将叶节点进一步分割为BT结构或TT结构的至少一个。在BT结构和/或TT结构中可以存在多个分割方向。例如,可以存在两个方向,即,水平地分割相应节点的块的方向以及竖直地分割相应节点的块的方向。如图2所示,当MTT分割开始时,由熵编码器155对指示节点是否被分割的第二标志(mtt_split_flag)、以及在节点被分割的情况下额外指示分割方向(竖直或水平)的标志和/或指示分割类型(二叉或三叉)的标志进行编码,并将其用信号通知视频解码装置。
替选地,在对指示每个节点是否被分割为下层的四个节点的第一标志(QT_split_flag)进行编码之前,还可以对指示节点是否被分割的CU分割标志(split_cu_flag)进行编码。当CU分割标志(split_cu_flag)的值指示出每个节点没有被分割时,相应节点的块成为分割树结构中的叶节点并成为CU,CU是编码的基本单元。当CU分割标志(split_cu_flag)的值指示出每个节点被分割时,视频编码装置以上述方案对第一标志首先开始编码。
当QTBT用作树结构的另一个示例时,可以存在两种类型,即,将相应节点的块水平地分割为具有相同大小的两个块的类型(即,对称水平分割)以及将相应节点的块竖直地分割为具有相同大小的两个块的类型(即,对称竖直分割)。由熵编码器155对指示BT结构的每个节点是否被分割为下层的块的分割标志(split_flag)和指示分割类型的分割类型信息进行编码,并将其传送至视频解码装置。另一方面,可以另外存在相应节点的块被分割为彼此非对称形式的两个块的类型。非对称形式可以包括相应节点的块被分割为大小比率为1:3的两个矩形块的形式,或者还可以包括相应节点的块在对角线方向上被分割的形式。
CU可以根据从CTU分割的QTBT或QTBTTT而具有各种大小。在下文中,与要编码或解码的CU(即,QTBTTT的叶节点)相对应的块称为“当前块”。当采用QTBTTT分割时,除了正方形形状之外,当前块的形状也可以是矩形形状。
预测器120对当前块进行预测以生成预测块。预测器120包括帧内预测器122和帧间预测器124。
通常,可以对图像中的当前块的每个进行预测地编码。通常,可以通过利用帧内预测技术(其利用来自包括当前块的图像的数据)或帧间预测技术(其利用来自在包括当前块的图像之前编码的图像的数据)执行当前块的预测。帧间预测包括单向预测和双向预测两者。
帧内预测器122通过利用在包括当前块的当前图像中位于当前块邻近的像素(参考像素)来预测当前块中的像素。根据预测方向,存在多个帧内预测模式。例如,如图3a所示,多个帧内预测模式可以包括包含平面(Planar)模式和DC模式的两种非方向模式,并且可以包括65种方向模式。根据每种预测模式不同地定义要使用的相邻像素和算法等式。
为了对具有矩形形状的当前块进行高效的方向预测,可以额外地使用图3b中虚线箭头所示的方向模式(#67至#80,帧内预测模式#-1至#-14)。方向模式可以称为“宽角度帧内预测模式(wide angle intra-prediction modes)”。在图3b中,箭头指示用于预测的相应参考样本,而非代表预测方向。预测方向与箭头指示的方向相反。在当前块具有矩形形状时,宽角度帧内预测模式是在没有额外比特传输的情况下在与特定方向模式相反的方向上执行预测的模式。在这种情况下,在宽角度帧内预测模式中,可以通过具有矩形形状的当前块的宽度与高度的比率来确定可用于当前块的一些宽角度帧内预测模式。例如,在当前块具有高度小于宽度的矩形形状时,具有小于45度的角度的宽角度帧内预测模式(帧内预测模式#67至#80)是可用的。在当前块具有宽度大于高度的矩形形状时,具有大于-135度的角度的宽角度帧内预测模式是可用的。
帧内预测器122可以确定要用于对当前块进行编码的帧内预测。在一些示例中,帧内预测器122可以通过利用多个帧内预测模式来对当前块进行编码,并且还可以从测试模式中选择要使用的适当的帧内预测模式。例如,帧内预测器122可以通过利用对多个测试的帧内预测模式的率失真(rate-distortion)分析来计算率失真值,并且还可以在测试模式中选择具有最佳率失真特性的帧内预测模式。
帧内预测器122在多个帧内预测模式中选择一个帧内预测模式,并且通过利用根据选择的帧内预测模式确定的相邻像素(参考像素)和算法等式来预测当前块。由熵编码器155对关于选择的帧内预测模式的信息进行编码并将其传送至视频解码装置。
帧间预测器124通过利用运动补偿处理来生成当前块的预测块。帧间预测器124在比当前图像更早已被编码和解码的参考图像中搜索与当前块最相似的块,并且通过利用搜索到的块来生成当前块的预测块。另外,生成运动矢量(motion vector,MV),所述运动矢量与当前图像中的当前块和参考图像中的预测块之间的位移(displacement)相对应。通常,对亮度(luma)分量执行运动估计,并且基于亮度分量计算的运动矢量用于亮度分量和色度分量两者。由熵编码器155对包括参考图像的信息和关于用于预测当前块的运动矢量的信息的运动信息进行编码,并将其传送至视频解码装置。
帧间预测器124还可以执行参考图像或参考块的插值,以增加预测的准确性。换句话说,通过向包括两个整数样本的多个连续整数样本应用滤波器系数来在两个连续整数样本之间插值子样本。在对插值的参考图像执行搜索与当前块最相似的块的处理时,对于运动矢量可以表示小数单位精度而不是整数样本单位精度。对于要编码的每个目标区域,例如,诸如切片、瓦片、CTU、CU等的单元,可以不同地设置运动矢量的精度或分辨率。当应用这种自适应运动矢量分辨率(adaptive motion vector resolution,AMVR)时,应该针对每个目标区域用信号通知关于要应用于每个目标区域的运动矢量分辨率的信息。例如,当目标区域是CU时,用信号通知关于应用于每个CU的运动矢量分辨率的信息。关于运动矢量分辨率的信息可以是代表要在以下描述的运动矢量差的精度的信息。
另一方面,帧间预测器124可以通过利用双向预测来执行帧间预测。在双向预测的情况下,使用两个参考图像和代表与每个参考图像中的当前块最相似的块位置的两个运动矢量。帧间预测器124分别从参考图像列表0(RefPicList0)和参考图像列表1(RefPicList1)选择第一参考图像和第二参考图像。帧间预测器124还搜索与相应参考图像中的当前块最相似的块,以生成第一参考块和第二参考块。此外,通过对第一参考块和第二参考块进行平均或加权平均来生成当前块的预测块。此外,包括关于用于预测当前块的两个参考图像的信息和关于两个运动矢量的信息的运动信息被传送至熵编码器155。这里,参考图像列表0可以由预恢复图像中按显示顺序在当前图像之前的图像构成,并且参考图像列表1可以由预恢复图像中按显示顺序在当前图像之后的图像构成。然而,尽管不特别限于此,但可以将显示顺序中在当前图像之后的预恢复图像额外地包括在参考图像列表0中。相反,在当前图像之前的预恢复图像也可以额外地包括在参考图像列表1中。
为了最小化用于编码运动信息所消耗的比特量,可以使用各种方法。
例如,在当前块的参考图像和运动矢量与相邻块的参考图像和运动矢量相同时,能够识别相邻块的信息被编码以将当前块的运动信息传送至视频解码装置。这种方法称为合并模式(merge mode)。
在合并模式中,帧间预测器124从当前块的相邻块选择预定数量的合并候选块(在下文中,称为“合并候选”)。
作为用于推导合并候选的相邻块,可以使用与当前图像中的当前块邻近的左侧块A0、左下侧块A1、上侧块B0、右上侧块B1和左上侧块B2的全部或一些,如图4所示。此外,除了当前块所在的当前图像之外,位于参考图像内的块(其可以与用于预测当前块的参考图像相同或不同)也可以用作合并候选。例如,参考图像内的当前块的同位块(co-locatedblock)或与该同位块邻近的块可以额外地用作合并候选。如果通过上述方法选择的合并候选的数量小于预设数量,则将零矢量添加到合并候选。
帧间预测器124通过利用相邻块来配置包括预定数量的合并候选的合并列表。从合并列表中包括的合并候选之中选择要用作当前块的运动信息的合并候选,并且生成用于识别选择的候选的合并索引信息。由熵编码器155对生成的合并索引信息进行编码并将其传送至视频解码装置。
合并跳过模式是合并模式的特例。在量化之后,在用于熵编码的所有变换系数都接近零时,仅传输相邻块选择信息而不传输残差信号。通过利用合并跳过模式,对于具有轻微运动的影像、静止影像、屏幕内容影像等可以实现相对较高的编码效率。
此后,合并模式和合并跳过模式统称为合并/跳过模式。
用于编码运动信息的另一种方法是高级运动矢量预测(advanced motion vectorprediction,AMVP)模式。
在AMVP模式中,帧间预测器124通过利用当前块的相邻块来推导用于当前块的运动矢量的运动矢量预测候选。作为用于推导运动矢量预测候选的相邻块,可以使用与图4所示的当前图像中的当前块邻近的左侧块A0、左下侧块A1、上侧块B0、右上侧块B1和左上侧块B2的全部或一些。此外,除了当前块所在的当前图像之外,位于参考图像(其可以与用于预测当前块的参考图像相同或不同)内的块也可以用作用于推导运动矢量预测候选的相邻块。例如,可以使用参考图像内的当前块的同位块或与该同位块邻近的块。如果通过上述方法选择的运动矢量候选的数量小于预设数量,则将零矢量添加到运动矢量候选。
帧间预测器124通过利用相邻块的运动矢量来推导运动矢量预测候选,并且通过利用运动矢量预测候选来确定当前块的运动矢量的运动矢量预测。另外,通过将当前块的运动矢量减去运动矢量预测来计算运动矢量差。
可以通过将预定义函数(例如,中值和平均值计算等)应用于运动矢量预测候选来获取运动矢量预测。在这种情况下,视频解码装置还知道预定义功能。此外,由于用于推导运动矢量预测候选的相邻块是已经完成编码和解码的块,所以视频解码装置也可能已经知道相邻块的运动矢量。因此,视频编码装置不需要对用于识别运动矢量预测候选的信息进行编码。相应地,在这种情况下,对关于运动矢量差的信息和关于用于预测当前块的参考图像的信息进行编码。
另一方面,还可以通过选择运动矢量预测候选的任何一个的方案来确定运动矢量预测。在这种情况下,用于识别选择的运动矢量预测候选的信息与用于预测当前块的关于运动矢量差的信息以及关于参考图像的信息共同进行额外的编码。
减法器130通过将当前块减去由帧内预测器122或帧间预测器124生成的预测块来生成残差块。
变换器140将具有空域的像素值的残差块中的残差信号变换为频域的变换系数。变换器140可以通过利用残差块的整个大小作为变换单元来变换残差块中的残差信号,或者也可以将残差块分割为多个子块,并且可以通过利用子块作为变换单元来执行变换。替选地,将残差块划分成两个子块,即变换区域和非变换区域,以通过仅利用变换区域子块作为变换单元来变换残差信号。这里,变换区域子块可以是基于水平轴线(或竖直轴线)的具有大小比率为1:1的两个矩形块的一个。在这种情况下,由熵编码器155对指示出仅变换子块的标志(cu_sbt_flag)、以及方向(竖直/水平)信息(cu_sbt_horizontal_flag)和/或位置信息(cu_sbt_pos_flag)进行编码,并将其用信号通知视频解码装置。另外,变换区域子块的大小基于水平轴线(或竖直轴线)可以具有1:3的大小比率。在这种情况下,由熵编码器155对划分相应分割的标志(cu_sbt_quad_flag)进行额外地编码,并将其用信号通知视频解码装置。
另一方面,变换器140可以在水平方向和竖直方向上单独地执行残差块的变换。对于该变换,可以使用各种类型的变换函数或变换矩阵。例如,用于水平变换和竖直变换的成对变换函数可以定义为多变换集(multiple transform set,MTS)。变换器140可以选择MTS中具有最高变换效率的一个变换函数对,并且可以在水平方向和竖直方向的每个上变换残差块。由熵编码器155对关于MTS中的变换函数对的信息(mts_idx)进行编码,并将其用信号通知视频解码装置。
量化器145利用量化参数对从变换器140输出的变换系数进行量化,并且将量化的变换系数输出到熵编码器155。量化器145还可以对相关的残差块立即进行量化,而无需对任何块或帧进行变换。量化器145还可以根据变换块中的变换系数的位置来应用不同的量化系数(缩放值)。可以对应用于布置为二维的量化的变换系数的量化矩阵进行编码,并将其用信号通知视频解码装置。
重排单元150可以对量化的残差值执行系数值的重新排列。
重排单元150可以通过利用系数扫描将2D系数阵列改变为1D系数序列。例如,重排单元150可以利用锯齿形扫描(zig-zag scan)或对角线扫描(diagonal scan)来扫描DC系数到高频区域的系数以输出1D系数序列。根据变换单元的大小和帧内预测模式,也可以利用在列方向上扫描2D系数阵列的竖直扫描和在行方向上扫描2D块类型系数的水平扫描来代替锯齿形扫描。换句话说,根据变换单元的大小和帧内预测模式,可以在锯齿形扫描、对角线扫描、竖直扫描和水平扫描中确定要使用的扫描方法。
熵编码器155通过利用包括基于上下文的自适应二进制算术编码(Context-basedAdaptive Binary Arithmetic Code,CABAC)、指数哥伦布(Exponential Golomb)等的各种编码方案来对从重排单元150输出的1D量化的变换系数的序列进行编码,以生成比特流。
此外,熵编码器155对与块分割相关的信息(例如,CTU大小、CTU分割标志、QT分割标志、MTT分割类型和MTT分割方向等)进行编码,以使得视频解码装置能够等同于视频编码装置来分割块。此外,熵编码器155对关于指示当前块是由帧内预测编码还是由帧间预测编码的预测类型的信息进行编码。熵编码器155根据预测类型对帧内预测信息(即,关于帧内预测模式的信息)或帧间预测信息(在合并模式的情况下的合并索引,以及在AMVP模式的情况下的关于参考图像索引和运动矢量差的信息)进行编码。此外,熵编码器155对与量化相关的信息(即,关于量化参数的信息和关于量化矩阵的信息)进行编码。
逆量化器160对从量化器145输出的量化的变换系数进行逆量化,以生成变换系数。逆变换器165将从逆量化器160输出的变换系数从频域变换到空域,以恢复残差块。
加法器170将恢复的残差块和由预测器120生成的预测块相加,以恢复当前块。在对下一个块进行帧内预测时,恢复的当前块中的像素用作参考像素。
环路滤波单元180对恢复的像素执行滤波,以减少由于基于块的预测和变换/量化而发生的块伪影(blocking artifacts)、振铃伪影(ringing artifacts)、模糊伪影(blurring artifacts)等。作为环内滤波器的环路滤波单元180可以包括去块滤波器182、样本自适应偏移(sample adaptive offset,SAO)滤波器184和自适应环路滤波器(adaptive loop filter,ALF)186的全部或一些。
去块滤波器182对恢复的块之间的边界进行滤波,以去除由于块单元编码/解码而发生的块伪影(blocking artifacts),并且SAO滤波器184和ALF 186对去块滤波的视频进行额外的滤波。SAO滤波器184和ALF 186是用于补偿由于有损编码(lossy coding)而发生的恢复的像素与原始像素之间的差异的滤波器。SAO滤波器184应用偏移作为CTU单位,以增强主观图像质量和编码效率。另一方面,ALF 186执行块单元滤波,并且通过划分相应块的边界和变化量的程度来应用不同的滤波器以补偿失真。可以对关于要用于ALF的滤波器系数的信息进行编码,并将其用信号通知视频解码装置。
通过去块滤波器182、SAO滤波器184和ALF 186滤波的恢复的块存储在存储器190中。当一个图像中的所有块被恢复时,恢复的图像可以用作用于对随后要被编码的图像内的块进行帧间预测的参考图像。
图5是可以实现本发明技术的视频解码装置的功能框图。在下文中,参考图5,描述了视频解码装置和该装置的组件。
视频解码装置可以包括熵解码器510、重排单元515、逆量化器520、逆变换器530、预测器540、加法器550、环路滤波单元560和存储器570。
类似于图1的视频编码装置,视频解码装置的每个组件可以实现为硬件或软件,或者实现为硬件和软件的组合。另外,每个组件的功能可以实现为软件,并且微处理器也可以实现为执行对应于每个组件的软件的功能。
熵解码器510通过解码由视频编码装置生成的比特流来提取与块分割相关的信息,以确定要解码的当前块,并且提取恢复当前块所需的预测信息和关于残差信号的信息。
熵解码器510通过从序列参数集(SPS)或图像参数集(PPS)提取关于CTU大小的信息来确定CTU的大小,并且将图像分割为具有确定大小的CTU。此外,CTU被确定为树结构的最高层(即,根节点),并且提取CTU的分割信息以通过利用树结构来分割CTU。
例如,当通过利用QTBTTT结构来分割CTU时,首先提取与QT的分割相关的第一标志(QT_split_flag),以将每个节点分割为下层的四个节点。另外,相对于与QT的叶节点相对应的节点来提取与MTT的分割相关的第二标志(mtt_split_flag)、分割方向(竖直/水平)和/或分割类型(二叉/三叉),以将相应的叶节点分割为MTT结构。结果,QT的叶节点下方的每个节点被递归地分割为BT或TT结构。
作为另一个示例,当通过利用QTBTTT结构来分割CTU时,提取指示是否分割CU的CU分割标志(split_cu_flag)。当分割相应块时,还可以提取第一标志(QT_split_flag)。在分割过程期间,对于每个节点,在递归QT分割0次或更多次之后可能发生0次或更多次的递归MTT分割。例如,对于CTU,MTT分割可以立即发生,或者相反,也可以仅发生多次QT分割。
作为另一个示例,当通过利用QTBT结构来分割CTU时,提取与QT的分割相关的第一标志(QT_split_flag),以将每个节点分割为下层的四个节点。另外,提取指示将与QT的叶节点相对应的节点是否进一步分割为BT的分割标志(split_flag)以及分割方向信息。
另一方面,当熵解码器510通过利用树结构的分割来确定要解码的当前块时,熵解码器510提取关于指示当前块是被帧内预测还是被帧间预测的预测类型的信息。当预测类型信息指示帧内预测时,熵解码器510提取用于当前块的帧内预测信息(帧内预测模式)的语法元素。当预测类型信息指示帧间预测时,熵解码器510提取代表帧间预测信息的语法元素的信息,即,运动矢量和运动矢量参考的参考图像。
此外,熵解码器510提取量化相关的信息并且提取关于量化的当前块的变换系数的信息作为关于残差信号的信息。
重排单元515可以以由视频编码装置执行的系数扫描次序的相反顺序,将由熵解码器510熵解码的1D量化的变换系数的序列再次改变为2D系数阵列(即,块)。
逆量化器520对量化的变换系数进行逆量化,并且通过利用量化参数对量化的变换系数进行逆量化。逆量化器520还可以向布置为2D的量化的变换系数应用不同的量化系数(缩放值)。逆量化器520可以通过将来自视频编码装置的量化系数(缩放值)的矩阵应用于量化的变换系数的2D阵列来执行逆量化。
逆变换器530通过将逆量化的变换系数从频域逆变换到空域来恢复残差信号,以生成当前块的残差块。
此外,当逆变换器530对变换块的部分区域(子块)进行逆变换时,逆变换器530提取仅对变换块的子块进行变换的标志(cu_sbt_flag)、子块的方向(竖直/水平)信息(cu_sbt_horizontal_flag)和/或子块的位置信息(cu_sbt_pos_flag)。逆变换器530还将相应子块的变换系数从频域逆变换到空域以恢复残差信号,并且用值“0”填充未被逆变换的区域作为残差信号,以生成当前块的最终残差块。
此外,当应用MTS时,逆变换器530通过利用从视频编码装置用信号通知的MTS信息(mts_idx)来确定在水平方向和竖直方向的每个上要应用的变换索引或变换矩阵。逆变换器530还通过利用确定的变换函数在水平方向和竖直方向上对变换块中的变换系数执行逆变换。
预测器540可以包括帧内预测器542和帧间预测器544。在当前块的预测类型是帧内预测时,激活帧内预测器542,而在当前块的预测类型是帧间预测时,激活帧间预测器544。
帧内预测器542根据从熵解码器510提取的帧内预测模式的语法元素来确定多个帧内预测模式中当前块的帧内预测模式。帧内预测器542还根据帧内预测模式通过利用当前块的相邻参考像素来预测当前块。
帧间预测器544通过利用从熵解码器510提取的帧间预测模式的语法元素来确定当前块的运动矢量和运动矢量参考的参考图像。
加法器550通过将从逆变换器530输出的残差块与从帧间预测器544或帧内预测器542输出的预测块相加来恢复当前块。在对后续要被解码的块进行帧内预测时,恢复的当前块内的像素用作参考像素。
作为环内滤波器的环路滤波单元560可以包括去块滤波器562、SAO滤波器564和ALF 566。去块滤波器562对恢复的块之间的边界执行去块滤波,以便去除由于块单元解码而发生的块伪影。SAO滤波器564和ALF 566在去块滤波之后对恢复的块执行额外的滤波,以便补偿由于有损编码而发生的恢复的像素与原始像素之间的差异。通过利用关于从比特流解码的滤波器系数的信息来确定ALF的滤波器系数。
通过去块滤波器562、SAO滤波器564和ALF 566滤波的恢复的块存储在存储器570中。当一个图像中的所有块被恢复时,恢复的图像可以用作用于对随后要被编码的图像内的块进行帧间预测的参考图像。
在一些实施方案中,本发明涉及如上所述的编码和解码视频影像。更具体地,本发明提供了一种视频编解码方法和视频编解码装置,其利用预恢复的相邻参考样本值来推导当前块的帧内预测模式,并且基于推导的预测模式来生成当前块的预测块。
以下实施方案可以应用于视频解码装置中的熵解码器510和帧内预测器542。以下实施方案还可以应用于视频编码装置中的帧内预测器122。
在下面的描述中,块具有纵横比,所述纵横比定义为块的水平长度(W:宽度)除以竖直长度(H:高度),即水平长度与竖直长度之比。
在下文中,特定标志为真指示出标志的值是1,特定标志为假指示出标志的值是0。
在下面的描述中,关于视频解码装置描述帧内预测,并且为了方便起见,如果需要,可以提及视频编码装置。此外,下面的描述可以类似地应用于视频编码装置。
在下文中,视频解码装置或其内部的熵解码器510从比特流解码数据的短语与相同装置或单元解析数据的短语可互换使用。
I.帧内预测和帧内子分区(Intra Sub-Partition,ISP)
在多功能视频编码(VVC)技术中,亮度块具有非方向模式(即,平面和DC)和剩下的细分的方向模式(即,模式2至66)的帧内预测模式,如图3a例示。如例如在图3b中添加的,亮度块进一步具有基于宽角度帧内预测的方向模式(模式-14至-1和模式67至80)的帧内预测模式。
在多功能视频编解码(VVC)技术中,亮度块具有非方向模式(即,平面和DC)和剩下的细分的方向模式(即,模式2至66)的帧内预测模式,如图3a例示。如例如在图3b中添加的,亮度块进一步具有基于宽角度帧内预测的方向模式(模式-14至-1和模式67至80)的帧内预测模式。
在下面的描述中,将分区之前的大块称为当前块,并且将子分区的较小块的每个称为子块。
ISP技术的操作如下。
当位于高级别的SPS上的ISP使能标志sps_isp_enabled_flag为真时,视频编码装置发送intra_subpartitions_mode_flag和intra_subpartitions_split_flag。视频解码装置首先从比特流解析ISP使能标志sps_isp_enabled_flag。当ISP使能标志为真时,视频解码装置可以从比特流解码intra_subpartitions_mode_flag和intra_subpartitions_split_flag。
视频编码装置向视频解码装置用信号通知指示是否应用ISP的intra_subpartitions_mode_flag和指示子分区方法的intra_subpartitions_split_flag。表1示出根据intra_subpartitions_mode_flag和intra_subpartitions_split_flag的子分区类型IntraSubPartitionsSplitType。
[表1]
IntraSubPartitionsSplitType | IntraSubPartitionsSplitType的名称 |
0 | ISP_NO_SPLIT |
1 | ISP_HOR_SPLIT |
2 | ISP_VER_SPLIT |
ISP技术设置子分区类型IntraSubPartitionsSplitType如下。
当intra_subpartitions_mode_flag为0时,IntraSubPartitionsSplitType设置为0,并且不执行子块分区(ISP_NO_SPLIT)。也就是说,不应用ISP。
如果intra_subpartitions_mode_flag不为0,则应用ISP。此时,IntraSubPartitionsSplitType设置为值1+intra_subpartitions_split_flag,并且根据子分区类型执行子块分区。如果IntraSubPartitionsSplitType=1,则执行水平子块分割(ISP_HOR_SPLIT),如果IntraSubPartitionsSplitType=2,则在竖直方向上执行子块分割(ISP_VER_SPLIT)。换句话说,intra_subpartitions_split_flag可以指示子块分区方向。
例如,当将指示在水平方向上进行子分区的ISP模式应用于当前块时,IntraSubPartitionsSplitType为1,intra_subpartitions_mode_flag为1,并且intra_subpartitions_split_flag为0。
在下面的描述中,intra_subpartitions_mode_flag表示为子块分区应用标志,intra_subpartitions_split_flag表示为子块分区方向标志,并且IntraSubPartitionsSplitType表示为子块分区类型。
II.帧内预测模式的推导
在以下描述中,参考图6,对利用预测模式推导的帧内预测装置进行描述。
图6是根据本发明的一个实施方案的利用预测模式推导的帧内预测装置的框图。
根据本实施方案的帧内预测装置根据预恢复的相邻参考样本值的梯度来计算直方图,利用计算的直方图来推导当前块的帧内预测模式,并且基于推导的预测模式来生成当前块的预测块。帧内预测装置包括以下的全部或部分:预测模式推导确定单元602、梯度计算区域确定单元604、直方图计算单元606、预测模式推导单元608和帧内预测执行单元610。
预测模式推导确定单元602解析指示是否推导当前块的预测模式的标志,以确定帧内预测模式的推导。在下面的描述中,上述标志称为预测模式推导标志。视频编码装置可以根据率失真优化来设置预测模式推导标志,然后可以将设置的预测模式推导标志发送到视频解码装置。在从比特流解码预测模式推导标志之后,视频解码装置可以执行下面描述的步骤。另一方面,视频编码装置可以从高级别获得预测模式推导标志,并且执行后续步骤。
当预测模式推导标志为真时,帧内预测装置基于恢复的当前块的相邻样本来推导帧内预测模式,同时省略对当前块的帧内预测模式的解析。此时,在当前块不能使用左和/或上参考样本(包括图像边界、切片边界或瓦片边界)时,可以隐式地省略预测模式推导标志的解码。
作为另一个实施方案,在确定是否执行预测模式推导之前,帧内预测装置可以从比特流解析确定当前块的预测模式是否是非方向模式的一个或多个标志,所述非方向模式例如是平面(Planar)模式、DC模式或基于矩阵的模式。当所有相应的标志都为0时,预测模式推导确定单元602可以解析预测模式推导标志,然后可以确定是否执行预测模式推导。
此外,在预测模式推导确定单元602确定对预测模式进行推导之后,帧内预测装置可以从比特流解码子块分区应用标志,并且确定是否应用ISP技术,即,是否执行当前块的子块分区。
图7示出根据本发明的一个实施方案用于计算梯度值的计算区域。
梯度计算区域确定单元604根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域,以推导帧内预测模式。如图7所示,属于位于当前块的左侧和顶部的恢复区域的三行恢复的参考像素可以用作梯度计算区域。在图7的示例中,可以基于当前块的宽度W和高度H来设置上参考样本的长度M和左参考样本的长度N。例如,基于位于当前块的左上方的(-3,-3)像素,M设置为诸如W+3、2×W+3或W+H+3的值,并且N设置为诸如H+3、2×H+3、或W+H+3的值。
作为另一个实施方案,梯度计算区域确定单元604可以从比特流解析指示计算区域的标志,以设置当前块的左侧或上侧作为计算区域。替选地,梯度计算区域确定单元604可以从比特流解析指示计算区域的索引,以确定当前块的左侧、上侧、或左/上侧作为计算区域。
作为另一个实施方案,可以根据视频编码装置与视频解码装置之间的协议隐式地确定计算区域。在这种情况下,可以省略梯度计算区域确定单元604的操作。
直方图计算单元606计算梯度计算区域中的方向模式的梯度直方图H()。首先,可以基于当前块的第二边上恢复的参考样本,在3×3区域、3×1区域或1×3区域中计算竖直梯度值和水平梯度值。直方图计算单元606可以利用诸如Sobel或Prewitt滤波器的边缘检测滤波器来计算梯度。表2示出在梯度计算中使用的滤波器的示例。
[表2]
水平滤波器竖直滤波器
如等式1所示,直方图计算单元606可以基于计算的竖直/水平方向梯度Gv/Gh来确定相应像素处的梯度方向θ和幅值I。
[等式1]
图8示出根据本发明的一个实施方案的方向模式的梯度直方图。
直方图计算单元606根据计算区域内的像素的相应方向来计算帧内预测的最接近梯度方向θ的方向模式,在相应的方向模式的直方图中累加梯度幅度I,并且生成方向模式的梯度直方图H(),如图8所示。
如图9所示,当计算梯度直方图时,直方图计算单元606可以基于预设的采样间隔对像素进行子采样,然后可以利用子采样的像素来计算梯度直方图。此时,可以根据视频编码装置与视频解码装置之间的协议来定义像素的采样间隔和子采样位置。替选地,可以基于当前块的尺寸和/或纵横比来确定像素的采样间隔和子采样位置。
预测模式推导单元608基于梯度直方图来推导当前块的预测模式,如图8所示。此时,推导的帧内预测模式可以是方向模式或非方向模式。此外,推导的帧内预测模式可以包括方向模式和非方向模式两者。
预测模式推导单元608可以如下推导方向模式。
预测模式推导单元608可以确定具有根据计算的直方图的最大值的模式Mb作为当前块的帧内预测模式。
替选地,预测模式推导单元608可以确定具有第一最大值的模式Mb和具有第二最大值的模式Ma作为当前块的帧内预测模式。通过利用从两个模式的直方图值获得的权重,帧内预测装置对利用两个模式Mb和Ma预测的预测的信号P1和P2执行加权平均,以生成最终的预测的信号。
作为另一个实施方案,预测模式推导单元608额外地解析指示具有最大梯度直方图值的模式Mb和具有第二最大梯度直方图值的模式Ma中的一个的标志,以根据解析的标志值来确定当前块的预测模式。在以下描述中,上述标志称为预测模式指示标志。当两个模式的直方图值之间的差小于或等于预定阈值时,预测模式推导单元608可以从比特流解析预测模式指示标志。另一方面,当两个模式的直方图值之间的差大于预定阈值时,预测模式推导单元608可以跳过对预测模式指示标志的解析。替选地,如等式2所示,当两个直方图值之间的差与所有直方图值的总和相比大于或等于预设比率时,预测模式推导单元608可以跳过对预测模式指示标志的解析。
[等式2]
在另一个实施方案中,预测模式推导单元608可以从比特流解析呈现最大直方图值的默认模式的增量模式的索引,以确定预测模式。例如,增量模式可以是默认模式的偏移。因此,预测模式推导单元608可以通过将增量模式添加到默认模式来确定预测模式。此时,可以根据视频编码装置与视频解码装置之间的协议来设置指示增量模式的索引。此外,可以根据默认模式来改变增量模式。
另一方面,预测模式推导单元608可以推导非方向模式如下。
当方向模式的最大直方图值小于预设阈值,或所有直方图值的总和小于预设阈值时,预测模式推导单元608可以设置非方向模式作为当前块的预测模式。此时,非方向模式可以是DC模式或平面模式,其中预测模式推导单元608可以总是确定当前块的预测模式作为DC模式(或平面模式)。替选地,预测模式推导单元608可以从比特流解析指示模式中的一个的标志,并且可以根据解析的标志来确定两个模式的一个。另一方面,预定阈值可以根据视频编码装置与视频解码装置之间的协议来设置,或者可以在更高级别处基于每个图像或切片从视频编码装置发送到视频解码装置。
在另一个实施方案中,如等式3所示,当方向模式的最大直方图值与所有直方图值的总和相比小于预设比率时,预测模式推导单元608可以确定非方向模式作为当前块的预测模式。
[等式3]
此时,可以基于当前块的尺寸来确定预设阈值。
在又一个实施方案中,当通过将所有直方图值的总和除以用于梯度计算的像素的数量而获得的值小于预设阈值时,预测推导单元608可以确定非方向模式作为当前块的预测模式。此外,当通过将方向模式的最大直方图值除以用于梯度计算的像素的数量而获得的值小于预设阈值时,预测模式推导单元608可以确定非方向模式作为当前块的预测模式。
此外,当通过将所有直方图值的总和除以用于直方图计算的梯度的数量而获得的值小于预设阈值时,预测推导单元608可以确定非方向模式作为当前块的预测模式。此外,当通过将方向模式的最大直方图值除以用于直方图计算的梯度的数量而获得的值小于预设阈值时,预测模式推导单元608可以确定非方向模式作为当前块的预测模式。
另一方面,根据表2,用于梯度计算的像素的数量可以是用于直方图计算的梯度的数量的9倍或3倍。
在又一个实施方案中,当推导的当前块的预测模式是方向模式时,预测模式推导单元608可以添加非方向模式作为当前块的预测模式。此时,可以根据视频编码装置与视频解码装置之间的协议来设置添加的非方向模式。
帧内预测执行单元610通过利用推导的预测模式执行帧内预测来生成当前块的预测块。帧内预测执行单元610可以利用属于左侧和顶部的恢复的参考样本中最接近当前块的左侧边和顶部边的参考样本来执行帧内预测,而无需额外的解析。替选地,帧内预测执行单元610可以通过解析指示在多边参考样本中要使用的参考样本边的索引来确定用于帧内预测的参考样本边。
在一个实施方案中,帧内预测执行单元610可以生成根据具有最大梯度直方图值的方向模式Mb预测的信号P1作为预测的信号Pd。此外,如上所述,帧内预测执行单元610可以通过对根据具有最大梯度直方图值的方向模式Mb预测的信号P1和根据具有第二最大梯度直方图值的模式Ma预测的信号P2执行加权平均来生成预测的信号Pd。此时,可以与相应模式的直方图值成比例地确定权重值。
在另一个实施方案中,当推导的模式是如上所述的方向模式时,帧内预测执行单元610可以额外地使用预设的非方向模式(例如,平面)。如等式4所示,帧内预测执行单元610可以通过对根据方向模式预测而生成的预测的信号Pd和根据非方向模式预测而生成的预测的信号Pnd应用加权平均来生成最终预测的信号P。
[等式4]
P=w1·Pd+w2·Pnd(w1+w2=2b)
在等式4中,b代表整数运算的移位值。另外,用于加权平均的权重w1、w2可以是标量或矩阵。可以根据视频编码装置与视频解码装置之间的协议来设置权重。
图10示出根据本发明的一个实施方案的矩阵形式的权重值。
另一方面,可以基于方向模式确定矩阵形式的权重。例如,根据预测模式,可以以这样的方式形成矩阵,即随着当前块的样本移动远离用于预测的参考样本,权重值减小。
在另一个实施方案中,帧内预测执行单元610可以从比特流解析指示预定义的k个权重或矩阵的一个的索引,以确定权重值或权重矩阵。
在又一个实施方案中,当应用ISP技术时,分区的子块可以共享推导的当前块的预测模式作为相同的帧内预测模式。替选地,帧内预测装置可以基于恢复的先前子块的恢复的样本来推导当前子块的预测模式,然后可以利用推导的预测模式对当前子块执行帧内预测。此时,可以基于子块的尺寸隐式地确定是否为每个子块推导预测模式。
如图11所示,在当前块被竖直地分区成两个子块时,帧内预测装置可以根据先前的子块基于恢复的样本来推导当前子块的预测模式。另一方面,尽管图11的示例显示在竖直方向上分区的子块,但是对于在水平方向上分区的子块,可以类似地推导当前子块的预测模式。
此外,当应用ISP技术时,帧内预测装置可以顺序地恢复每个子块,并且根据先前的子块利用恢复的参考样本来执行当前子块的帧内预测。
图12是示出根据本发明的一个实施方案利用预测模式推导的帧内预测方法的流程图。
视频解码装置从比特流解析指示是否推导当前块的预测模式的预测模式推导标志S1200。另一方面,预测模式推导标志可以由关于比特率失真优化的视频编码装置来设置,并且被发送到视频解码装置。
在当前块不能使用左侧和/或上方参考样本(包括图像边界、切片边界或瓦片边界)时,可以隐式地省略预测模式推导标志的解析。
作为另一个实施方案,在确定是否执行预测模式推导之前,视频解码装置可以从比特流解析指示当前块的预测模式是否是非方向模式的一个或多个标志,所述非方向模式例如是平面模式、DC模式或基于矩阵的模式。当所有相应的标志都为假时,可以解析预测模式推导标志。
视频解码装置检查预测模式推导标志S1202。
当预测模式推导标志为假时(S1202为否),视频解码装置可以从比特流解析当前块的预测模式,并且可以利用解析的预测模式生成当前块的预测块S1204。
另一方面,当预测模式推导标志为真时(S1202为是),视频解码装置跳过对当前块的帧内预测模式的解析,并且执行后续步骤S1210至S1216。
视频解码装置根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域S1210。
视频解码装置可以确定当前块的左侧和顶部的三行恢复的参考像素作为计算区域。此时,可以基于当前块的宽度和高度来设置位于当前块的左侧和顶部的计算区域的长度。
在另一个实施方案中,视频解码装置可以从比特流解析指示计算区域的标志,以在当前块的左部与上部之间设置计算区域。
在又一个实施方案中,可以根据视频编码装置与视频解码装置之间的协议隐式地确定计算区域。在这种情况下,可以省略确定计算区域的步骤。
视频解码装置计算当前块的计算区域中的方向模式的梯度直方图S1212。
视频解码装置利用预设的边界检测滤波器来计算位于当前块的第二边上的恢复的参考样本的竖直梯度值和水平梯度值。视频解码装置利用竖直梯度值和水平梯度值来计算位于第二边上的恢复的参考样本处的梯度方向和幅度。视频解码装置通过计算最接近梯度方向的帧内预测的方向模式,然后在对应于计算的方向模式的直方图中累加梯度幅度来计算方向模式的梯度直方图。
视频解码装置可以基于预定的采样间隔对位于第二边上的恢复的参考样本进行子采样,然后可以计算子采样的像素的梯度直方图。此时,可以根据视频编码装置与视频解码装置之间的协议来定义预定的采样间隔和子采样的像素的位置。替选地,可以基于当前块的尺寸和/或纵横比来确定像素的采样间隔和子采样位置。
视频解码装置基于梯度直方图来推导当前块的预测模式S1214。此时,推导的帧内预测模式可以是方向模式或非方向模式。
视频解码装置可以推导方向模式如下。
视频解码装置可以根据梯度直方图确定具有最大值的第一方向模式作为当前块的预测模式。
替选地,视频解码装置可以根据梯度直方图确定具有最大值的第一方向模式和具有第二最大值的第二方向模式作为当前块的预测模式。
作为另一个实施方案,视频解码装置可以额外地解析指示第一方向模式和第二方向模式的一个的预测模式指示标志,以根据解析的标志值来确定当前块的预测模式。当第一方向模式和第二方向模式的直方图值之间的差小于或等于预定阈值时,视频解码装置可以从比特流解析预测模式指示标志。另一方面,当两个模式的直方图值之间的差大于预定阈值时,视频解码装置可以跳过对预测模式指示标志的解析。替选地,当两个直方图值之间的差与所有直方图值的总和相比大于或等于预设比率时,视频解码装置可以跳过对预测模式指示标志的解析。
视频解码装置可以推导非方向模式如下。
当第一方向模式的直方图值小于预设第一阈值或者梯度直方图的值的总和小于预设第二阈值时,视频解码装置可以确定非方向预测模式作为当前块的预测模式。此时,非方向模式可以是DC或平面模式。
在另一个实施方案中,当第一方向模式的直方图值与梯度直方图值的总和之间的比率小于预设比率时,视频解码装置可以确定非方向模式作为当前块的预测模式。
作为另一个实施方案,当梯度直方图值的总和与用于梯度计算的像素的数量之间的比率小于预设第一比率,或者第一方向模式的直方图值与用于梯度计算的像素的数量之间的比率小于预设第二比率时,视频解码装置可以确定非定向预测模式作为当前块的预测模式。
视频解码装置通过利用推导的预测模式执行帧内预测来生成当前块的预测块S1216。
视频解码装置可以利用属于左侧和顶部恢复的参考样本中最接近当前块的左侧边和顶部边的参考样本来执行帧内预测,而无需额外的解析。替选地,视频解码装置可以通过从比特流解析指示在多边参考样本中要使用的参考样本边的索引来确定用于帧内预测的参考样本边。
作为另一个实施方案,视频解码装置可以通过利用第一方向模式生成当前块的第一预测块,利用第二方向模式生成当前块的第二预测块,并且对第一预测块和第二预测块执行加权平均来生成当前块的预测块。此时,可以与相应模式的直方图值成比例地确定权重值。
尽管描述了顺序执行的各个流程图中的步骤,但这些步骤仅仅例示了本发明的一些实施方案的技术思想。因此,本发明所属领域的普通技术人员可以通过改变在各个附图中描述的顺序或通过并行地执行两个或更多个步骤来执行步骤。因此,各个流程图中的步骤不限于所示的按发生时间排列的顺序。
应当理解,上述描述呈现了可以以各种其他方式实现的说明性实施方案。在一些实施方案中描述的功能可以通过硬件、软件、固件和/或它们的组合来实现。还应当理解,本说明书中描述的功能组件标记为“……单元”,以突出强调它们独立实现的可能性。
另一方面,在一些实施方案中描述的各种方法或功能可以实现为存储在非易失性记录介质中的指令,所述指令可以由一个或更多个处理器读取和执行。非易失性记录介质可以包括例如以计算机***可读取的形式存储数据的各种类型的记录装置。例如,非易失性记录介质可以包括存储介质,例如可擦除可编程只读存储器(EPROM)、闪存驱动器、光盘驱动器、磁性硬盘驱动器和固态驱动器(SSD)等等。
尽管出于说明的目的描述了本发明的示例性实施方案,但是本发明所属领域的普通技术人员应当理解,在不脱离本发明的思想和范围的情况下,可以进行各种修改、添加和替换。因此,出于简洁和清楚起见描述了本发明的实施方案。本发明的实施方案的技术思想的范围不受例示的限制。相应地,本发明所属领域的普通技术人员应当理解,本发明的范围不受上述明确描述的实施方案的限制,而是受权利要求及其等同形式的限制。
(附图标记)
122:帧内预测器
510:熵解码器
542:帧内预测器
602:预测模式推导确定单元
604:梯度计算区域确定单元
606:直方图计算单元
608:预测模式推导单元
610:帧内预测执行单元。
相关申请的交叉引用
本申请要求于2021年3月4日提交的韩国专利申请No.10-2021-0028795以及于2022年3月2日提交的韩国专利申请No.10-2022-0026549的优先权,其每个的全部内容通过引用结合于本文中。
Claims (20)
1.一种由视频解码装置执行的方法,其用于当前块的帧内预测,所述方法包括:
从比特流解析预测模式推导标志,所述预测模式推导标志指示是否推导当前块的预测模式;以及
检查预测模式推导标志,
其中,当预测模式推导标志为真时,所述方法包括:
根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域;
在用于当前块的计算区域中计算方向模式的梯度直方图;
基于梯度直方图来推导当前块的预测模式;和
通过利用推导的预测模式执行帧内预测来生成当前块的预测块。
2.根据权利要求1所述的方法,进一步包括:
从比特流解析指示当前块的预测模式是否是非方向模式的一个或多个标志,
其中,当指示非方向模式的一个的所有标志为假时,对预测模式推导标志进行解析。
3.根据权利要求1所述的方法,其中,当预测模式推导标志为真时,从比特流解析子块分区应用标志以确定是否执行当前块的子块分区。
4.根据权利要求1所述的方法,其中,确定计算区域包括:
确定当前块的左侧和顶部的三行恢复的参考像素作为计算区域,以及
其中,基于当前块的宽度和高度来设置位于当前块的左侧和顶部的计算区域的长度。
5.根据权利要求1所述的方法,进一步包括:
从比特流解析指示计算区域的标志,以根据指示计算区域的标志在当前块的左部与上部之间设置计算区域。
6.根据权利要求1所述的方法,其中,计算直方图包括:
使用预设的边界检测滤波器来计算位于当前块的第二边上的恢复的参考样本的竖直梯度值和水平梯度值。
7.根据权利要求6所述的方法,其中,计算直方图包括:
利用竖直梯度值和水平梯度值来计算位于第二边上的恢复的参考样本处的梯度方向和幅度;
计算帧内预测的最接近梯度方向的方向模式;以及
在对应于方向模式的直方图中累加梯度幅度。
8.根据权利要求6所述的方法,其中,计算直方图包括:
基于预定的采样间隔对位于第二边上的恢复的参考样本进行子采样,然后计算子采样的像素的梯度直方图。
9.根据权利要求8所述的方法,其中,基于当前块的尺寸和/或纵横比来确定预定的采样间隔和子采样的像素的位置。
10.根据权利要求1所述的方法,其中,推导预测模式包括:
根据梯度直方图确定具有最大值的第一方向模式作为当前块的预测模式。
11.根据权利要求1所述的方法,其中,推导预测模式包括:
根据梯度直方图,确定具有最大值的第一方向模式和具有第二最大值的第二方向模式作为当前块的预测模式。
12.根据权利要求10所述的方法,其中,推导预测模式包括:
当第一方向模式的直方图值小于预设第一阈值或者梯度直方图的值的总和小于预设第二阈值时,确定非定向预测模式作为当前块的预测模式。
13.根据权利要求10所述的方法,其中,推导预测模式包括:
当第一方向模式的直方图值与梯度直方图值的总和之间的比率小于预设比率时,确定非方向模式作为当前块的预测模式。
14.根据权利要求3所述的方法,其中,当子块分区应用标志为真时,当前块被分区为子块,并且推导的当前块的预测模式被共享为子块的相同帧内预测模式。
15.根据权利要求3所述的方法,其中,当子块分区应用标志为真时,当前块被分区为子块,并且基于恢复的先前子块的恢复样本来推导当前子块的预测模式,以及
其中,基于子块的尺寸隐式地确定是否为每个子块推导预测模式。
16.根据权利要求11所述的方法,其中,生成预测块包括:
通过利用第一方向模式生成当前块的第一预测块,利用第二方向模式生成当前块的第二预测块,并且对第一预测块和第二预测块执行加权平均来生成当前块的预测块。
17.根据权利要求11所述的方法,其中,生成预测块包括:
在当前块的预测模式是方向模式时,利用非方向模式,以及
其中,通过利用非方向模式生成当前块的第三预测块,并且对第一预测块、第二预测块和第三预测块执行加权平均来生成当前块的预测块。
18.一种帧内预测装置,包括:
预测模式推导确定单元,其配置为通过从比特流解析预测模式推导标志来确定是否推导当前块的预测模式;
梯度计算区域确定单元,其配置为根据恢复的当前块的相邻样本来确定用于计算梯度值的计算区域;
直方图计算单元,其配置为在用于当前块的计算区域中计算方向模式的梯度直方图;
预测模式推导单元,其配置为基于梯度直方图来推导当前块的预测模式;以及
帧内预测执行单元,其配置为通过利用推导的预测模式执行帧内预测来生成当前块的预测块。
19.根据权利要求18所述的装置,其中,预测模式推导确定单元进一步配置为从比特流解析指示当前块的预测模式是否是非方向模式的一个或多个标志,以及
其中,当指示非方向模式的一个的所有标志为假时,对预测模式推导标志进行解析。
20.根据权利要求18所述的装置,其中,当预测模式推导标志为真时,预测模式推导确定单元配置为确定对当前块的预测模式进行推导。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2021-0028795 | 2021-03-04 | ||
KR1020220026549A KR20220125175A (ko) | 2021-03-04 | 2022-03-02 | 인트라 예측모드 유도를 이용하는 비디오 코딩방법 및 장치 |
KR10-2022-0026549 | 2022-03-02 | ||
PCT/KR2022/002985 WO2022186616A1 (ko) | 2021-03-04 | 2022-03-03 | 인트라 예측모드 유도를 이용하는 비디오 코딩방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117044197A true CN117044197A (zh) | 2023-11-10 |
Family
ID=88626780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280017239.2A Pending CN117044197A (zh) | 2021-03-04 | 2022-03-03 | 利用推导帧内预测模式的视频编解码的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117044197A (zh) |
-
2022
- 2022-03-03 CN CN202280017239.2A patent/CN117044197A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230412799A1 (en) | Method and apparatus for video coding using derivation of intra prediction mode | |
CN113892268A (zh) | 基于预测模式估计的帧内预测装置和方法 | |
CN116530082A (zh) | 利用帧内预测的视频编码的方法和装置 | |
CN116472709A (zh) | 用于视频编码和解码的装置和方法 | |
CN113812147B (zh) | 使用块内复制的图像编码和解码 | |
KR20220125175A (ko) | 인트라 예측모드 유도를 이용하는 비디오 코딩방법 및 장치 | |
CN117597924A (zh) | 利用改进的交叉分量线性模型预测的视频编解码方法和装置 | |
CN117044212A (zh) | 基于分割信息利用去块滤波的视频编解码方法和装置 | |
CN116941241A (zh) | 利用基于矩阵的交叉分量预测的视频编解码方法和装置 | |
CN116491114A (zh) | 利用子块单元帧内预测的影像编码和解码方法和装置 | |
CN116113985A (zh) | 利用基于深度学习的环内滤波器进行视频编码和解码 | |
CN117044197A (zh) | 利用推导帧内预测模式的视频编解码的方法和装置 | |
US20230283768A1 (en) | Method for predicting quantization parameter used in a video encoding/decoding apparatus | |
US20240031564A1 (en) | Method and apparatus for video coding using adaptive intra prediction precision | |
US20230388541A1 (en) | Method and apparatus for video coding using intra prediction based on subblock partitioning | |
US20230412811A1 (en) | Method and apparatus for video coding using spiral scan order | |
US20240114148A1 (en) | Video encoding and decoding method for adaptively determining chroma intra directional prediction mode | |
US20230291928A1 (en) | Video encoding and decoding method and apparatus using selective subblock split information signaling | |
US20240007623A1 (en) | Block splitting structure for efficient prediction and transform, and method and appartus for video encoding and decoding using the same | |
US20230055497A1 (en) | Image encoding and decoding based on reference picture having different resolution | |
CN118251891A (zh) | 利用基于模板匹配的帧内预测的视频编解码的方法和装置 | |
CN117044200A (zh) | 利用螺旋扫描顺序的视频编解码的方法和装置 | |
CN118160304A (zh) | 使用各种块划分结构的视频编码方法和设备 | |
CN117917072A (zh) | 视频编码/解码方法和装置 | |
CN117917071A (zh) | 利用子块编解码次序变化和根据子块编解码次序变化的帧内预测的视频编解码的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |