一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于解码器侧内模式导出的信令的制作方法

2022-07-20 06:35:55 来源:中国专利 TAG:


1.本公开一般涉及视频编解码,更具体地,涉及基于用于解码器侧内预测模式导出(dimd)的信令的视频编码和解码。


背景技术:

2.当前,正在努力改善当前视频编解码器技术的性能,以提供更好的压缩率或提供允许较低复杂度或并行实现的视频编解码和解码方案。行业专家最近提出了几种新的视频编解码工具,目前正在进行测试以确定其有效性。


技术实现要素:

3.以下提供了一个或多个方面的简化摘要,以提供对这些方面的基本理解。该概述不是对所有预期方面的广泛概述,并且既不旨在确定所有方面的关键或关键要素,也不旨在描绘任何或所有方面的范围。它的唯一目的在于以简化的形式呈现一个或多个方面的一些概念,作为稍后呈现的更详细描述的前奏。
4.示例实现包括一种视频解码方法,该方法包括:确定将dimd应用于经编码的比特流的解码单元。该方法还包括:在包括多个图片的视频与视频的比特流之间执行转换,其中dimd基于该确定使用内预测模式(ipm)被应用于该单元。
5.本公开还提供了一种设备,该设备包括:存储计算机可执行指令的存储器和被配置为执行计算机可执行指令以执行上述方法的至少一个处理器,一种包括用于执行上述方法的装置的设备,以及一种存储用于执行上述方法的计算机可执行指令的非暂时性计算机-可读介质。
6.另一示例实现包括一种视频解码方法,包括:确定将dimd应用于比特流的单元。该方法还包括:在包括多个图片的视频与视频的比特流之间执行转换,其中dimd和内编解码(intra coding)工具基于该确定使用内预测模式(ipm)被应用于该单元。
7.本公开还提供了一种设备,该设备包括:存储计算机可执行指令的存储器和被配置为执行计算机可执行指令以执行上述方法的至少一个处理器,一种包括用于执行上述方法的装置的设备,以及一种存储用于执行上述方法的计算机可执行指令的非暂时性计算机-可读介质。
8.另一示例实现包括一种视频解码方法,包括:确定将dimd应用于比特流的单元。该方法进一步包括:在包括多个图片的视频与视频的比特流之间执行转换,其中与dimd相关的信息在比特流内作为基于该单元的语法元素被用信令发送。
9.本公开还提供了一种设备,该设备包括:存储计算机可执行指令的存储器和被配置为执行计算机可执行指令以执行上述方法的至少一个处理器,一种包括用于执行上述方法的装置的设备,以及一种存储用于执行上述方法的计算机可执行指令的非暂时性计算机-可读介质。
10.另一示例实现包括一种视频解码方法,包括:确定将dimd应用于比特流的单元。该
方法还包括:在包括多个图片的视频与视频的比特流之间执行转换,其中dimd和内编解码工具基于该确定使用内预测模式(ipm)被应用于该单元。
11.本公开还提供了一种设备,包括:存储计算机可执行指令的存储器和被配置为执行计算机可执行指令以执行上述方法的至少一个处理器,一种包括用于执行上述方法的装置的设备,以及一种存储用于执行上述方法的计算机可执行指令的非暂时性计算机-可读介质。
12.本公开还提供了一种设备,包括:存储计算机可执行指令的存储器和被配置为执行计算机可执行指令以执行上述方法的至少一个处理器,一种包括用于执行上述方法的装置的设备,以及一种存储用于执行上述方法的计算机可执行指令的非暂时性计算机-可读介质。
13.为了实现上述和相关的目的,一个或多个方面包括在下文中充分描述并且在权利要求中特别指出的特征。以下描述和附图详细阐述了一个或多个方面的一些说明性特征。然而,这些特征仅指示可以采用各个方面的原理的各种方式中的一些,并且本描述旨在包括所有这些方面及其等价物。
附图说明
14.图1是示出根据本公开的一些方面的视频编解码系统的示例的框图。
15.图2是示出根据本公开的一些方面的视频编码器的第一示例的框图。
16.图3是示出根据本公开的一些方面的视频解码器的示例的框图。
17.图4是示出根据本公开的一些方面的视频编码器的第二示例的框图。
18.图5是根据本公开的一些方面的通用视频编解码(vvc)的编码器框图的示例。
19.图6是根据本公开的一些方面的具有67个内预测模式以捕获自然视频中呈现的任意边缘方向的内模式编解码的示意图。
20.图7和8是根据本公开的一些方面的广角内预测的参考示例图。
21.图9是根据本公开的一些方面在方向超过45
°
角的情况下的不连续性图。
22.图10是根据本公开的一些方面的用于导出色度的α和β的样本的位置的示意图。
23.图11是根据本公开的一些方面的用于导出亮度的α和β的样本的位置的示意图。
24.图12-15图示了根据本公开的一些方面的在各种预测模式上应用的pdpc的参考样本(rx,-1和r-1,y)的示例。
25.图16是根据本公开的方面使用的多参考线(mrl)内预测的图。
26.图17和18是根据本公开的一些方面的根据块大小将亮度内预测块竖直或水平地划分为子分区的内子分区(isp)的示例图。
27.图19是根据本公开的一些方面的用于vvc的矩阵加权内预测过程(mip)方法的图。
28.图20是根据本公开的一些方面的基于模板的内模式导出的图,其中目标表示要为其估计内预测模式的当前块(块大小为n)。
29.图21是根据本公开的一些方面的可以基于内预测模式导出对其执行梯度分析的一组所选像素的模板的图。
30.图22是根据本公开的方面的3x3的sobel梯度滤波器与模板的卷积的图。
31.图23是根据本公开的一些方面的具有多于67个内预测模式以捕获自然视频中呈
现的任意边缘方向的内模式编解码的示意图。
32.图24是根据本公开的一些方面的包括左上子模板的示例模板的图。
33.图25是根据本公开的一些方面的包括左子模板和上子模板的示例模板的图。
34.图26是根据本公开的一些方面的包括上子模板的示例模板的图。
35.图27是根据本公开的一些方面的包括左子模板的示例模板的图。
36.图28是根据本公开的一些方面的包括左子模板和左下子模板的示例模板的图。
37.图29是根据本公开的一些方面的包括上子模板和正上子模板的示例模板的图。
38.图30是根据本公开的一些方面的包括左子模板、左下子模板、上子模板和右上子模板的示例模板的图。
39.图31是根据本公开的一些方面的包括左上子模板、左子模板、左下子模板、上子模板和右上子模板的示例模板的图。
40.图32是根据本公开的一些方面的包括与目标块间隔开的子模板的示例模板的图。
41.图33是根据本公开的一些方面的包括左上子模板、左子模板和上子模板的模板的示例模板参考样本的图。
42.图34是根据本公开的一些方面的包括左子模板和上子模板的模板的示例模板-参考样本的图。
43.图35是根据本公开的一些方面的包括上子模板的模板的示例模板-参考样本的图。
44.图36是根据本公开的一些方面的包括左子模板的模板的示例模板参考样本的图。
45.图37是根据本公开的一些方面的用于包括上子模板的模板的具有水平间隙的示例模板-参考样本的图。
46.图38是根据本公开的一些方面的用于包括上子模板的模板的具有竖直间隙的示例模板-参考样本的图。
47.图39是根据本公开的一些方面的具有模板的竖直移位部分的示例模板-参考样本的图。
48.图40是根据本公开的一些方面的具有模板的水平移位部分的示例模板-参考样本的图。
49.图41是根据本公开的一些方面的包括dimd检测组件的示例视频解码器的图。
50.图42是根据本公开的一些方面的包括dimd启用组件的示例视频编码器的图。
51.图43是根据本公开的一些方面的执行转换的第一示例方法的流程图。
52.图44是根据本公开的一些方面的执行转换的第二示例方法的流程图。
53.图45是根据本公开的一些方面的执行转换的第三示例方法的流程图。
具体实施方式
54.下面结合附图阐述的详细描述旨在作为对各种配置的描述,并且不旨在表示可以实践本文所述的概念的唯一配置。详细描述包括用于提供对各种概念的透彻理解的特定细节。然而,对于本领域的普通技术人员来说显而易见的是,可以在没有这些具体细节的情况下实践这些概念。在某些情况下,以框图形式显示结构和组件以避免混淆这些概念。
55.现在将参考各种装置和方法来呈现视频编码和解码的多个方面。将在以下详细描
述中描述这些装置和方法,并在附图中通过各种块、组件、电路、过程、算法以及其他示例(统称为“元素”)进行说明。这些元素可以使用电子硬件、计算机软件或其任何组合来实现。这些元素是作为硬件还是软件实现,这依赖于特定的应用程序和对整个系统施加的设计约束。
56.举例来说,元件或元件的任何部分或元件的任何组合可被实现为包括一个或多个处理器的“处理系统”。处理器的示例包括微处理器、微控制器、图形处理单元(gpu)、中央处理单元(cpu)、应用处理器、数字信号处理器(dsp)、精简指令集计算(risc)处理器、片上系统(soc)、基带处理器、现场可编程门阵列(fpga)、可编程逻辑器件(pld)、状态机、门控逻辑、分立硬件电路和其他合适的硬件,这些硬件被配置为执行本公开通篇描述的各种功能。处理系统中的一个或多个处理器可执行软件。软件应当广义地解释为指令、指令集、代码、代码段、程序代码、程序、子程序、软件组件、应用程序、软件应用程序、软件包、例程、子例程、对象、可执行文件、执行线程、过程、函数,在其他示例中,无论是被称为软件、固件、中间件、微代码、硬件描述语言或是其他。
57.因此,在一个或多个示例中,所描述的功能可以以硬件、软件或其任何组合来实现。如果以软件实现,则这些功能可以存储在或编码为计算机可读介质上的一个或多个指令或代码。计算机可读介质包括计算机存储介质。存储介质可以是计算机可以访问的任何可用介质。作为示例而非限制,此类计算机可读介质可包括随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程rom(eeprom)、光盘存储器、磁盘存储器、其他磁存储设备、上述类型的计算机可读介质的组合、或可用于以由计算机可访问的指令或数据结构的形式存储计算机可执行代码的任何其他介质。
58.本方面一般涉及视频编解码中dimd的信令。如这里详细描述的,诸如高效视频编解码(hevc)、通用视频编解码(vvc)等的视频编解码技术可以在编码器和解码器处使用ipm来编码/解码视频的每个图像或帧,这可以压缩比特流中的比特数,这可以提供图像或帧以及视频的高效存储或传输。如本文中进一步详细描述的,ipm是针对图像的每个块确定或指定的,其中块可以包括由编解码单元cu或预测单元(pu)(例如,n
×
n个cu或pu)的子集限定的图像的一部分,其中每个cu或pu可以是像素、色度、亮度、此类的集合等。然后,使用ipm来基于先前解码的参考像素、色度、亮度来预测给定块。因此,ipms的使用可能不再需要为每个像素、色度或亮度等存储或传输特定值。
59.在当前的视频编解码技术中,用于编码块的ipm可以在比特流中被信令发送,这可能需要大量开销。根据这里描述的方面,用于内预测的ipm可以在解码器处经由dimd导出。通过减少用于信令发送ipm的比特,导出ipm可以降低比特流的比特率。例如,内模式信息(例如,ipm)可以在编码器和解码器两者处从当前块(即,先前解码的块)的邻近重构样本导出。本公开涉及对dimd的增强,尤其是将dimd合并到利用其他内编解码工具的视频编解码技术中。例如,在某些实例中,内编解码工具可能不支持使用ipm,和/或视频解码器可能在视频编码器还采用其他内编解码工具时无法确定何时执行dimd和/或如何执行dimd。
60.图1是示出可利用本发明的技术的视频编解码系统100的示例的框图。如图1所示,视频编码系统100可以包括源设备110和目的地设备120。可以被称为视频编码设备的源设备110可以生成经编码的视频数据。可以被称为视频解码设备的目的地设备120可以对由源设备110生成的经编码的视频数据进行解码。源设备110可以包括视频源112、视频编码器
114和输入/输出(i/o)接口116。
61.视频源112可以包括诸如视频捕获设备的源、从视频内容提供方接收视频数据的接口、和/或用于生成视频数据的计算机图形系统、或这些源的组合。视频数据可以包括一个或多个图片或图像。术语“图片”、“图像”或“帧”始终可以互换使用,以指代产生视频的图像流中的单个图像。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关联的数据。编解码图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射器、总线、或支持设备之间或计算设备内的数据传输的基本上任何机制,该计算设备可以包括源设备110和目的地设备120(例如,其中计算设备存储通过使用源设备110的功能生成的经编码的视频,以用于使用目的地设备120的功能进行显示)。在一个示例中,经编码的视频数据可以通过网络130a经由i/o接口116直接传输到目的地设备120。经编码的视频数据也可以被存储到存储介质/服务器130b上,以供目的地设备120访问。
62.目的地设备120可以包括i/o接口126、视频解码器124和显示设备122。i/o接口126可以包括接收器和/或调制解调器、总线或支持在设备之间或计算设备内的数据传输的基本上任何机制。i/o接口126可以从源设备110或存储介质/服务器130b获取经编码的视频数据。视频解码器124可以对经编码的视频数据进行解码。显示设备122可以向用户显示经解码的视频数据。显示设备122可以与目标设备120集成,或者可以在目标设备120的外部,该目标设备120被配置为与外部显示设备接口。
63.视频编码器114和视频解码器124可以根据视频压缩标准操作,例如hevc标准、vvc标准和其他当前和/或其他标准。
64.图2是示出根据本公开的一些方面的视频编码器200的示例的框图,其可为图1中示出的系统100中的视频编码器114的实例。
65.视频编码器200可经配置以执行本发明的任何或所有技术。在图2的示例中,视频编码器200包括多个功能组件。本发明中描述的技术可在视频编码器200的各种组件之间共享。在一些实例中,处理器可经配置以执行本发明中描述的任何或所有技术,包括视频编码器200的那些。
66.视频编码器200的功能组件可包括分区单元201、预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214中的一者或多者,预测单元202可包括模式选择单元203、运动估计单元204、运动补偿单元205和内预测单元206。
67.在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在示例中,预测单元202可以包括内块复制(ibc)单元。ibc单元可以在ibc模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。
68.此外,一些组件(例如运动估计单元204和运动补偿单元205)可以高度集成,但是出于解释的目的在图2的示例中分开表示。
69.分区单元201可将图片分区成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块大小。
70.模式选择单元203可以例如基于错误结果来选择编解码模式:内(intra)模式或间
(inter)模式之一,并将得到的内或间编解码块提供给以下中的至少一个:残差生成单元207以生成残差块数据,以及重构单元212以重构编码块来用作参考图片。在一些示例中,模式选择单元203可选择内预测和间预测(ciip)模式的组合,其中预测基于间预测信号和内预测信号。在间预测的情况下,模式选择单元203还可以为块选择运动向量的分辨率(例如,子像素或整数像素精度)。
71.为了对当前视频块执行间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较,来生成当前视频块的运动信息。在一个示例中,每个参考帧可以对应于视频的一张图片。运动补偿单元205可以基于运动信息和来自缓冲器213的与当前视频块相关联的图片之外的图片的解码样本,来确定当前视频块的预测视频块。
72.例如,取决于当前视频块是在i切片、p切片还是b切片中,运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作。如这里所使用的,在一些方面,“i切片”可以指由宏块组成的图片的一部分,所有宏块均基于同一图片内的宏块。此外,如这里所使用的,在一些方面,“p切片”和“b切片”可以指由不依赖于同一图片中的宏块的宏块组成的图片的部分。
73.在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以针对当前视频块的参考视频块来搜索列表0或列表1的参考图片。运动估计单元204然后可产生参考索引和运动向量,参考索引指示列表0或列表1中包含参考视频块的参考图片,运动向量指示当前视频块与参考视频块之间的空间位移。运动估计单元204可以输出参考索引、预测方向指示符和运动向量来作为当前视频块的运动信息。运动补偿单元205可基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
74.其他示例中,运动估计单元204可以对当前视频块进行双向预测,其中运动估计单元204可以针对当前视频块的参考视频块来搜索列表0中的参考图片,也可以针对当前视频块的另一参考视频块来搜索列表1中的参考图片。运动估计单元204然后可以生成参考索引以及运动向量,参考索引指示列表0和列表1中包含参考视频块的参考图片;运动向量指示参考视频块和当前视频块之间的空间位移。运动估计单元204可以输出当前视频块的参考索引和运动向量,来作为当前视频块的运动信息。运动补偿单元205可以基于当前视频块的运动信息所指示的参考视频块,来生成当前视频块的预测视频块。
75.在一些示例中,运动估计单元204可以输出用于解码器的解码处理的完整运动信息集合。
76.在一些示例中,运动估计单元204可以不输出当前视频的完整运动信息集合。相反,运动估计单元204可以参考另一视频块的运动信息,来信令发送当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够相似。
77.在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示一个值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
78.在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块及运动向量差(mvd)。运动向量差指示当前视频块的运动向量与所指示的视频块的运动向量之间的差。视频解码器300可以使用所指示的视频块的运动向量和运动向量
差来确定当前视频块的运动向量。
79.如上所述,视频编码器200可以预测性地信令发送运动向量。由视频编码器200可以实施的预测信令技术的两个实例包括:高级运动向量预测(amvp)和合并模式信令。
80.内预测单元206可以对当前视频块执行内预测。当内预测单元206对当前视频块进行内预测时,内预测单元206可以基于相同图片中其他视频块的解码样本,来生成当前视频块的预测数据。当前视频块的预测数据可包括预测视频块或一个或多个语法元素中的至少一个。
81.残差生成单元207可以通过从当前视频块中减去(例如,用于减号指示)当前视频块的预测视频块,来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中样本的不同样本分量的残差视频块。
82.在其他示例中,当前视频块的当前视频块可能没有残差数据,例如在跳过模式中,并且残差生成单元207可以不执行减法操作。
83.变换单元208(也可称为变换处理单元)可通过将一个或多个变换应用于与当前视频块相关联的残差视频块,来生成用于当前视频块的一个或多个变换系数视频块。
84.在变换单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可基于与当前视频块相关联的一个或多个量化参数(qp)值,来量化与当前视频块相关联的变换系数视频块。
85.逆量化单元210和逆变换单元211可分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可以将经重构的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样本,以产生与当前块相关联的重构视频块,以用于存储在缓冲器213中。
86.在重构单元212重构视频块之后,可执行环路滤波操作以减少视频块中的视频块伪像。
87.熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作,以生成熵编码数据并输出包括熵编码数据的比特流。
88.图3是示出根据本公开的一些方面的视频解码器300的实例的框图,其可为图1中示出的系统100中的视频解码器124的实例。
89.视频解码器300可以被配置以执行本发明的任何或所有技术。在图3的示例中,视频解码器300包括多个功能组件。本发明中描述的技术可在视频解码器300的各种组件之间共享。在一些实例中,处理器可以被配置以执行本发明中描述的任何或所有技术,包括视频解码器300的那些。
90.在图3的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、内预测单元303、逆量化单元304、逆变换单元305、重构单元306和缓冲器307中的一个或多个。在一些示例中,视频解码器300可以执行与关于视频编码器200(图2)描述的编码过程大体相反的解码过程。
91.视频解码器300可以经由熵解码单元301或其他方式接收经编码的比特流。经编码的比特流可以包括熵编码视频数据(例如,视频数据的编码块)。在此示例中,熵解码单元301可以对经熵经编码的视频数据进行解码。基于经解码的视频数据,无论是熵解码还是其
他方式,运动补偿单元302可以确定运动信息,包括运动向量、运动向量精度、参考图片列表索引和其他运动信息。例如,运动补偿单元302可以通过执行amvp和合并模式来确定这样的信息。可以使用amvp,包括基于来自邻近pb和参考图片的数据来导出若干个最可能的候选。运动信息通常包括水平和竖直运动向量位移值、一个或两个参考图片索引,以及在b切片中的预测区域的情况下,与每个索引相关联的参考图片列表的标识。如本文所用,在一些方面,“合并模式”可指从在空间或时间上邻近的块导出运动信息。
92.运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。以子像素精度使用的插值滤波器的标识符可以被包括在随经编码的比特流接收的语法元素中或被包括在单独的辅助信息中,例如,如在编码视频时由视频编码器指定的。
93.在编码视频块期间,运动补偿单元302可以使用由视频编码器200所使用的插值滤波器,来计算参考块的子整数像素的内插值。运动补偿单元302可根据接收的语法信息确定由视频编码器200使用的插值滤波器,并使用该插值滤波器来产生预测块。
94.运动补偿单元302可以使用一些语法信息来确定:用于对经编码的视频序列的帧和/或切片进行编码的块的大小、描述经编码的视频序列的图片的每个宏块如何被分区的分区信息、指示每个分区是如何被编码的模式、每个帧间编码块的一个或多个参考帧(和参考帧列表)、以及用于解码经编码的视频序列的其他信息。如这里所使用的,在一些方面,“切片”可以指在熵编码、信号预测和残差信号重构方面可以独立于相同图片的其他切片被解码的数据结构。切片可以是整个图片或图片的一个区域。
95.内预测单元303可以使用例如在比特流中接收的内预测模式,来从空间邻近的块形成预测块。内预测在本文中可以称为“内”,和/或内预测模式在本文中可以称为“内模式”。逆量化单元304对比特流中所提供的并且由熵解码单元301经解码的量化视频块系数进行逆量化(即,去量化)。逆变换单元305应用逆变换。
96.重构单元306可将残差块与由运动补偿单元302或内预测单元303产生的对应预测块求和,以形成解码块。如果需要,还可以应用去块滤波,来滤波解码块从而去除块效应伪像。经解码的视频块然后被存储在缓冲器307中,缓冲器307为随后的运动补偿/内预测提供参考块,并且还产生用于在显示设备上呈现的经解码的视频。
97.尽管以下描述可能集中于高效视频编解码(hevc)和/或标准通用视频编解码(vvc),但本文描述的概念可适用于其他编解码标准或视频编解码器。
98.图4示出根据本公开的一些方面的hevc视频编码器和解码器400的框图的实例,其可为图1中所示出的系统100中的视频编码器114及视频解码器124、图2中的视频编码器200、以及图3中的视频解码器300,等等。用于生成符合hevc的比特流的编码算法可以如下进行。每个图片可以被分区为块区域(例如,编解码树单元(ctu)),并且精确的块分区可以被传输到解码器。ctu包括亮度编解码树块(ctb)和对应的色度ctb和语法元素。亮度ctb的大小l
×
l可以被选择为l=16、32或64个样本,其中较大的大小可以实现更高的压缩。hevc然后支持使用树结构和类似四叉树的信令,将ctb分区为更小的块。ctu的四叉树语法指定了其亮度和色度cb的大小和位置。四叉树的根与ctu相关联。因此,亮度ctb的大小是亮度cb支持的最大大小。可以联合地信令发送,来将ctu分成亮度和色度cb。一个亮度cb和通常两个色度cb连同相关联的语法一起形成一个编解码单元(cu)。一个ctb可以只包含一个cu,也可能被分区为多个cu,并且每个cu具有相关联的被分区为预测单元(pu)的分区和变换单元
树(tu)。
99.视频序列的第一图片(和/或在进入视频序列的每个干净随机访问点的第一图片)可以仅使用图片内预测,其使用相同的图片内的区域到区域的空间数据预测,但不依赖其他图片对第一图片进行编码。对于顺序或随机访问点之间的剩余图片,可以针对大多数块使用图片间时间预测编码模式。用于图片间预测的编码过程包括选择运动数据,该运动数据包括将被应用于预测每个块的样本的所选参考图片和运动向量(mv)。
100.可以在cu级别决定是使用图片间预测还是图片内预测来编码图片区域。pu分区结构将其根置于cu级别。根据基本的预测类型决定,亮度和色度cb然后可以在大小上进一步被划分,并根据亮度和色度预测块(pb)进行预测。hevc支持从64
×
64到4
×
4样本的可变pb大小。使用块变换对预测残差进行编码。tu树结构的根位于cu级别。亮度cb残差可以与亮度变换块(tb)相同,或者可以进一步被划分为更小的亮度tb。这同样适用于色度tb。
101.编码器和解码器可以通过使用mv和模式决策数据而应用运动补偿(mc),来生成相同的图片间预测信号,其作为辅助信息发送。图片内或图片间预测的残差信号可以通过线性空间变换来变换,这是原始块及其预测之间的差。然后可以对变换系数进行缩放、量化、熵编码,并与预测信息一起传输。
102.该编码器可以复制解码器处理循环,这样两者可以针对后续数据生成相同的预测。因此,量化的变换系数可通过逆缩放来构造,并且然后可以被逆变换以复制残差信号的解码近似。然后,残差可以被添加到预测中,并且将添加的结果馈送到一个或两个环路滤波器,来平滑由逐块处理和量化所引起的伪像。最终图片表示(即,由解码器输出的副本)可被存储在解码图片缓冲器以用于后续图片预测。通常,图片的编码或解码处理的顺序可以不同于它们从源到达的顺序。这样,在一些实例中,可能有必要在解码器的解码顺序(即,比特流顺序)和输出顺序(即,显示顺序)之间进行区分。
103.由hevc编码的视频素材可以作为逐行图像输入(例如,因为源视频源自这种格式,或在编码前通过去隔行生成)。hevc设计中不存在支持采用隔行扫描的明确编解码功能,因为隔行扫描不再用于显示器并且对于分发变得非常不常见。然而,在hevc中已经提供了元数据语法,以允许编码器通过将隔行视频的每个区域(即,每个视频帧的偶数或奇数行)编码为单独的图像隔行视频,或者通过将每个隔行帧编码为hevc编码图像,以指示其已经被发送。这可以提供一种有效的用于编码经隔行视频的方法,而无需支持针对经隔行视频的特殊解码过程。
104.图5是vvc的编码器框图500的示例,其可以包括多个环路内滤波块:例如,去块(deblocking)滤波器(df)、样本自适应偏移(sao)、自适应环路滤波器(alf)等。与df不同的是,其使用预定义的滤波器,sao和alf可以利用当前图片的原始样本,通过分别添加偏移量和应用有限脉冲响应(fir)滤波器来减少原始样本和重构样本之间的均方误差,利用编解码侧信息来信令发送偏移量和滤波器系数。alf可以位于每个图片的最后一个处理阶段,可以看作是捕获和修复先前阶段产生的伪像的工具。
105.图6是具有67个内预测模式以捕获自然视频中呈现的任意边缘方向的内预测模式编码的示意图600。在一些示例中,定向(directional)内模式的数目可以从hevc中使用的33个扩展到65个,而平面和dc模式保持不变。
106.在一些示例中,更密集的定向内预测模式可以被应用于块大小以及亮度和色度内
预测。在hevc中,每个内预测模式编解码块可以包括正方形形状(例如,大小为n
×
n的编解码块)并且其每侧的长度可以是2的幂(例如,其中n是2的幂)。因此,不需要除法运算来使用dc模式生成内预测项(predictor)。在vvc中,块可以具有矩形形状,这在一般情况下可能需要对每个块使用除法运算。为避免dc预测的除法运算,较长侧可用于计算非方形块的均值。
107.尽管在vvc中定义了67个模式,针对给定内预测模式索引的准确预测方向可以进一步依赖于块形状。传统的角度内预测方向定义为沿顺时针方向从45度到-135度。在vvc中,对于非正方块,可以用广角内预测模式自适应地替换若干种常规的角度内预测模式。替换的模式可以使用原始模式索引来被信令发送,原始模式索引在解析之后被重新映射到广角模式的索引。在一些示例中,内预测模式的总数可以保持不变,即67个,内模式编解码方法也可以保持不变。
108.图7和8是广角内预测的参考示例图700和800。在一些示例中,广角方向模式中替换模式的数目可以依赖于块的纵横比。被替换的内预测模式如表1所示:
109.表1被广角模式替换的内预测模式
[0110][0111]
图9是在超过45
°
角的方向的情况下的不连续性的图900。在这种情况下,在广角内预测的情况下,两个竖直邻近的预测样本可以使用两个不邻近的参考样本。因此,低通参考样本滤波器和侧平滑可以被应用于广角预测,以减少增加的间隙δp
α
的负面影响。如果广角模式代表非分数偏移,那么广角模式中满足这个条件的可能有8个模式,分别是[-14,-12,-10,-6,72,76,78,80]。当通过这些模式预测块时,可以直接复制参考缓冲器中的样本,而无需应用任何插值。通过这种修改,可以减少要平滑的样本数目。
[0112]
在vvc中,支持4:2:2和4:4:4色度格式以及4:2:0。用于4:2:2色度格式的色度导出模式(dm)导出表最初是从hevc引入的,将条目数从35扩展到67,以与内预测模式的扩展保持一致。由于hevc规范不支持-135度以下和45度以上的预测角度,范围从2到5的亮度内预测模式可以映射至2。因此,针对4:2:2色度格式的色度dm导出表可以通过替换映射表条目的一些值来更新,以便更精确地转换色度块的预测角度。
[0113]
在一些方面,对于每个间预测cu,可以使用运动参数,包括运动向量、参考图片索引和参考图片列表使用索引、以及用于vvc的新编解码特征的附加信息,来用于帧间预测样本生成。可以以显式或隐式方式来信令发送运动参数。当以跳过模式对cu进行编码时,cu可以与一个pu相关联,并且可以没有显著的残差系数、没有经编码的运动向量增量或参考图片索引。可以指定合并模式,其中可以从邻近cu获得当前cu的运动参数,包括空间和时间候选,以及在vvc中引入的附加调度。合并模式可以被应用于任何帧间预测的cu,而不仅适用于跳过模式。合并模式的备选方案可以是运动参数的显式传输,其中运动向量、针对每个参考图片列表的对应参考图片索引和参考图片列表使用标志和其他需要的信息针对每个cu被显式地信令发送。
[0114]
附加地或备选地,内块复制(ibc)可以是在scc上的hevc扩展中采用的工具,因此可以如本文在编码视频中所描述的由视频编码器114、200、400使用,和/或如这里在解码视频中所描述的由视频解码器124、300、400使用。这样的工具可以改进屏幕内容素材的编解码效率。由于ibc模式可被实现为块级编码模式,因此可在编码器处执行块匹配(bm),以找到每个cu的最佳块向量(或运动向量)。这里,块向量用于指示从当前块到参考块的位移,该参考块已经在当前图片内被重构。经ibc编解码的cu的亮度块向量可以是整数精度。色度块向量也可以被取整到整数精度。当与amvr结合使用时,ibc模式可以在1-pel和4-pel运动向量精度之间切换。经ibc编码的cu可以被视为内预测模式或间预测模式之外的第三预测模式。ibc模式可适用于宽度和高度均小于或等于64亮度样本的cu。
[0115]
在编码器侧,可以为ibc执行基于散列的运动估计。编码器对宽度或高度不大于16个亮度样本的块执行rd检查。对于非合并模式,可以首先使用基于散列的搜索来执行块向量搜索。如果散列搜索没有返回有效的候选,则可以执行基于块匹配的局部搜索。在基于散列的搜索中,当前块和参考块之间的散列键匹配(32位循环冗余校验(crc))可以扩展到所有允许的块大小。针对当前图片中每个位置的散列键计算可以基于4
×
4个子块。对于较大的当前块,当所有4
×
4子块的所有散列键都与对应参考位置的散列键匹配时,可以确定散列键与参考块的散列键匹配。如果发现多个参考块的散列键与当前块的散列键匹配,则可以计算每个匹配参考的块向量成本,并选择成本最小的那个。
[0116]
在一些示例中,在块匹配搜索中,搜索范围可以被设置为覆盖先前和当前的ctu。在cu级别,ibc模式可以用标志被信令发送,也可以作为ibc amvp模式或ibc跳过/合并模式被信令发送。在一个示例中,例如ibc跳过/合并模式,合并候选索引可以被用于指示:来自邻近候选ibc编码块的列表中的哪个块向量被用于预测当前块。合并列表可以包括空间候选、hmvp和成对候选。
[0117]
在另一示例中,例如ibc amvp模式,块向量差可以以与运动向量差相同的方式进行编解码。块向量预测方法使用两个候选作为预测项,一个来自左邻居并且一个来自上邻居(如果是ibc编码)。当任一邻居不可用时,默认块向量可用作预测项。可以信令发送标志以指示块向量预测项索引。
[0118]
为了减少交叉分量冗余,在vvc中可以使用交叉分量线性模型(cclm)预测模式,对于该模式,通过使用如下线性模型,基于相同cu的重构亮度样本来预测色度样本:
[0119]
predc(i,j)=α
·
rec
l

