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

基于多帧内预测模式的用于解码或编解码图像的技术的制作方法

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

1.本公开总体上涉及视频编解码,并且更具体地,涉及基于帧内预测模式的视频编码和解码。
背景技术
:2.当前,正在努力改善当前视频编解码器技术的性能,以提供更好的压缩率或提供允许较低复杂度或并行实现的视频编解码和解码方案。行业专家最近提出了几种新的视频编解码工具,目前正在进行测试以确定其有效性。技术实现要素:3.以下呈现了一个或多个方面的简化
发明内容,以提供对这些方面的基本理解。本“
发明内容”并非对所有预期方面的广泛概述,其既不旨在标识所有方面的关键或重要元素,也不旨在描述任何或所有方面的范围。其唯一目的是以简化形式呈现一个或多个方面的一些概念,作为稍后呈现的更详细描述的前奏。4.在一个方面,提供了用于处理视频数据的方法。该方法包括:在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;基于成本计算,导出多个帧内预测模式(ipm);基于多个ipm,确定当前视频块的最终预测子;以及基于最终预测子执行转换,其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。5.在另一方面,提供了用于处理视频数据的装置,其包括处理器和其上具有指令的非瞬态存储器。指令在由处理器执行时,使处理器:在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;基于成本计算,导出多个ipm;基于多个ipm,确定当前视频块的最终预测子;以及基于最终预测子执行转换,其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。6.在另一方面,提供了存储视频的比特流的非瞬态计算机可读记录介质,该视频的比特流由视频处理装置执行的方法生成,其中该方法包括:在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;基于成本计算,导出多个ipm;基于多个ipm,确定当前视频块的最终预测子;以及基于最终预测子从当前块生成比特流,其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。7.在另一方面,提供了存储指令的非瞬态计算机可读存储介质,其中这些指令使处理器:在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;基于成本计算,导出多个ipm;基于多个ipm,确定当前视频块的最终预测子;以及基于最终预测子执行转换,其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板8.为了实现上述和相关目的,一个或多个方面包括下文充分描述并且在权利要求中特别指出的特征。以下描述和附图详细阐述了一个或多个方面的一些说明性特征。然而,这些特征仅指示可以采用各种方面的原理的各种方式中的一些,并且该描述旨在包括所有这些方面及其等效物。附图说明9.图1是图示了根据本公开的一些方面的视频编解码系统的示例的框图。10.图2是图示了根据本公开的一些方面的视频编码器的第一示例的框图。11.图3是图示了根据本公开的一些方面的视频解码器的示例的框图。12.图4是图示了根据本公开的一些方面的视频编码器的第二示例的框图。13.图5是根据本公开的一些方面的通用视频编解码(vvc)的编码器框图的示例。14.图6是根据本公开的一些方面的具有67个帧内预测模式以捕获自然视频中呈现的任意边缘方向的帧内模式编解码的示意图。15.图7和图8是根据本公开的一些方面的广角帧内预测的参考示例图。16.图9是根据本公开的一些方面,在方向超过45°角的情况下的不连续性图。17.图10是根据本公开的一些方面的用于推导针对色度的α和β的样本的位置的示意图。18.图11是根据本公开的一些方面用于推导针对亮度的α和β的样本的位置的示意图。19.图12-图15图示了根据本公开的一些方面在各种预测模式上应用的pdpc的参考样本(rx,-1和r-1,y)。20.图16是根据本公开的方面使用的多参考线(mrl)帧内预测的图。21.图17和图18是根据本公开的一些方面,取决于块大小将亮度帧内预测块竖直地或水平地划分为子分区的帧内子分区(isp)的示例图。22.图19是根据本公开的一些方面的用于vvc的矩阵加权帧内预测过程(mip)方法的图。23.图20是根据本公开的一些方面的基于模板的帧内模式推导的图,其中目标表示要为其估计帧内预测模式的当前块(块大小为n)。24.图21是根据本公开的一些方面的可以基于帧内预测模式推导在其上执行梯度分析的一组选定像素的模板的图。25.图22是根据本公开各方面的3x3索贝尔(sobel)梯度滤波器与模板的卷积图。26.图23是根据本公开的一些方面的具有大于67个帧内预测模式以捕获自然视频中呈现的任意边缘方向的帧内模式编解码的示意图。27.图24是根据本公开的一些方面的包括左上子模板的示例模板的图。28.图25是根据本公开的一些方面的包括左子模板和上子模板的示例模板的图。29.图26是根据本公开的一些方面的包括上子模板的示例模板的图。30.图27是根据本公开的一些方面的包括左子模板的示例模板的图。31.图28是根据本公开的一些方面的包括左下子模板和左下子模板的示例模板的图。32.图29是根据本公开的一些方面的包括上子模板和右上子模板示例模板的图。33.图30是根据本公开的一些方面的包括左子模板、左下子模板、上子模板和右上子模板的示例模板的图。34.图31是根据本公开的一些方面的包括左上子模板、左子模板、左下子模板、上子模板和右上子模板的示例模板的图。35.图32是根据本公开的一些方面的包括与目标块间隔开的子模板的示例模板的图。36.图33是根据本公开的一些方面的包括左上子模板、左子模板和上子模板的模板的示例模板-参考样本的图。37.图34是根据本公开的一些方面的包括左子模板和上子模板的模板的示例模板-参考样本的图。38.图35是根据本公开的一些方面的包括上子模板的模板的示例模板-参考样本的图。39.图36是根据本公开的一些方面的包括左子模板的模板的示例模板-参考样本的图。40.图37是根据本公开的一些方面的具有包括上子模板的模板的水平间隙的示例模板-参考样本的图。41.图38是根据本公开的一些方面的对于包括上子模板的模板具有竖直间隙的示例模板-参考样本的图。42.图39是根据本公开的一些方面的模板具有竖直移动部分的示例模板-参考样本的图。43.图40是根据本公开的一些方面的对于模板具有水平移位部分的示例模板-参考样本的图。44.图41是根据本公开的一些方面的示例视频解码器的图。45.图42是根据本公开的一些方面的示例视频编码器的图。46.图43是根据本公开的一些方面的编码或解码比特流的示例方法的流程图。具体实施方式47.下文结合附图所述的具体实施方式旨在作为各种配置的描述,而非旨在表示可以实现本文所描述概念的唯一配置。具体实施方式包括具体细节,旨在提供对各种概念的透彻理解。然而,对于本领域普通技术人员来说,显然这些概念可以在没有这些具体细节的情况下实现。在一些情况下,结构和组件以框图的形式显示,以避免混淆这些概念。48.现在将参考各种装置和方法来呈现视频编解码和解码的若干个方面。这些装置和方法将在以下详细描述中描述,并且在附图中通过各种块、组件、电路、过程、算法以及其他示例(统称为“元素”)来示出。这些元素可以使用电子硬件、计算机软件或其任何组合来实施。这些元素是实现为硬件还是软件取决于特定的应用和对整个系统的设计约束。49.举例来说,元素或元素的任何部分或者元素的任何组合可以被实现为包括一个或多个处理器的“处理系统”。处理器的示例包括微处理器、微控制器、图形处理单元(gpu)、中央处理单元(cpu)、应用处理器、数字信号处理器(dsp)、精简指令集计算(risc)处理器、片上系统(soc)、基带处理器、现场可编程门阵列(fpga)、可编程逻辑设备(pld)、状态机、选通逻辑、离散硬件电路以及被配置为执行贯穿本公开描述的各种功能的其他合适的硬件。处理系统中的一个或多个处理器可以执行软件。软件应当广义地解释为意味着指令、指令集、代码、代码段、程序代码、程序、子程序、软件组件、应用、软件应用、软件包、例程、子例程、对象、可执行文件、执行线程、规程、功能以及其他示例,无论是指软件、固件、中间件、微码、硬件描述语言还是其他。50.因此,在一个或多个示例中,所描述的功能可以用硬件、软件或其任何组合来实现。如果在软件中实现,则功能可以被存储在计算机可读介质上或被编码为计算机可读介质上的一个或多个指令或代码。计算机可读介质包括计算机存储介质。存储介质可以为计算机可访问的任何可用介质。作为示例而非限制,此类计算机可读介质可以包括随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程rom(eeprom)、光盘存储器、磁盘存储器、其他磁存储设备、上述类型的计算机可读介质的组合,或者可以用于以计算机可访问的指令或数据结构的形式存储计算机可执行代码的任何其他介质。51.本文所描述的方面通常涉及在解码(或编码)图像中使用多个帧内预测模式(ipm)。例如,诸如高效视频编解码(hevc)、通用视频编解码(vvc)等视频编解码技术可以在编码侧和解码侧使用ipm来编码/解码视频中的每个图像或帧,从而压缩比特流中的比特数,这可以提供图像或帧的有效存储或传输,以及因此提供视频。如本文进一步详细描述的,针对图像的每个块确定或指定ipm,其中块可以包括由编码单元cu或预测单元(pu)的子集(例如,nxncu或pu)所定义的图像的一部分,其中每个cu或pu可以是像素、色度、亮度、这些的集合等。然后,ipm被用于基于先前经解码的块的参考像素、色度、亮度等预测给定块。这可以节省存储或传送针对每个像素、色度或亮度等的值。在当前视频编解码技术中,常规ipm的数目有限(例如,vvc中有67个ipm)。52.根据本文所描述的方面,给定表示要被显示的图像的比特流,可以基于多个ipm导出图像块以用于解码该块。基于多个常规ipm,可以确定用于预测要被解码的当前块的最终预测子。通过有效地允许使用多个ipm,使用多个常规ipm可以支持块的改进或更精确的解码(或编码),这可以实现与常规ipm不同的最终预测子。在一个示例中,最终预测子可以被确定为多个常规ipm中的一个ipm,这可以基于在编码中或在单独的辅助信息中发信号通知的语法元素。在另一示例中,最终预测子可以被确定为常规ipm的具有加权的加和等。53.本文所描述的附加方面涉及使用最终预测子以及最可能模式(mpm)列表,该预测子以及mpm列表也可以用于基于先前用于解码其他块的ipm来确定ipm或发信号通知ipm。例如,在解码块时,可以基于最终预测子和基于mpm列表来确定ipm,这可以包括基于mpm列表和最终预测子将列表中的ipm确定为最终预测子,或者确定为常规ipm(例如,其中最终预测子不是常规ipm)。在另一方面,最终预测子可以用于生成将在解码后续块中使用的mpm列表,其中mpm列表可以被生成为包括最终预测子、包括基于最终预测子的常规ipm等。在本文所描述的方面中,使用多个ipm可以允许改进或更精确地编码或解码(视频的)图像的块,同时提供现有或未来视频编码技术的可操作性。54.图1是示出可以利用本公开技术的视频编解码系统100的示例的框图。如图1所示,视频编解码系统100可以包括源设备110和目的地设备120。可以被称为视频编码设备的源设备110可以生成编码视频数据。可以被称为视频解码设备的目的地设备120可以解码由源设备110生成的经编码的视频数据。源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。55.视频源112可以包括诸如视频捕获设备的源、从视频内容提供方接收视频数据的接口、和/或用于生成视频数据的计算机图形系统,或者这些源的组合。视频数据可以包括一个或多个图片或图像。术语“图片”、“图像”或“帧”可以在整个过程中互换使用,以指代产生视频的图像流中的单个图像。视频编码器114编码来自视频源112的视频数据以生成比特流。比特流可以包括形成视频数据的经编码表示的比特序列。比特流可以包括经编码的图片和相关联数据。经编码的图片是图片的经编码表示。相关联数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射器、总线或基本上任何机制,该机制支持在设备之间或在可以包括源设备110和目的地设备120两者的计算设备内传输数据(例如,其中计算设备存储使用源设备110的功能生成的经编码的视频,以用于使用目的地设备120的功能进行显示)。在一个示例中,经编码的视频数据可以通过网络130a经由i/o接口116直接传输到目的地设备120。经编码的视频数据还可以被存储在存储介质/服务器130b上,以供目的地设备120访问。56.目的地设备120可以包括i/o接口126、视频解码器124和显示设备122。i/o接口126可以包括接收器和/或调制解调器、总线或者支持在设备之间或在计算设备内传输数据的基本上任何机制。i/o接口126可以从源设备110或存储介质/服务器130b获取经编码的视频数据。视频解码器124可以解码经编码的视频数据。显示设备122可以向用户显示经解码的视频数据。显示设备122可以与目的地设备120集成,或者可以位于目的地设备120的外部,目的地设备120被配置为与外部显示设备接口。57.视频编码器114和视频解码器124可以根据视频压缩标准操作,诸如hevc标准、vvc标准和其他当前和/或进一步的标准。58.图2是图示出根据本公开的一些方面的视频编码器200的示例的框图,视频编码器200可以为图1所示的系统100中的视频编码器114的示例。59.视频编码器200可以被配置为执行本公开的任何或所有技术。在图2的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术,包括视频编码器200的技术。60.视频编码器200的功能组件可以包括分区单元201、可以包括模式选择单元203的预测单元202、运动估计单元204、运动补偿单元205和帧内预测单元206、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214中的一个或多个。61.在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括帧内块复制(ibc)单元。ibc单元可以在ibc模式下执行预测,其中至少一个参考图片是当前视频块所位于的图片。62.此外,一些组件,诸如运动估计单元204和运动补偿单元205,可以被高度集成,但是为了解释的目的,在图2的示例中被单独表示。63.分区单元201可以将图片分区成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块大小。64.模式选择单元203可以例如基于错误结果来选择编解码模式中的一种,即帧内或帧间,并且将得到的帧内或帧间编解码块提供给残差生成单元207中的至少一个以生成残差块数据,并且提供给重构单元212以重构经编码的块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(ciip)模式的组合,其中预测基于帧间预测信号和帧内预测信号。模式选择单元203还可以在帧间预测的情况下为块选择运动向量的分辨率(例如,子像素或整数像素精度)。65.为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成针对当前视频块的运动信息。在一个示例中,每个参考帧可以与视频的图片相对应。运动补偿单元205可以基于来自缓冲器213的除了与当前视频块相关联的图片以外的图片的运动信息和经解码样本,来确定针对当前视频块的预测视频块。66.运动估计单元204和运动补偿单元205可以例如取决于当前视频块是在i-切片、p-切片还是b-切片中,对当前视频块执行不同的操作。如本文所使用的,在一些方面,“i-切片”可以指由宏块组成的图片的一部分,所有宏块均基于相同图片内的宏块。此外,如本文所使用的,在一些方面,“p-切片”和“b-切片”可以指由不依赖于相同图片中的宏块的宏块组成的图片的部分。67.在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以在列表0或列表1的参考图片中搜索针对当前视频块的参考视频块。然后,运动估计单元204可以生成指示列表0或列表1中包含参考视频块的参考图片的参考索引以及指示当前视频块与参考视频块之间的空间位移的运动向量。运动估计单元204可以输出参考索引、预测方向指示符和运动向量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息所指示的参考视频块,来生成当前块的预测视频块。68.在其他示例中,运动估计单元204可以对当前视频块执行双向预测,其中运动估计单元204可以在列表0中的参考图片中搜索针对当前视频块的参考视频块,并且还可以在列表1中的参考图片中搜索针对当前视频块的另一参考视频块。然后,运动估计单元204可以生成如下的参考索引和运动向量,该参考索引指示包含参考视频块的列表0和列表1中的参考图片,该运动向量指示参考视频块与当前视频块之间的空间位移。运动估计单元204可以输出当前视频块的参考索引和运动向量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息所指示的参考视频块生成当前视频块的预测视频块。69.在一些示例中,运动估计单元204可以输出用于解码器的解码处理的完整运动信息集。70.在一些示例中,运动估计单元204可能不会输出针对当前视频的完整运动信息集。相反,运动估计单元204可以参考另一视频块的运动信息来发信号通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与相邻视频块的运动信息充分相似。71.在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示如下的值:该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。72.在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块和运动向量差(mvd)。运动向量差指示当前视频块的运动向量与所指示的视频块的运动向量之间的差。视频解码器300可以使用所指示的视频块的运动向量和运动向量差来确定当前视频块的运动向量。73.如上所述,视频编码器200可以预测地发送信号通知运动向量。可以由视频编码器200实施的预测信令技术的两个示例包括高级运动向量预测(amvp)和合并模式信令。74.帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于相同图片中其他视频块的解码样本,生成针对当前视频块的预测数据。针对当前视频块的预测数据可以包括预测的视频块或一个或多个语法元素中的至少一个。75.残差生成单元207可以通过从当前视频块减去(例如,用减号指示的)当前视频块的(多个)预测的视频块,来生成针对当前视频块的残差数据。针对当前视频块的剩余数据可以包括与当前视频块中的样本的不同样本分量对应的剩余视频块。76.在其他示例中,对于当前视频块,例如在跳过模式下,可能没有针对当前视频块的剩余数据,并且剩余生成单元207可能不执行减法操作。77.变换单元208(也可称为变换处理单元)可以通过对与当前视频块相关联的剩余视频块应用一个或多个变换,来为当前视频块生成一个或多个变换系数视频块。78.在变换单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(qp)值来量化与当前视频块相关联的变换系数视频块。79.逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构剩余视频块。重构单元212可以将经重构的剩余视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样本中,以产生与当前块相关联的经重构视频块,用于存储在缓冲器213中。80.在重构单元212重构视频块之后,可以执行循环滤波操作以减少视频块中的视频块伪像。81.熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码的数据并且输出包括熵编码的数据的比特流。82.图3是图示出根据本公开的一些方面的视频解码器300的示例的框图,视频解码器300可以是图1所示的系统100中的视频解码器124的示例。83.视频解码器300可以被配置为执行本公开的任何或所有技术。在图3的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可在视频解码器300的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术,包括视频解码器300的技术。84.在图3的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、重构单元306和缓冲器307中的一个或多个。在一些示例中,视频解码器300可以执行通常与关于视频编码器200(图2)描述的编码过程相反的解码过程。85.视频解码器300可以经由熵解码单元301或其他方式接收经编码的比特流。经编码的比特流可以包括熵编码的视频数据(例如,视频数据的经编码块)。在该示例中,熵解码单元301可以解码熵编码的视频数据。基于经解码的视频数据(无论是熵解码的还是其他方式的),运动补偿单元302可以确定包括运动向量、运动向量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行amvp和合并模式来确定此类信息。可以使用amvp,包括基于来自相邻pbs和参考图片的数据来导出若干个最可能的候选。运动信息通常包括水平和竖直运动向量位移值、一个或两个参考图片索引,以及在b切片中的预测区域的情况下,哪个参考图片列表与每个索引相关联的标识。如本文所使用的,在一些方面,“合并模式”可以指从空间或时间上相邻的块导出运动信息。86.运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。用于要以亚像素精度使用的插值滤波器的标识符可以包括在与经编码的比特流一起接收的语法元素中,或者包括在单独的辅助信息中,例如由视频编码器在编码视频时指定的。87.运动补偿单元302可以使用由视频编码器200在编码视频块期间使用的插值滤波器来计算参考块的亚整数像素的插值。运动补偿单元302可以根据接收到的语法信息来确定视频编码器200使用的插值滤波器,并且使用该插值滤波器来产生预测块。88.运动补偿单元302可以使用语法信息中的一些语法信息来确定:用于编码经编码的视频序列的(多个)帧和/或(多个)切片的块的大小,描述如何对经编码的视频序列的图片的每个宏块进行分区的分区信息,指示如何对每个分区进行编码的模式,用于每个帧间经编码块的一个或多个参考帧(和参考帧列表),以及用于解码经编码视频序列的其他信息。如本文所用,在一些方面,“切片”可以指在熵编码、信号预测和剩余信号重构方面可以独立于相同图片的其他分段进行解码的数据结构。切片可以是整个图片,也可以是图片的一个区域。89.帧内预测单元303可以使用例如在比特流中接收到的帧内预测模式,来从空间上相邻的块形成经预测的块。帧内预测在本文中可称为“帧内”,和/或帧内预测模式在本文中可称为“帧内模式”。逆量化单元304对比特流中所提供的并且由熵解码单元301经解码的量化视频块系数进行逆量化(即,去量化)。逆变换单元305应用逆变换。90.重构单元306可以将剩余块与由运动补偿单元302或帧内预测单元303生成的相应预测块相加,以形成经解码的块。如果需要,还可以应用解块滤波器对经解码的块进行滤波,以便去除块性伪像。经解码的视频块随后被存储在缓冲器307中,缓冲器307为后续运动补偿/帧内预测提供参考块,并且还产生经解码的视频以在显示设备上呈现。91.尽管以下描述可能关注于高效视频编码(hevc)和/或标准通用视频编码(vvc),但本文所描述的概念可能适用于其他编码标准或视频编解码器。92.图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和色度cb的大小和位置。四叉树的根与ctu关联。因此,亮度ctb的大小是针对亮度cb的所支持的最大大小。将ctu分割为亮度cb和色度cb可以联合发出信号。一个亮度cb和通常两个色度cb,连同相关联的语法,形成编码单元(cu)。ctb可以只包含一个cu,或者可以被分割以形成多个cu,并且每个cu均有一个相关联的分区为预测单元(pu)和变换单元树(tu)。93.视频序列的第一图片(和/或进入视频序列的每个干净随机访问点处的第一图片)只能使用图片内预测,该预测使用相同图片内的区域-到-区域空间数据预测,但不依赖其他图片来编码第一图片。对于顺序或随机访问点之间的剩余图片,图片间时间预测编码模式可以用于大多数块。用于图片间预测的编码过程包括选择运动数据,该运动数据包括要被应用于预测每个块的样本的所选择的参考图片和运动向量(mv)。94.是否使用图片间或图片内预测来编码图片区域的决定可以在cu级别处做出。pu分区结构具有位于cu级别处的根。取决于基本预测类型决策,亮度cb和色度cb随后可以在大小上进一步分割并且从亮度和色度预测块(pb)预测。hevc支持从64×64下至4×4样本的可变pb大小。使用块变换对预测残差进行编解码。tu树结构具有位于cu级别处的根。亮度cb残差可以与亮度变换块(tb)相同,或者可进一步被分割为更小的亮度tb。这同样适用于色度tb。95.编码器和解码器可以通过使用mv和模式决策数据来应用运动补偿(mc),以生成作为辅助信息传输的相同的图片间预测信号。图片内或图片间预测的残差信号可以通过线性空间变换进行变换,这是原始块与其预测之间的差异。然后,变换系数可以被缩放、量化、熵编码,并且与预测信息一起被传输。96.编码器可以复制解码器处理循环,以便两者可以为后续数据生成相同的预测。因此,量化后的变换系数可以通过逆尺度被构建,然后可以被逆变换以复制剩余信号的解码近似。然后可以将残差添加到预测中,并且该添加的结果随后可以被馈送到一个或两个环路滤波器中,以平滑由块-到-到处理和量化引起的伪像。最终图片表示(即,由解码器输出的副本)可以被存储在经解码图片缓冲器中,用于预测后续图片。通常,图片的编码或解码处理的顺序可能不同于它们从源到达的顺序。因此,在一些示例中,可能需要区分解码器的解码顺序(即,比特流顺序)和输出顺序(即,显示顺序)。97.由hevc编码的视频材料可以作为渐进式图像输入(例如,因为源视频源于此格式,或者在编码前由去隔行生成)。hevc设计中没有明确的编解码功能来支持隔行扫描的使用,因为隔行的扫描不再用于显示,并且在分布中变得非常罕见。然而,在hevc中提供了元数据语法,以允许编码器通过以下来指示其已被发送:将经隔行视频的每经个区域(即,每个视频帧的偶数线或奇数线)编码为单独的图片经隔行视频,或者通过将每个经隔行的帧编码为hevc编码的图片以指示其已被发送。这可以提供一种有效的用于编码经隔行视频的方法,而无需支持针对经隔行视频的特殊解码过程。98.图5是vvc的编码器框图500的示例,其可以包括多个环路内滤波块:例如,解块滤波器(df)、样本自适应偏移(sao)自适应环路滤波器(alf)等。与使用预定义滤波器的df不同,sao和alf可以利用当前图片的原始样本,以通过分别添加偏移和通过应用有限冲激响应(fir)滤波器来减少原始样本与经重构的样本之间的均方误差,其中编解码侧信息发信号通知偏移和滤波器系数。alf可以位于每个图片的最后处理阶段,并且可以被视为捕获和修复前一阶段创建的伪像的工具。99.图6是使用67个帧内预测模式进行帧内预测模式编解码以捕获自然视频中呈现的任意边缘方向的示意图600。在一些示例中,方向帧内模式的数目可以从hevc中使用的33个扩展到65个,而平面模式和dc模式保持不变。100.在一些示例中,更密集的方向帧内预测模式可以应用于块大小以及亮度和色度帧内预测。在hevc中,每个帧内预测模式编解码块可以包括正方形(例如,大小为nxn的编解码块),并且其每一侧的长度可以为2的幂(例如,其中n是2的幂)。因此,使用dc模式生成帧内预测子不需要除法操作。在vvc中,块可以具有矩形形状,在一般情况下,每个块可能需要使用除法运算。为了避免针对dc预测的除法运算,可以使用较长的边来计算非正方块的平均值。101.尽管在vvc中定义了67个模式,但是针对给定帧内预测模式索引的准确预测方向可能进一步取决于块形状。常规的角度帧内预测方向被定义为顺时针方向45度到-135度。在vvc中,对于非正方块,可以用广角帧内预测模式自适应地替换若干种常规的角度帧内预测模式。替换的模式可以使用原始模式索引来发信号,这些索引在解析后被重新映射到广角模式的索引。在一些示例中,帧内预测模式的总数可不变,即67个,并且帧内模式编解码方法也可不变。102.图7和图8是广角帧内预测的参考示例图700和800。在一些示例中,广角方向模式中替换的模式的数目可能取决于块的纵横比。替换的帧内预测模式如表1所示:[0103][0104]表1–广角模式替代的帧内预测模式[0105]图9是方向超过45°角情况下不连续性的图900。在此类情况下,在广角帧内预测的情况下,两个竖直相邻的经预测样本可义使用两个非相邻的参考样本。因此,低通参考样本滤波器和侧平滑可以被应用于广角预测,以减少增加的间隙δpα的负面影响。如果广角模式表示非分数偏移,则广角模式中可能有8个模式满足此条件,即[-14、-12、-10、-6、72、76、78、80]。当由这些模式预测块时,可以直接复制参考缓冲区中的样本,而无需应用任何插值。利用这种修改,可以减少要被平滑的样本的数目。[0106]在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推导表可以通过替换映射表的一些条目的值来更新,以更精确地转换色度块的预测角度。[0107]在一些方面,对于每个帧间预测cu,由运动向量、参考图片索引和参考图片列表使用索引以及用于vvc的新编解码特征的附加信息组成的运动参数可以被用于帧间预测样本生成。运动参数可以按显式或隐式方式发出信号。当使用跳过模式对cu进行编码时,cu可以与一个pu相关联,并且可以不具有显著的剩余系数、没有经编解码的运动向量增量或参考图片索引。可以指定合并模式,其中可以从相邻的cu获得针对当前cu的运动参数,包括空间和时间候选,以及在vvc引入的附加时间表。合并模式可以被应用于任何预测间cu,而不仅仅适用于跳过模式。合并模式的备选方案可以是运动参数的显式传输,其中运动向量、针对每个参考图片列表的对应参考图片索引和参考图片列表使用标志以及其他所需的信息被显式地按每个cu发信号。[0108]附加地或备选地,帧内块复制(ibc)可以是在scc上的hevc扩展中采用的工具,因此可以由视频编码器114、200、400使用,如本文在视频编码中所描述的,和/或由视频解码器124、300、400使用,如本文在视频解码中所描述的。此类工具可以提高屏幕内容材料的编解码效率。由于ibc模式可以实施为块级别编码模式,因此可在编码器处执行块匹配(bm),以找到针对每个cu的最佳块向量(或运动向量)。在此,块向量被用于指示从当前块到参考块的位移,该参考块已经在当前图片内被重构。经ibc编解码的cu的亮度块向量可以为整数精度。色度块向量也可以被舍入到整数精度。当与amvr结合使用时,ibc模式可以在1像素和4像素运动向量精度之间切换。经ibc编解码的cu可以被视为帧内或帧间预测模式以外的第三预测模式。ibc模式可以适用于宽度和高度均小于或等于64亮度样本的cu。[0109]在编码器侧处,可以对ibc执行基于散列的运动估计。编码器对宽度或高度不大于16亮度样本的块执行rd检查。对于非合并模式,可以首先使用基于散列的搜索来执行块向量搜索。若果散列搜索未返回有效候选,则可执行基于块匹配的本地搜索。在基于散列的搜索中,当前块与参考块之间的散列键匹配(32位循环冗余校验(crc))可以被扩展到所有允许的块大小。当前图片中针对每个位置的散列键计算可以基于4×4个子块。对于较大大小的当前块,当所有4×4子块的所有散列键与对应参考位置中的散列键匹配时,可以确定散列键与参考块的散列键匹配。如果发现多个参考块的散列键与当前块的散列键匹配,则可以计算每个匹配参考的块向量成本,并且可以选择具有最小成本的块向量成本。[0110]在一些示例中,在块匹配搜索中,搜索范围可以被设置为覆盖先前和当前ctu。在cu级别处,ibc模式可以利用标志来发送信号,也可以被表示为ibcamvp模式或ibc跳过/合并模式。在一个示例中,诸如ibc跳过/合并模式,合并候选索引可以被用于指示来自相邻候选ibc编码块的列表中的哪些块向量被用于预测当前块。合并列表可以包括空间、hmvp和成对候选。[0111]在另一示例中,诸如ibcamvp模式,块向量差可以按与运动向量差相同的方式进行编解码。块向量预测方法使用两个候选作为预测子,一个来自左邻居,另一个来自上邻居(如果ibc编解码)。当任一邻居不可用时,可以使用默认块向量作为预测子。标志可以被发信号来指示块向量预测子索引。[0112]为了减少交叉分量冗余,可在vvc中使用交叉分量线性模型(cclm)预测模式,对于该模式,通过使用如下线性模型,基于相同cu的经重构亮度样本预测色度样本:[0113]predc(i,j)=α·recl′(i,j) β[0114]等式1[0115]在此类情况下,predc(i,j)可以表示cu中的经预测色度样本,并且recl(i,j)可以表示相同cu的经下采样重构的亮度样本。cclm参数(α和β)最多可以由四个相邻色度样本及其对应的经下采样亮度样本导出。例如,假设当前色度块尺寸为w×h,则当应用lm模式时,w’和h’被设置为w’=w,h’=h;当应用lm-t模式时,w’=w h;并且当应用lm-l模式时,h’=h w。[0116]上相邻位置可以被表示为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]。[0117]在一些方面,可以对所选择位置的四个相邻亮度样本进行下采样并且比较四次,以找到两个较大的值:x0a和x1a,以及两个较小的值:x0b和x1b。它们对应的色度样本值可表示为y0ay1a、y0b和y1b。随后xa、xb、ya和yb可以被导出为:[0118]xa=(x0a x1a 1)>>1;xb=(x0b x1b 1)>>1;ya=(y0a y1a 1)>>1;yb=(y0b y1b 1)>>1[0119]等式2[0120]最后,可以根据以下等式获得线性模型参数α和β:[0121][0122]β=yb-α·xb[0123]等式4[0124]图10是用于推导针对色度的α和β的样本位置的示意图1000。图11是用于推导针对亮度的α和β的样本位置的示意图1100。对于图10和11两者,计算参数α的除法运算可以利用查找表来实施。为了减少用于存储表格所需的内存,diff值(最大值与最小值之间的差值)和参数α可以用指数表示法表示。例如,diff值利用4位有效部分和指数近似表示。因此,对于16个有效位值,针对1/diff的表被缩减为16个元素,如下所示:[0125]divtable[]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}[0126]表2[0127]在一个示例中,可以使用上模板和左模板一起计算线性模型系数。在另一示例中,上模板和左模板可以在其他2个lm模式(称为lm_t和lm_l模式)中交替使用。在lm_t模式下,仅上模板可以被使用来计算线性模型系数。为了获得更多样本,将上模板扩展为(w h)样本。在lm_l模式下,仅左模板被使用来计算线性模型系数。为了获得更多样本,可以将左模板扩展为(h w)样本。在lm模式下,左模板和上模板被用于计算线性模型系数。[0128]为了匹配针对4:2:0视频序列的色度采样位置,对亮度采样应用了两种类型的下采样滤波器,以在水平和竖直方向上实现2:1的下采样率。下采样滤波器的选择由sps级别标志指定。两个下采样滤波器如下所示,分别与“0型”和“2型”内容对应。[0129][0130][0131]请注意,当上参考线位于ctu边界处时,仅一条亮度线(帧内预测中的通用线缓冲器)可以被使用来制作经下采样的亮度样本。该参数计算可以作为解码过程的一部分而不仅仅作为编码器搜索操作来执行。作为结果,没有语法可以被使用来将α和β值传递给解码器。[0132]对于色度帧内预测模式编码,总共允许8种帧内预测模式用于色度帧内模式编码。这些模式包括五种传统的帧内预测模式和三种交叉分量线性模型模式(lm、lm_t和lm_l)。色度模式信号和推导过程如下表3所示。色度模式编码直接依赖于对应的亮度块的帧内预测模式。由于在i切片中启用了用于亮度和色度分量的单独的块分区结构,一个色度块可以与多个亮度块相对应。因此,对于色度dm模式,可以直接继承覆盖当前色度块的中心位置的对应的亮度块的帧内预测模式。[0133][0134]表3-色度模式信令和推导过程[0135][0136][0137]表4-针对色度预测模式的统一二进制化表[0138]在表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使用旁路编码。[0139]此外,为了减少双树中的亮度色度时延,当64×64亮度编解码树节点利用不分割(notsplit)进行分区(并且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。[0140]在vvc中,dc、平面和若干个角度模式的帧内预测的结果可以通过位置相关预测组合(pdpc)方法进一步修改。pdpc是一种预测方法,它调用边界参考样本和具有经滤波的边界参考样本的hevc风格的预测的组合。pdpc可以被应用于以下无信令的帧内模式:平面、dc、小于或等于水平的帧内角度,以及大于或等于竖直并且小于或等于80的帧内角度。如果当前块为bdpcm模式或者mrl索引大于0,则不应用pdpc。[0141]预测样本pred(x’,y’)使用帧内预测模式(dc、平面、角度)和参考样本的线性组合根据如下所示的等式7进行预测:[0142]pred(x’,y’)=clip(0,(1<<bitdepth)-1,(wl×r-1,y’ wt×rx’,-1 (64-wl-wt)×pred(x’,y’) 32)>>6)[0143]等式7[0144]在上述等式中,rx,-1、r-1,y可以分别代表位于当前样本(x,y)上边界和左边界的参考样本。[0145]在一些方面,如果pdpc应用于dc、平面、水平和竖直帧内模式,则可能不需要附加的边界滤波器,如hevcdc模式边界滤波器或水平/竖直模式边缘滤波器的情况下所需要的。针对dc模式和平面模式的pdpc过程是相同的。对于角度模式,如果当前角度模式为hor_idx或ver_idx,则不分别使用左参考样本或上参考样本。pdpc权重和比例因子取决于预测模式和块大小。pdpc应用于具有均大于或等于4的宽度和高度的块。[0146]图12-图15示出了针对pdpc的参考样本1200、1300、1400、1500(rx,-1和r-1,y),其适用于应用于各种预测模式。预测样本pred(x’,y’)位于预测块内的(x’,y’)处。作为示例,对于对角模式,参考样本rx,-1的坐标x由下式给出:x=x’ y’ 1,并且参考样本r-1,y的坐标y由下式给出:y=x’ y’ 1。对于其他角度模式,参考样本rx,-1和r-1,y可能位于分数样本位置。在这种情况下,将使用最近的整数采样位置的采样值。[0147]图16是根据本公开的方面使用的多参考线(mrl)帧内预测的图1600。在一些示例中,段a和段f的样本不是从重构的相邻样本中提取的,而是分别利用段b和段e中最近的样本填充。hevc帧内图片预测使用最近的参考线(即,参考线0)。在mrl中,使用了两条附加的线(参考线1和参考线3)。[0148]在视频编解码的一些示例中,所选择的参考线的索引(mrl_idx)可以用信号表示并且用于生成帧内预测子。对于大于0的参考线索引,最可能模式(mpm)列表可能仅包括附加参考线模式,并且mpm索引可以在没有剩余模式的情况下发出信号。参考线索引可以在帧内预测模式之前发出信号,并且在非零参考线索引发出信号的情况下,平面模式可以从帧内预测模式中排除。[0149]可以对ctu内的块的第一线禁用mrl,以防止在当前ctu线外使用扩展参考样本。此外,当附加线被使用时,pdpc也可以被禁用。对于mrl模式,非零参考线索引的dc帧内预测模式中dc值的推导可以与参考线索引0的推导一致。mrl可以使用ctu存储3条相邻的亮度参考线,以生成预测。交叉分量线性模型(cclm)工具可以为其下采样滤波器存储3条相邻的亮度参考线。使用相同3行的mrl定义可以与cclm对齐,以减少针对解码器的存储需求。[0150]图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×64vdpu产生潜在问题。例如,单树情况下的m×128cu具有m×128亮度tb和两个对应的色度tb。如果cu使用isp,则亮度tb可以被划分为四个m×32tb(只有水平分割是可能的),它们中的每个均小于64×64块。然而,在isp的当前设计中,色度块没有被划分。因此,两个色度分量的大小均可大于32×32块。类似地,使用isp的128×ncu也会产生类似的情况。因此,这两种情况可能是64×64解码器流水线的问题。针对这个原因,可以使用isp的cu大小可以被限制在最大64×64。图17和图18显示了这两种可能性的示例。所有子分区均满足至少有16个样本的条件。[0151]在isp中,不允许1×n/2×n子块预测依赖于编解码块的先前解码的1×n/2×n子块的经重构的值,使得针对子块的最小预测宽度变成四个样本。例如,使用具有竖直分割的isp编解码的8×n(n>4)编解码块被分割为两个大小分别为4×n的预测区域和四个大小为2×n的变换。同样,使用具有竖直分割的isp编解码的4×n编码块是使用完整4×n块预测的;使用四个变换1×n中的每个。虽然允许变换大小为1×n和2×n,但是可以断言4×n区域中这些块的变换可以并行执行。例如,当4×n预测区域含有四个1×n变换时,在水平方向上没有变换;竖直方向上的变换可以作为竖直方向上的单个4×n变换来执行。类似地,当4×n预测区域包含两个2×n变换块时,两个2×n块在每个方向(水平和竖直)上的变换操作可以并行进行。在该示例中,与处理4×4规则编解码的帧内块相比,在处理这些较小的块时可能没有增加延迟或减少延迟。[0152][0153]表5[0154]对于每个子分区,通过将剩余信号添加到预测信号来获得经重构的样本。在此,通过诸如熵解码、逆量化和逆变换的处理来生成剩余信号。因此,每个子分区的经重构样本值可以用于生成下一子分区的预测,并且每个子分区被重复处理。此外,要处理的第一子分区是包含有cu左上样本的分区,然后继续向下(水平分割)或向右(竖直分割)。作为结果,用于生成子分区预测信号的参考样本可能仅位于线的左侧和上方。所有子分区可以共享相同的内部模式。以下是isp与其他编解码工具的交互的概述。[0155]在一个示例中,如果块具有不是0的mrl索引,则可实施mrl,然后可以将isp编码模式推断为0,并且因此isp模式信息可能不会发送到解码器。在另一示例中,如果熵编码子块的大小已经被修改,使得它们在所有可能的情况下均具有16个样本,则可以选择熵编码系数组大小,如表5所示。请注意,新的大小可能仅影响isp生产的其中一个尺寸小于4个样本的块。在所有其他情况下,系数组可以保持4×4尺寸。[0156]附加地或备选地,关于编解码块标志(cbf)编解码,假设子分区中至少有一个子分区具有非零cbf。因此,如果n是子分区的数目,并且第一子分区已经产生了零cbf,则第n-1子分区的cbf可以被推断为1。变换大小限制:具有大于16点的长度的所有isp变换均可以使用离散余弦变换(dct)-ii。多重变换选择(mts)标志:如果cu使用isp编解码模式,则mtscu标志可能被设置为0,并且可能不会被发送到解码器。因此,编码器可能不会对每个结果子分区的不同可用变换执行率失真(rd)测试。针对isp模式的变换选择可能是固定的,并且根据帧内模式、处理顺序和使用的块大小来选择。因此,在此示例中,可能不需要信令。[0157]例如,设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。[0158]在isp模式下,允许所有67种帧内预测模式。如果相应的宽度和高度至少为4个样本长,也可以使用pdpc。此外,参考样本滤波过程(参考平滑)和针对插值滤波器选择的条件可能不再存在,并且立方(dct-if)滤波器可以被应用于isp模式下的分数位置插值。[0159]图19是用于vvc的矩阵加权帧内预测过程(mip)的图1900的示例。为了预测宽度为w、并且高度为h的矩形块的样本,-mip将块左侧的h重构的相邻边界样本的一条线和块上方的w重构的相邻边界样本的一条线作为输入。如果经重构的样本不可用,则可以像在常规帧内预测中那样生成它们。[0160]在边界样本中,可以通过基于块大小和形状的平均值选择四个样本或八个样本。具体而言,通过根据取决于块大小的预定义规则来平均相邻边界样本,输入边界bdrytop和bdryleft被缩减为更小的边界和然后,两个缩减的边界和可以被连接成缩减的边界向量bdryred,因此对于形状为4×4的块,其大小为4,而对于所有其他形状的块,其大小为8。如果模式(mode)是指mip模式,这种连接定义如下:[0161][0162]利用平均样本作为输入,执行矩阵向量乘法,随后添加偏移量。结果是在原始块中的子采样样本集上的缩减预测信号。从缩减的输入向量bdryred中产生一个缩减的预测信号predred,它是宽度为wred、高度为hred的下采样块上的一个信号,在此,wred和hred定义为:[0163][0164][0165]可以通过计算矩阵向量积并且添加偏移量来计算减少的预测信号predred:[0166]predred=a·bdryred b[0167]等式10[0168]在此,a是一个矩阵,如果w=h=4,则它具有wred·hred行和4列,并且在所有其他情况下具有8列。b是wred·hred大小的向量。矩阵a和偏移向量b取自集合s0、s1、s2中的一个。一个定义了索引idx=idx(w,h)如下:[0169][0170]在此,矩阵a的每个系数以8位精度表示。该集合s0由16个矩阵组成,矩阵中的每个矩阵具有16行4列和16个偏移向量偏移向量中的每个偏移向量的大小为16。该集合的矩阵和偏移向量用于大小为4×4的块。该集合s1由8个矩阵组成,矩阵中的每个矩阵具有行和8列,以及8个偏移向量偏移向量中的每个偏移向量的大小为16。该集合s2由6个矩阵组成,矩阵中的每个矩阵具有64行和8列,以及6个大小为64的偏移向量[0171]在一些示例中,剩余位置处的预测信号可以通过线性插值从子采样集上的预测信号生成,该线性插值是每个方向上的单步线性插值。插值可以首先在水平方向上执行,然后在竖直方向上执行,而与块形状或块大小无关。[0172]对于帧内模式下的每个cu,发送指示是否应用mip模式的标志。如果要应用mip模式,则可用信号通知mip模式(predmodeintra)。对于mip模式,确定模式是否被转置的转置标志(istransposed)和确定给定mip模式将使用哪个矩阵的mip模式id(modeid),可以如下被导出[0173]istransposed=predmodeintra&1[0174]modeid=predmodeintra>>1[0175]等式12[0176]通过考虑以下方面,mip编码模式可以与其他编码工具协调:(1)为大块上的mip启用低频不可分离变换(lfnst)。在此,使用平面模式的lfnst变换;(2)对于常规的帧内预测模式,精确地或至少类似地执行针对mip的参考样本推导;(3)对于mip预测中使用的上采样步骤,使用原始参考样本代替下采样样本;(4)在上采样之前而不是在上采样之后执行剪裁(clipping);(5)无论最大变换大小如何,mip均可以被允许达到64×64。在一些方面,mip模式的数目对于sizeid=0可以是32,对于sizeid=1可以是16,对于sizeid=2可以是12。[0177]在联合探索模型(jem)-2.0中,帧内模式从hevc的35种模式扩展到67种,它们在编码器处导出并且明确地用信号通知解码器。在jem-2.0中,在帧内模式编解码上花费了大量开销。例如,在所有帧内编码配置中,帧内模式信令开销可以高达总比特率的5~10%。该贡献提出了解码器侧帧内模式推导方法,以减少帧内模式编码开销,同时保持预测精度。为了减少帧内模式信令的开销,由视频解码器124、300、400在解码视频时可以使用解码器侧帧内模式推导(dimd)方法。根据本公开的方面,代替显式信令帧内模式,可以在编码器和解码器处从当前块的相邻重构样本导出信息。由dimd导出的帧内模式可以按两种方式使用,例如:1)对于2n×2ncu,当对应的cu级别dimd标志打开时,dimd模式用作帧内预测的帧内模式;2)对于n×ncu,使用dimd模式来代替现有mpm列表中的一个候选,以提高帧内模式编码的效率。[0178]图20是基于模板的帧内模式推导的图2000的示例,其中目标表示要被估计的帧内预测模式的当前块(块大小为n)。模板(由图20中的图案区域指示)指定用于导出帧内模式的一组经重构的样本。模板大小表示为延伸至目标块上方和左侧的模板内的样本数目,即l。在一些实施方式中,2的模板大小(即l=2)可以用于4x4和8x8块,并且4的模板大小(即l=4)可用于16x16和更大的块。模板的引用(由图20中的虚线区域指示)可以指模板上方和左侧的一组相邻样本,如jem-2.0所定义。与总是来自经重构区域的模板样本不同,在编码/解码目标块时,模板的参考样本可能尚未重构。在这种情况下,利用现有的jem-2.0参考样本替换算法,利用可用的参考样本来替换不可用的参考样本。[0179]对于每个帧内预测模式,dimd计算经重构模板样本与其从模板的参考样本所获得的预测样本之间的绝对差(sad)。可以选择产生最小sad的帧内预测模式作为目标块的最终帧内预测模式。[0180]对于帧内2n×2ncu,dimd可以被用作一个附加的帧内模式,可以通过将dimd帧内模式与最佳正常帧内模式进行比较(即,显式地发信号)来自适应地选择该帧内模式。针对每个帧内2n×2ncu发信号通知一个标志,以指示dimd的使用。如果标志为1,则可以使用由dimd导出的帧内模式预测cu;否则,不应用dimd,并且使用比特流中显式发信号的帧内模式预测cu。当dimd被启用时,色度分量可以重用与亮度分量相同的帧内模式,即dm模式。[0181]附加地,对于每个dimd编解码的cu,cu中的块可以自适应地选择以在pu级别处或tu级别处导出其帧内模式。具体而言,当dimd标志为一时,可以向另一cu级别dimd控制标志发送信号,以指示执行dimd的级别。如果该标志为零,则这可以指示在pu级别处执行dimd,并且pu中的所有tu使用相同的导出帧内模式进行帧内预测;否则,如果dimd控制标志为1,则这可以指示在tu级别处执行dimd,并且pu中的每个tu导出其自身的帧内模式。[0182]此外,当启用dimd时,角度方向的数目增加到129,并且dc和平面模式仍然保持不变。为了适应角度帧内模式粒度的增加,dimd编码cu的帧内插值滤波精度从1/32像素增加到1/64像素。附加地,为了使用dimd编码的cu的导出帧内模式作为针对相邻帧内块的mpm候选,在将dimd编码的cu的那些129个方向用作mpm之前,可以将它们转换为“正常”帧内模式(即,65个角度帧内方向)。[0183]在一些方面,发信号通知帧内n×ncu的帧内模式。然而,为了提高帧内模式编码的效率,来自dimd的帧内模式被用作预测cu中四个pu的帧内模式的mpm候选。为了不增加mpm索引信令的开销,可以将dimd候选放置在mpm列表中的第一位,并且可以去除最后一个现有的mpm候选。此外,可以执行修剪操作,使得如果dimd候选是冗余的,则可以不将其添加到mpm列表中。[0184]为了降低编码/解码复杂度,一种简单的快速帧内模式搜索算法被用于dimd。首先,可以执行一个初始估计过程来为帧内模式搜索提供良好的起点。具体地,可以通过从允许的帧内模式中选择n个固定模式来创建初始候选列表。然后,可以为所有候选帧内模式计算sad,并且可以选择最小化sad的模式作为起始帧内模式。为了实现良好的复杂性/性能权衡,初始候选列表可以包括11个帧内模式,包括dc、平面和hevc中定义的33个角帧内方向的每第4的模式,即帧内模式0、1、2、6、10…30、34。[0185]如果起始帧内模式为dc或平面模式,则可以将其用作dimd模式。否则,基于起始帧内模式,然后可以应用一个细化过程,其中通过一次迭代搜索来标识最佳帧内模式。在迭代搜索中,在每次迭代中,可以比较针对由给定搜索间隔分开的三个帧内模式的sad值,并且可以维持最小化sad的帧内模式。然后,搜索间隔可以减少到一半,并且从上次迭代中选择的帧内模式可以被用作当前迭代的中心帧内模式。对于当前具有129个角度帧内方向的dimd实现,在细化过程中最多可以使用4次迭代来找到最佳dimd帧内模式。[0186]在一些示例中,可以避免在比特流中传输亮度帧内预测模式。这是通过在编码器和解码器处以相同的方式使用先前编码/解码的像素导出亮度帧内模式来完成的。该过程定义了一种称为dimd的新编解码模式,其选择使用标志在比特流中用信号通知帧内的经编解码的块。dimd可以在编码器处与其他编解码模式竞争,包括经典帧内编解码模式(其中帧内预测模式被编解码)。请注意,在一个示例中,dimd可能仅适用于亮度。对于色度,可以应用经典帧内编解码模式。如同对其他编解码模式(经典帧内、帧间、合并等)所做的那样,可以针对dimd模式计算率失真成本,然后可以将其与其他模式的编解码成本进行比较,以决定是否选择其作为当前块的最终编解码模式。[0187]在解码器侧,可以首先解析dimd标志(如果存在)。如果dimd标志为真,则可以在重构过程中使用相同的先前编码的相邻像素导出帧内预测模式。如果不是,帧内预测模式可以像在经典帧内编解码模式中那样从比特流解析出来。[0188]为了导出块的帧内预测模式,可以首先选择对其执行梯度分析的一组相邻像素。出于规范性目的,这些像素可以在解码/重构的像素池中。图21是可以基于帧内预测模式推导对其执行梯度分析的一组所选择的像素的模板的图2100的示例。如图21所示,围绕当前块的模板由左侧的t个像素和上方的t个像素选择。例如,t的值可以为2。[0189]接下来,对模板的像素执行梯度分析。这可以支持确定针对模板的主角度方向,可以假设该模板很有可能与当前块中的一个块的主角度方向相同。因此,可以使用简单的3×3sobel梯度滤波器,由以下矩阵定义,这些矩阵可以与模板进行卷积:[0190]和[0191]对于模板的每个像素,具有3×3窗口的以当前像素为中心的这两个矩阵中的每个矩阵均可以被点-到-点相乘,并且由其8个直接邻域组成,并且结果可以被相加。因此,可以分别在水平和竖直方向上获得与当前像素处的梯度对应的两个值gx(来自与mx的相乘)和gy(来自与my的相乘)。[0192]图22是根据本公开各方面的3x3sobel梯度滤波器与模板的卷积的示意图的示例。在一些示例中,像素2210是当前像素。模板像素2220(包括当前像素2210)是在其上进行梯度分析是可能的像素。不可用像素2230是由于缺少某些邻居而无法进行梯度分析的像素。经重构像素2240是所考虑的模板之外的可用像素,被用于模板像素2220的梯度分析。在经重构像素2240不可用的情况下(例如由于块太接近针对实例的图片的边界),不执行使用不可用经重构像素2240的所有模板像素2220的梯度分析。[0193]对于每个模板像素2220,使用gx和gy的梯度的强度(g)和方向(o)被计算为如下:[0194]g=|gx| |gy|和[0195]注意,提出了atan函数的快速实现。然后可以将梯度的方向转换为帧内角度预测模式,被用于索引直方图(首先被初始化为零)。该帧内角度模式处的直方图值被增加g。一旦已经处理了模板中的所有模板像素2220,对于每个帧内角度模式,直方图可以包括梯度强度的累积值。可以选择直方图中显示最高峰值的模式作为当前块的帧内预测模式。如果直方图中的最大值为0(意味着无法进行梯度分析,或者组成模板的区域是平面的),则可以选择dc模式作为针对当前块的帧内预测模式。[0196]对于位于ctu顶部处的块,不执行对位于模板顶部部分中的像素的梯度分析。dimd标志使用三种可能的上下文进行编解码,这取决于左侧和上方的相邻块,类似于跳过标志编解码。上下文0对应于左侧和上方的相邻块均没有使用dimd模式编解码的情况,上下文1对应于只有一个相邻块使用dimd编解码的情况,并且上下文2对应于两个相邻块均使用dimd编解码的情况。针对每个上下文的初始符号概率设置为0.5。[0197]与经典帧内模式编解码相比,dimd提供的一个优点是,导出的帧内模式可以具有更高的精度,允许在没有附加成本的情况下进行更精确的预测,因为它不在比特流中传输。导出的帧内模式跨越129个角模式,因此总共130个模式包括dc(例如,在本文所描述的方面中,导出的帧内模式可能不是平面的)。经典帧内编解码模式不变,即预测和模式编码仍然使用67种模式。[0198]为了适应使用129种模式的预测,对广角帧内预测和简化pdpc进行了所需的改变。请注意,只有预测处理使用扩展的帧内模式,这意味着对于任何其他目的(例如,决定是否对参考样本进行滤波),该模式可以转换回67模式精度。[0199]在dimd模式中,亮度帧内模式是在重构过程期间,在块重构之前导出的。这样做是为了避免在解析期间对经重构像素的依赖。然而,通过这样做,对于块的色度分量和对于相邻块的亮度分量,块的亮度帧内模式可能是未定义的。这可能会导致问题,因为对于色度,定义了固定模式候选列表。通常,如果亮度模式等于色度候选中的一种色度候选,则该候选可以被替换为竖直对角(vdia_idx)帧内模式。如在dimd中的,亮度模式不可用,初始色度模式候选列表不会被修改。[0200]在经典帧内模式中,在其中亮度帧内预测模式将从比特流解析,mpm列表使用相邻块的亮度帧内模式构建,如果这些块使用dimd编解码,则mpm列表可能不可用。在这种情况下,例如,在mpm列表结构期间,dimd编解码块可以被视为块间块,这意味着它们实际上被视为不可用。[0201]熵编解码可以是在视频编码的最后阶段(和视频解码的第一阶段)使用的无损压缩的一种形式,在视频已经被减少到一系列语法元素之后。语法元素描述如何在解码器处重构视频序列。这包括预测方法(例如,空间或时间预测、帧内预测模式和运动向量)和预测误差(也称为残差)。算术编解码是一种熵编解码,其通过有效地将符号(即语法元素)映射到具有非整数位数的码字,可以实现接近序列熵的压缩。上下文自适应二进制算术编解码(cabac)涉及三个主要功能:二进制化、上下文建模和算术编码。二进制化将语法元素映射到二进制符号(bin)。上下文建模估计bin的概率。最后,算术编解码基于估计的概率将bin压缩为比特。[0202]vvc中使用了几种不同的二进制化过程,诸如截断的rice(tr)二进制化过程、截断的二进制化过程、k阶exp-golomb(egk)二进制化过程和固定长度(fl)二进制化过程。[0203]上下文建模提供了实现高编码效率所需的准确概率估计。相应地,它是高度自适应的,并且不同的上下文模型可以被用于不同的bin,并且基于先前编解码的bin的值来更新该上下文模型的概率。具有相似分布的bin通常共享相同的上下文模型。可以基于语法元素的类型、语法元素中的bin位置(binidx)、亮度/色度、相邻信息等选择针对每个bin的上下文模型。上下文切换可以发生在每个bin之后。[0204]算术编解码可以基于递归区间划分。具有初始值为0到1的范围根据bin的概率被划分为两个子区间。经编码位被提供一个偏移量,当被转换为二进制分数时,该偏移量选择两个子区间中的一个子区间,这指示经解码的bin的值。在每个经解码的bin之后,范围被更新为等于所选择的子区间,并且区间划分过程重复进行。范围和偏移量具有有限的位精度,因此只要范围落入低于某个值,就可以使用重标准化来防止下溢。重标准化可以发生在每个bin被解码之后。算术编解码可以使用估计的概率(上下文编解码)或假设0.5的相等概率(旁路编解码)来完成。对于旁路编解码的bin,可以通过移位将范围划分为子区间,而查找表可以被用于上下文编码的bin。[0205]图23是具有大于67个帧内预测模式的帧内模式编解码的示意图2300,用于捕获自然视频中呈现的任意边缘方向。在一些示例中,方向帧内模式的数目可以从vvc中使用的67扩展到129,而平面模式和dc模式保持不变。[0206]在一个示例中,预定义的ipm可以是具有比常规ipm更密集方向的ipm(例如,图23中用虚线表示的ipm)。在一个示例中,n1ipm可以是针对当前块的部分或全部mpm。在一个示例中,不在mpm中的一些预定义帧内预测模式也可以被包含在给定ipm候选集中。[0207]在一个示例中,来自dc/平面/水平/竖直/对角上右/对角下左/对角上左模式的一个或多个ipm可以被包含在给定ipm集中。[0208]在一个示例中,由图23中的虚线表示的一个或多个ipm可以被包含在给定ipm集中。[0209]在一个示例中,当给定ipm集中包含由红色虚线表示的一个或多个ipm时,n1可能等于或大于n2。[0210]在一个示例中,n1可以等于或大于n2。[0211]图24-图31示出了可以由一个或多个子模板形成的模板示例。如下文进一步详细论述的,可以为特定块选择块的模板。例如,可以基于关于特定块的解码信息或基于针对特定块的子模板的可用性来选择模板。尽管示出了若干个示例,但是可以基于子模板的不同组合来选择其他模板。[0212]图24是包括左上子模板2420(模板-la)的模板2400的示例的图。可以为块2410选择模板2400,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左上子模板2420可以包括位于块2410左侧和块2410上方的左上相邻样本。左上子模板2420可以具有水平方向上的l1样本和竖直方向上的l2样本的大小。可以为块2410、包括块2410的切片或包括块2410的图片定义l1和l2。[0213]图25是包括左子模板2440(模板-l)和上子模板2430(模板-a)的模板2500的示例的图。可以为块2410选择模板2500,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以与块2410的上边缘相邻。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以与块2410的上边缘相邻。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。[0214]图26是包括上子模板2430(模板-a)的模板2600的示例的图。可以为块2410选择模板2600,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。[0215]图27是包括左子模板(模板-l)的模板2700的示例的图。可以为块2410选择模板2700,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。[0216]图28是包括左子模板2440(模板-l)和左下子模板2450(模板-lb)的模板2800的示例图。可以为块2410选择模板2800,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。左下子模板2450可以包括位于块2410左侧和块2410下方的样本。左下子模板2450可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。[0217]图29是包括上子模板2430(模板-a)和右上子模板2460(模板-ra)的模板2900的示例的图。可以为块2410选择模板2900,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的尺寸。右上子模板2460可以包括位于块2410上方和块2410右侧的样本。右上子模板2460可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。[0218]图30是包括左子模板2440、左下子模板2450、上子模板2430和右上子模板2460的模板3000的示例图。可以为块2410选择模板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个样本的大小。[0219]图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个样本的大小。[0220]图32是包括与块分隔开的左上子模板2420、左子模板2440、左下子模板2450、上子模板2430和右上子模板2460的模板3200的示例图。可以为块2410选择示例模板3200,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。与图24-31中的子模板相反,图32中的子模板可以与块2410隔开。例如,左上子模板2420、左子模板2440和左下子模板2450可以通过间隙3220与块2410被水平分隔开。间隙3220可以具有l3样本的水平大小。左上子模板2420、上子模板2430和右上子模板2460可以通过间隙3210与块2410被竖直分隔开。间隙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中的相同。[0221]图33是包括左上子模板2420、左子模板2440和上子模板2430的模板3300的模板参考样本3310的示例图。可以为块2410选择示例模板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。[0222]图34是包括左子模板2440和上子模板2430的模板2500的示例模板参考样本3410的图。可以为块2410选择示例模板2500,块2410可以具有水平方向上的m个样本和竖直方向上的n个样本的大小。上子模板2430可以包括位于块2410上方的样本。上子模板2430可以具有水平方向上的m个样本和竖直方向上的l2样本的大小。左子模板2440可以包括位于块2410左侧的样本。左子模板2440可以具有水平方向上的l1样本和竖直方向上的n个样本的大小。模板参考样本可以包括样本的一线(line)或多线(例如,行或列)。例如,模板参考样本3410可以包括位于模板2500上方的单行样本和位于模板2500左侧的单列样本。样本行的长度可以是2(l1 m) 1。样本列的高度可以是2(l2 n) 1。[0223]图35是包括上子模板2430的模板2600的示例模板参考样本3510的图。模板参考样本3510可以是位于模板2600上方的单行样本和位于模板2600左侧的单列样本。样本行的长度可以为2m 1。样本列的高度可以为2(l2 n) 1。[0224]图36是包括左子模板2440的模板2700的示例模板参考样本3610的图。模板参考样本3610可以为位于模板2700上方的单行样本和位于模板2700左侧的单列样本。样本行的长度可以为2(l1 m) 1。样本列的高度可以为2n 1。[0225]图37是包括上子模板2430的模板2600的示例模板参考样本3710的图。模板参考样本3710可以为位于模板2600上方的单行样本和位于模板2600左侧的单列样本。样本行的长度可以为2(l1 m) 1。样本列的高度可以为2(l2 n) 1。由于模板2600不包括左上子模板2420或左子模板2440,因此样本列可以与模板2600间隔开具有l1宽度的水平间隙3720。[0226]图38是包括左子模板2440的模板2700的示例模板参考样本3810的图。模板参考样本3810可以为位于模板2700上方的单行样本和位于模板2700左侧的单列样本。样本行的长度可以为2(l1 m) 1。样本列的高度可以为2(l2 n) 1。由于模板2700不包括左上子模板2420或上子模板2430,因此样本行可以与模板2700隔开具有l2高度的竖直间隙3820。[0227]图39是包括上子模板2430和左子模板2440的模板2500的示例模板参考样本3910的图。模板参考样本3910可以包括位于模板2500左侧的单列样本。样本列的高度可以为2(l2 n) 1。代替单行模板参考样本,该行的一部分3920可以移动到与左子模板2440相邻的第二行3930。该部分3920可以包括l1样本。第一行中的剩余部分可以具有2m l1 1的长度。在一个方面,选择与包括在模板内的子模板相邻的模板参考样本可以改进模板的预测。[0228]图40是包括上子模板2430和左子模板2440的模板2500的示例模板参考样本4010的图。模板参考样本4010可以包括位于模板2500上方的单行样本。样本行的长度可以为2(l1 m) 1。代替模板参考样本的单个列,该列的部分4020可以移动到与上子模板2430相邻的第二行4030。部分4020可以包括l2样本。第一列中的剩余部分可以具有2n l2 1的高度。在一个方面,选择与包括在模板内的子模板相邻的模板参考样本可以改进模板的预测。在另一方面,部分3920和部分4020两者可以分别移动到第二行3930和第二行4030。[0229]图41示出了用于执行视频解码的系统4100的示例。在一个方面,解码组件4110可以包括以下至少一项:用于接收视频中一个或多个图像或多个图像的经编码比特流的比特流接收组件4112,用于为图像的给定块或其他部分导出多个ipm的ipm导出组件4114,用于基于多个ipm确定用于解码图像的块或其他部分的最终预测子的最终预测子组件4116。在一个示例中,解码组件4110还可以任选地包括mpm列表组件4118,以用于基于最终预测子生成用于解码图像的当前块或后续块的ipm的mpm列表。[0230]图42示出了用于执行视频编码的系统4200的示例。在一个方面,编码组件4210可以包括以下至少一项:用于接收视频中的一个或多个图像或多个图像的视频接收组件4212,用于为给定块或图像的其他部分导出多个ipm的ipm导出组件4214,用于基于多个ipm确定用于编码图像的块或其他部分的最终预测子的最终预测子组件4216。在一个示例中,编码组件4210还可以任选地包括mpm列表组件4218,以用于基于最终预测子生成用于编码图像的当前块或后续块的ipm的mpm列表。[0231]图43示出了用于基于多个ipm执行视频编码或解码的方法4300的示例。参考图41-图43,在操作中,计算设备4102或4202可以执行视频编码或解码的方法4300,诸如通过由处理器4104和/或存储器4106执行解码组件4110,由处理器4204和/或存储器4206执行编码组件4210,和/或基于存储在存储器4106或4206中的处理器可执行指令。例如,如上所述,解码组件4110可以为视频解码器124、视频解码器300或hevc视频编码器和解码器400的一部分,或者可以包括视频解码器124、视频解码器300或hevc视频编码器和解码器400,和/或编码组件4210可为视频编码器114、视频编码器200或hevc视频编码器和解码器400的一部分,或者可以包括视频编码器114、视频编码器200或hevc视频编码器和解码器400。[0232]参考图43,在方法4300中,任选地在动作4302处,可以接收视频或视频的比特流。在一个方面,比特流接收组件4112(例如,与处理器4104、存储器4106、解码组件4110等结合)可以接收视频的比特流,其可以包括经编码的比特流4146。例如,比特流接收组件4112可以从另一计算设备或其他设备或源接收编码比特流4146,其可以已经使用一种或多种视频编解码技术(例如hevc、vvc等)对比特流进行编码。在一个示例中,编码比特流4146可以包括图像和/或可以包括作为视频的一部分的一个或多个其他图像,用于在显示设备上显示,或者用于通过解码组件4110和/或计算设备4102进行解码。在一个示例中,解码组件4110可以对编码比特流4146进行解码,如上所述并且在本文进一步描述,以生成用于显示或存储的多个视频帧4142。[0233]在另一方面,视频接收组件4212(例如,与处理器4204、存储器4206、编码组件4210等结合)可以接收可以包括多个视频帧4242的视频。例如,视频接收组件4212可以从另一计算设备或用于编码的其他设备或源接收多个视频帧4242。在一个示例中,多个视频帧4242可以包括该图像和/或可以包括作为视频的一部分的一个或多个其他图像,用于在显示设备上显示,或者用于通过编码组件4210和/或计算设备4202进行编码。在一个示例中,编码组件4210可以对多个视频帧4242进行编码,如上所述并且在本文进一步描述,以生成编码比特流4246,用于由另一设备或在另一时间进行解码。[0234]在方法4300中,在动作4304处,在视频的当前视频块与视频的比特流之间的转换期间,可以从多个子模板构建针对当前视频块的至少一个模板集。在一个方面,解码组件4110(例如,与处理器4104、存储器4106等结合)或编码组件4210(例如,与处理器4204、存储器4206等结合)可以在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集。例如,解码组件4110可以在将视频的比特流解码为视频的当前视频块的过程中,在视频的比特流与视频的当前视频块之间的转换期间构建至少一个模板集。在另一示例中,编码组件4210可以在将视频的当前视频块编码为视频的比特流的过程中,在视频的当前视频块与视频的比特流之间的转换期间构建至少一个模板集。例如,如上所述,解码组件4110或编码组件4210可以构建针对当前视频块等的模板集以包括以下一项或多项:左子模板、上子模板、右上子模板、左下子模板和左上子模板。[0235]在方法4300中,在动作4306处,可以基于成本计算,导出多个ipm。在一个方面,ipm导出组件4114(例如,与处理器4104、存储器4106、解码组件4110等结合)或ipm导出组件4214(例如,与处理器4204、存储器4206、编码组件4210等结合)可以基于成本计算,导出多个ipm。例如,如上所述,ipm导出组件4114可以基于在常规ipm导出中使用的一个或多个机制来确定用于解码块的多个ipm,或者ipm导出组件4214可以确定用于编码块的多个ipm。在这方面,例如,多个ipm可以是来自常规ipm导出过程的常规ipm,诸如上述vcc中67个ipm中的一个。[0236]在一个示例中,ipm导出组件4114或4214可以基于确定哪些ipm具有最小成本(例如,如上所述,在块的经预测样本与块的经重构样本之间计算的最小成本),来导出多个(例如,两个或多个ipm)。例如,ipm导出组件4114或4214可以导出数目(正整数)为k的ipm,其中k》1。在一个示例中,ipm导出组件4114或4214可以导出一定数目的k个最小成本ipm,导出成本小于阈值的任何数目的ipm,导出最小成本ipm的阈值成本差内的任何数目的ipm,等等。在一个示例中,多个ipm可以表示可以用于解码(或编码)块的ipm,并且解码组件4110可以使用作为多个ipm中的一个ipm或基于多个ipm计算的最终预测子来解码(或编码组件4210可以编码)块。[0237]例如,本文所描述的方面涉及导出两个或更多个ipm,而不是导出一个ipm。假设导出的ipm数目为k,k为整数并且k大于1。在一个示例中,ipm导出组件4114或4214可以通过使用相同的模板导出k个ipm,如上所述。例如,ipm导出组件4114或4214可以导出具有最小成本的k个ipm,其中在给定ipm候选集中的ipm的模板的预测样本与重构样本之间计算成本。在一个示例中,ipm导出组件4114或4214可以使用不同模板导出k个ipm。例如,如果第i个ipm是从第i个模板集导出的,其中i=1,2,…,k,并且对于从1到k的任意两个不同数字i和j,模板集可以由模板-l、模板-a、模板-ra、模板-lb或模板-la中的一个或多个组成,第i个模板集中的模板可以与第j个模板集中的模板不同。在另一示例中,第j个模板集中的模板可能与第j个模板集中的模板相同,其中i,j=1,2,…,k且i不等于j。在一个示例中,可能有至少两个不同的模板集,其模板不同。在一个示例中,ipm导出组件4114或4214可以从相同模板集导出两个或多个ipm,并且可以从一个或多个不同模板集导出其他ipm。[0238]在方法4300中,在动作4308处,可以基于多个ipm,确定当前视频块的最终预测子。在一个方面,最终预测子组件4116(例如,与处理器4104、存储器4106、解码组件4110等结合)或最终预测子组件4216(例如,与处理器4204、存储器4206、编码组件4210等结合)可以基于多个ipm确定当前视频块的最终预测子。例如,最终预测子组件4116或4216可以将最终预测子确定为多个ipm中的一个,如上所述,其可为常规ipm,或者可以基于多个ipm生成或计算最终预测子,如上所述,其可以为常规ipm。[0239]在一个示例中,可以用语法元素来发信号通知导出的k个ipm中的哪个ipm用于当前块。因此,在方法4300中,任选地在动作4310处,可以接收用于基于多个ipm确定最终预测子的语法元素。在一个方面,最终预测子组件4116(例如与处理器4104、存储器4106、解码组件4110等结合)或最终预测子组件4216(例如与处理器4204、存储器4206、编码组件4210等结合)可以接收(例如,在比特流或相关联协助信息、元数据等中)用于基于多个ipm确定最终预测子的语法元素。在该示例中,最终预测子组件4116或4216可以根据与经编码比特流4146一起接收的信息(或者将与经编码比特流4246一起包括的信息)或者与经编码比特流4146一起接收的辅助信息(或者将与经编码比特流4246一起包括的信息)来确定语法元素,其中语法元素可以指示多个导出的ipm中的哪个ipm要用于解码或者用于编码块(例如,指示为多个导出的ipm的索引或者用于从多个ipm确定ipm的其他指令)。[0240]在一个示例中,语法元素可以利用以下来进行二进制化:固定长度编解码、截断一元编解码、一元编解码、或eg编解码或被编解码为标志。在一个示例中,可以对语法元素进行旁路编解码。因此,例如,最终预测子组件4216可以对语法元素进行编码以指示将多个ipm中的哪个ipm用作最终预测子,或者最终预测子组件4116可以解码或解释语法元素以确定将多个ipm中的哪个ipm用作最终预测子。备选地,在一个示例中,语法元素可以为上下文编解码的。在任何情况下,编解码语法元素可以为编码比特流4146或4246或其他信息的一部分,和/或可以按传达语法元素所涉及的图像的一个或多个块的方式来指示。在一个示例中,用于发信号通知语法元素的机制可以取决于解码(或编码)信息,诸如图像块的块尺寸(例如,竖直和水平方向上的像素数目)、图像块的块形状(例如,正方形或矩形),图像切片的切片/图片类型(例如,i-切片、b-切片或p-切片)等。[0241]在另一示例中,导出的k个ipm中的哪个ipm用于当前块可以被隐式导出。在一个示例中,最终预测子组件4116或4216可以基于经解码信息(诸如图像块的块形状(例如,正方形或矩形))隐式地导出最终预测子。假设图像块的块宽度和高度为bw和bh;例如,ipm导出组件4114或4214可以从模板-l导出ipma,并且从模板-a导出ipmb。在该示例中,当bw小于或等于bh时,最终预测子组件4116或4216可以使用ipma作为最终预测子,或者当bw大于bh时,可以使用ipmb作为最终预测子。[0242]在另一示例中,最终预测子组件4116或4216可以使用来自当前块中导出的k个ipm的多个ipm(表示为h),并且可以使用通过这些h个ipm导出的h个预测子来生成当前块的最终预测子。在一个示例中,基于导出的ipm(可为常规ipm),最终预测子组件4116或4216可以确定h个预测子的加权和(组合),其可以被用于导出当前块的最终预测子,其中h是整数且大于1。在一个示例中,h=2或h=3。在另一示例中,最终预测子组件4116或4216可以使用来自h个ipm的一个或多个ipm和一个或多个默认ipm来确定针对当前块的最终预测子,其中默认ipm可以为任何ipm,诸如平面、dc、水平模式、竖直模式、对角右上模式、对角左下模式、对角左上模式等。在一个示例中,如上所述,可以利用语法元素来发信号通知默认的ipm。在一个示例中,最终预测子组件4116或4216可以单独从一个或多个默认ipm确定当前块的最终预测子。在一个示例中,最终预测子组件4116或4216可以基于块尺寸、块形状、模板的数目等确定用于导出当前块的最终预测子的任何权重。[0243]在方法4300中,在动作4312处,可以基于最终预测子执行转换。在一个方面,解码组件4110(例如,与处理器4104、存储器4106等结合)可以基于最终预测子执行转换。如上所述,例如,解码组件4110可以基于最终预测子将视频的比特流解码为视频的当前视频块。在一个示例中,解码组件4110可以使用dimd或其他合适的视频解码过程来基于ipm或在这方面基于当前块的相邻重构样本确定的最终预测子来解码图像的块。在另一方面,编码组件4210(例如,与处理器4204、存储器4206等结合)可以基于最终预测子执行转换。如上所述,例如,编码组件4210可以基于最终预测子将视频的当前视频块编码为视频的经编码比特流。在一个示例中,解码组件4110可以使用hevc、vvc或其他合适的视频编码过程来基于ipm或在这方面基于当前块的相邻重构样本确定的最终预测子来编码视频块。在附加示例中,在解码(或编码)当前或后续块时,最终预测子可以与mpm列表一起使用。解码块可以用于产生多个视频帧4142,或者编码块可以用于产生编码比特流4246。[0244]在一个示例中,在方法4300中,任选地在动作4314处,可以基于最终预测子生成后续块的mpm列表。在一个方面,最终预测子组件4116(例如,与处理器4104、存储器4106、解码组件4110等结合)可以基于最终预测子为后续块生成mpm列表,并且解码组件4110可以在解码后续块时使用mpm列表,如上所述和本文进一步所描述的。在另一方面,最终预测子组件4216(例如,与处理器4204、存储器4206、编码组件4210等结合)可以基于最终预测子为后续块生成mpm列表,并且编码组件4210可以在编码后续块时使用mpm列表,如上文和本文进一步所描述的。例如,最终预测子组件4116或4216可以确定将最终预测子包括在mpm列表中,其中mpm列表可以不包括最终预测子。在另一示例中,最终预测子组件4116或4216可以基于最终预测子来确定包括mpm列表的常规ipm。[0245]例如,当按解码(或编码)顺序解析后续块时,最终预测子组件4116或4216可以在mpm列表结构的推导中使用最终预测子。在一个示例中,当最终预测子是常规ipm候选集中的一个时,最终预测子可以被视为常规ipm并且在mpm列表的推导中使用。例如,当常规ipm候选集包括x个ipm(例如,vvc中的67个ipm)并且最终预测子是x个ipm中的一个ipm时,最终预测子组件4116或4216可以直接使用最终预测子来构建与vvc中的mpm列表结构相同的mpm列表。备选地,例如,当最终预测子不是常规ipm候选集中的一个时,最终预测子组件4116或4216可以将最终预测子转换为常规ipm中的一个ipm,并且在mpm列表的推导中使用。备选地,例如,最终预测子组件4116或4216可以不在mpm列表的推导中使用最终预测子。[0246]在另一示例中,当按解码顺序解析后续块时,最终预测子组件4116或4216可以在mpm列表的推导中用预定义的ipm(例如,模式y)替换最终预测子。在一个示例中,模式y可以是dc、平面、水平度模式、竖直度模式、对角右上度模式、对角左下模式、对角左上模式等。在一个示例中,最终预测子组件4116或4216在mpm列表的推导中是否使用最终预测子可以取决于解码信息,诸如切片/图片类型,或者由被发信号的语法元素指示的信息等。在一个示例中,最终预测子组件4116或4216可以在针对i-切片的mpm列表的推导中使用最终预测子,或者可以不在针对p/b切片的mpm列表的推导中使用最终预测子。[0247]在一个示例中,在动作4308处确定最终预测子时,任选地在动作4316处确定最终预测子时,可以附加地基于mpm列表确定最终预测子。在一个方面,最终预测子组件4116(例如,与处理器4104、存储器4106、解码组件4110等结合)或最终预测子组件4216(例如,与处理器4204、存储器4206、编码组件4210等结合)可以附加地基于mpm列表来确定最终预测子。例如,如上所述,给定当前块的mpm列表,最终预测子组件4116或4216可以在基于mpm列表或mpm列表中的常规ipm中的一个ipm确定使用最终预测子时,使用从多个ipm导出的最终预测子。例如,如下文进一步详细描述的,mpm列表可能包括最终预测子,而不管最终预测子是否是常规ipm。在该示例中,最终预测子组件4116或4216可以基于mpm列表来确定使用该块的最终预测子(例如,用于解码或编码该块)。在其他示例中,最终预测子组件4116或4216可以使用从多个ipm确定的最终预测子从mpm列表中选择ipm作为用于块的最终预测子(例如,用于解码或编码该块)。[0248]在一个示例中,最终预测子组件4116或4216可以使用最终预测子来构建当前块的mpm列表。在一个示例中,导出的ipm可以被视为mpm,并且最终预测子组件4116或4216可以将最终预测子插入mpm列表中。在一个示例中,最终预测子组件4116或4216可以将最终预测子添加到mpm列表中,并且在使用上述常规mpm列表结构构建的mpm列表中的所有其他mpm之前(例如,在列表的开头)。备选地,此外,最终预测子组件4116或4216可以将mpm列表大小增加1以添加最终预测子。在一个示例中,最终预测子组件4116或4216可以将最终预测子添加到mpm列表中,并且在使用上述常规mpm列表结构构建的mpm列表中的所有其他mpm之后(例如,在列表的末尾)。备选地,此外,最终预测子组件4116或4216可以将mpm列表大小增加1以添加最终预测子。在一个示例中,最终预测子组件4116或4216可以添加最终预测子以替换使用上述常规mpm列表结构构建的mpm列表中的一个mpm。备选地,此外,mpm列表大小可以保持不变。[0249]在一个示例中,最终预测子组件4116或4216可以不将最终预测子添加到mpm列表中,而是可以使用最终预测子对不包括mpm的其余ipm重新排序。在一个示例中,当导出的ipm是常规ipm候选集中的一个时,最终预测子组件4116或4216可以将最终预测子视为常规ipm,并且可以在mpm列表的导出中使用最终预测子。在一个示例中,当常规ipm候选集包括x个ipm(即,vvc中的67个ipm)并且最终预测子是x个ipm中的一个ipm时,最终预测子组件4116或4216可以直接使用最终预测子来构建与vvc中的mpm列表结构相同或相似的mpm列表。备选地,当导出的ipm不是常规ipm候选集中的一个时,最终预测子组件4116或4216可以将最终预测子转换为常规ipm中的一个ipm,并且在mpm列表的导出中使用常规ipm。[0250]在各种示例中,上述公开的方法可以在序列级别、图片级别、切片级别、分片组级别处用信号通知,信号诸如以序列头、图片头、sp、vps、dps、dci、pps、aps、切片头、分片组头等。在其他各种示例中,上述公开方法可以在pu、tu、cu、vpdu、ctu、ctu行、切片、分片、子图片等处用信号通知。在其他各种示例中,上述公开的方法可以依赖于编解码信息,诸如块大小、颜色格式、单/双树分区、颜色分量、切片/图片类型等。[0251]尽管前述公开论述了说明性方面和/或实施例,但应注意,在不脱离所附权利要求所定义的所描述的方面和/或实施例的范围的情况下,可以对本文做出各种更改和修改。此外,尽管所描述的方面和/或实施例的元素可以按单数形式来描述或要求保护,但是除非明确声明对单数的限制,否则复数形式也是可以预期的。此外,除非另有说明,否则任何方面和/或实施例的全部或部分可与任何其他方面和/或实施例的全部或部分一起使用。[0252]提供前述描述是为了使本领域普通技术人员能够实践本文所描述的各个方面。对这些方面的各种修改对于本领域普通技术人员来说将是显而易见的,并且本文定义的一般原则可以应用于其他方面。权利要求不限于本文所示的方面,而是被赋予与语言权利要求一致的全部范围,其中除非特别说明,否则呈单数形式提及的元素并不意味着“一个且仅一个”,而是“一个或多个”。除非另有特别说明,否则术语“一些”指一个或多个。诸如“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中的一个或多个成员。本领域普通技术人员已知的或以后将会知道的贯穿本公开内容描述的各个方面的元素的所有结构和功能等效物通过引用明确并入本文,并且旨在被权利要求所涵盖。此外,无论权利要求中是否明确陈述了此类公开,本文公开的内容均不旨在专用于公众。词语“模块”、“机制”、“元素”、“设备”等不能替代词语“部件(means)”。因此,任何权利要求要素均不应被解释为部件加功能,除非该要素使用短语“部件加功能”明确叙述的。[0253]以下条款描述了一些实施例和技术。[0254]1.一种处理视频数据的方法,包括:[0255]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0256]基于成本计算,导出多个帧内预测模式(ipm);[0257]基于多个ipm,确定当前视频块的最终预测子;以及[0258]基于最终预测子执行转换;[0259]其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。[0260]2.根据条款1所述的方法,其中导出多个ipm包括:基于相同模板集,导出针对当前视频块的至少两个ipm。[0261]3.根据条款2所述的方法,其中导出多个ipm包括:基于确定出至少两个ipm具有针对当前视频块的一组可能ipm的最小成本,来导出针对当前视频块的至少两个ipm。[0262]4.根据条款1所述的方法,其中导出多个ipm包括:基于第一模板集导出针对当前视频块的至少一个ipm,以及基于与第一模板集不同的至少一个模板集导出针对当前视频块的其他ipm。[0263]5.根据条款1所述的方法,其中确定最终预测子包括:将多个ipm中的一个ipm确定为最终ipm,以确定最终预测子。[0264]6.根据条款5所述的方法,其中确定最终预测子还包括:确定与最终ipm相关的语法元素存在于视频的比特流中,并且其中该语法元素利用以下来二进制化:固定长度编解码、或截断一元编解码、或一元编解码、或eg编解码或者被编解码为标志。[0265]7.根据条款6所述的方法,其中语法元素被旁路编解码或被上下文编解码。[0266]8.根据条款6所述的方法,其中确定与最终ipm相关的语法元素存在于比特流中还基于以下至少一项:当前视频块的块维度、当前视频块的块形状或者与当前视频块的切片对应的切片类型。[0267]9.根据条款5所述的方法,其中将多个ipm中的一个ipm确定为最终ipm是基于以下至少一项:当前视频块的块维度、当前视频块的块形状或与当前视频块的切片对应的切片类型。[0268]10.根据条款9所述的方法,其中将多个ipm中的一个ipm确定为最终ipm包括:当当前视频块的宽度小于或等于当前视频块的高度时,确定多个ipm中的第一ipm;或者当当前视频块的宽度大于当前视频块的高度时,确定多个ipm中的第二ipm。[0269]11.根据条款1所述的方法,其中确定最终预测子包括:从多个ipm中选择h个ipm以生成h个中间预测子,其中h大于1。[0270]12.根据条款11所述的方法,其中生成最终预测子还包括:执行h个中间预测子的加权和。[0271]13.根据条款12所述的方法,还包括:基于当前视频块的块维度、当前视频块的块形状或子模板的数目中的至少一项,来确定用于执行加权和的一个或多个权重。[0272]14.根据条款1所述的方法,其中生成最终预测子基于多个ipm中的至少一个ipm或者一个或多个默认ipm。[0273]15.根据条款14所述的方法,其中一个或多个默认ipm包括以下至少一项:平面模式、dc模式、水平模式、竖直模式、对角右上模式、对角左下模式或对角左上模式。[0274]16.根据条款14所述的方法,还包括:确定与一个或多个默认ipm相关的语法元素被呈现在比特流中。[0275]17.根据条款1所述的方法,其中转换包括:从比特流解码当前视频块。[0276]18.根据条款1所述的方法,其中转换包括:将当前视频块编码为比特流。[0277]19.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非瞬态存储器,其中指令在由处理器执行时使处理器:[0278]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0279]基于成本计算,导出多个帧内预测模式(ipm);[0280]基于多个ipm,确定当前视频块的最终预测子;以及[0281]基于最终预测子执行转换;[0282]其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。[0283]20.一种非瞬态计算机可读记录介质,其存储视频的比特流,该视频的比特流由视频处理装置执行的方法生成,其中该方法包括:[0284]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0285]基于成本计算,导出多个帧内预测模式(ipm);[0286]基于多个ipm,确定当前视频块的最终预测子;以及[0287]基于最终预测子从当前块生成比特流;[0288]其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。[0289]21.一种存储指令的非瞬态计算机可读存储介质,该指令使处理器:[0290]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0291]基于成本计算,导出多个帧内预测模式(ipm);[0292]基于多个ipm,确定当前视频块的最终预测子;以及[0293]基于最终预测子执行转换;[0294]其中多个子模板包括左子模板、上子模板、右上子模板、左下子模板和左上子模板。[0295]22.一种处理视频数据的方法,包括:[0296]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0297]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0298]基于至少一个帧内预测模式(ipm)执行转换;[0299]针对视频中的当前视频块之后的后续视频块构建最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为要被添加到后续视频块的mpm列表中。[0300]23.根据条款22所述的方法,其中响应于一个或多个ipm是常规帧内模式,将一个或多个ipm直接添加到mpm列表中,其中常规帧内模式包括角度模式、dc模式和平面模式。[0301]24.根据条款22所述的方法,其中响应于一个或多个ipm是非常规帧内模式,一个或多个ipm在被添加到mpm列表之前被转换为常规帧内模式,其中常规帧内模式包括角度模式、dc模式和平面模式。[0302]25.根据条款22所述的方法,其中一个或多个ipm在被添加到mpm列表中之前被定义的ipm替换。[0303]26.根据条款25所述的方法,其中定义的ipm是以下至少一项:平面模式、dc模式、水平模式、竖直模式、对角右上模式、对角左下模式或对角左上模式。[0304]27.根据条款22所述的方法,其中基于与当前视频块对应的切片的切片类型,至少一个ipm中的一个或多个ipm被确定为要被添加到后续视频块的mpm列表中。[0305]28.根据条款27所述的方法,其中基于切片类型是i切片,确定至少一个ipm中的一个或多个ipm要被添加到后续视频块的mpm列表中。[0306]29.根据条款27所述的方法,其中基于切片类型是p切片或者b切片,确定至少一个ipm中的一个或多个ipm不要被添加到后续视频块的mpm列表中。[0307]30.一种处理视频数据的方法,包括:[0308]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0309]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0310]构建针对当前视频块的最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为要被插入到当前视频块的mpm列表中;以及[0311]基于mpm列表执行转换。[0312]31.根据条款30所述的方法,其中一个或多个ipm被插入mpm列表的开头出。[0313]32.根据条款31所述的方法,还包括:针对一个或多个ipm,将mpm列表的大小增加1。[0314]33.根据条款30所述的方法,其中一个或多个ipm被插入mpm列表的末尾处。[0315]34.根据条款33所述的方法,还包括:针对一个或多个ipm将mpm列表的大小增加1。[0316]35.根据条款30所述的方法,其中一个或多个ipm被用于替换mpm列表中的至少一个候选。[0317]36.根据条款30所述的方法,其中构建mpm列表包括:基于一个或多个ipm对mpm列表排序。[0318]37.根据条款30所述的方法,其中构建mpm列表包括:基于一个或多个ipm对不在mpm列表中的剩余ipm进行排序。[0319]38.根据条款30所述的方法,其中响应于一个或多个ipm是常规帧内模式,将一个或多个ipm直接添加到mpm列表中,其中常规帧内模式包括角度模式、dc模式和平面模式。[0320]39.根据条款30所述的方法,其中响应于一个或多个ipm是非常规帧内模式,一个或多个ipm在被添加到mpm列表之前被转换为常规帧内模式,其中常规帧内模式包括角度模式、dc模式和平面模式。[0321]40.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非瞬态存储器,其中指令在由处理器执行时使处理器:[0322]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0323]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0324]基于至少一个帧内预测模式(ipm)执行转换;[0325]针对视频中当前视频块之后的后续视频块构建最可能模式(mpm)列表,其中将至少一个ipm中的一个或多个ipm确定为要被添加到后续视频块的mpm列表中。[0326]41.一种非瞬态计算机可读记录介质,其存储视频的比特流,该视频的比特流由视频处理装置执行的方法生成,其中该方法包括:[0327]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0328]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0329]基于至少一个帧内预测模式(ipm)执行转换;[0330]针对视频中的当前视频块之后的后续视频块构建最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为要被添加到后续视频块的mpm列表中;[0331]基于mpm列表从当前块生成比特流。[0332]42.一种存储指令的非瞬态计算机可读存储介质,该指令使处理器:[0333]在视频的当前视频块和视频的比特流之间的转换期间,从多个子模板中为当前视频块构建至少一个模板集;[0334]基于成本计算导出至少一个帧内预测模式(ipm);以及[0335]基于至少一个帧内预测模式(ipm)执行转换;[0336]为视频中当前视频块之后的后续视频块构建最可能模式(mpm)列表,其中至少一个ipm的一个或多个ipm被确定为添加到后续视频块的mpm列表中。[0337]43.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非瞬态存储器,其中指令在由处理器执行时使处理器:[0338]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0339]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0340]构建针对当前视频块的最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为插入当前视频块的mpm中;以及[0341]基于mpm列表执行转换。[0342]44.一种非瞬态计算机可读记录介质,其存储视频的比特流,该视频的比特流由视频处理装置执行的方法生成,其中该方法包括:[0343]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0344]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0345]构建针对当前视频块的最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为要被插入到当前视频块的mpm中;以及[0346]根据基于mpm列表的最终预测子,从当前块生成比特流。[0347]45.一种存储指令的非瞬态计算机可读存储介质,该指令使得处理器:[0348]在视频的当前视频块与视频的比特流之间的转换期间,从多个子模板构建针对当前视频块的至少一个模板集;[0349]基于成本计算,导出至少一个帧内预测模式(ipm);以及[0350]针对视频中的当前视频块之后的当前视频块构建最可能模式(mpm)列表,其中至少一个ipm中的一个或多个ipm被确定为要被插入当前视频块的mpm列表中;以及[0351]基于mpm列表执行转换。当前第1页12
再多了解一些

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

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

相关文献