(i,j) β
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式1
[0121]
在这种情况下,predc(i,j)可以表示cu中的预测色度样本,并且可以表示相同cu
的下采样重构亮度样本。cclm参数(α和β)可以从最多四个邻近色度样本及其对应的下采样亮度样本导出。例如,假设当前色度块维度为w
×
h,那么当采用lm模式时,w”和h'被设置为w'=w,h'=h;当采用lm-t模式时,w'=w h;当应用lm-l模式时,h'=h w。
[0122]
上述邻近位置可表示为s[0,-1]

s[w'-1,-1],并且左侧邻近位置可表示为s[-1,0]

s[-1,h'-1]。然后,当应用lm模式并且上和左邻近样本都可用时,四个样本被选为s[w'/4,-1]、s[3*w'/4,-1]、s[-1,h'/4]、s[-1,3*h'/4];当应用lm-t模式或只有上邻近样本可用时,s[w'/8,-1]、s[3*w'/8,-1]、s[5*w'/8,-1]、s[7*w'/8,-1];以及当应用lm-l模式或只有左邻近样本可用时,s[-1,h'/8]、s[-1,3*h'/8]、s[-1,5*h'/8]、s[-1,7*h'/8]。
[0123]
在一些方面,所选位置处的四个邻近亮度样本可以被下采样,并且比较四次以找到两个较大的值:x
0a
和x
1a
,以及两个较小的值:x
0b
和x
1b
.。它们对应的色度样本值可以表示为y
0a
、y
1a
、y
0b
和y
1b
。那么xa、xb、ya和yb可以导出为:
[0124]
xa=(x
0a
x
1a
1)》》1;xb=(x
0b
x
1b
1)》》1;ya=(y
0a
y
1a
1)》》1;
[0125]
yb=(y
0b
y
1b
1)》》1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式2
[0127]
最后,可以根据以下等式获得线性模型参数α和β:
[0128][0129]
β=y
b-α
·
xbꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式4
[0131]
图10是用于导出色度的α和β的样本位置的示意图1000。图11是用于导出亮度的α和β的样本位置的示意图1100。对于图10和11,计算参数α的除法运算可以利用查找表来实现。为了减少存储表所需的存储器,diff值(最大值和最小值之间的差值)和参数α可以用指数符号表示。例如,diff值近似为4位有效部分和指数。因此,1/diff的表被缩减为针对16个有效位值的16个元素,如下所示:
[0132][0133]
在一个示例中,可以使用上模板和左模板一起计算线性模型系数。在另一示例中在另外两种lm模式(称为lm_t和lm_l模式)中,上模板和左模板可以交替使用。在lm_t模式下,只使用上模板来计算线性模型系数。为了得到更多的样本,将上模板扩展为(w h)个样本。在lm_l模式下,只使用左模板来计算线性模型系数。为了得到更多的样本,可以将左模板扩展为(h w)个样本。在lm模式下,左模板和上模板用于计算线性模型系数。
[0134]
为了匹配4:2:0视频序列的色度样本位置,对亮度样本应用两种类型的下采样滤波器,以便在水平和竖直两个方向上实现2:1的下采样率。下采样滤波器的选择由sps级别标志指定。两个下采样滤波器如下,分别对应“类型-0”和“类型-2”的内容。
[0135][0136][0137]
应当注意,当上参考线位于ctu边界时,仅使用一个亮度线(内预测中的通用线缓冲器)来制作下采样的亮度样本。此参数计算可以作为解码过程的一部分来执行,而不仅仅
是作为编码器搜索操作。结果,可以不使用语法来将α和β值传送到解码器。
[0138]
对于色度内预测模式编码,色度内模式编解码总共允许8个内预测模式。这些模式包括五个传统内预测模式和三个交叉分量线性模型模式(lm、lm_t和lm_l)。色度模式信令和导出过程如下表3所示。色度模式编码直接依赖于对应亮度块的内预测模式。由于在i切片中启用了针对亮度和色度分量的单独块分区结构,因此一个色度块可以对应于多个亮度块。因此,对于色度dm模式,可以直接继承覆盖当前色度块中心位置的对应亮度块的内预测模式。
[0139]
表3色度模式信号和导出过程
[0140][0141]
表4色度预测模式的统一二值化表
[0142][0143]
在表4中,第一个bin表示它是常规(0)还是lm模式(1)。如果是lm模式,那么下一个bin表示它是lm_chroma(0)或者不是(1)。如果不是lm_chroma,则下一bin指示它是lm_l(0)还是lm_t(1)。对于这种情况,当sps_cclm_enabled_flag为0时,在熵编码之前可以丢弃对应intra_chroma_pred_mode的二值化表的第一个bin。换句话说,第一个bin被推断为0,因此没有被编码。这个单一的二值化表用于sps_cclm_enabled_flag等于0和1的情况。表4中的前两个bin使用自己的上下文模型进行上下文编码,其余的bin被旁路编码。
[0144]
此外,为了减少双树中的亮度色度延迟,当64
×
64亮度编解码树节点利用not split(不拆分)(并且isp不用于64
×
64cu)或qt来分区时,32
×
32/32
×
16色度编解码树节点中的色度cu被允许按照以下方式使用cclm:如果32
×
32色度节点未被拆分或不是分区qt
拆分,则32
×
32节点中的所有色度cu都可以使用cclm;备选地,如果32
×
32色度节点利用水平bt被分区,并且32
×
16子节点未拆分或使用数值bt拆分,则32
×
16色度节点中的所有色度cu都可以使用cclm。在所有其他亮度和色度编解码树拆分条件下,针对色度cu不允许cclm。
[0145]
在vvc中,dc、平面和多个角度模式的内预测的结果可以通过位置依赖预测组合(pdpc)方法进一步修改。pdpc是一种预测方法,它调用边界参考样本和利用经滤波的边界参考样本的hevc风格的预测的组合。pdpc可以在无需信令的情况下被应用于以下内模式:平面、dc、小于或等于水平的内角度、大于或等于竖直且小于或等于80的内角度。如果当前块是bdpcm模式或mrl索引大于0,则不应用pdpc。
[0146]
预测样本pred(x',y')使用内预测模式(dc、平面、角度)和参考样本的线性组合,根据等式7进行预测,如下所示:
[0147]
pred(x’,y’)=clip(0,(1《《bitdepth)-1,(wl
×
r-1,y’ wt
×rx’,-1
(64-wl-wt)
×
pred(x’,y’) 32)》》6)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式7
[0149]
在上式中,r
x,-1
和r-1,y
可以分别代表位于当前样本(x,y)上边界和左边界的参考样本。
[0150]
在一些方面,如果pdpc被应用于dc、平面、水平和竖直内模式,则可能不需要额外的边界滤波器,如当前在hevc dc模式边界滤波器或水平/竖直模式边缘滤波器的情况下所需要的。针对dc和平面模式的pdpc过程是相同的。对于角度模式,如果当前角度模式为hor_idx或ver_idx,则分别不使用左参考样本或顶参考样本。pdpc权重和缩放因子依赖于预测模式和块大小。pdpc被应用于宽度和高度均大于或等于4的块。
[0151]
图12-15示出用于在各种预测模式上应用的pdpc的参考样本1200、1300、1400、1500(r
x,-1
和r-1,y
)的示例。预测样本pred(x',y')位于预测块内的(x',y')处。例如,参考样本r
x,-1
的坐标x由下式给出:x=x' y' 1,参考样本r-1,y
的坐标y类似地由下式给出:对于对角模式y=x' y' 1。对于其他角度模式,参考样本r
x,-1
和r-1,y
可以位于分数样本位置。在这种情况下,使用最近的整数样本位置的样本值。
[0152]
图16是根据本公开的方面使用的多参考线(mrl)内预测的图1600。在一些示例中,段a和f的样本不是从重构的邻近样本提取的,而是分别利用段b和段e中最近的样本进行填充。hevc图片内预测使用最近的参考线(即参考线0)。在mrl中,使用了2个附加线(参考线1和参考线3)。
[0153]
在视频编解码的一些示例中,所选参考线的索引(mrl_idx)可以被信令发送并且被用于生成内预测项。对于大于0的参考线索引,最可能模式(mpm)列表可以仅包括附加参考线模式,并且在没有剩余模式的情况下mpm索引可以被信令发送。参考线索引可以在内预测模式之前被信令发送,并且平面模式可以从内预测模式被排除以防非零参考线索引被信令发送。
[0154]
可以为ctu内的块的第一线禁用mrl,以防止使用在当前ctu行之外的扩展参考样本。此外,当使用附加的线时,可以禁用pdpc。对于mrl模式,针对非零参考线索引的dc内预测模式中的dc值的导出可以与参考线索引0的dc值的导出对齐。mrl可以存储与ctu一起的3个邻近亮度参考线以生成预测。交叉组件线性模型(cclm)工具可以为其下采样滤波器存储3个邻近亮度参考线。mrl使用相同的3个线的定义可以与cclm对齐,以减少解码器的存储需
求。
[0155]
图17和18是内子分区(isp)的图1700和1800的示例,其根据块大小将亮度内预测块竖直地或水平地划分为子分区。例如,isp的最小块大小是4
×
8(或8
×
4)。如果块大小大于4
×
8(或8
×
4),那么相应块可以被4个子分区划分。已经注意到,m
×
128(m≤64)和128
×
n(n≤64)的isp块可能会产生64
×
64的vdpu的潜在问题。例如,单树情况下的cu具有m
×
128亮度tb和两个对应的色度tb。如果cu使用isp,则亮度tb可以被分成4个tb(只可能是水平分区),每个分区都小于64
×
64的块。但是,在目前的isp设计中,色度块没有被划分。因此,两个色度分量的大小都可能大于32
×
32的块。类似地,使用isp的cu可以产生类似的情况。因此,这两种情况可能是解码器流水线的问题。出于这个原因,可以使用isp的cu大小可以被限制为最大值64
×
64。图17和18显示了两种可能性的例子。所有子分区都满足至少有16个样本的条件。
[0156]
在isp中,不允许1
×
n/2
×
n子块预测依赖于编解码块的先前解码的1
×
n/2
×
n子块的重构值,因此子块的最小预测宽度变为4个样本。例如,利用竖直拆分的isp被编解码的8
×
n(n》4)编解码块被拆分为两个预测区域和四个大小为2
×
n的变换,每个区域的大小为4
×
n。此外,通过使用完整的4
×
n块来预测使用利用竖直拆分的isp而被编解码的4
×
n编解码块;四个变换每个都使用1
×
n。虽然允许1
×
n和2
×
n的变换大小,但可以断言:在4
×
n区域中这些块的变换可以被并行执行。例如,当一个4
×
n预测区域包含四个1
×
n变换时,没有水平方向变换;竖直方向上的变换可以作为竖直方向上的单个4
×
n变换来执行。类似地,当一个4
×
n预测区域包含两个2
×
n变换块时,两个2
×
n块在每个方向(水平和竖直)上的变换操作可以并行进行。在此示例中,与处理4
×
4常规编解码的内块相比,在处理这些较小块时可能不存在延迟或可能减少延迟。
[0157]
表5
[0158][0159][0160]
对于每个子分区,通过将残差信号与预测信号相加来获得重构样本。这里,残差信号是通过熵解码、逆量化和逆变换等过程产生的。因此,每个子分区的重构样本值可用于生成下一个子分区的预测,并且每个子分区被重复处理。此外,将被处理的第一个子分区是包含cu的左上样本的子分区,然后继续向下(水平拆分)或向右(竖直拆分)的子分区。因此,用于生成子分区预测信号的参考样本可能仅位于线的左侧和上侧。所有子分区可以共享相同的内模式。下文是isp与其他编解码工具交互的总结。
[0161]
在一个示例中,如果块具有0之外的mrl索引,则可以实现mrl,继而可以推断isp编码模式为0,因此可以不向解码器发送isp模式信息。在另一示例中,如果熵编码子块的大小已经被修改,使得它们在所有可能情况下具有16个样本,可以选择熵编码系数组大小,如表
5所示。注意,新的大小可能仅影响由isp产生的其中一个尺寸小于4个样本的块。在所有其他情况下,系数组可以保持4
×
4维度。
[0162]
附加地或备选地,关于编解码块标志(cbf)编解码,假设至少一个子分区具有非零的cbf。因此,如果n是子分区的数目,并且前n-1个子分区产生的cbf为零,则可以推断第n个子分区的cbf为1。变换大小限制:具有大于16点长度的所有isp变换可以使用离散余弦变换(dct)-ii。多变换选择(mts)标志:如果cu使用isp编解码模式,mts cu标志可以被设置为0,并且它可能不被发送给解码器。因此,编码器可能不会对每个结果子分区的不同可用变换执行率失真(rd)测试。相反,针对isp模式的变换选择可以是固定的,并且根据内模式、处理顺序和使用的块大小进行选择。因此,在该示例中,可能不需要信令。
[0163]
例如,设th和tv分别是针对w
×
h的子分区选择的水平和竖直变换,其中w是宽度,h是高度。那么可以根据以下规则选择变换:如果w=1或h=1,则可能分别没有水平或竖直变换。如果w≥4并且w≤16,则th=离散正弦变换(dst)-vii,否则,th=dct-ii。如果h≥4并且h≤16,则tv=dst-vii,否则tv=dct-ii。
[0164]
在isp模式下,允许所有67个内预测模式。如果相应的宽度和高度至少为4个样本长,也可以应用pdpc。此外,用于参考样本滤波处理(参考平滑)和内插滤波器选择的条件可能不再存在,并且在isp模式下可以应用三次(dct-if)滤波器以进行分数位置插值。
[0165]
图19是用于vvc的矩阵加权内预测过程(mip)的图1900的示例。为了预测宽度为w和高度为h的矩形块的样本,-mip将块左侧的一行h重构邻近边界样本和块之上的一行w重构邻近边界样本作为输入。如果重构样本不可用,它们则可以像在传统的内预测中那样被生成。
[0166]
在边界样本中,可以通过基于块大小和形状的求平均来选择四个样本或八个样本。具体来说,根据依赖于块大小的预定义规则对邻近边界样本进行求平均,输入边界和被简并(reduce)为更小的边界和然后,将两个简并的边界和被联接成为简并的边界向量bdry
red
,其对于形状4
×
4的块大小为4,并且针对全部其他形状大小为8。如果模式是指mip模式,则此联接定义如下:
[0167][0168]
将平均样本作为输入执行矩阵向量乘法,然后添加偏移量。结果是原始块中的子样本集上的经简并的预测信号。从简并的输入向量bdry
red
生成简并的预测信号pred
red
,该信号是所生成的宽度w
red
和高度h
red
的下采样块上的信号。在这里,w
red
和h
red
定义为:
[0169][0170]
可以通过计算矩阵向量乘积并添加偏移量来计算简并的预测信号pred
red

[0171]
pred
red
=a
·
bdry
red
b
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式10
[0173]
这里a是一个矩阵,如果w=h=4其具有w
red
·hred
行和4列,在全部其他情况下具有8列。矩阵a和偏移向量b取自集合s0、s1、s2之一。其定义索引idx=idx(w,h)如下:
[0174][0175]
这里,矩阵a的每个系数都以8位精度表示。该集合s0由16个矩阵组成,每个矩阵具有16行4列和16个大小为16的偏移向量该集合的矩阵和偏移向量用于大小4
×
4的块。集合s2由8个矩阵组成,每个矩阵具有8行8列和8个大小为16的偏移向量集合s2由6个矩阵组成,每个矩阵具有64行8列和6个大小为64的偏移向量
[0176]
在一些示例中,剩余位置处的预测信号可以通过线性插值从子采样集合上的预测信号生成,线性插值是在每个方向上的单步线性插值。无论块形状或块大小如何,都可以先在水平方向进行插值,然后在竖直方向进行插值。
[0177]
对于内模式的每个cu,发送标志,其用于指示是否可以应用或者不应用mip模式。如果要应用mip模式,则可以用信令发送mip模式(predmodelintra)。对于mip模式,可以以如下方式导出:转置标志(istransposed),其确定是否将模式转置;以及mip模式id(modeid),其确定将用于给定mip模式的矩阵:
[0178]
istransposed=predmodeintra&1
[0179]
modeid=predmodeintra》》1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
等式12
[0181]
可以通过考虑以下几个方面与其他编解码工具协调mip编解码模式:(1)对大块上的mip启用低频不可分离变换(lfnst)。这里使用平面模式的lfnst变换;(2)针对mip的参考样本导出与传统内预测模式完全或至少类似;(3)对于mip预测中使用的上采样步骤,使用原始参考样本而不是下采样样本;(4)在上采样之前而不是在上采样之后进行裁剪(clipping);(5)无论最大变换大小如何,允许上至64
×
64的mip。在一些方面,mip模式的数目对于sizeid=0可以是32,对于sizeid=1可以是16,对于sizeid=2可以是12。
[0182]
在联合探索模型(jem)-2.0中,内模式从hevc中的35个模式被扩展到67个,它们在编码器处导出并显式地信令发送给解码器。jem-2.0中的内模式编解码花费大量开销。例如,在所有内编解码配置中,内模式信令开销可能高达总比特率的5%到10%。该贡献提出了解码器侧的内模式导出方法,以减少内模式编解码开销,同时保持预测精度。为了减少内
模式信令的开销,可以由视频解码器124、300、400在解码视频时使用解码器侧内模式导出(dimd)方法。根据本公开的方面,代替显式地信令发送内模式,可以在编码器和解码器两者处从当前块的邻近重构样本导出信息。由dimd导出的内模式可以存在两种使用方式,例如:1)对于2n
×
2n的cu,当对应的cu级dimd标志打开时,dimd模式用作内预测的内模式;2)对于n
×
n的cu,采用dimd模式替换现有mpm列表中的一个候选,以提高内模式编解码的效率。
[0183]
图20是基于模板的内模式导出的图2000的示例,其中目标表示要为其估计内预测模式的当前块(块大小为n)。模板(由图20中的图案化区域指示)指定经重构的一组样本,其用于导出内模式。模板大小表示为模板内延伸到目标块之上和左侧的样本数目,即l。在一些实现中,模板大小2(即l=2)可用于4
×
4和8
×
8块,并且模板大小4(即l=4)可用于16
×
16和更大的块。模板的参考(由图20中的虚线区域表示)可以指来自模板上方和左侧的一组邻近样本,如jem-2.0所定义的。与模板样本总是来自重构区域不同,在对目标块进行编码/解码时,模板的参考样本可能还没有被重构。在此情况下,利用jem-2.0现有的参考样本替换算法,来将不可用参考样本替换为可用参考样本。
[0184]
对于每个内预测模式,dimd计算重构模板样本与其从模板的参考样本获得的预测样本之间的绝对差(sad)。可以选择产生最小sad的内预测模式,来作为目标块的最终内预测模式。
[0185]
对于内2n
×
2n的cu,dimd可以用作一种额外的内模式,其可以通过将dimd内模式与最佳正常内模式(即,被明确地信令发送的)进行比较,来自适应地选择该模式。为每个内2n
×
2n的cu信令发送一个标志以指示dimd的使用。如果标志为1,则可以使用由dimd导出的内模式来预测cu;否则,不应用dimd并且使用在比特流中明确地信令发送的内模式来预测cu。当启用dimd时,色度分量可以重用与为亮度分量导出的相同的内模式,即dm模式。
[0186]
此外,对于每个dimd编解码的cu,cu中的块可以自适应地选择,以便在pu级别或tu级别导出它们的内模式。具体地,当dimd标志为1时,可以信令发送另一cu级别的dimd控制标志,以指示执行dimd的级别。如果此标志为0,则这可以指示在pu级别执行dimd,并且pu中的所有tu使用相同的导出的内模式进行内预测;否则,如果dimd控制标志为1,这可以指示dimd在tu级别执行,并且pu中的每个tu导出自己的内模式。
[0187]
此外,当启用dimd时,角方向的数目增加到129个,并且dc和平面模式仍然保持不变。为了适应角度内模式增加粒度,针对dimd编码的cu的内插值滤波精度从1/32像素增加到1/64像素。此外,为了使用导出的dimd编码cu的内模式作为邻近内块的mpm候选,可以将dimd编码的cu的129个方向用作mpm之前,可以将它们转换为“正常”内模式(即,65个角度内方向)。
[0188]
在一些方面,内n
×
n个cu的内模式被信令发送。然而,为了提高内模式编解码的效率,从dimd导出的内模式被用作用于预测cu中四个pu的内模式的mpm候选。为了不增加mpm索引信令的开销,可以将dimd候选放置在mpm列表的第一位,并且可以移除最后一个现有的mpm候选。此外,可以执行修剪(pruming)操作,这使得如果dimd候选是冗余的则可以不将其添加到mpm列表中。
[0189]
为了降低编码/解码复杂度,dimd使用了一种直接的快速内模式搜索算法。首先,可以执行一个初始估计过程来为内模式搜索提供良好的起点。具体地,可以通过从允许的内模式中选择n个固定模式来创建初始候选列表。然后,可以为所有候选内模式计算sad,并
且可以选择最小化sad的候选内模式作为起始内模式。为了实现良好的复杂性/性能平衡,初始候选列表可以包括11个内模式,包括dc、平面和hevc中定义的33个角内方向的每第4模式,即内模式0、1、2、6、10
……
30、34。
[0190]
如果起始内模式是dc或平面,它可以用作dimd模式。否则基于起始内模式,然后可以应用细化过程,其中通过一次迭代搜索来标识最佳内模式。在迭代搜索中,在每次迭代中,可以比较由给定搜索间隔分隔的三个内模式的sad值,并且可以保留最小化sad的内模式。然后可以将搜索间隔减少到一半,并且从上次迭代中选择的内模式可以作为当前迭代的中心内模式。对于具有129个角度内方向的当前dimd实现,在细化过程中最多可以使用4个迭代来找到最佳dimd内模式。
[0191]
在一些示例中,可以避免在比特流中传输亮度内预测模式。这是通过使用先前编码/解码的像素以相同方式在编码器和解码器处导出亮度内模式来完成的。该过程定义了称为dimd的新编解码模式,针对内编解码块使用标志来在比特流中信令发送其选择。在编码器处dimd可以与其他编解码模式竞争,包括经典的内编解码模式(其中帧内预测模式被编解码)。注意,在一个示例中,dimd可能仅适用于亮度。对于色度,可以应用经典的内编解码模式。类似于其他编解码模式(经典内、间、合并等),可以计算dimd模式的率失真成本,然后可以将其与其他模式的编解码成本进行比较,以决定是否选择它来作为当前块的最终编解码模式。
[0192]
在解码器侧,可以首先解析dimd标志(如果存在)。如果dimd标志为真,则可以在重构过程中通过使用相同的先前编码的邻近像素来导出内预测模式。如果不是,则可以像经典内编码模式一样从比特流中解析内预测模式。
[0193]
为了导出块的内预测模式,可以首先选择对其执行梯度分析的一组邻近像素。出于规范目的,这些像素可以在解码/经重构的像素池中。图21是可以基于内预测模式导出对其执行梯度分析的一组所选像素的模板的图2100的示例。如图21所示,围绕当前块的模板由左侧的t个像素和上侧的t个像素选择。例如,t的值可以为2。
[0194]
接着,对模板的像素进行梯度分析。这可以有助于确定模板的主角方向,可以假设该主角方向与当前块的主角方向相同。因此,可以使用简单的3
×
3索贝尔梯度滤波器,其由以下矩阵定义,该矩阵可以与模板进行卷积:
[0195][0196]
对于模板的每个像素,具有以当前像素为中心的3
×
3窗口的两个矩阵中的每个矩阵可以被逐点相乘,并且由其8个直接邻居组成,并且可以将结果相加。因此,在水平和竖直方向上可以分别获得与当前像素处的梯度对应的两个值g
x
(来自与m
x
的相乘)和gy(来自与my的相乘)。
[0197]
图22是根据本公开的方面的3
×
3索贝尔梯度滤波器与模板的卷积的图的示例。在一些示例中,像素2210是当前像素。模板像素2220(包括当前像素2210)是可以对其进行梯度分析的像素。不可用像素2230是由于缺少一些邻居而不能对其进行梯度分析的像素。重构像素2240是所考虑的模板之外的可用像素,用于模板像素2220的梯度分析。在重构像素2240不可用的情况下(例如,由于块太靠近图片的边界),不执行使用不可用重构像素2240
的所有模板像素2220的梯度分析。
[0198]
对于每个模板像素2220,如下使用g
x
和gy计算梯度的强度(g)和朝向(o):
[0199][0200]
注意,建议快速实现atan功能。然后可以将梯度的朝向转换为内角预测模式,其用于索引直方图(首先初始化为零)。该内角模式下的直方图值被增加g。一旦模板中的所有模板像素2220都已被处理,则直方图可以包括对于每个内角模式的梯度强度的累积值。可以选择在直方图中的显示最高峰值的模式作为当前块的内预测模式。如果直方图中的最大值为0(表示无法进行梯度分析,或者构成模板的区域是平坦的),则可以选择dc模式作为当前块的内预测模式。
[0201]
对于位于ctu顶部的块,对于位于模板顶部的像素不进行梯度分析。dimd标志使用三种可能的上下文进行编解码,类似于跳过标志编解码,这依赖于左侧和上方的邻近块。上下文0对应于左侧和上方邻近块均未采用dimd编解码的情况,上下文1对应于仅一个邻近块采用dimd编解码的情况,上下文2对应于两个邻近块均采用dimd编解码的情况。每个上下文的初始符号概率被设置为0.5。
[0202]
与经典内模式编解码相比,dimd提供的一个优点在于,导出的内模式可以具有更高精度,允许在无需额外成本的情况下的更精确的预测,这是因为它不在比特流中传输。导出的内模式跨越129个角度模式,因此包括dc总共130个模式(例如,导出的内模式在本文描述的方面可能不是平面的)。经典内编解码模式没有改变,即预测和模式编码仍然使用67种模式。
[0203]
对广角内预测和简化pdpc进行所需的改变,以适应使用129个模式的预测。注意,只有预测过程使用扩展的内模式,这意味着出于任何其他目的(例如决定是否滤波参考样本),模式可以被转换回到67模式精度。
[0204]
在dimd模式中,亮度内模式是在重构过程期间,在块重构之前导出的。这样做是为了避免在解析期间对重构像素的依赖。然而,通过这样做,针对块的色度分量以及邻近块的亮度分量,块的亮度内模式可能是未定义的。因为针对色度定义了固定模式候选列表,这可能会导致问题。通常,如果亮度模式等于色度候选之一,则可以用竖直对角(vdia_idx)内模式替换该候选。如在dimd中,亮度模式不可用,初始色度模式候选列表没有被修改。
[0205]
在亮度内预测模式将从比特流中解析的经典内模式中,mpm列表是使用邻近块的亮度内模式被构建的,如果这些块是使用dimd编解码的,则其可能不可用。在此情况下,例如,在mpm列表构建期间,dimd编解码的块可以被视为间块,这意味着它们实际上被认为是不可用的。
[0206]
在视频已被缩减至一系列语法元素之后,熵编解码可以是在视频编码的最后阶段(以及视频解码的第一阶段)使用的无损压缩形式。语法元素描述了在解码器处如何重构视频序列。这包括预测方法(例如,空间或时间预测、内预测模式和运动向量)和预测误差,也称为残差。算术编解码是一种熵编解码,通过将符号(即语法元素)有效地映射到具有非整数比特数的码字,可以实现接近于序列熵的压缩。上下文自适应二进制算术编解码(cabac)涉及三个主要功能:二值化、上下文建模和算术编码。二值化将语法元素映射到二进制符号(bin)。上下文建模估计bin的概率。最后,算术编解码根据估计的概率将bin压缩为比特。
[0207]
在vvc中使用了多个不同的二值化过程,例如截断莱斯(tr)二值化过程、截断二值化过程、k阶指数哥伦布(egk)二值化过程和定长(fl)二值化过程。
[0208]
上下文建模提供了实现高编码效率所需的准确概率估计。因此,它是高度自适应的,并且不同的上下文模型可以用于不同bin,并且该上下文模型的概率基于先前编解码的bin的值进行更新。具有相似分布的bin通常共享相同的上下文模型。可以基于语法元素的类型、语法元素中的bin位置(binidx)、亮度/色度、邻近信息等来选择每个bin的上下文模型。在每个bin之后可以发生上下文切换。
[0209]
算术编解码可以基于递归区间划分。可以根据bin的概率将初始值为0到1的范围分区两个子区间。经编码的位提供一个偏移量,当转换为二进制小数时,该偏移量选择两个子区间之一,这表示经解码的bin的值。在每个经解码的bin之后,范围被更新为等于所选择的子区间,并且区间划分过程会重复。范围和偏移量具有有限的位精度,因此只要范围低于某个值,就可以使用重新归一化以防止下溢。在解码每个bin之后,可以进行重归一化。可以使用估计概率(上下文编解码)或假设概率为0.5(旁路编解码)来完成算术编解码。对于旁路编解码的bin,可以通过移位来完成将范围划分为子区间,而查找表可以被用于上下文编码的bin。
[0210]
图23是具有超过67个内预测模式以捕获自然视频中呈现的任意边缘方向的内模式编解码的示意图2300。在一些示例中,定向内模式的数目可以从vvc中使用的67个扩展到129个,而平面和dc模式保持不变。
[0211]
在一个示例中,预定义的ipm可以是具有比传统ipm更密集方向的ipm(例如,图23中虚线表示的ipm)。在一个示例中,n1个ipm可以是当前块的部分或全部mpm。在一个示例中,不在mpm中的一些预定义内预测模式也可以被包含在给定ipm候选集中。
[0212]
在一个示例中,在给定的ipm集中可以包含来自dc/平面/水平/竖直/对角右上/对角左下/对角左上模式的一个或多个ipm。
[0213]
在一个示例中,在给定的ipm集中可以包含由图23中的虚线表示的一个或多个ipm。
[0214]
在一个示例中,当给定的ipm集合中包含一个或多个由红色虚线表示的ipm时,n1可以等于或大于n2。
[0215]
在一个示例中,n1可以等于或大于n2。
[0216]
图24-31示出可由一个或多个子模板形成的模板的示例。如下文进一步详细讨论的,可以为特定块选择用于块的模板。例如,可以基于关于特定块的解码信息或基于特定块的子模板的可用性,来选择模板。尽管示出了几个示例,但是可以基于子模板的不同组合来选择其他模板。
[0217]
图24是包括左上子模板2420(模板-la)的模板2400的示例的图。可以为块2410选择模板2400,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左上子模板2420可以包括位于块2410左侧和块2410上方的左上邻近样本。左上子模板2420可以具有水平方向上的l1样本和竖直方向上的l2样本的大小。可以为块2410、包括块2410的切片或包括块2410的图片定义l1和l2。
[0218]
图25是包括左子模板2440(模板-l)和上子模板2430(模板-a)的模板2500的示例的图。可以为块2410选择模板2500,块2410可以具有水平方向上的m个样本和竖直方向上的
n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以与块2410的顶部边缘邻近。左子模板2440块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以与块2410的顶部边缘邻近。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。
[0219]
图26是包括上子模板2430(模板-a)的模板2600的示例的图。可以为块2410选择模板2600,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。
[0220]
图27是包括左子模板(模板-l)的模板2700的示例的图。可以为块2410选择模板2700,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。
[0221]
图28是包括左子模板2440(模板-l)和左下子模板2450(模板-lb)的模板2800的示例的图。可以为块2410选择模板2800,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。左下子模板2450可以包括位于块2410左侧和块2410下方的样本。左下子模板2450可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。
[0222]
图29是包括上子模板2430(模板-a)和右上子模板2460(模板-ra)的模板2900的示例的图。可以为块2410选择模板2900,块2410的维度水平地可以具有m个样本并且竖直地具有n个样本。上子模板2430可以包括位于块2410上方的样本。上子模板2430的维度水平地可以具有m个样本并且竖直地具有l2个样本。右上子模板2460可以包括位于块2410上方和块2410右侧的样本。右上子模板2460的维度水平地可以具有m个样本并且竖直地具有l2个样本。
[0223]
图30是包括左子模板2440、左下子模板2450、上子模板2430和右上子模板2460的模板3000的示例的图。模板3000可以被选择用于块2410,其维度水平地可以具有m个样本并且竖直地n个样本。上子模板2430可以包括位于块2410上方的样本。上子模板2430的维度水平地可以具有m个样本并且竖直地具有l2个样本。右上子模板2460可以包括位于块2410上方和右侧的样本。右上子模板2460的维度水平地可以具有m个样本并且竖直地具有l2个样本。左子模板2440可以包括位于块2410左侧的样本。左子模板2440的维度水平地可以具有l1个样本并且竖直地具有n个样本。左下子模板2450可以包括位于块2410左侧和块2410下方的样本。左下子模板2450的维度水平地可以具有l1个样本并且竖直地具有n个样本。
[0224]
图31是包括左上子模板2420、左子模板2440、左下子模板2450、上子模板2430和右上子模板2460的模板3100的示例的图。可以为块2410选择模板3100,块2410的维度水平地可以具有m个样本并且竖直地具有n个样本。左上子模板2420可以包括位于块2410左侧和上方的样本。左上子模板2420的维度水平地可以具有l1个样本并且竖直地具有l2个样本。上子模板2430可以包括位于块2410上方的样本。上子模板2430的维度水平地可以具有m个样本并且竖直地具有l2个样本。右上子模板2460可以包括位于块2410上方和右侧的样本。右
上子模板2460的维度水平地可以具有m个样本并且竖直地具有l2个样本。左子模板2440可以包括位于块2410左侧的样本。左子模板2440的维度水平地可以具有l1个样本并且竖直地具有n个样本。左下子模板2450可以包括位于块2410左侧和下方的样本。左下子模板2450的维度水平地可以具有l1个样本并且竖直地具有n个样本。
[0225]
图32是包括与块间隔开的左上子模板2420、左子模板2440、左下子模板2450、上子模板2430和右上子模板2460的模板3200的示例的图。可以为块2410选择示例模板3200,块2410的维度水平地可以具有m个样本并且竖直地具有n个样本。与图24-31中的子模板相反,图32中的子模板可以与块2410间隔开。例如,左上子模板2420、左子模板2440和左下子模板2450可以与块2410水平地间隔开间隙3220。间隙3220可以具有l3个样本的水平大小。左上子模板2420、上子模板2430和右上子模板2460可以与块2410竖直地间隔开间隙3210。间隙3210可以具有l4个样本的竖直大小。在一方面,子模板2420、2430、2440、2450、2460中的每一个可以具有与图24-31中的对应子模板2420、2430、2440、2450、2460相同的大小。因此,在图32中,子模板2420、2430、2440、2450、2460的位置不同,但是子模板2420、2430、2440、2450、2460的大小可以与图24-31中的相同。
[0226]
图33是模板3300的模板参考样本3310的示例图,模板3300包括左上子模板2420、左子模板2440和上子模板2430。示例模板3300可以被选择用于块2410,其维度水平地可以具有m个样本并且竖直地具有n个样本。左上子模板2420可以包括位于块2410左侧和上方的样本。左上子模板2420的维度水平地可以具有l1个样本并且竖直地具有l2个样本。上子模板2430可以包括位于块2410上方的样本。上子模板2430的维度水平地可以具有m个样本并且竖直地具有l2个样本。左子模板2440可以包括位于块2410左侧的样本。左子模板2440的维度水平地可以具有l1个样本并且竖直地具有n个样本。模板参考样本3310可以是位于模板3300上方的单行样本和位于模板3300左侧的单列样本。样本行可以具有2(l1 m) 1的长度。样本列可以具有2(l2 n) 1的高度。
[0227]
图34是包括左子模板2440和上子模板2430的模板2500的示例模板参考样本3410的图。可以为块2410选择示例模板2500,块2410的维度水平地可以具有m个样本并且竖直地具有n个样本。上子模板2430可以包括位于块2410上方的样本。上子模板2430的维度水平地可以具有m个样本并且竖直地具有l2个样本。左子模板2440可以包括位于块2410左侧的样本。左子模板2440的维度水平地可以具有l1个样本并且竖直地具有n个样本。模板参考样本可以包括一线或多线(例如,行或列)样本。例如,模板参考样本3410可以包括位于模板2500上方的单行样本和位于模板2500左侧的单列样本。样本行可以具有2(l1 m) 1的长度。样本列可以具有2(l2 n) 1的高度。
[0228]
图35是包括上子模板2430的模板2600的示例模板参考样本3510的图。模板参考样本3510可以是位于模板2600上方的单行样本和位于模板2600左侧的单列样本。样本行可以具有2m 1的长度。样本列可以具有2(l2 n) 1的高度。
[0229]
图36是包括左子模板2440的模板2700的示例模板参考样本3610的图。模板参考样本3610可以是位于模板2700上方的单行样本和位于模板2700左侧的单列样本。样本行可以具有2(l1 m) 1的长度。样本列可以具有2n 1的高度。
[0230]
图37是包括上子模板2430的模板2600的示例模板参考样本3710的图。模板参考样本3710可以是位于模板2600上方的单行样本和位于模板2600左侧的单列样本。样本行可以
具有2(l1 m) 1的长度。样本列可以具有2(l2 n) 1的高度。因为模板2600不包括左上子模板2420或左子模板2440,样本列可以与模板2600间隔开宽度为l1的水平间隙3720。
[0231]
图38是包括左子模板2440的模板2700的示例模板参考样本3810的图。模板参考样本3810可以是位于模板2700上方的单行样本和位于模板2700左侧的单列样本。样本行可以具有2(l1 m) 1的长度。样本列可以具有2(l2 n) 1的高度。由于模板2700不包括左上子模板2420或上子模板2430,样本行可以与模板2700间隔开高度为l2的竖直间隙3820。
[0232]
图39是包括上子模板2430和左子模板2440的模板2500的示例模板参考样本3910的图。模板参考样本3910可以包括位于模板2500左侧的单列样本。样本列可以具有2(l2 n) 1的高度。代替单行模板参考样本,该行的一部分3920可以被移动到与左子模板2440邻近的第二行3930。部分3920可以包括l1个样本。第一行中的剩余部分可以具有2m l1 1的长度。在一方面,选择与模板内包括的子模板邻近的模板参考样本可以改进模板的预测。
[0233]
图40是包括以上子模板2430和左子模板2440的模板2500的示例模板参考样本4010的图。模板参考样本4010可以包括位于模板2500上方的单行样本。样本行可以具有2(l1 m) 1的长度。代替模板参考样本的单个列,该列的一部分4020可以被移动到与上子模板2430邻近的第二行4030。部分4020可以包括l2个样本。第一列中的剩余部分可以具有2n l2 1的高度。在一方面,选择与模板内包括的子模板邻近的模板参考样本可以改进模板的预测。在另一方面,部分3920和部分4020两者可以分别被移动到第二行3930和第二行4030。
[0234]
参考图41-43,在操作中,计算设备4102可以经由以下来执行解码组件4110以执行视频处理的方法4300:处理器4104和/或存储器4106、视频解码器124、视频解码器300或hevc视频编码器和解码器400。此外,计算设备4202可以经由以下执行编码组件4210来执行视频处理的方法4300:处理器4104和/或存储器4106、视频编码器114或hevc视频编码器和解码器400。
[0235]
在块4302,方法4300包括:在视频的当前视频单元与视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个ipm针对当前视频单元被导出。例如,在一个方面,计算设备4102、处理器4104、存储器4106、解码组件4110、dimd检测组件4112和/或dimd组件4114可以被配置为或可以包括用于以下的部件:在视频的当前视频单元与视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个ipm针对当前视频单元被导出。
[0236]
例如,dimd检测组件4112可以被配置为确定将解码器侧内模式导出应用于经编码的比特流4120的解码单元。如这里所使用的,解码单元可以指块、图片、子图片、瓦片、切片、ctu、视频处理和分发单元(vpdu)、ctu行、cu或pu。在一些方面,dimd检测组件4112可以基于解码信息来确定是否将dimd应用于解码单元。例如,解码视频单元可以是在解码过程中正在被处理的当前块。进一步,dimd检测组件4112可以确定块对应的解码信息,并根据解码信息确定在解码过程中是否对块应用dimd。
[0237]
在一些示例中,dimd检测组件4112可以基于解码单元的一个或多个属性(例如,块的一个或多个维度和/或块的形状,如在解码信息中所定义的),来确定是否向解码单元应用dimd。例如,块的宽度可以被记为bw并且块的高度可以被记为bh。当bw*bh》=t1时,dimd
检测组件4112可以向块应用dimd,其中t1是配置的阈值(例如,t1=16/64/256)。在一些其他实例中,在bw*bh《=t2时,dimd检测组件4112可向块应用dimd,其中t2是配置的阈值(例如,t2=16/64/256/1024)。在另一实例中,当bw/bh或bh/bw《=t3时,dimd检测组件4112可以向块应用dimd,其中t3是配置的阈值(例如,t3=4/8)。在又一实例中,当bw/bh或bh/bw》=t4时,dimd检测组件4112可以向块应用dimd,其中t4是配置的阈值(例如,t4=1)。
[0238]
在一些示例中,dimd检测组件4112可以基于如在解码信息中定义的块的切片类型(例如,i切片、b切片或p切片)或图片类型,来确定是否向块应用dimd。例如,仅当块的切片类型是i切片时,dimd检测组件4112可以向块应用dimd。在一些其他实例中,当解码信息指示在编码过程期间采用分层编解码时,dimd检测组件4112可以确定是否将dimd应用于经编码的比特流4120的一个或多个时间层(temporal layer)。
[0239]
在一些示例中,dimd检测组件4112可以基于信令来确定是否向解码单元应用dimd。例如,dimd检测组件4112可以基于如下中的信令来确定是否向解码单元应用dimd:序列参数集(sps)、图片参数集(pps)、图片报头、切片报头、ctu、cu和/或pu。此外,信令可以对应于特定解码单元(例如,块)或多个解码单元。
[0240]
在一些示例中,dimd检测组件4112可以基于作为语法元素被信令发送的dimd指示符,来确定是否向解码单元应用dimd。附加地或备选地,语法元素可以包括用于向解码单元应用dimd的ipm候选集的长度。在一些情况下,可以通过使用如下来二值化语法元素:固定长度编解码、一元编解码、截断一元编解码、指数哥伦布编解码或编解码标志。在一些其他情况下,语法元素可以被旁路编解码。在又一些其他实例中,语法元素可以是上下文编解码的。例如,语法元素可以基于解码信息。如本文所述,解码信息可与解码单元的一个或多个属性相关,例如块的维度、基于块的维度的函数、块的切片类型、块的图片类型、等等。
[0241]
在一些示例中,dimd检测组件4112可以基于一个或多个模板的可用性来确定是否向解码单元应用dimd。例如,dimd检测组件4112可以至少部分地基于用于导出ipm的模板和模板参考样本的可用性来向块应用dimd。特别地,dimd检测组件4112可以基于与块相关联的、可用于导出针对块的ipm的一个或多个模板和模板参考样本来向块应用dimd。如本文所用,在一些方面,“模板参考样本”可指用作参考以用于导出模板的预测样本的重构样本。
[0242]
如本文所使用的,在一些方面,“模板的可用性”可以指模板是否已被重构、位于图片、子图片、瓦片或切片内,和/或位于与模板和/或当前块相同的视频单元中。如这里所使用的,在一些方面,“模板参考样本的可用性”可以指模板参考样本是否已被重构、位于图片、子图片、瓦片或切片内,和/或位于与模板和/或当前块相同的视频单元中。在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,块的样本可以被认为不可用。
[0243]
在一些示例中,dimd检测组件4112可以基于分别包括当前块、与当前块相关联的多个模板以及与当前块相关联的多个模板参考样本的视频单元之间的关系,来确定是否应用dimd。视频单元的一些示例包括pu、cu、vpdu、ctu、ctu行、ctu切片、ctu瓦片或ctu/子图片。在一些情况下,当块、与块相关联的多个模板以及与多个模板相关联的多个模板参考样本共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。
[0244]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。此外,
当块、多个模板和多个模板参考样本没有位于相同视频单元内时,dimd组件4114可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括平面/dc/水平模式/竖直模式/对角上右模式/对角下左模式/对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块被导出。在又一些其他方面,可以从解码信息导出默认ipm。附加地或备选地,当块、多个模板(m2)和多个模板参考样本(m1)没有共同定位在相同视频单元内时,dimd组件4114可以使用多个修改的参考模板样本或多个修改的模板来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线、行或列的数目(m1)可以被修改至n1,和/或模板的线、行或列的数目(m2)可以被修改至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0245]
在一些情况下,dimd检测组件4112可以基于内编解码工具确定是否向解码单元应用dimd。作为示例,dimd检测组件4112可以基于不存在包括与向当前块应用内编解码工具相关联的信息的信令,来确定应用dimd。可替换地,dimd检测组件4112可以基于存在包括与向当前块应用内编解码工具相关联的信息的信令和/或不存在指示向当前块应用dimd的信令,来确定不应用dimd。内编解码工具的一些示例包括内子分区(isp)、多参考线(mrl)、交叉分量线性模型(cclm)预测模式、矩阵加权内预测(mip)和/或位置相关内预测组合(pdpc)。
[0246]
此外,在一些方面,第一语法元素可以指示导出的ipm的使用,并且第二语法元素可以指示内编解码工具的使用。例如,第一语法元素可以指示是否使用导出的ipm,并且第二语法元素可以指示是否使用isp。此外,在一些方面,如果使用上下文编码来确定语法元素之一,则上下文编码的语法元素可以基于另一语法元素。例如,如果导出的ipm与isp一起使用并且第一语法元素是上下文编解码的,则第一语法元素的上下文可以基于第二语法元素。此外,如果第二语法元素是上下文编解码的,则第二语法元素的上下文可以基于第一语法元素。在一些其他示例中,语法元素可以不基于彼此。
[0247]
在另一示例中,一方面,计算设备4202、处理器4204、存储器4206、编码组件4210、dimd启用组件4212、比特流生成组件4214和/或信令组件4216可以被配置用以或可以包括用于以下的部件:确定向比特流的单元应用解码器侧内模式导出(dimd)。
[0248]
例如,框4302处的确定可以包括:确定向比特流的单元应用解码器侧内模式导出。在一些方面,单元可包括块、图片、子图片、瓦片、切片、ctu、vpdu、ctu行、cu或pu。此外,在一些方面,dimd启用组件4212可以不对编码单元内的全部块启用dimd。例如,dimd启用组件4212可为cu内的第一块启用dimd,并且针对相同cu内的第二块禁用dimd。
[0249]
在一些示例中,dimd启用组件4212可以基于多个图片4220的块的大小和/或块的形状,来确定是否启用dimd。例如,当块宽度乘以块高度大于或等于t1(例如,t1=16/64/256)时,dimd启用组件4212可以针对该块启用dimd。在一些其他实例中,当块宽度乘以块高度小于或等于t2(例如t2=16/64/256/1024)时,dimd启用组件4212可以针对该块启用dimd。在另一实例中,当块宽度除以块高度或块高度除以块宽度小于或等于t3(例如t3=4/8)时,dimd启用组件4212可以针对该块启用dimd。在又一实例中,当块宽度除以块高度或块高度除以块宽度大于或等于t4(例如t4=1)时,dimd使能组件4212可以针对该块启用dimd。
[0250]
在一些示例中,dimd启用组件4212可以基于块的切片类型或图片类型来确定是否
启用dimd。例如,dimd启用组件4212可以仅在块的切片类型是i切片时针对该块启用dimd。在一些其他实例中,当编码组件4210采用分层编解码来生成经编码的比特流4222时,dimd启用组件4212可以针对一个或多个时间层启用dimd。
[0251]
在一些示例中,dimd启用组件4212可以基于一个或多个模板的可用性来确定是否启用dimd。例如,dimd启用组件4212可以至少部分地基于用于导出ipm的模板和模板参考样本的可用性,来针对块启用dimd。特别地,dimd启用组件4212可以基于与块相关联的一个或多个模板和/或一个或多个模板参考样本可用于导出针对块的ipm,来针对该块启用dimd。在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,认为针对块的样本不可用。
[0252]
在一些示例中,dimd使能组件4212可以基于分别包括块、与块相关联的多个模板和与块相关联的多个模板参考样本之间的关系,来确定是否启用dimd。在一些情况下,当块、与块相关联的多个模板以及与块相关联的多个模板参考样本共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。
[0253]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。此外,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括平面/dc/水平模式/竖直模式/对角上右模式/对角下左模式/对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块导出。附加地或备选地,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用多个修改的参考模板样本或多个修改的模板来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线、行、或列的数目(m1)可以被改变至n1,和/或模板的线、行或列的数目(m2)可以被改变至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0254]
在一些示例中,dimd启用组件4212可以基于内编解码工具确定是否启用dimd。例如,dimd检测组件4112可以基于不能与所导出的ipm一起使用内编解码工具,来确定对块禁用dimd,或基于可以与所导出的ipm一起使用内编解码工具,来对块启用dimd。内编解码工具的一些示例包括isp、mrl、cclm预测模式、mip和/或pdpc。
[0255]
参照图44,在块4404,方法4400包括基于该确定来执行转换。例如,在一方面,计算设备4102、处理器4104、存储器4106、解码组件4110和/或dimd组件4114可以被配置用以或者可以包括用于以下的部件:基于确定来执行转换。
[0256]
例如,在块4404处执行dimd可以包括使用颜色分量确定导出的ipm。作为示例,基于dimd检测组件4112确定将dimd应用于解码单元,当重构经编码的比特流4120内的解码单元以生成经解码的视频数据4122时,dimd组件4114可以使用dimd以从第一颜色分量生成针对第二颜色分量的预测项块(predictor block)。在一些方面,第一分量可以与第二分量相同。或者,在一些其他方面,第一分量可以不同于第二分量。例如,第一分量可以是ycbcr格式中的y,而第二分量可以是ycbcr格式中的cb或cr。在另一种情况下,第一分量可以是rgb格式的g,第二分量可以是rgb格式的b或r。在另一种情况下,第一分量可以是ycbcr格式中的cb,而第二分量可以是ycbcr格式中的y或cr。在另一种情况下,第一分量可以是rgb格式
中的b,第二分量可以是rgb格式中的g或r。在另一种情况下,第一分量可以是ycbcr格式中的cr,并且第二分量可以是ycbcr格式中的y或cb。在另一种情况下,第一分量可以是rgb格式中的r,而第二分量可以是rgb格式中的g或b。
[0257]
作为另一示例,视频单元可以是色度块,并且dimd组件4114可以从对应的亮度块生成针对色度块的预测项块。在一些方面,dimd组件4114可以采用色度导出模式(dm模式)来生成针对色度块的预测项块。在一些其他实例中,视频单元可是亮度块,并且dimd组件4114可从对应色度块产生针对亮度块的预测项块。
[0258]
作为又一示例,在一些方面,dimd组件4114可以确定针对第一颜色分量的ipm候选集,并且确定针对第二颜色分量的不同ipm候选集。例如,dimd组件4114可以使用与对应色度块的ipm候选集的大小不同的ipm候选,来导出针对亮度块的ipm。备选地,用于导出亮度块的ipm的ipm候选集的大小可以等于用于色度块的ipm候选集的大小。
[0259]
在一些示例中,执行dimd可以包括使用先前编解码的视频单元来确定导出的ipm。例如,在一些方面,dimd组件4114可以被配置为使用针对先前编解码块使用的多个ipm,来导出针对当前块的ipm。在一些示例中,dimd组件4114可以被配置为根据先前编解码块的内预测模式生成针对当前块的预测项块。在一方面,所导出的ipm可以被设置为等于与当前块邻近的多个块的最常用的内模式。在一些其他示例中,在一些方面,dimd组件4114可以被配置为使用针对先前编解码块的区域使用的多个ipm,来导出针对当前块的ipm。
[0260]
在一些情况下,执行dimd可以包括基于邻近样本的梯度确定导出的ipm。例如,在一些方面,dimd组件4114可以被配置为确定块的邻近样本的梯度值;并根据梯度为当前块生成预测项块。在一些方面,所导出的ipm可以从具有最大幅度的方向导出。在一些其他方面,当预定义数目的方向具有相似的幅度时,可以将导出的ipm设置为默认模式。默认模式的一些示例可以包括dc模式、平面模式、水平度模式、竖直度模式、对角上右度模式、对角下左模式和/或对角上左模式。
[0261]
如上所述,在一些方面,导出的ipm可以与内编解码工具一起使用。例如,导出的ipm可以与isp一起使用。在某些实例中,导出的ipm可以应用于isp的一个或多个部分,以导出这些部分的预测样本。在另一实例中,可以为isp的每个部分导出单独的ipm。在某些方面,当为isp的每个部分导出单独的ipm时,每个部分的ipm导出可以与整个块的ipm导出相同。在一些其他示例中,当导出的ipm与isp一起使用时,解码组件4110可以对当前块应用一个或多个变换。可以被应用于块的变换的一些示例包括mts和/或lfnst。在一些情况下,当导出的内模式与isp一起使用时,解码组件4110可以被限制为仅应用mts中的一个变换。例如,解码组件4110可以应用dct x或可以应用dst y,其中x和y是整数。作为另一示例,解码组件4110可以应用具有等于z的索引的lfnst,其中z是整数。在某些方面,z可以等于0。
[0262]
此外,作为另一示例,可以与mrl一起使用导出的ipm。此外,在一些方面,当与mrl一起使用导出的ipm时,mrl的应用可以被限制为特定参考线。例如,在一些方面,当导出的ipm与mrl一起使用时,mrl中可以仅支持第二或第三参考线。
[0263]
此外,作为又一示例,可以与mip一起使用导出的ipm。在一些实例中,解码组件4110可以实现从多个模板导出的mip,并且dimd组件4114可以被配置为将mip模式应用于解码单元(例如,块)。在一些方面,由解码组件4110实现的mip模式可以包括mip模式索引和/或mip转置标志。
[0264]
作为另一示例,在一个方面,计算设备4202、处理器4204、存储器4206、编码组件4210、比特流生成组件4214和/或信令组件4216可以被配置用以基于确定来执行转换或可以包括用于基于确定来执行转换的部件。
[0265]
例如,块4404处的生成可以包括基于多个视频帧4220生成经编码的比特流4222,其中经编码的比特流4222可以响应于dimd启用组件4212启用比特流生成组件4214来采用dimd而包括以下信令,该指令而指示dimd的应用和/或ipm候选集的长度。
[0266]
在一些示例中,信令组件4216可以响应于dimd启用组件4212启用dimd而信令发送dimd的使用。例如,信令组件4216可以在sps、pps、图片报头、切片报头、ctu、cu和/或pu中信令发送dimd的使用。此外,在一些情况下,信令组件4216可以信令发送指示dimd的使用的语法元素。在一些方面,语法元素可以指示对颜色分量应用所导出的ipm。
[0267]
在一些示例中,可以使用固定长度编解码、一元编解码、截断的一元编解码、指数哥伦布编解码、cabac编解码或编解码标志来二值化语法元素。在一些其他情况下,语法元素可以被旁路编解码。在又一些其他实例中,语法元素可以是上下文编解码的。此外,上下文可以提供对应于如下的信息:块的维度、块的切片类型和/或块的邻近块(例如,左邻近块、上邻近块、左下邻近块、右上邻近块和/或左上邻近块)的一个或多个属性。邻近块的一些属性可以包括:邻近块是否被内编解码、邻近块是否被dimd编解码、应用于邻近块的一个或多个方法或工具(例如,isp/mrl/mip)和/或对应于邻近块的分区信息(例如,双树或单树、局部双树或单树)。
[0268]
此外,如果dimd启用组件4212不启用dimd,则信令组件4216针对特定编码单元可以不信令发送dimd的使用。例如,如果导出的ipm不能与特定内编解码工具一起使用,则当内编解码工具应用于当前块时,信令单元4216可以不信令发送dimd的使用。此外,如果导出的ipm不能与特定内编解码工具一起使用,则当导出的ipm被应用于当前块时,信令单元4216可以不信令发送内编解码工具的使用。
[0269]
在一些示例中,当导出的ipm与特定内编解码工具一起使用时,信令组件4216可以信令发送对应于dimd的使用的信息(例如,对应于所导出的ipm的信息)以及与特定内编解码工具的使用相关的信息。作为示例,信令组件可以信令发送指示使用导出的ipm的第一语法元素和指示使用内编解码工具(例如,isp)的第二语法元素。此外,信令组件4216可以在对应于dimd的使用的信息之前或之后信令发送对应于内编解码工具的信息。例如,信令组件4216可以在经编码的比特流4222内的、对应于mip、isp和/或mrl的信息之前或之后,信令发送与导出的ipm相关的信息(例如,dimd标志/索引)。
[0270]
在一些方面,当应用了特定内编解码工具(例如,mip、mrl、isp)的块被允许应用dimd时,信令组件4216可以不信令发送使用dimd的指示。备选地,当应用了特定内编解码工具的块不被允许应用dimd时,信令组件4216可以信令发送使用dimd的指示。
[0271]
参考图41、42和44,在操作中,计算设备4102可以由处理器4104和/或存储器4106、视频解码器124、视频解码器300或hevc视频编码器以及解码器400执行解码组件4110,来执行视频处理的方法4400。此外,计算设备4202可以通过由处理器4104和/或存储器4106、视频编码器114或hevc视频编码器和解码器400执行编码组件4210,来执行视频处理的方法4400。
[0272]
在块4402,方法4400包括:在视频的当前块和视频的比特流之间的转换期间,确定
将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,为当前块导出至少一个ipm。例如,在一个方面,计算设备4102、处理器4104、存储器4106、解码组件4110、dimd检测组件4112和/或dimd组件4114可以被配置用以或可以包括用于以下的部件:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,为当前块导出至少一个ipm。
[0273]
例如,dimd检测组件4112可以被配置用以确定向经编码的比特流4120的解码单元应用解码器侧内模式导出。如这里所使用的,解码单元可以指块、图片、子图片、瓦片、切片、ctu、vpdu、ctu行、cu或pu。在一些方面,dimd检测组件4112可以基于解码信息来确定是否将dimd应用于解码单元。例如,解码单元可以是解码过程中正在被处理的当前块。进一步,dimd检测组件4112可以确定对应于块的解码信息,并根据解码信息确定在解码过程中是否向块应用dimd。
[0274]
在一些示例中,dimd检测组件4112可以基于解码单元的一个或多个属性(例如,块的一个或多个维度和/或块的形状,如在解码信息中所定义),来确定是否向解码单元应用dimd。例如,块宽度可以表示为bw,并且块高度可以表示为bh。此外,当bw*bh》=t1时,dimd检测组件4112可以向块应用dimd,其中t1是配置的阈值(例如,t1=16/64/256)。在一些其他实例中,在bw*bh《=t2时,dimd检测组件4112可以向块应用dimd,其中t2是配置的阈值(例如,t2=16/64/256/1024)。在另一实例中,当bw/bh或bh/bw《=t3时,dimd检测组件4112可以向块应用dimd,其中t3是配置的阈值(例如,t3=4/8)。在又一实例中,当bw/bh或bh/bw》=t4时,dimd检测组件4112可以向块应用dimd,其中t4是配置的阈值(例如,t4=1)。
[0275]
在一些示例中,dimd检测组件4112可以基于如在解码信息中定义的块的切片类型(例如,i切片、b切片或p切片)或图片类型,来确定是否向块应用dimd。例如,仅当块的切片类型是i切片时,dimd检测组件4112可以向块应用dimd。在一些其他实例中,当解码信息指示在编码过程期间采用分层编解码时,dimd检测组件4112可以确定是否向经编码的比特流4120的一个或多个时间层应用dimd。
[0276]
在一些示例中,dimd检测组件4112可以基于信令确定是否向解码单元应用dimd。例如,dimd检测组件4112可以基于以下中的信令来确定是否向解码单元应用dimd:序列参数集(sps)、图片参数集(pps)、图片报头、切片报头、ctu、cu和/或pu。此外,该信令可以对应于特定解码单元(例如,块)或多个解码单元。
[0277]
在一些示例中,dimd检测组件4112可以基于作为语法元素被信令发送的dimd指示符,来确定是否向解码单元应用dimd。附加地或备选地,语法元素可以包括用于向解码单元应用dimd的ipm候选集的长度。在一些情况下,可以使用固定长度编解码、一元编解码、截断一元编解码、指数哥伦布编解码或对标志进行编解码,来二值化语法元素。在一些其他情况下,语法元素可以被旁路编解码。在又一些其他实例中,语法元素可以是上下文编解码的。例如,语法元素可以基于解码信息。如本文所述,解码信息可与解码单元的一个或多个属性相关,例如块的维度、基于块的维度的函数、块的切片类型、块的图片类型、等等。
[0278]
在一些示例中,dimd检测组件4112可以基于一个或多个模板的可用性,来确定是否向解码单元应用dimd。例如,dimd检测组件4112可以至少部分地基于用于导出ipm的模板
和模板参考样本的可用性,来向块应用dimd。特别地,dimd检测组件4112可以基于与块相关联的一个或多个模板和模板参考样本可用于针对块导出ipm,来向块应用dimd。如本文所用,在一些方面,“模板参考样本”可以指用作参考以用于导出模板的预测样本的重构样本。
[0279]
如本文所使用,在一些方面,“模板的可用性”可以指模板是否已被重构、位于图片、子图片、瓦片或切片内,和/或位于与模板和/或当前块相同的视频单元中。如这里所使用的,在一些方面,“模板参考样本的可用性”可以指模板参考样本是否已被重构、位于图片、子图片、瓦片或切片内,和/或位于与模板和/或当前块相同的视频单元中。在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,针对块的样本可以被认为不可用。
[0280]
在一些示例中,dimd检测组件4112可以基于分别包括当前块、与当前块相关联的多个模板以及与当前块相关联的多个模板参考样本的视频单元之间的关系,来确定是否应用dimd。视频单元的一些示例包括pu、cu、vpdu、ctu、ctu行、ctu切片、ctu瓦片或ctu/子图片。在一些情况下,当块、与块相关联的多个模板以及与多个模板相关联的多个模板参考样本共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。
[0281]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。此外,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,dimd组件4114可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括dc模式、平面模式、水平度模式、垂直度模式、对角上右度模式、对角下左模式或对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块导出。在又一些其他方面,可以从解码信息导出默认ipm。附加地或备选地,当块、多个模板(m2)和多个模板参考样本(m1)没有共同位于相同视频单元内时,dimd组件4114可以使用多个修改的参考模板样本或多个修改的模板,来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线(line)、行或者列的数目(m1)可以被改变至n1,和/或模板的线、行或者列的数目(m2)可以被改变至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0282]
在一些情况下,dimd检测组件4112可以基于内编解码工具确定是否向解码单元应用dimd。作为示例,dimd检测组件4112可以基于不存在包括与向当前块应用内编解码工具相关联的信息的信令,来确定应用dimd。可替换地,dimd检测组件4112可以基于存在包括与向当前块应用内编解码工具相关联的信息的信令和/或不存在指示向当前块应用dimd的信令,来确定不应用dimd。内编解码工具的一些示例包括内子分区(isp)、多参考线(mrl)、交叉分量线性模型(cclm)预测模式、矩阵加权内预测(mip)和/或位置相关内预测组合(pdpc)。
[0283]
此外,在一些方面,第一语法元素可以指示导出的ipm的使用,并且第二语法元素可以指示内编解码工具的使用。例如,第一语法元素可以指示是否使用导出的ipm,并且第二语法元素可以指示是否使用isp。此外,在一些方面,如果使用上下文编解码来确定语法元素之一,则上下文编解码的语法元素可以基于另一语法元素。例如,如果导出的ipm与isp一起使用并且第一语法元素是上下文编码的,则第一语法元素的上下文可以基于第二语法元素。此外,如果第二语法元素是上下文编解码的,则第二语法元素的上下文可以基于第一
语法元素。在一些其他示例中,语法元素可以不基于彼此。
[0284]
作为另一示例,一方面,计算设备4202、处理器4204、存储器4206、编码组件4210、dimd启用组件4212、比特流生成组件4214和/或信令组件4216可以被配置用以或可以包括用于以下的部件:确定向比特流的单元应用解码器侧内模式导出(dimd)。
[0285]
例如,框4402处的确定可以包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,为当前块导出至少一个ipm。在一些方面,编码单元可以包括块、图片、子图片、瓦片、切片、ctu、vpdu、ctu行、cu或pu。此外,在一些方面,dimd启用组件4212可以不对编码单元内的所有块启用dimd。例如,dimd启用组件4212可为cu内的第一块启用dimd,并且针对相同cu内的第二块禁用dimd。
[0286]
在一些示例中,dimd启用组件4212可以基于多个图片4220的块的维度和/或块的形状,来确定是否对块启用dimd。例如,当块宽度乘以块高度大于或等于t1(例如,t1=16/64/256)时,dimd启用组件4212可以针对该块启用dimd。在一些其他实例中,当块宽度乘以块高度小于或等于t2(例如t2=16/64/256/1024)时,dimd启用组件4212可以针对该块启用dimd。在另一实例中,当块宽度除以块高度或块高度除以块宽度小于或等于t3(例如t3=4/8)时,dimd启用组件4212可以针对该块启用dimd。在又一实例中,当块宽度除以块高度或块高度除以块宽度大于或等于t4(例如t4=1)时,dimd启用组件4212可以针对该块启用dimd。
[0287]
在一些示例中,dimd启用组件4212可以基于块的切片类型或图片类型,来确定是否针对块启用dimd。例如,dimd启用组件4212可以仅在块的切片类型是i切片时针对该块启用dimd。在一些其他实例中,当编码组件4210采用分层编解码来生成经编码的比特流4222时,dimd启用组件4212可以针对一个或多个时间层启用dimd。
[0288]
在一些示例中,dimd启用组件4212可以基于一个或多个模板的可用性来确定是否启用dimd。例如,dimd启用组件4212可以至少部分地基于用于导出ipm的模板和模板参考样本的可用性,来针对块启用dimd。特别地,dimd启用组件4212可以基于与块相关联的一个或多个模板和/或一个或多个模板参考样本可用于导出针对块的ipm,来针对该块启用dimd。在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,认为针对块的样本不可用。
[0289]
在一些示例中,dimd启用组件4212可以基于分别包括块、与块相关联的多个模板和与块相关联的多个模板参考样本的视频单元之间的关系,来确定是否启用dimd。在一些情况下,当块、与块相关联的多个模板以及与块相关联的多个模板参考样本共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。
[0290]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。此外,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括dc模式、平面模式、水平度模式、竖直度模式、对角上右度模式、对角下左模式或对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块导出。附加地或备选地,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用多个修改的参考模板样本或多个修改的模板来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线、行、或列的数
目(m1)可以被改变至n1,和/或模板的线、行或列的数目(m2)可以被改变至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0291]
在一些示例中,dimd启用组件4212可以基于内编解码工具确定是否启用dimd。例如,dimd检测组件4112可以基于不能与导出的ipm一起使用内编解码工具,来确定对块禁用dimd,或基于可以与导出的ipm一起使用内编解码工具,来对块启用dimd。内编解码工具的一些示例包括isp、mrl、cclm预测模式、mip和/或pdpc。
[0292]
参照图44,在块4404,方法4400基于该确定执行转换,其中在比特流中呈现语法元素以指示预测模式导出工具的相关信息。例如,在一方面,计算设备4102、处理器4104、存储器4106、解码组件4110、dimd检测组件4112和/或dimd组件4114可以被配置用以基于该确定执行转换或可以包括用于基于该确定执行转换的部件,其中在比特流中呈现语法元素以指示预测模式导出工具的相关信息。例如,在一个方面,计算设备4202、处理器4204、存储器4206、编码组件4210、比特流生成组件4214和/或信令组件4216可以被配置用以基于确定来执行转换或可以包括用于基于确定来执行转换的部件,其中,在比特流中呈现语法元素以指示预测模式导出工具的相关信息。
[0293]
例如,块4404处的生成可以包括基于多个视频帧4220生成经编码的比特流4222,其中响应于dimd启用组件4212启用比特流生成组件4212以采用dimd,经编码的比特流4222可以包括信令,该信令指示dimd的应用和/或ipm候选集的长度。
[0294]
在一些示例中,信令组件4216可以响应于dimd启用组件4212启用dimd而信令发送dimd的使用。例如,信令组件4216可以在sps、pps、图片报头、切片报头、ctu、cu和/或pu中信令发送dimd的使用。此外,在一些情况下,信令组件4216可以信令发送指示dimd的使用的语法元素。在一些方面,语法元素可以指示向颜色分量应用导出的ipm。
[0295]
在一些示例中,可以使用固定长度编解码、一元编解码、截断的一元编解码、指数哥伦布编解码、cabac编解码或编解码标志来二值化语法元素。在一些其他情况下,语法元素可以被旁路编解码。在又一些其他实例中,语法元素可以是上下文编解码的。此外,上下文可以提供对应于如下的信息:块的维度、块的切片类型和/或块的邻近块(例如,左邻近块、上邻近块、左下邻近块、右上邻近块和/或左上邻近块)的一个或多个属性。邻近块的一些属性可以包括:邻近块是否被内编解码、邻近块是否被dimd编解码、应用于邻近块的一个或多个方法或工具(例如,isp/mrl/mip)和/或对应于邻近块的分区信息(例如,双树或单树、局部双树或单树)。
[0296]
此外,如果dimd启用组件4212不启用dimd,则信令组件4216针对特定编码单元可以不信令发送dimd的使用。例如,如果导出的ipm不能与特定内编解码工具一起使用,则当内编解码工具应用于当前块时,信令单元4216可以不信令发送dimd的使用。此外,如果导出的ipm不能与特定内编解码工具一起使用,则当导出的ipm被应用于当前块时,信令单元4216可以不信令发送内编解码工具的使用。
[0297]
在一些示例中,当导出的ipm与特定内编解码工具一起使用时,信令组件4216可以信令发送对应于dimd的使用的信息(例如,对应于导出的ipm的信息)以及与特定内编解码工具的使用相关的信息。作为示例,信令组件可以信令发送指示使用导出的ipm的第一语法元素和指示使用内编解码工具(例如,isp)的第二语法元素。此外,信令组件4216可以在对
应于dimd的使用的信息之前或之后信令发送对应于内编解码工具的信息。例如,信令组件4216可以在经编码的比特流4222内的、对应于mip、isp和/或mrl的信息之前或之后,信令发送与导出的ipm相关的信息(例如,dimd标志/索引)。
[0298]
在一些方面,当应用了特定内编解码工具(例如,mip、mrl、isp)的块被允许应用dimd时,信令组件4216可以不信令发送使用dimd的指示。备选地,当对于应用了特定内编解码工具的块不被允许应用dimd时,信令组件4216可以信令发送使用dimd的指示。
[0299]
此外,在一些方面,计算设备4102(例如,dimd检测组件4112)可以标识比特流内的与dimd相关的信令发送的信息,并且根据与dimd相关的信息使用dimd组件4114来处理经编码的比特流4120。例如,计算设备4120可以确定与dimd相关联的语法元素和/或解码信息,并且基于语法元素和/或经解码的dimd对经编码的比特流4120执行一个或多个解码操作。
[0300]
参考图41、42和45,在操作中,计算设备4102可以通过由处理器4104和/或存储器4106、视频解码器124、视频解码器300或hevc视频编码器以及解码器400执行解码组件4110,来执行视频处理的方法4500。此外,计算设备4202可以通过由处理器4104和/或存储器4106、视频编码器114或hevc视频编码器和解码器400执行编码组件4210,来执行视频处理的方法4500。
[0301]
在块4502,方法4500包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,为当前块导出至少一个ipm。例如,在一个方面,计算设备4102、处理器4104、存储器4106、解码组件4110、dimd检测组件4112和/或dimd组件4114可以被配置用以或可以包括用于以下的部件:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,为当前块导出至少一个ipm。
[0302]
例如,dimd检测组件4112可以被配置用以确定向经编码的比特流4120的解码单元应用解码器侧内模式导出。如这里所使用的,解码单元可以指块、图片、子图片、瓦片、切片、ctu、vpdu、ctu行、cu或pu。在一些方面,dimd检测组件4112可以基于解码信息来确定是否将dimd应用于解码单元。例如,解码单元可以是解码过程中正在被处理的当前块。进一步,dimd检测组件4112可以确定对应于块的解码信息,并根据解码信息确定在解码过程中是否向块应用dimd。
[0303]
在一些示例中,dimd检测组件4112可以基于解码单元的一个或多个属性(例如,块的一个或多个维度和/或块的形状,如在解码信息中所定义),来确定是否向解码单元应用dimd。例如,块宽度可以表示为bw,并且块高度可以表示为bh。此外,当bw*bh》=t1时,dimd检测组件4112可以向块应用dimd,其中t1是配置的阈值(例如,t1=16/64/256)。在一些其他实例中,在bw*bh《=t2时,dimd检测组件4112可以向块应用dimd,其中t2是配置的阈值(例如,t2=16/64/256/1024)。在另一实例中,当bw/bh或bh/bw《=t3时,dimd检测组件4112可以向块应用dimd,其中t3是配置的阈值(例如,t3=4/8)。在又一实例中,当bw/bh或bh/bw》=t4时,dimd检测组件4112可以向块应用dimd,其中t4是配置的阈值(例如,t4=1)。
[0304]
在一些示例中,dimd检测组件4112可以基于如在解码信息中定义的块的切片类型(例如,i切片、b切片或p切片)或图片类型,来确定是否向块应用dimd。例如,仅当块的切片
类型是i切片时,dimd检测组件4112可以向块应用dimd。在一些其他实例中,当解码信息指示在编码过程期间采用分层编解码时,dimd检测组件4112可以确定是否向经编码的比特流4120的一个或多个时间层应用dimd。
[0305]
在一些示例中,dimd检测组件4112可以基于信令确定是否向解码单元应用dimd。例如,dimd检测组件4112可以基于以下中的信令发送来确定是否向解码单元应用dimd:序列参数集(sps)、图片参数集(pps)、图片报头、切片报头、ctu、cu和/或pu。此外,该信令可以对应于特定解码单元(例如,块)或多个解码单元
[0306]
在一些示例中,dimd检测组件4112可以基于作为语法元素被信令发送的dimd指示符,来确定是否向解码单元应用dimd。附加地或备选地,语法元素可以包括用于向解码单元应用dimd的ipm候选集的长度。在一些情况下,可以使用固定长度编解码、一元编解码、截断一元编解码、指数哥伦布编解码或对标志进行编解码,来二值化语法元素。在一些其他情况下,语法元素可以被旁路编解码。在又一些其他实例中,语法元素可以是上下文编解码的。例如,语法元素可以基于解码信息。如本文所述,解码信息可与解码单元的一个或多个属性相关,例如块的维度、基于块的维度的函数、块的切片类型、块的图片类型、等等。
[0307]
在一些示例中,dimd检测组件4112可以基于一个或多个模板的可用性,来确定是否向解码单元应用dimd。例如,dimd检测组件4112可以至少部分地基于用于导出ipm的模板和模板参考样本的可用性,来向块应用dimd。特别地,dimd检测组件4112可以基于与块相关联的一个或多个模板和模板参考样本可用于针对块导出ipm,来向块应用dimd。如本文所用,在一些方面,“模板参考样本”可以指用作参考以导出模板的预测样本的重构样本。
[0308]
如本文所使用,在一些方面,“模板的可用性”可以指模板是否已被重构、位于图片/子图片/瓦片/切片内,和/或位于与模板和/或当前块相同的视频单元中。如这里所使用的,在一些方面,“模板参考样本的可用性”可以指模板参考样本是否已被重构、位于图片、子图片、瓦片或切片内,和/或位于与模板和/或当前块相同的视频单元中。在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,针对块的样本可以被认为不可用
[0309]
在一些示例中,dimd检测组件4112可以基于分别包括当前块、与当前块相关联的多个模板以及与当前块相关联的多个模板参考样本的视频单元之间的关系,来确定是否应用dimd。视频单元的一些示例包括pu、cu、vpdu、ctu、ctu行、ctu切片、ctu瓦片或ctu/子图片。在一些情况下,当块、与块相关联的多个模板以及与多个模板相关联的多个模板参考样本共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。
[0310]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd检测组件4112可以向块应用dimd。此外,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,dimd组件4114可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括dc模式、平面模式、水平度模式、垂直度模式、对角上右度模式、对角下左模式或对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块导出。在又一些其他方面,可以从解码信息导出默认ipm。附加地或备选地,当块、多个模板(m2)和多个模板参考样本(m1)没有共同位于相同视频单元内时,dimd组件4114可以使用多个修改的参考模板样本或多个修改的模板,来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线、行或者列的数
目(m1)可以被改变至n1,和/或模板的线、行或者列的数目(m2)可以被改变至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0311]
在一些情况下,dimd检测组件4112可以基于内编解码工具确定是否向解码单元应用dimd。作为示例,dimd检测组件4112可以基于不存在包括与向当前块应用内编解码工具相关联的信息的信令,来确定应用dimd。可替换地,dimd检测组件4112可以基于存在包括与向当前块应用内编解码工具相关联的信息的信令和/或不存在指示向当前块应用dimd的信令,来确定不应用dimd。内编解码工具的一些示例包括内子分区(isp)、多参考线(mrl)、交叉分量线性模型(cclm)预测模式、矩阵加权内预测(mip)和/或位置相关内预测组合(pdpc)。
[0312]
此外,在一些方面,第一语法元素可以指示导出的ipm的使用,并且第二语法元素可以指示内编解码工具的使用。例如,第一语法元素可以指示是否使用导出的ipm,并且第二语法元素可以指示是否使用isp。此外,在一些方面,如果使用上下文编解码来确定语法元素之一,则上下文编解码的语法元素可以基于另一语法元素。例如,如果导出的ipm与isp一起使用并且第一语法元素是上下文编解码的,则第一语法元素的上下文可以基于第二语法元素。此外,如果第二语法元素是上下文编解码的,则第二语法元素的上下文可以基于第一语法元素。在一些其他示例中,语法元素可以不基于彼此。
[0313]
作为另一示例,一方面,计算设备4202、处理器4204、存储器4206、编码组件4210、dimd启用组件4212、比特流生成组件4214和/或信令组件4216可以被配置用以或可以包括用于以下的部件:确定向比特流的单元应用解码器侧内模式导出(dimd)。
[0314]
例如,框4302处的确定可以包括确定向比特流的单元应用解码器侧内模式导出。在一些方面,单元可以包括块、图片、子图片、瓦片、切片、ctu、vpdu、ctu行、cu或pu。此外,在一些方面,dimd启用组件4212可以不对编码单元内的所有块启用dimd。例如,dimd启用组件4212可为cu内的第一块启用dimd,并且针对相同cu内的第二块禁用dimd。
[0315]
在一些示例中,dimd启用组件4212可以基于多个图片4220的块的维度和/或块的形状,来确定是否启用dimd。例如,当块宽度乘以块高度大于或等于t1(例如,t1=16/64/256)时,dimd启用组件4212可以针对该块启用dimd。在一些其他实例中,当块宽度乘以块高度小于或等于t2(例如t2=16/64/256/1024)时,dimd启用组件4212可以针对该块启用dimd。在另一实例中,当块宽度除以块高度或块高度除以块宽度小于或等于t3(例如t3=4/8)时,dimd启用组件4212可以针对该块启用dimd。在又一实例中,当块宽度除以块高度或块高度除以块宽度大于或等于t4(例如t4=1)时,dimd使能组件4212可以针对该块启用dimd。
[0316]
在一些示例中,dimd启用组件4212可以基于块的切片类型或图片类型,来确定是否启用dimd。例如,dimd启用组件4212可以仅在块的切片类型是i切片时针对该块启用dimd。在一些其他实例中,当编码组件4210采用分层编解码来生成经编码的比特流4222时,dimd启用组件4212可以针对一个或多个时间层启用dimd。
[0317]
在一些示例中,dimd启用组件4212可以基于一个或多个模板的可用性来确定是否启用dimd。例如,dimd启用组件4212可以至少部分地基于用于导出ipm的模板和模板参考样本的可用性,来针对块启用dimd。特别地,dimd启用组件4212可以基于与块相关联的一个或多个模板和/或一个或多个模板参考样本可用于导出针对块的ipm,来针对该块启用dimd。
在一些方面,当考虑的所有模板和模板参考样本都不可用或考虑的模板和/或模板参考样本中的至少一个不可用时,认为针对块的样本不可用。
[0318]
在一些示例中,dimd启用组件4212可以基于分别包括块、与块相关联的多个模板和与块相关联的多个模板参考样本的视频单元之间的关系,来确定是否启用dimd。在一些情况下,当块、与块相关联的多个模板以及与块相关联的多个模板参考样本共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。
[0319]
在一些其他实例中,当块、与块相关联的多个模板和与多个模板相关联的多个模板参考样本没有共同位于相同视频单元内时,dimd启用组件4212可以针对该块启用dimd。此外,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用默认ipm来执行dimd。在一些方面,默认ipm可以包括dc模式、平面模式、水平度模式、竖直度模式、对角上右度模式、对角下左模式或对角上左模式。在一些其他方面,默认ipm可以从当前块的邻近块导出。附加地或备选地,当块、多个模板和多个模板参考样本没有位于相同视频单元内时,可以使用多个修改的参考模板样本或多个修改的模板来执行dimd。在一些方面,当第一视频单元不同于第二视频单元和/或第三视频单元时,参考模板样本的线、行、或列的数目(m1)可以被改变至n1,和/或模板的线、行或列的数目(m2)可以被改变至n2。在一些示例中,n1小于或等于m1(例如,m1=4,n1=1或m1=2,n1=1),并且n2小于或等于m2(例如,m2=4,n2=1或m2=2,n2=1)。
[0320]
在一些示例中,dimd启用组件4212可以基于内编解码工具确定是否启用dimd。例如,dimd检测组件4112可以基于不能与导出的ipm一起使用内编解码工具,来确定对块禁用dimd,或基于可以与导出的ipm一起使用内编解码工具,来对块启用dimd。内编解码工具的一些示例包括isp、mrl、cclm预测模式、mip和/或pdpc。
[0321]
参照图45,在块4504,方法4500包括基于至少一个ipm确定内编解码工具的适用性。例如,在一方面,计算设备4102、处理器4104、存储器4106、解码组件4110和/或dimd组件4114可以被配置用以或可以包括用于以下的部件:基于至少一个ipm来确定内编解码工具的适用性。作为另一示例,在一个方面,计算设备4202、处理器4204、存储器4206、编码组件4210、dimd启用组件4212、比特流生成组件4214和/或信令组件4216可以被配置用以或可以包括用于以下的部件:基于至少一个ipm来确定内编解码工具的适用性。
[0322]
例如,解码组件4110和/或dimd组件4114可以确定是否可以与特定内编解码工具(例如,isp、mrl、cclm、mip或pdpc)一起使用ipm。在一些情况下,如本文所述,特定内编解码工具可以是适用的,而在一些其他情况下,特定编解码工具可能不适用。作为另一示例,编码组件4210和/或dimd启用组件4212可以确定是否可以与特定内编解码工具(例如,isp、mrl、cclm、mip或pdpc)一起使用ipm。在一些情况下,如本文所述,特定内编解码工具可以是适用的,而在一些其他情况下,特定编解码工具可能不适用。
[0323]
参照图45,在块4506,方法4500包括基于确定应用预测模式导出工具和/或基于确定内编解码工具的适用性来执行转换。例如,在一个方面,计算设备4102、处理器4104、存储器4106、解码组件4110和/或dimd组件4114可以被配置用以或可以包括用于以下的部件:基于确定应用预测模式导出工具和/或基于确定内编解码工具的适用性来执行转换。作为另一示例,在一方面,计算设备4202、处理器4204、存储器4206、编码组件4210、dimd启用组件4212、比特流生成组件4214和/或信令组件4216可以被配置用以或可以包括用于以下的部
件:基于确定应用预测模式导出工具和/或基于确定内编解码工具的适用性来执行转换的装置。
[0324]
例如,可以如本文所描述的那样,与内编解码工具一起使用所导出的ipm。例如,导出的ipm可以与isp一起使用。在某些实例中,导出的ipm可以应用于isp的一个或多个部分,以导出这些部分的预测样本。在另一实例中,可以为isp的每个部分导出单独的ipm。在某些方面,当为isp的每个部分导出单独的ipm时,每个部分的ipm导出可以与整个块的ipm导出相同。
[0325]
在一些示例中,第一语法元素可以指示是否使用所导出的ipm,并且第二语法元素可以指示是否使用isp。当导出的ipm与isp一起使用并且第一语法被上下文编解码时,第一语法的上下文可以依赖于第二语法元素。备选地,在一些方面,第一语法元素的上下文不能依赖于第二语法元素。在另一示例中,当第二语法被上下文编解码时,上下文可以依赖于第一语法。备选地,在一些方面,第二语法元素的上下文不能依赖于第一语法元素。在又一些其他示例中,第一语法元素和/或第二语法元素可以被旁路编解码。
[0326]
在一些其他示例中,当与isp一起使用导出的ipm时,解码组件4110可以向当前块应用一个或多个变换。可以被应用于块的变换的一些示例包括mts和/或lfnst。在一些实例中,当与isp一起使用导出的内模式时,解码组件4110可以被限制为仅应用mts中的一个变换。例如,解码组件4110可以应用dct x或可以应用dst y,其中x和y是整数。作为另一示例,解码组件4110可以应用具有等于z的索引的lfnst,其中z是整数。在某些方面,z可以等于0。
[0327]
此外,作为另一示例,可以与mrl一起使用导出的ipm。此外,在一些方面,当与mrl一起使用导出的ipm时,mrl的应用可以被限制为特定参考线。例如,在一些方面,当与mrl一起使用导出的ipm时,mrl中可以仅支持第二或第三参考线。在一些示例中,类似于isp,可以与dimd一起使用mrl。
[0328]
此外,作为又一示例,可以与mip一起使用导出的ipm。在一些实例中,解码组件4110可以实现从多个模板导出的mip,并且dimd组件4114可以被配置用以将mip模式应用于解码单元(例如,块)。在一些方面,由解码组件4110实现的mip模式可以包括mip模式索引和/或mip转置标志。备选地,在一些示例中,不能与dimd一起应用mip。
[0329]
在一些示例中,如果dimd启用组件4212不启用dimd,则信令组件4216可以不发信令发送针对特定编码单元的dimd的使用。例如,如果不能与特定的内编解码工具一起使用导出的ipm,则当内编解码工具被应用于当前块时,信令单元4216可以不信令发送dimd的使用。此外,如果不能与特定的内编解码工具一起使用导出的ipm,则当导出的ipm被应用于当前块时,信令单元4216可以不信令发送内编解码工具的使用。
[0330]
在一些示例中,当与特定内编解码工具一起使用时导出的ipm,信令组件4216可以信令发送对应于dimd的使用的信息(例如,对应于导出的ipm的信息)和与特定内编解码工具的使用相关的信息。作为示例,信令组件可以信令发送指示使用导出的ipm的第一语法元素和指示使用内编解码工具(例如,isp)的第二语法元素。此外,信令组件4216可以在对应于dimd的使用的信息之前或之后信令发送对应于内编解码工具的信息。例如,信令组件4216可以在经编码的比特流4222内的、对应于mip、isp和/或mrl的信息之前或之后,信令发送与导出的ipm相关的信息(例如,dimd标志/索引)。
[0331]
在一些方面,当应用了特定内编解码工具(例如,mip、mrl、isp)的块被允许应用
dimd时,信令组件4216可以不信令发送使用dimd的指示。备选地,当应用了特定内编解码工具的块不被允许应用dimd时,信令组件4216可以信令发送使用dimd的指示。此外,在一些方面,dimd检测组件4112可以检测或推断内编解码工具和/或dimd的使用,并且使用在计算设备4202处应用的任何过程来处理经编码的比特流4120。
[0332]
尽管前述公开讨论了说明性方面和/或实施方式,但应当注意,在不脱离由所附权利要求限定的所描述的方面和/或实施方式的范围的情况下,可以在本文中进行各种改变和修改。此外,尽管所描述的方面和/或实施方式的元素可以以单数形式描述或要求保护,但除非明确声明限制为单数,否则复数形式是预期的。此外,除非另有说明,否则可以与任何其他方面和/或实施方式的全部或一部分一起使用任何方面和/或实施方式的全部或一部分。
[0333]
提供先前的描述以使得本领域普通技术人员能够实践本文描述的各个方面。对这些方面的各种修改对于本领域普通技术人员来说将是显而易见的,并且这里定义的一般原理可以应用于其他方面。权利要求并不旨在限于本文所示的方面,而是应符合与权利要求语言一致的全部范围,其中除非特别如此陈述,对单数形式的元素的引用并不旨在表示“一个且仅一个”,而是表示“一个或多个”。除非另有特别说明,术语“一些”是指一个或多个。组合(例如“a、b或c中的至少一个”、“a、b或c中的一个或多个”、“a、b和c中的至少一个”、“a、b和c中的一个或多个”和“a、b、c或其任意组合”)包括a、b或c的任意组合,并且可以包括a的倍数、b的倍数或c的倍数。具体地,组合(例如“a、b或c中的至少一个”,“a、b或c中的一个或多个”,“a、b和c中的至少一个”,“a、b和c中的一个或多个”和“a、b、c或其任何组合”)可以是仅a、仅b、仅c、a和b、a和c、b和c,或a和b和c,其中任何此类组合可以包含a、b或c的一个或多个成员。以引用的方式明确地并入本文并且旨在被权利要求所涵盖的、贯穿本公开内容中描述的各个方面的元素的所有结构和功能等效物都是本领域普通技术人员已知的、或将在未来知道的。此外,无论权利要求中是否明确引用了此类公开,本文所公开的任何内容均不旨在专门由公众使用。“模块”、“机制”、“元件”、“设备”等词语可能不能代替词语“装置”。因此,除非使用短语“用于

的装置”明确描述要素,否则任何权利要求要素均不得解释为功能性限定。
[0334]
以下条款描述了一些实施方式和技术。
[0335]
1.一种视频处理方法,包括:在视频的当前视频单元和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来执行转换。
[0336]
2.根据条款1的方法,其中当前视频单元包括第一颜色分量和第二颜色分量,并且ipm从第一颜色分量被导出并且被应用于第二颜色分量。
[0337]
3.根据条款2的方法,其中将ipm应用于第二颜色分量的指示与比特流中呈现的语法元素相关。
[0338]
4.根据条款2的方法,其中第一颜色分量和第二颜色分量具有呈rgb格式或ycbcr格式的不同颜色分量类型。
[0339]
5.根据条款1的方法,其中当前视频单元包括色度块和对应的亮度块,并且基于ipm从亮度分量被导出和/或ipm被应用于对应的亮度块,色度导出模式被应用于色度块。
[0340]
6.根据条款1的方法,其中当前视频单元包括色度块和对应的亮度块,并且响应于将ipm应用于对应的亮度块,色度导出模式不被应用于比特流的色度块。
[0341]
7.根据条款1的方法,其中至少一个ipm的导出还基于ipm候选集,并且其中针对第一颜色分量的第一ipm候选集不同于针对第二颜色分量的第二ipm候选集。
[0342]
8.根据条款7的方法,其中第一ipm候选集的大小不同于第二ipm候选集的大小,或者第一ipm候选集的大小与第二ipm候选集的大小相同,但具有与第二ipm候选集中的候选不同的至少一个不同ipm候选。
[0343]
9.根据条款1的方法,其中至少一个ipm至少部分地基于编解码信息被应用于当前单元,其中编解码信息包括以下中的一个或多个:当前视频单元的维度或形状,与当前视频单元相关的切片的切片类型、时间层和比特流中呈现的语法元素。
[0344]
10.根据条款1的方法,其中至少一个ipm还基于对应于多个先前编解码的单元的多个ipm被导出。
[0345]
11.根据条款10的方法,其中多个先前编解码的单元是当前视频单元的邻近单元,并且至少一个ipm等于来自多个邻近单元的最多使用的内模式。
[0346]
12.根据条款1的方法,其中至少一个ipm还基于当前视频单元的邻近样本的梯度值被导出的。
[0347]
13.根据条款12的方法,其中至少一个ipm从具有最大幅度的方向被导出。
[0348]
14.根据条款12的方法,其中至少一个ipm基于具有在预定范围内的幅度的第一数目的方向被设置为默认模式。
[0349]
15.根据条款14的方法,其中默认模式是以下之一:dc模式、平面模式、水平度模式、竖直度模式、对角上右度模式、对角下左模式或对角上左模式。
[0350]
16.根据条款1的方法,其中转换包括将当前视频单元编码成比特流。
[0351]
17.根据条款1的方法,其中转换包括从比特流解码当前视频单元。
[0352]
18.一种用于处理视频数据的设备,包括处理器和其上具有指令的非暂时性存储器,其中指令在由处理器执行时使得处理器:在视频的当前视频单元和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来执行转换。
[0353]
19.一种非暂时性计算机可读记录介质,存储通过由视频处理设备执行的方法所生成的视频的比特流,其中该方法包括:在视频的当前视频单元和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来生成比特流。
[0354]
20.一种存储指令的非暂时性计算机可读存储介质,指令使得处理器:在视频的当前视频单元和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来执行转换。
[0355]
21.根据条款1的方法,其中当前视频单元在第一单元中,并且基于第一单元、包括
模板区域的第二单元、包括用于导出模板区域的预测样本的参考模板样本的第三单元之间的关系,预测模式导出工具被应用于第一单元的当前块。
[0356]
22.根据条款21的方法,其中当前视频单元是预测单元(pu)、编解码单元(cu)、视频处理和分发单元(vpdu)、编解码树单元(ctu)、ctu行、切片、瓦片或子图片。
[0357]
23.根据条款21的方法,其中基于第一单元、第二单元和第三单元是相同单元,预测模式导出工具被应用于当前视频单元。
[0358]
24.根据条款21的方法,其中基于第一单元与第二单元和/或第三单元不同,预测模式导出工具被应用于当前视频单元。
[0359]
25.根据条款21的方法,其中基于第一单元与第二单元和/或第三单元不同,预测模式导出工具不被应用于第一单元的当前视频单元。
[0360]
26.根据条款21的方法,其中基于第三单元不同于第一单元和第二单元,预测模式导出工具不被应用于第一单元的当前视频单元。
[0361]
27.根据条款21的方法,其中基于第一单元不同于第二单元和/或第三单元,至少一个ipm被设置为等于默认ipm。
[0362]
28.根据条款27的方法,其中默认ipm是平面模式、dc模式、水平模式、竖直模式、对角上右模式、对角下左模式或对角上左模式。
[0363]
29.根据条款27的方法,其中默认ipm基于当前视频单元的多个邻近视频单元或解码信息。
[0364]
30.根据条款21的方法,其中基于第一单元不同于第二单元和/或第三单元,参考模板样本的线、行或列的数目被修改。
[0365]
31.根据条款21的方法,其中基于第一单元不同于第二单元和/或第三单元,参考模板样本的线、行或列的数目被减少。
[0366]
32.根据条款21的方法,其中基于第二单元不同于第三单元,参考模板样本的线、行或列的数目被修改。
[0367]
33.根据条款21的方法,其中基于第二单元不同于第三单元,参考模板样本的线、行或列的数目被减少。
[0368]
34.根据条款21的方法,其中基于模板区域的不可用性或参考模板样本的不可用性,预测模式导出工具不被应用于当前视频单元。
[0369]
35.一种视频处理方法,包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;以及基于确定来执行转换,其中在比特流中呈现语法元素以指示预测模式导出工具的相关信息。
[0370]
36.根据条款35的方法,其中相关信息包括dimd的应用或用于导出至少一个ipm的ipm候选集的长度。
[0371]
37.根据条款35的方法,其中语法元素使用以下被二值化:固定长度编解码、截断一元编解码、一元编解码、eg编解码、或者被编码为标志。
[0372]
38.根据条款35的方法,其中语法元素被旁路编解码。
[0373]
39.根据条款35的方法,其中语法元素被上下文编解码。
[0374]
40.根据条款39的方法,其中语法元素的上下文基于比特流的当前块的编解码信息。
[0375]
41.根据条款40的方法,其中编解码信息对应于当前块的维度。
[0376]
42.根据条款40的方法,其中当前块的宽度(bw)和当前块的高度(bh)被包括在编解码信息中,当bw和bh的乘积小于或等于预定义数时,第一上下文被使用,并且当bw和bh的乘积大于预定义数时,第二上下文被使用。
[0377]
43.根据条款40的方法,其中当前块的宽度(bw)和当前块的高度(bh)被包括在编解码信息中,当bw和bh的被除数(dividend)小于或等于预定义数时,第一上下文被使用,以及当bw和bh的被除数大于预定义数时,第二上下文被使用。
[0378]
44.根据条款40的方法,其中编解码信息对应于当前块的切片类型。
[0379]
45.根据条款40的方法,其中编解码信息对应于来自当前块的一个或多个邻近块的信息。
[0380]
46.根据条款45的方法,其中一个或多个邻近块是左块、上块、左下块、右上块或左上块。
[0381]
47.根据条款45的方法,其中编解码信息指示一个或多个邻近块是否被内编解码。
[0382]
48.根据条款40的方法,其中编解码信息指示当前块的邻近块是否被预测模式导出工具编解码。
[0383]
49.根据条款40的方法,其中编解码信息指示被应用于当前块的一种或多种其他内编解码方法,其中其他内编解码方法包括内子分区、多参考线和基于矩阵的内预测。
[0384]
50.根据条款40的方法,其中编解码信息对应于当前视频块的分区信息。
[0385]
51.根据条款50的方法,其中分区信息对应于双树、单树、局部双树或局部单树。
[0386]
52.根据条款35的方法,其中基于对应于当前块的编解码信息,语法元素被呈现在比特流中。
[0387]
53.根据条款52的方法,其中编解码信息包括当前块的维度和/或当前块的形状。
[0388]
54.根据条款52的方法,其中另一块的当前块的宽度(bw)和另一块的高度(bh)被包括在编解码信息中,语法元素是第一语法元素,并且当编解码信息指示bw和bh的乘积小于或等于预定义数目时,第二语法元素针对另一块不被信令发送。
[0389]
55.根据条款52的方法,其中另一块的当前块的宽度(bw)和另一块的高度(bh)被包括在编解码信息中,语法元素是第一语法元素,并且当编解码信息指示bw和bh的乘积大于预定义数目时,第二语法元素针对另一块不被信令发送。
[0390]
56.根据条款52的方法,其中另一块的当前块的宽度(bw)和另一块的高度(bh)被包括在编解码信息中,语法元素是第一语法元素,并且当编解码信息指示bw和bh的被除数小于或等于预定义数目时,第二语法元素针对另一块不被信令发送。
[0391]
57.根据条款52的方法,其中另一块的当前块的宽度(bw)和另一块的高度(bh)被包括在编解码信息中,语法元素是第一语法元素,并且当编解码信息指示bw和bh的被除数大于预定义数目时,第二语法元素针对另一块不被信令发送。
[0392]
58.根据条款52的方法,其中编解码信息包括当前块的切片类型或当前块的图片类型。
[0393]
59.根据条款52的方法,其中编解码信息包括被应用于当前块的预测模式和/或内
编解码工具。
[0394]
60.根据条款52的方法,其中语法元素不被呈现在比特流中并且被推断为1。
[0395]
61.根据条款52的方法,其中语法元素不被呈现在比特流中并且被推断为0。
[0396]
62.根据条款52的方法,其中信息是第一信息,并且基于模板区域的不可用性或模板参考样本的不可用性,与预测模式导出工具相关的第二信息不被呈现在比特流中。
[0397]
63.一种用于处理视频数据的装置,包括处理器和其上具有指令的非暂时性存储器,其中指令在被处理器执行时使处理器:在视频的当前视频单元和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前视频单元,其中在预测模式导出工具中,基于与当前视频单元相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来执行转换。
[0398]
64.一种非暂时性计算机可读记录介质,存储通过由视频处理设备执行的方法生成的视频的比特流,其中方法包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前视频单元被导出;以及基于确定来执行转换,其中语法元素被呈现在比特流中以指示预测模式导出工具的相关信息。
[0399]
65.一种存储指令的非暂时性计算机可读存储介质,指令使得处理器:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;以及基于确定来执行转换,其中语法元素被呈现在比特流中以指示预测模式导出工具的相关信息。
[0400]
66.一种用于视频处理的方法,包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;基于至少一个ipm确定内编解码工具的适用性;以及基于确定应用预测模式导出工具和/或确定内编解码工具的适用性,来执行转换。
[0401]
67.根据条款66的方法,其中基于内编解码工具被应用于当前块,至少一个内预测模式不被应用于当前块。
[0402]
68.根据条款67的方法,其中与预测模式导出工具相关联的信息不被呈现在比特流中。
[0403]
69.根据条款66的方法,其中基于预测模式导出工具被应用于当前块,与内编解码工具相关联的信息不被呈现在比特流中。
[0404]
70.根据条款66的方法,其中与内编解码工具相关联的信息在与预测模式导出工具相关联的信息之前被呈现在比特流中。
[0405]
71.根据条款66的方法,其中与内编解码工具相关联的信息在与预测模式导出工具相关联的信息之后被呈现在比特流中。
[0406]
72.根据条款66的方法,其中内编解码工具包括以下至少一个:内子分区(isp)、多参考线(mrl)内预测、交叉分量线性模型(cclm)、矩阵加权内预测(mip)、或位置依赖的内预测组合(pdpc)。
[0407]
73.根据条款66的方法,其中内编解码工具是内子分区(isp)。
[0408]
74.根据条款73的方法,其中至少一个ipm被应用于isp的一个或多个部分以导出该部分的预测样本。
[0409]
75.根据条款74的方法,其中至少一个ipm是针对isp的单个部分被导出的。
[0410]
76.根据条款75的方法,其中至少一个ipm包括针对isp的单个部分导出的第一ipm、和针对整个块导出的第二ipm,并且其中第一ipm与第二ipm相同。
[0411]
77.根据条款76的方法,其中第一语法元素(se)指示是否使用至少一个ipm,并且第二语法元素(se)指示是否使用isp。
[0412]
78.根据条款77的方法,其中响应于isp使用至少一个ipm并且第一se被上下文编解码,第一se的上下文依赖于第二se。
[0413]
79.根据条款77的方法,其中第二se的上下文依赖于第一se。
[0414]
80.根据条款77的方法,其中第一se的上下文不依赖于第二se,或者第二se的上下文不依赖于第一se。
[0415]
81.根据条款77的方法,其中第一se和/或第二se被旁路编解码。
[0416]
82.根据条款76的方法,其中基于至少一个ipm与isp一起被使用,一个或多个变换被应用于当前块。
[0417]
83.根据条款82的方法,其中一个或多个变换包括以下至少一个:多重变换选择(mts)或低频不可分离变换(lfnst)。
[0418]
84.根据条款82的方法,其中基于至少一个ipm针对isp被使用,仅mts变换被应用。
[0419]
85.根据条款82的方法,其中以下至少一个作为变换被应用:离散余弦变换或离散正弦变换。
[0420]
86.根据条款82的方法,其中仅低频不可分离变换(lfnst)被应用,并且以整数值作为索引。
[0421]
87.根据条款86的方法,其中索引等于0。
[0422]
88.根据条款66的方法,其中内编解码工具是多参考线(mrl)。
[0423]
89.根据条款88的方法,其中仅预定义的参考线被支持,并且mrl索引不被信令发送。
[0424]
90.根据条款89的方法,其中预定义参考线是第二参考线或第三参考线。
[0425]
91.根据条款88的方法,其中预测模式导出工具标志或预测模式导出工具索引在比特流中被呈现在mrl索引之前。
[0426]
92.根据条款88的方法,其中预测模式导出工具标志或预测模式导出工具索引在比特流中被呈现在mrl索引之后。。
[0427]
93.根据条款66的方法,其中矩阵加权内预测(mip)模式使用模板区域被导出。
[0428]
94.根据条款93的方法,其中mip模式索引和/或mip转置标志使用模板区域被导出。
[0429]
95.根据条款66的方法,其中预测模式导出工具不被应用于如下块:该块被应用了矩阵加权内预测(mip)、多参考线(mrl)或内子分区(isp)中的至少一个,预测模式导出工具的使用的指示不被呈现在比特流中,并且预测模式导出工具对于该块被禁用。
[0430]
96.根据条款66的方法,其中内编解码工具包括至少一种内编解码工具,包括以下
至少一个:内子分区(isp)、多参考线(mrl)内预测、交叉分量线性模型(cclm)、矩阵加权内预测(mip)或位置依赖内预测组合(pdpc)。
[0431]
97.一种用于处理视频数据的装置,包括处理器和其上具有指令的非暂时性存储器,其中指令在被处理器执行时使处理器:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;基于至少一个ipm确定内编解码工具的适用性;以及基于确定应用预测模式导出工具和/或基于确定内编解码工具的适用性,来执行转换。
[0432]
98.一种存储由视频处理设备执行的方法生成的视频比特流的非暂时性计算机可读记录介质,其中该方法包括:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;基于至少一个ipm确定内编解码工具的适用性;以及基于确定应用预测模式导出工具和/或基于确定内编解码工具的适用性,来执行转换。
[0433]
99.一种存储指令的非暂时性计算机可读存储介质,该指令使处理器:在视频的当前块和视频的比特流之间的转换期间,确定将预测模式导出工具应用于当前块,其中在预测模式导出工具中,基于与当前块相关的模板区域的重构样本和预测样本之间的成本计算,至少一个内预测模式(ipm)针对当前块被导出;基于至少一个ipm确定内编解码工具的适用性;以及基于确定应用预测模式导出工具和/或确定内编解码工具的适用性,来执行转换。
[0434]
以下详细的发明应被认为是解释一般概念的例子。这些发明不应以狭义的方式解释。此外,这些发明可以以任何方式组合。在本公开中,术语dimd表示编解码工具,该编解码工具使用先前解码的块导出内预测模式。在本发明的方面中,“常规内预测模式(ipm)候选集”用于指示内编解码块的所允许的ipm(例如,hevc中的35个模式,vvc中的67个模式),并且“常规内预测模式”可以指示常规ipm候选集中的ipm。在本公开中,“水平模式”是指图6中模式编号等于18的内预测模式。“垂直模式”是指图6中模式编号等于50的内预测模式。“对角上右模式”是指图6中模式编号等于65的内预测模式。“对角下左模式”是指图6中模式编号等于2的内预测模式。“对角上左模式”是指图6中模式编号等于34的内预测模式。这些内预测模式也可指在hevc中具有相同方向的内预测模式。
[0435]
在本发明的各方面中,“模板的可用性”是指模板是否已被重构,或/和在图片/子图片/瓦片/切片内部、或/和模板与模板或/和当前块在相同视频单元中。在本公开的各方面,“模板-参考样本”是指用作参考以用于导出模板的预测样本的重构样本。在本发明的各方面中,“可用模板-参考样本”可指经重构的模板-参考样本,或/和在图片/子图片/瓦片/切片内的模板-参考样本,或/和与模板或/和当前块在相同的视频单元中的模板-参考样本。在本发明的各方面中,“不可用模板参考样本”可指未经重构的模板参考样本,或在图片/子图片/瓦片/切片外部的模板参考样本,或与模板或/和当前块在不同的视频单元中的模板-参考样本。在本公开中,“对块应用/使用/启用(导出的)ipm”是指使用(导出的)ipm来生成块的预测项。
[0436]
关于dimd的使用
[0437]
1.是否要和/或如何确定导出的ipm可以依赖于颜色分量。
[0438]
a.在一个示例中,ipm可从第一分量被导出,并且可以被应用于第二分量。
[0439]
i.在一个示例中,第一分量可以与第二分量相同。
[0440]
1)备选地,第一分量可以不同于第二分量。
[0441]
ii.在一个示例中,可以用语法元素来信令发送指示,该指示表示向哪个颜色分量应用所导出的ipm。
[0442]
iii.在一个示例中,第一分量可以是ycbcr格式中的y或rgb格式中的g。
[0443]
iv.在一个示例中,第一分量可以是ycbcr格式中的cb或rgb格式中的b。
[0444]
v.在一个示例中,第一分量可以是ycbcr格式中的cr或rgb格式中的r。
[0445]
vi.在一个示例中,第二分量可以是ycbcr格式中的y或rgb格式中的g。
[0446]
vii.在一个示例中,第二分量可以是ycbcr格式中的cb或rgb格式中的b。
[0447]
viii.在一个示例中,第二分量可以是ycbcr格式中的cr或rgb格式中的r。
[0448]
b.在一个示例中,当ipm从亮度分量被导出和/或导出的ipm被应用于色度块的对应亮度块时,dm模式可被应用于色度块。
[0449]
i.在一个示例中,当导出的ipm被应用于色度块的对应亮度块时,dm模式可以总是被应用于色度块。
[0450]
ii.备选地,当导出的ipm被应用于色度块的对应亮度块时,dm模式可以不被应用于色度块。
[0451]
c.在一个示例中,用以针对不同颜色分量来导出ipm的给定ipm候选集可以是不同的。
[0452]
i.例如,用于导出针对亮度块的ipm的给定ipm候选集的大小可以大于或小于针对色度块的给定ipm候选集的大小。
[0453]
ii.在一个示例中,用于导出针对亮度块的ipm的给定ipm候选集的大小可以等于针对色度块的给定ipm候选集的大小。
[0454]
2.是否应用和/或如何应用导出的ipm可以依赖于解码信息。
[0455]
a.例如,是否应用和/或如何应用导出的ipm可以依赖于块维度/块形状。块宽度和块高度被记为bw和bh。
[0456]
b.在一个示例中,导出的ipm可以不被应用于视频单元中的所有块。
[0457]
i.在一个示例中,视频单元可指图片/子图片/瓦片/切片/ctu/vpdu/ctu行/cu/pu。
[0458]
c.在一个示例中,是否应用或如何应用导出的ipm可以依赖于bw和/或bh的函数。
[0459]
i.在一个示例中,该函数可以与块宽度和/或块高度相关。
[0460]
ii.在一个示例中,仅当bw
×
bh大于或等于t1(例如t1=16/64/256)时,导出的ipm可以被应用于块。
[0461]
iii.在一个示例中,仅当bw
×
bh小于或等于t2(例如t2=16/64/256/1024)时,导出的ipm可以被应用于块。
[0462]
iv.在一个示例中,仅当bw/bh或bh/bw小于或等于t3(例如t3=4/8)时,导出的ipm可以被应用于块。
[0463]
v.在一个示例中,仅当bw/bh或bh/bw大于或等于t4(例如t4=1)时,导出的ipm可
以被应用于块。
[0464]
d.在一个示例中,导出的ipm是否被应用于块可以依赖于切片类型。
[0465]
i.在一个示例中,导出的ipm仅被应用于i切片。
[0466]
ii.在一个示例中,导出的ipm仅被应用于p和/或b切片。
[0467]
iii.在一个示例中,当使用分层编解码时,导出的ipm仅被应用于一个或多个时间层(例如仅应用于最低时间层)。
[0468]
e.备选地,是否可应用导出的ipm和/或如何向视频单元应用导出的ipm例如可以在sps/pps/图片报头/切片报头/ctu/cu/pu中被信令发送给解码器。
[0469]
3.在一个示例中,可以使用先前编解码的块的ipm来导出所导出的ipm。
[0470]
a.在一个示例中,其可以使用邻近块的ipm来导出。
[0471]
i.在一个示例中,可以将导出的ipm设置为等于来自邻近块的最多使用的内模式。
[0472]
b.在一个示例中,其可以使用区域中的先前编解码的块的ipm来导出。
[0473]
4.在一个示例中,所导出的ipm可以通过计算邻近样本的梯度来导出。
[0474]
a.在一个示例中,所导出的ipm可以从具有最大幅度的方向导出。
[0475]
b.在一个示例中,当第一x方向具有相似的幅度时,导出的ipm可以被设置为默认模式。
[0476]
i.在一个示例中,默认模式可以是dc、和/或平面、和/或水平度模式、和/或垂直度模式和/或对角上右度模式、和/或对角下左模式、和/或对角上左模式。
[0477]
5.在一个示例中,关于使用所导出的ipm的上述方法可以被应用于在编号8中公开的关于导出多个ipm的方法。
[0478]
dimd的信令发送
[0479]
6.在一个示例中,与dimd相关的信息(例如,是否应用dimd或给定ipm候选集的长度)可以作为语法元素来被信令发送。
[0480]
a.在一个示例中,语法元素可以使用如下被二值化:固定长度编解码、或截断一元编解码、或一元编解码、或eg编解码、或编解码标志。
[0481]
b.在一个示例中,语法元素可以被旁路编解码。
[0482]
c.备选地,语法元素可以是上下文编解码的。
[0483]
i.上下文可以依赖于解码信息。
[0484]
1)在一个示例中,解码信息可以指块宽度和/或块高度,记为bw和bh。
[0485]
a)在一个示例中,当bw
×
bh≤t1和bw
×
bh>t1时,可以使用不同的上下文。
[0486]
b)在一个示例中,当bw
×
bh≤t2和bw
×
bh>t2时,可以使用不同的上下文。
[0487]
2)在一个示例中,解码信息可以指切片类型。
[0488]
3)在一个示例中,解码信息可以指来自一个或多个邻近块的该信息。
[0489]
a)在一个示例中,邻近块可以指左块、和/或上块、和/或左块、下块、和/或右块、上块、和/或左块。
[0490]
b)在一个示例中,解码信息可指邻近块是否被内编解码。
[0491]
c)在一个示例中,解码信息可以指邻近块是否被dimd编解码。
[0492]
4)在一个示例中,解码信息可以指被应用于当前块的方法(例如,isp/mrl/mip)。
[0493]
5)在一个示例中,解码信息可以指分区信息(例如,双树或单树、局部双树或单
树)。
[0494]
d.是否信令发送语法元素可以依赖于解码信息。
[0495]
i.在一个示例中,解码信息可以指块维度和/或块形状。将块宽度和块高度记为bw和bh。
[0496]
a)在一个示例中,当bw
×
bh≤t1时,可以不信令发送语法元素。
[0497]
b)备选地,当bw
×
bh>t1时,可以不信令发送语法元素。
[0498]
c)在一个示例中,当bw/bh》t2时,可以不信令发送语法元素。
[0499]
d)备选地,当bw/bh》t2时,可以不信令发送语法元素。
[0500]
ii.在一个示例中,解码信息可以指切片/图片类型。
[0501]
iii.在一个示例中,解码信息可指预测模式(例如,ibc、调色板模式)和/或内编解码工具(例如,mrl、isp、mip)。
[0502]
iv.在一个示例中,当语法元素没有被信令发送时,可以将其推断为1。
[0503]
1)备选地,语法元素可被推断为0。
[0504]
e.在一个示例中,当没有模板不可用于导出ipm时,dimd不能被应用于块。
[0505]
i.在一个示例中,当没有模板不可用时,与dimd相关的信息不被信令发送。
[0506]
ii.在一个示例中,当模板-参考样本不可用于导出ipm时,dimd不能被应用于块。
[0507]
iii.在一个示例中,当模板-参考样本不可用时,与dimd相关的信息不被信令发送。
[0508]
iv.“样本不可用”可指所考虑的所有样本不可用或所考虑的样本中的至少一者不可用。
[0509]
7.在ipm导出期间,假设当前块在第一视频单元中,模板在第二视频单元中,并且模板的模板-参考样本在第三单元中。dimd是否可被应用于当前块和/或ipm导出可以依赖于第一视频单元和/或第二视频单元和/或第三视频单元的关系。
[0510]
a.在一个示例中,视频单元可指pu/cu/vpdu/ctu/ctu行/切片/瓦片/子图片。
[0511]
b.在一个示例中,当第一视频单元、第二视频单元和第三视频单元是相同视频单元时,dimd可以被应用于当前块。
[0512]
c.在一个示例中,当第一视频单元不同于第二视频单元和/或第三视频单元时,dimd不能被应用于当前块。
[0513]
i.备选地,当第一视频单元不同于第二视频单元和/或第三视频单元时,dimd仍可被应用于当前块。
[0514]
1)在一个示例中,当第一视频单元不同于第二视频单元和/或第三视频单元时,导出的ipm可以被设置为等于默认ipm。
[0515]
a)在一个示例中,默认ipm可以指平面/dc/水平模式/垂直模式/对角上右模式/对角下左模式/对角上左模式。
[0516]
b)在一个示例中,默认ipm可以从邻近块被导出。
[0517]
c)在一个示例中,默认ipm可以从解码信息被导出。
[0518]
ii.在一个示例中,当第一视频单元和第二视频单元相同、但不同于第三视频单元时,dimd不能被应用于当前块。
[0519]
d.在一个示例中,当第一视频单元不同于第二视频单元和/或第三视频单元时,参
考模板样本的线/行/列的数目(记为m1)可以被修改为n1。
[0520]
i.在一个示例中,n1小于或等于m1,例如m1=4,n1=1或m1=2,n1=1。
[0521]
ii.在一个示例中,当第二视频单元不同于第三视频单元时,模板的样本线/行/列的数目(记为m2)可以被修改为n2。
[0522]
1)在一个示例中,n2小于或等于m2,例如m2=4,n2=1或m2=2,n2=1。
[0523]
dimd与其他工具之间的交互
[0524]
8.导出的ipm也可以与特定内编解码工具一起使用。
[0525]
a.备选地,导出的ipm不能与内编解码工具一起使用。
[0526]
i.例如,如果导出的ipm不能与特定内编解码工具x一起使用,则如果工具x被应用于当前块,则与dimd相关的信息(例如,是否应用dimd)可以不被信令发送。
[0527]
ii.例如,如果所导出的ipm不能与特定内编解码工具x一起使用,则如果所导出的ipm被应用于当前块,则与x相关的信息(例如,工具x是否被应用)可以不被信令发送。
[0528]
iii.可以在与工具x相关的信息之前信令发送与导出的ipm相关的信息。
[0529]
1)在一个示例中,可以在mip和/或isp和/或mrl的信息之前,信令发送与导出的ipm相关的信息。
[0530]
iv.可以在与工具x相关的信息之后,信令发送与导出的ipm相关的信息。
[0531]
1)在一个示例中,可以在mip和/或isp和/或mrl的信息之后,信令发送与导出的ipm相关的信息。
[0532]
b.在一个示例中,特定内编解码工具可以指isp、和/或mrl、和/或cclm、和/或mip、和/或pdpc。
[0533]
c.在一个示例中,导出的ipm可以与isp一起使用。
[0534]
i.备选地,导出的ipm不能与isp一起使用。
[0535]
ii.在一个示例中,导出的ipm可被应用于isp的一个或多个部分,以导出这些部分的预测样本。
[0536]
iii.在一个示例中,可以为isp的每个部分导出单独的ipm。
[0537]
1)在一个示例中,当为isp的每个部分导出单独的ipm时,针对每个部分的ipm的导出可以与针对整个块的ipm的导出相同。
[0538]
iv.在一个示例中,第一语法元素(se)指示是否使用导出的ipm,并且第二语法元素(se)指示是否使用isp。当导出的ipm与isp一起使用、并且第一se被上下文编解码时,第一se的上下文可以依赖于第二se。
[0539]
1)备选地,第一se的上下文不能依赖于第二se。
[0540]
2)在一个示例中,当第二se被上下文编解码时,该上下文可以依赖于第一se。
[0541]
a)备选地,第二se的上下文不能依赖于第一se。
[0542]
3)在一个示例中,第一se和/或第二se可以被旁路编解码。
[0543]
v.在一个示例中,当导出的ipm与isp一起使用时,当前块可以被应用一个或多个变换。
[0544]
1)在一个示例中,变换可以指mts,和/或lfnst、或mts和lfnst中的一个或多个。
[0545]
2)在一个示例中,当导出的内模式与isp一起使用时,可以仅应用mts中的一种变换。
[0546]
b)在一个示例中,可以应用dct x/dst y,其中x和y是整数。
[0547]
c)在一个示例中,可以仅应用索引等于z的lfnst,其中z是整数。
[0548]
i.在一个示例中,z等于0。
[0549]
d.在一个示例中,导出的ipm可以与mrl一起使用。
[0550]
i.备选地,导出的ipm不能与mrl一起使用。
[0551]
ii.在一个示例中,所公开的用于与isp协调的dimd的方法也可以用于mrl。
[0552]
iii.在一个示例中,当导出的ipm与mrl一起使用时,在mrl中仅可支持某一参考线,并且不需要信令发送mrl索引。
[0553]
1)在一个示例中,当导出的ipm与mrl一起使用时,可以仅支持第二或第三参考线。
[0554]
iv.在一个示例中,当导出的ipm与mrl一起使用时,可以在mrl索引之前信令发送dimd标志/索引。
[0555]
2)备选地,可以在mrl索引之后信令发送dimd标志/索引。
[0556]
e.在一个示例中,上文公开的dimd方法可以被应用于mip。
[0557]
i.在一个示例中,可以使用模板导出mip模式并将其应用于当前块。
[0558]
3)在一个示例中,mip模式可以包括mip模式索引和/或mip转置标志。
[0559]
ii.备选地,上述dimd方法不能被应用于mip。
[0560]
f.在以上示例中,当dimd不被禁止应用于具有某些模式(例如mip,mrl,isp)的块时,dimd的使用的指示不被信令发送。
[0561]
i.备选地,当dimd不被应用于具有某些模式(例如,mip、mrl、isp)的块时,仍然信令发送(例如,有条件地信令发送)dimd的使用的指示,但是指示应当被限制为对于该块禁用dimd。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献