用于图片编码和解码的方法及设备与流程

文档序号:26013130发布日期:2021-07-23 21:34阅读:152来源:国知局
用于图片编码和解码的方法及设备与流程
本实施例中的至少一个实施例大体上涉及用于图片编码(encoding)和解码(decoding)的方法及设备,更具体地,涉及用于图片编码和解码的方法及设备,其中根据用于进行熵编码和熵解码的扫描模式拉长扫描量化的变换系数。
背景技术
:为了实现高压缩效率,图像和视频编码(coding)方案通常采用预测和变换来利用视频内容中的空间和时间冗余。通常,使用帧内或帧间预测来利用帧内的或帧间的帧相关性,然后对通常被表示为预测误差、预测残差或预测子(predictor)的原始图像块与预测图像块之间的差进行变换、量化和熵编码。在编码期间,通常将原始图像块划分/分割为可能使用四叉树划分的子块。为了重建视频,通过与预测、变换、量化和熵编码相对应的反过程来对压缩的数据进行解码。技术实现要素:根据至少一个实施例的一般方面,提出了解码方法,包括:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了解码方法,包括:对根据扫描模式扫描的块的变换系数进行熵解码,其中在所述块是多假设帧内-帧间预测块的情况中,在帧内预测模式是水平的情况下应用垂直扫描,并且在帧内预测模式是垂直的情况下应用水平扫描。根据至少一个实施例的一般方面,提出了解码方法,包括:对根据扫描模式扫描的块的变换系数进行熵解码,其中在所述块是三角形预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,其中对所选择的扫描模式进行编码。根据至少一个实施例的一般方面,提出了解码方法,包括:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于用于对所述系数进行逆变换的逆变换的类型来确定扫描模式,其中变换的类型由其低频基函数是恒定的、增加的还是减少的来定义。根据至少一个实施例的一般方面,提出了编码方法,包括:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了编码方法,包括:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中在所述块是多假设帧内-帧间预测块的情况中,在帧内预测模式是水平的情况下应用垂直扫描,并且在帧内预测模式是垂直的情况下应用水平扫描。根据至少一个实施例的一般方面,提出了编码方法,包括:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中在所述块是三角形预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,其中对所选择的扫描模式进行编码。根据至少一个实施例的一般方面,提出了编码方法,包括:-使用至少一个变换来变换块的残差,以获得变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述变换的类型来确定扫描模式,其中变换的类型由其低频基函数是恒定的、增加的还是减少的来定义。根据至少一个实施例的一般方面,提出了解码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了解码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:对根据扫描模式扫描的块的变换系数进行熵解码,其中在所述块是多假设帧内-帧间预测块的情况中,在帧内预测模式是水平的情况下应用垂直扫描,并且在帧内预测模式是垂直的情况下应用水平扫描。根据至少一个实施例的一般方面,提出了解码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:对根据扫描模式扫描的块的变换系数进行熵解码,其中在所述块是三角形预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,其中对所选择的扫描模式进行编码。根据至少一个实施例的一般方面,提出了解码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于用于对所述系数进行逆变换的逆变换的类型来确定扫描模式,其中变换的类型由其低频基函数是恒定的、增加的还是减少的来定义。根据至少一个实施例的一般方面,提出了编码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了编码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中在所述块是多假设帧内-帧间预测块的情况中,在帧内预测模式是水平的情况下应用垂直扫描,并且在帧内预测模式是垂直的情况下应用水平扫描。根据至少一个实施例的一般方面,提出了编码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中在所述块是三角形预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,其中对所选择的扫描模式进行编码。根据至少一个实施例的一般方面,提出了编码装置,包括一个或多个处理器,其被配置为实现:-使用至少一个变换对块的残差进行变换以获得变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述变换的类型来确定扫描模式,其中变换的类型由其低频奇函数是恒定的、增加的还是减少的来定义。根据至少一个实施例的另一一般方面,格式化比特流以包括根据上述编码方法生成的信号。本实施例中的一个或多个还提供了计算机可读存储介质,该计算机可读存储介质上存储用于根据任何上述方法的至少部分来对视频数据进行编码或解码的指令。一个或多个实施例还提供了计算机可读介质,该计算机可读介质上存储根据上述编码方法生成的比特流。一个或多个实施例还提供方法和设备,该方法和设备用于发送或接收根据上述编码方式生成的比特流。一个或多个实施例还提供了计算机程序产品,该计算机程序产品包括用于执行任何上述方法的至少部分的指令。附图说明图1描绘了如在hevc中使用的8×8块中的几种扫描模式;图2和图3描绘了将扫描模式与每个块大小相关联的决策表;图4是根据一个实施例的解码方法的流程图;图5是根据一个实施例的编码方法的流程图;图6a和图6b描绘了根据一个实施例的将扫描模式与每个块大小相关联的决策表;图7示出了4×4块中的常规锯齿状扫描;图8示出了根据一个实施例的用于矩形块的各种扫描模式;图9描绘了在帧间与帧内模式组合的情况下的多假设预测块;图10示出了针对不同帧内预测方向的多假设帧内-帧间预测块的各种加权;图11描绘了由对角线分割线划分的块以及对角线边缘的相关加权;图12示出了根据实施例的视频编码器的框图;图13示出了根据实施例的视频解码器的框图;以及图14示出了其中实现各种方面和实施例的系统的示例的框图。具体实施方式在hevc编码中,图片被分割成可配置的大小通常为64×64的正方形的ctu。在其他视频编码标准中,大小可以是128×128或者256×256。ctu是四叉树的根,四叉树划分为4个相等大小(即在宽度和高度上是父块大小的一半)的正方形编码单元(cu)。四叉树是其中父节点可以被分割为四个子节点的树,每个子节点可以成为用于再一次被分割为四个子节点的父节点。在hevc中,编码块(cb)被划分为一个或多个预测块(pb)并且形成划分为变换块(tb)的四叉树的根。对应于编码块、预测块和变换块,编码单元(cu)包括预测单元(pu)和树结构的变换单元(tu)集,pu包括所有颜色分量的预测信息,并且tu包括用于每个颜色分量的残差编码语法结构。亮度分量的cb、pb和tb的大小适用于对应的cu、pu和tu。在最近的编码系统中,ctu是划分为编码单元(cu)的编码树的根。编码树是其中父节点(通常对应于块)可以被分割为子节点(例如,分割为2、3或4个子节点)的树,每个子节点可以成为用于再一次被分割为子节点的父节点。除四叉树分割模式外,还定义了新的分割模式(二叉树对称分割模式、二叉树非对称分割模式和三叉树分割模式),其增加了可能的分割模式的总数量。编码树具有唯一的根节点,例如,ctu。编码树的叶是树的终止节点。编码树的每个节点表示可以被进一步划分为更小块(也被称为子块)的块。一旦确定了将ctu变为cu的划分,就对与编码树的叶相对应的cu进行编码。将ctu变为cu的划分以及用于对每个cu(对应于编码树的叶)进行编码的编码参数可以在编码器侧通过速率(rate)失真优化程序来确定。在本申请中,术语“块”或“图片块”可以用于指ctu、cu、pu、tu、cb、pb和tb中的任何一个。此外,术语“块”或“图片块”可以用于指h.264/avc中或其他视频编码标准中指定的宏块、划分和子块,更具体地可以指许多大小的样点数组。在本申请中,术语“重建”和“解码”可以互换地使用,术语“像素”和“样点”可以互换地使用,术语“图像”、“图片”和“帧”可以互换地使用。通常,但不一定,术语“重建”用于编码器侧而“解码”用于解码器侧。在本申请中,术语“扫描次序”和“扫描模式”可以互换地使用。在hevc中,图片被划分为所谓的编码树单元(ctu),并且每个ctu在压缩域中由编码单元(cu)表示。然后给每个cu一些帧内或帧间预测参数。为了这样做,其空间上被划分为一个或多个预测单元(pu),每个pu被分配一些预测信息(例如,帧内预测模式、参考索引、运动矢量)。在cu级别上分配帧内或帧间编码模式。在分割之后,使用帧内或帧间预测来利用帧内的或帧间的帧相关性,然后对通常被表示为预测误差或预测残差的原始块与预测块之间的差进行变换、量化和熵编码。为了重建视频,通过与熵编码、量化、变换和预测相对应的逆过程来对压缩的数据进行解码。在hevc中,使用非重叠系数组(coefficientgroup,cg)对量化的变换系数进行编码。cg包含编码块的4×4块的系数。作为示例,在图1中示出了包含在8×8块中的cg。根据在三种扫描次序(对角线、水平、垂直)中选择的扫描模式来对编码块中的cg以及cg内的16个变换系数进行扫描和编码。对于帧间块,总是使用图1左侧的对角线扫描。图2指示了针对每个帧内块大小要使用的扫描模式的类型。在该图中,第一垂直线指示块高度,并且第一水平线指示块宽度,d指示使用对角线扫描模式,m指示使用模式依赖的系数扫描(modedependentcoefficientscanning,mdcs)。在hevc中,此模式仅用于4×4和8×8帧内块。因此对于4×4和8×8帧内块,扫描次序取决于对该块有效的帧内预测模式。mdcs当前未在vtm-3中实现,vtm-3是vvc(通用视频编码)的软件模型。然而,对标准主体的贡献jvet-l0379提议在vvc中使用mdcs,并将其扩展到由vtm-3中的四叉树(qt)/二叉树(bt)/三叉树(tt)分割引入的一些矩形块大小。qt是将块变为4个相同的子块的分割。bt是通过垂直线或水平线将块变为两个相同的矩形的分割。tt是通过两条垂直线或两条水平线将块变为3个相同的矩形的分割。在hevc中mdcs用于4×4和8×8块的情况下,通过使用固定的查找表(lut)的帧内预测模式来确定帧内块的扫描模式。表1中给出了hevc中亮度块的lut:垂直模式6-14使用水平扫描,水平模式22-30使用垂直扫描,其他模式使用对角线扫描。表1在jvet-l0379中,调整了图2的解决方案。另一决策表用于在mdcs与对角线扫描之间的切换。图3描述了该另一决策表。该表基于块的高度与宽度的比例。当块的较大维度与其较小维度之间的比例等于或者大于四时,应用mdcs。mdcs也适用于大小4×4、4×8、8×4和8×8的块。应当注意的是,对于亮度,变换块最大大小是64×64,并且对于色度,变换块最大大小是32×32。该解决方案的一个缺点是系数的扫描次序仅取决于帧内块的帧内预测模式。此外,对于帧间块没有自适应扫描次序,即帧间块总是使用对角线扫描模式。变换系数的熵编码/解码包括至多5个扫描遍(pass),分别专用于以下列表中的语法元素的编码:sig_flag或significant-coeff-flag:系数的有效性,其指示系数的值是否等于0;gt1_flag或coeff-abs-level-greater1-flag:指示系数级别的绝对值是否大于1;gt2_flag或coeff-abs-level-greater2-flag:指示系数级别的绝对值是否大于2;par_flag:指示当使用依赖量化(dependentquantization)方法时系数的奇偶性;coeff-abs-level-remaining:系数级别的绝对值的剩余值(在系数值大于先前遍中编码的系数值的情况下);coeff-sign-flag:有效系数的符号(0:正,1:负)。每个扫描遍遵循扫描模式。在每个扫描遍中,如先前扫描遍所确定的,仅必要时才对语法进行编码。例如,如果系数的sig_flag为0,则用于对该系数的绝对值进行编码的剩余扫描遍是不必要的。对于符号编码同样,仅针对非零系数发送coeff-sign-flag。在处理下一cg之前,针对给定的cg执行所有扫描遍直到该cg中的所有量化的系数可以被重建。扫描从编码块中的最后一个有效系数开始,从高频系数扫到低频系数,然后处理所有系数,直到dc系数为止。对量化的变换系数进行熵编码以输出比特流。作为非限制性示例,基于上下文的自适应二进制算数编码(cabac)可以用于将语法元素编码为比特流。为了用cabac进行编码,将非二进制语法元素值映射到二进制序列(称作二进制位(bin)字符串)。针对二进制位,选择上下文模型。上下文模型存储每个二进制位是“1”或“0”的可能性,并且上下文模型可以是自适应的或静态的。静态模型以二进制位“0”或“1”的相等的可能性触发编码引擎。在自适应编码引擎中,基于二进制位的实际编码的值来更新上下文模型。对应于自适应模型和静态模型的操作模式被分别称作常规模式和旁路模式。至少一个实施例目标是相较于现有视频压缩系统提高压缩效率。因此,至少一个实施例提出以提供良好的压缩效率(速率失真性能)以及最小化编码设计的复杂度增加的方式来有效地调整量化的变换系数的扫描次序。因此,至少一个实施例提出一些方案,以使量化的变换系数的扫描次序适应于块形状、预测工具和变换类型中的一个或多个。在下文中,出于简化的目的,使用术语“变换系数”代替“量化的变换系数”。在变换后,残差信息的能量被高度压缩到编码块的左上角,其指示相较于位于高频区域中的变换系数,dc系数和低频变换系数具有更多的信息和更高的绝对值。遵循了系数是非零的可能性降序的一种扫描模式提供了更准确的cabac概率建模。对角线扫描按照该降序根据其频率将二维(2-d)变换系数排列成一维(1-d)数组。但是,由于此单个扫描模式不适用于系数值,因此存在通过采用自适应扫描次序来改善的空间。图4描绘了根据一个一般实施例的编码方法的流程图。在s100处,根据要解码的块的形状确定扫描模式。在s110处,对根据所确定的扫描模式扫描的块的变换系数进行熵解码。图5描绘了根据一个一般实施例的解码方法的流程图。在s200处,根据要被编码的块的形状确定扫描模式。在s110处,对根据所确定的扫描模式扫描的块的变换系数进行熵编码。第一实施例提出了与块形状直接相关的一般自适应扫描次序方案。帧内预测模式与块形状相关:水平块更可能选择选择水平帧内预测模式。此外,频率区域也与块形状相关。实际上,在块是矩形的情况下,相较于较短的维度,较多数量的零值系数沿较长的维度位于高频区域中。因此,如果使用对角线扫描,低频和高频系数可能隔行(interlace)太多。拿垂直块为例,沿着其是较长维度的垂直方向,更多的系数在高频区域倾向于为零。通过使用在水平方向上定向的系数扫描代替对角线扫描,2d矩阵中的非零系数可以朝向1d矢量的起始(beginning)进一步压缩。这反过来又提高了熵编码效率。根据第一实施例的基本想法:扫描次序选择取决于块形状,其也可以被称为“基于块形状的系数扫描”。对于正方形块,可以应用对角线扫描或mdcs。对于矩形块,使用自适应扫描次序。矩形块的形状是由其高度和宽度的值以及其朝向来定义的。因此,大小8×16的块(垂直块)和大小16×8的块(水平块)具有不同的形状。在第一变体中,垂直扫与水平块一起使用,而水平扫描与垂直块一起使用。否则仅应用对角线扫描或mdcs。图6a示出了第二变体。在第二变体中,在较大块维度与较小块维度之比等于或大于一个值t的情况下,垂直扫描用于水平块,水平扫描用于垂直块。否则,仅应用对角线扫描或mdcs。在值t等于4的情况下,第二变体如图6b所示。在第三变体中,对于矩形块,在扫描模式(例如传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于速率失真(rd)估计来选择矩形块的最佳扫描次序,并且通过对额外的语法元素tu_coeffscan_type进行编码来向解码器信令通知矩形块的最佳扫描次序。因此,在扫描模式的集合中选择提供最佳速率失真折中的扫描模式。在其他情况下,仅应用对角线扫描或mdcs。在第四变体中,在较大块的维度与较小块的维度之比等于或大于一个值t时,在扫描模式(例如,传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于rd估计来选择块的最佳扫描次序,并且通过对如在语法表中所指示的额外的语法元素tu_coeffscan_type进行编码来向解码器信令通知块的最佳扫描次序。在其他情况下,仅应用对角线扫描或mdcs。如针对变体三和变体四所指示的,对额外的语法元素进行编码/解码。在下面语法表中给出了如何信令通知基于rd估计在对角线、水平和垂直扫描模式中通过穷举搜索选择的最佳扫描次序。特定的信令用斜体字表示。tu_coeffscan_type指定了对于变换块从例如对角线、水平和垂直扫描中选择的系数扫描类型。tu_coeffscan_type的值可以是0、1或2,其可以分别表示对角线(0)、水平(1)和垂直(2)。在变体中,tu_coeffscan_type指定了从扫描模式的另一集合中选择的扫描类型/模式,所述扫描模式的另一集合包括不同于对角线、水平和垂直扫描模式的扫描模式。scanorder指定了扫描次序数组,该数组生成扫描顺序中系数的位置。针对每个扫描类型,scanorder数组的初始化不同,并且通过调用函数getscanoreder()来获得scanorder数组。在另一变体中,定义了额外的自适应扫描次序,其不同于传统的对角线、水平和垂直扫描模式。为了此目标,针对矩形块设计了特定的垂直和水平扫描次序。如图7所示,自适应扫描次序的设计基于锯齿状扫描次序。设计了特定的垂直和水平扫描次序使得在扫描次序中沿最长维度的系数比沿最短维度被压缩得更多。根据此变体,沿最长维度的扫描步长stepl将是沿最短维度的扫描步长steps(通常默认steps=1)的倍数。如图8所示,扫描步长是在沿另一维度扫描系数之前沿一个维度的第一个系数到最后一个系数的距离间隔。该倍数与编码块的最长维度sizel与最短维度sizes之比有关,如下所定义:图8中给出了针对具有大小8×4、4×8和16×4的矩形块所建议的自适应锯齿状(zig-zag)扫描次序的一些示例。如前所述,当mdcs被激活时,帧内块可以基于该块的帧内预测模式来选择扫描模式。mdcs或当前算法的一个限制是没有为帧间块定义自适应扫描次序方案。对角线扫描模式是与帧间块一起使用的唯一扫描模式。第二实施例针对与使用的预测工具有关的帧内块提出了通用自适应扫描次序方案。新的视频编解码器vtm-3实现了更多的帧间编码工具(例如,多假设预测(multi-hypothesisprediction,mh))来提高编码效率。mh的一般概念是将在合并模式中执行的帧间预测与帧内预测模式或与另一帧间预测模式(例如,单向预测amvp、跳过和合并)结合。在合并模式中,建立合并候选(参考索引、运动值)的列表,并且信令通知识别一个候选的合并索引。然后从由合并索引中识别的并且用于运动补偿预测的候选推导合并模式中块的运动信息。如图9所示,在帧间帧内mh中,最终预测是合并索引的预测与由帧内预测模式生成的预测的加权平均,其中根据组合应用不同的权重。将当前块分割为4个相等面积的区域。随着区域远离帧内参考样点,权重逐渐降低。每个权重集(表示为(w_intrai,w_interi),其中i为1到4并且(w_intra1,w_inter1)=(6,2)、(w_intra2,w_inter2)=(5,3)、(w_intra3,w_inter3)=(3,5)以及(w_intra4,w_inter4)=(2,6))将被应用到对应的区域。图10中描绘了在多假设中使用的帧内垂直/水平方向预测以及帧内dc/平面预测的示例。根据第二实施例,根据预测工具(例如,其是否使用诸如mh、obmc、三角形预测等一些特定的帧间预测工具)将自适应扫描次序扩展到帧间块。针对多假设预测块,使用自适应扫描次序。在第一变体中,针对多假设帧内-帧间预测块,无论块大小如何,都重复使用mdcs。在帧内预测模式为水平的情况下应用垂直扫描。与之相反,水平扫描用于垂直帧内预测模式。在第二变体中,针对多假设预测块(即,或者帧间-帧内或者帧间-帧间),在扫描模式(例如,传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于rd估计来选择块的最佳扫描次序,并且通过对如在语法表中所指示的额外的语法元素tu_coeffscan_type进行编码来向解码器信令通知块的最佳扫描次序。定义了几何结构(例如,三角形)模式,其允许在编码之前将图片划分为块的更多灵活性。在图11的上方,描绘了各种三角形分割。使用对角线分割线对块进行分割。通过在边界(图11底部的灰色区域)上执行对两个预测器p1和p2的加权,可以获得额外的编码性能。三角形预测单元模式仅被应用于块大小大于或等于8×8的cu,并且其编码预测模式是跳过或合并模式之一。针对对象在同一块中不同地移动的场景、或者斜线将块分割为两个划分的场景,三角形预测模式有很多的益处。因此,三角形预测模式经常被应用于不平坦(flat)的块。在变换和量化之后,如果仅使用对角线扫描,则低频和高频变换系数可能仍然隔行太多。在第三变体中,针对三角形预测块,在扫描模式(例如,传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于rd估计来选择块的最佳扫描次序,并且通过对如在语法表中所指示的额外的语法元素tu_coeffscan_type进行编码来信令通知块的最佳扫描次序。考虑到激活自适应扫描次序与应用于块的变换类型之间存在的一些关系,第三实施例提出了一种通用的自适应扫描次序方案。在当前的vtm-3中实现了多个变换选择(multipletransformselection,mts)。根据mts,在dct-2之外使用了dst-7和dct-8。在sps级上存在针对帧内和帧间的单独的mts启用标志。当mts被启用时,那么对单个标志进行编码/解码以信令通知在两个方向上都应用dct-2。在mts被启用以及不在两个方向上都使用dct-2的情况下,对2比特的索引(mts_idx)进行编码/解码以信令通知水平和垂直变换的4对。为此,dct8和dst7是针对水平和垂直方向的两个可能的变换。dct/dst变换族中的一些可以被分类为如表2中的增加、减少和恒定第一基函数。如表2中所述,dct-2具有恒定第一基函数,dst-7具有增加第一基函数,并且dct-8具有减少第一基函数。第一基函数表示在最低频率的所考虑的变换的基函数。作为示例,dct2基函数ti(j),i,j=0,1,…,n-1定义如下:其中第一个基函数是针对i=0,因此对于dct2,第一基函数是恒定的。作为另一示例,dct8基函数ti(j),i,j=0,1,…,n-1定义如下:第一个基函数是针对i=0,因此对于dct8,第一基函数是减少的。作为另一示例,dst7基函数ti(j),i,j=0,1,…,n-1定义如下:第一个基函数是针对i=0,因此对于dst7,第一基函数是增加的。当通过两次水平和垂直执行1-ddct-2来分别实现2-ddct-2时,通过该可分离的2-d变换能够捕获沿水平或垂直方向的信号相关。然而,当存在方向性边缘时,该2-ddct-2可能是次优的。因此,在水平和垂直方向上分别应用的dst-7和dct-8的不同组合对于这些情况是互补的。虽然在诸如mts的自适应变换后,变换系数的分布统计呈现出较少的模式依赖特性,但针对自适应扫描次序仍有一些空间可以避免过多的隔行低频和高频变换系数。变换第一基类型dct1恒定dct2恒定dct3减少dct4减少dct5恒定dct6恒定dct7减少dct8减少dst1恒定dst2恒定dst3增加dst4增加dst7增加dst8增加表2在第三实施例中,扫描次序选择取决于变换类型,其也可以被称为“变换类型依赖的系数扫描”。在第一变体中,在使用可分离的变换方案的情况下,以下适用:-在针对该块在水平和垂直方向上均应用具有恒定第一基函数的变换的情况下,应用对角线扫描;-否则,在水平和垂直方向中的一个没有使用具有恒定第一基函数的变换的情况下,针对该块激活自适应扫描次序。为了该目的,在扫描模式(例如,传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于rd估计选择块的最佳扫描次序,并且通过对如在语法表中所指示的额外的语法元素tu_coeffscan_type进行编码来对解码器信令通知该最佳扫描次序。在第二变体中,在使用mts的情况下,以下适用:-在针对该块应用可分离的2-ddct-2变换的情况下,应用对角线扫描;-否则,在针对该块分别在水平和垂直方向上应用dst-7和dct-8的情况下,激活自适应扫描次序。为了该目的,在扫描模式(例如,传统的对角线、水平和垂直扫描模式)的集合中通过穷举搜索选择最佳扫描次序。也可以在扫描模式的另一集合中完成穷举搜索,并且不限于以上列表。基于rd估计选择块的最佳扫描次序,并且通过对如在语法表中所指示的额外的语法元素tu_coeffscan_type进行编码来对解码器信令通知最佳扫描次序。第一实施例、第二实施例和第三实施例可以完全独立地使用,也可以组合。在示例中,第二实施例和第三实施例可以使用第一实施例中定义的新的扫描次序,例如,图8中所描绘的一个。为了选择要用于块的新的扫描模式,需要块的形状。最后,针对矩形块,基于如第二实施例和第三实施例中的预测工具和变换类型,在d、h、v和额外的新的扫描模式中选择最终扫描模式。如果应用额外的语法tu_coeffscan_type,则可以基于块形状、预测工具和变换类型来选择用于对其进行熵编码/解码的上下文,tu_coeffscan_type表示在扫描模式的集合(例如,对角线、水平和垂直扫描模式)中选择的扫描次序。本申请描述了多个方面,包括工具、特征、实施例、模型、方法等。这些方面中的许多是专门描述的,并且至少为了示出各个特性,通常以听起来有限制的方式来描述。然而,这是出于描述清楚的目的,并且不限制那些方面的应用或范围。实际上,所有不同方面都可以结合和互换以提供进一步的方面。此外,这些方面也可以与先前文件中所述的方面结合和互换。本申请中所描述的和预期的方面可以以许多不同的形式来实现。下面的图12、图13和图14提供了一些实施例,但是考虑了其他实施例,并且对图12、图13和图14的讨论不限制实现的广度。各方面中的至少一个通常涉及视频编码和解码,并且至少一个其他方面通常涉及发送生成的或编码的比特流。这些和其他方面可以实现为方法、装置、其上存储用于根据所述任何方法对视频数据进行编码或解码的指令的计算机可读存储介质和/或其上存储根据所述任何方法生成的比特流的计算机可读存储介质。本文描述了各种方法,并且每个方法包括用于实现所述方法的一个或多个步骤或动作。除非方法的正确操作需要步骤或动作的特定次序,否则可以调整或结合特定步骤和/或动作的次序和/或使用。本申请中所描述的各种方法和其他方面可以用于调整模块,例如,如图12和图13中所示的视频编码器100和解码器200的熵编码和/或解码模块(145、230)。此外,本方面不限于vvc或hevc,并且可以应用于例如其他标准和建议(无论是先前存在的还是将来开发的),以及任何这样的标准和建议(包括vvc和hevc)的扩展。除非另外指出或在技术上被排除,否则本申请中所描述的方面可以单独或结合使用。本申请中使用各种数值,例如,值t。特定值是出于示例目的,并且所描述的方面不限于这些特定值。图12示出了编码器100。尽管考虑了该编码器100的变体,但是出于清楚的目的,下面描述了编码器100,而没有描述全部所期望的变体。在被编码之前,视频序列可以通过编码前处理(101),例如,对输入颜色图片应用颜色变换(例如,从rgb4:4:4到ycbcr4:2:0的转换),或者执行输入图片分量的重映射以得对压缩更有弹性的信号分布(例如,使用颜色分量中的一个的直方图均衡化)。元数据可以与预处理相关联,并且被附加到比特流。在编码器100中,通过如下描述的编码器元素对图片进行编码。以例如cu为单元对要编码的图片进行划分(102)和处理。使用例如帧内或帧间模式之一对每个单元进行编码。当以帧内模式对单元进行编码时,其执行帧内预测(160)。在帧间模式中,执行运动估计(175)和补偿(170)。编码器决定帧内模式或帧间模式中的哪一个用于对单元进行编码,并且通过例如预测模式标志指示帧内/帧间决定。例如,通过从原始图像块减去(110)预测块来计算预测残差。然后对预测残差进行变换(125)和量化(130)。对量化的变换系数以及运动矢量和其他语法元素进行熵编码(145)以输出比特流。编码器可以跳过变换并且直接对未变换的残差信号应用量化。编码器可以对变换和量化两者进行旁路,即直接对残差进行编码而不应用变换或量化过程。编码器对编码的块进行解码以为进一步的预测提供参考。对量化的变换系数进行去量化(140)以及逆变换(150)以解码预测残差。结合(155)解码的预测残差和预测块,重建图像块。对重建的图片应用环内滤波器(in-loopfilter)(165)以执行例如去分块(deblock)/sao(采样点自适应补偿,sampleadaptiveoffset)滤波来减少编码伪影。将滤波的图像存储在参考图片缓冲器(180)上。图13示出了视频解码器200的框图。在解码器200中,通过如下描述的解码器元件对比特流进行解码。视频解码器200通常执行与图12中所描述的编码遍相反的解码遍。编码器100也通常执行视频解码作为对视频数据进行编码的一部分。具体地,解码器的输入包括可以是由视频编码器100生成的比特流。首先对比特流进行熵解码(230)以获得变换系数、运动矢量和其他编码的信息。图片划分信息指示图片是如何被划分的。因此,解码器可以根据解码的图片划分信息来分割(235)图片。对变换系数进行去量化(240)和逆变换(250)以对预测残差进行解码。结合(255)解码的预测残差和预测块,重建图像块。从帧内预测(260)或运动补偿预测(即,帧间预测)(275)可以获得(270)预测块。对重建的图像应用环内滤波器(265)。将滤波的图像存储在参考图片缓冲区(280)中。解码的图片还可以通过解码后处理(285),例如,逆颜色变换(例如,从ycbcr4:2:0到rgb4:4:4的变换)或者逆重映射,逆重映射执行在编码前处理(101)中执行的重映射过程的逆。解码后处理可以使用在编码前处理中导出的以及在比特流中信令通知的元数据。图14示出了各个方面和实施例在其中实现的系统的示例的框图。系统1000可以体现为设备,该设备包括以下描述的各种组件并且被配置为执行本文件所描述的方面中的一个或多个。这样的设备的示例包括但不限于,诸如个人计算机、膝上型计算机、智能手机、平板计算机、数字多媒体机顶盒、数字电视接收器、个人视频记录系统、联网家电(connectedhomeappliances)和服务器的各种电子设备。系统1000的元件可以单独或组合地体现在单个集成电路(ic)、多个ic和/或分立组件中。例如,在至少一个实施例中,系统1000的处理以及编码器/解码器元件跨多个ic和/或分立组件分布。在多个实施例中,系统1000、例如经由通信总线或者通过专用输入和/或输出端口、通信地耦合到一个或多个其他系统或者其他电子设备。在多个实施例中,系统1000被配置为实现本文件中所描述的方面中的一个或多个。系统1000包括至少一个处理器1010,该处理器1010被配置为执行其中加载的指令,以用于实现例如本文件中描述的各个方面。处理器1010可以包括嵌入式存储器、输入输出接口以及本领域已知的各种其他电路。系统1000包括至少一个存储器1020(例如,易失性存储器设备,和/或非易失性存储器设备)。系统1000包括存储设备1040,存储设备1040可以包括非易失性存储器和/或易失性存储设备,包括但不限于,电可擦除可编程只读存储器(eeprom)、只读存储器(rom)、可编程只读存储器(prom)、随机接入存储器(ram)、动态随机接入存储器(dram)、静态随机接入存储器(sram)、闪存、磁盘驱动器和/或光盘驱动器。存储设备1040可以包括内部存储设备、附加的存储设备(包括可拆卸和不可拆卸存储设备)和/或网络可访问存储设备。系统1000包括被配置为例如处理数据以提供编码的视频或解码的视频的编码器/解码器模块1030,并且编码器/解码器模块1030可以包括其自身处理器和存储器。编码器/解码器模块1030表示(多个)模块可以被包括在设备中以执行编码和/或解码功能。众所周知,设备可以包括编码和解码模块中的一个或两者。另外,编码器/解码器模块1030可以被实现为系统1000的单独的元件,或者可以作为本领域技术人员已知的硬件和软件的组合被并入处理器1010内。要被加载到处理器1010或编码器/解码器1030上以执行本文件中所描述的各种方面的程序代码可以被存储在存储设备1040中并且随后被加载到存储器1020上以供处理器1010执行。根据各个实施例,在执行本文件中所描述的过程期间,处理器1010、存储器1020、存储设备1040和编码器/解码器模块1030中的一个或多个可以存储各种项目中的一个或多个。此类存储的项目可以包括但不限于输入视频、解码的视频或者解码视频的部分、比特流、矩阵、变量以及来自等式、公式、运算和运算逻辑的处理的中间或最终结果。在一些实施例中,处理器1010和/或编码器/解码器1030内部的存储器被用于存储指令并提供用于编码或解码期间所需处理的工作存储器。然而,在其他实施例中,处理设备(例如,处理设备可以是处理器1010或编码器/解码器模块1030)外部的存储器被用于这些功能中的一个或多个。外部存储器可以是存储器1020和/或存储设备1040,例如,动态易失性存储器和/或非易失性闪存。在几个实施例中,外部非易失性闪存被用于存储(例如,电视的)操作系统。在至少一个实施例中,诸如ram的快速外部动态易失性存储器被用作用于视频编码和解码操作(诸如用于mpeg-2(mpeg指移动图片专家组,mpeg-2也被称为iso/iec13818,并且13818-1也被称为h.222,以及13818-2也被称为h.262)、hevc(hevc指高效视频编码,也被称为h.265和mpge-hpart2)或者vvc(多功能视频编码,由jvet(联合视频专家组)正在开发的新标准))的工作存储器。对系统1000的元件的输入可以通过如在块1130中指示的各种输入设备来提供。这样的输入设备包括但不限于(i)射频(rf)部分,其接收例如由广播站用无线电(overtheair)发送的rf信号、(ii)组件(comp)输入终端(或者comp输入终端的集合)、(iii)通用串行总线(usb)输入终端,和/或(iv)高清多媒体接口(hdmi)输入终端。未在图10中示出的其他示例包括复合视频。在多个实施例中,如本领域已知的,块1130的输入设备具有相关联的相应输入处理单元。例如,rf部分可以与适用于以下的元件相关联:(i)选择期望的频率(也被称为选择信号或这将信号限制在频带内)、(ii)下变频所选择的信号、(iii)再次限制在较窄的频带内以选择(例如)在某个实施例中可以被称为的信道的信号频带、(iv)解调下变频的和带宽限制的信号、(v)执行纠错以及(vi)解复用以选择所需的数据分组的流。各种实施例的rf部分包括一个或多个执行这些功能的元件,例如,频率选择器、信号选择器,带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。rf部分可以包括执行各种这些功能的调谐器,该调谐器包括例如将接收到的信号下变频为较低频率(例如,中频或近基带频率)或下变频为基带。在一个机顶盒实施例中,rf部分以及其相关联的输入处理元件接收通过有线(例如电缆)介质发送的rf信号,并通过滤波、下变频和再次滤波到期望的频带来执行频率选择。各种实施例重新排列上述(和其他)元件的次序,移除这些元件中的一些,和/或添加执行类似或不同功能的其他元件。添加元件可以包括在现有元件之间插入元件,例如,插入放大器和模数转换器。在各种实施例中,rf部分包括天线。此外,usb和/或hdmi终端可以包括用于通过usb和/或hdmi连接将系统1000连接到其他电子设备的相应的接口处理器。应当理解,输入处理(例如里德-所罗门(reed-solomon)纠错)的各种方面,可以根据需要例如在单独的输入处理ic内或在处理器1010内实现。类似地,usb或hdmi接口处理的各方面可以根据需要在单独的接口ic内或在处理器1010内实现。解调、纠错和解复用的流被提供给与存储器和存储元件组合操作的各种处理元件(包括例如处理器1010以及编码器/解码器1030),以根据需要处理数据流以在输出设备上呈现。系统1000的各个元件可以设置在集成的外壳内。在集成的外壳内,可以使用合适的连接布置(例如,本领域中已知的内部总线,包括芯片间(i2c)总线、布线和印刷电路板)来互连各个元件并在它们之间发送数据。系统1000包括使得能够经由通信信道1060与其他设备进行通信的通信接口1050。通信接口1050可以包括但不限于被配置为在通信信道1060上发送和接收数据的收发器。通信接口1050可以包括但不限于调制解调器或网卡,并且通信信道1060可以例如在有线和/或无线介质内实现。在多个实施例中,使用诸如wi-fi(例如,ieee802.11(ieee指电气与电子工程师协会))网络的无线网络,将数据流传输(stream)到系统1000,或者以其他方式提供给系统1000。通过适用于wi-fi通信的通信信道1060和通信接口1050来接收这些实施例的wi-fi信号。这些实施例的通信信道1060通常被连接到提供到包括因特网的外部网络的接口的接入点或路由器,以允许流传输应用和其他过顶(over-the-top)通信。其他实施例使用机顶盒向系统1000提供流传输的数据,该机顶盒通过输入块1130的hdmi连接来传递数据。还有其他实施例使用输入块1130的rf连接将流传输的数据提供给系统1000。如上所指示的,各种实施例以非流传输的方式提供数据。此外,各种实施例使用除wi-fi之外的无线网络,例如蜂窝网络或蓝牙网络。系统1000可以向包括显示器1100、扬声器1110或其他外围设备1120的各种输出设备提供输出信号。各种实施例的显示器1100包括例如触摸屏显示器、有机发光二极管(oled)显示器、曲面显示器和/或可折叠显示器中的一个或多个。显示器1100可以用于电视、平板、膝上型计算机、手机(移动电话)或其他设备。显示器1100还可以与其他组件集成(例如,如在智能电话中),或是独立的(例如,笔记本电脑的外部显示屏)。在实施例的各种示例中,其他外围设备1120包括独立数字视频光盘(或数字多功能光盘)(dvr,用于这两个术语)、磁盘播放器、立体声系统和/或照明系统中的一个或多个。各种实施例使用提供基于系统1000的输出的功能的一个或多个外围设备1120。例如,磁盘播放器执行播放系统1000的输出的功能。在各种实施例中,控制信号在系统1000与显示器1100、扬声器1110或其他外围设备1120之间使用诸如av.link、消费电子控制(consumerelectronicscontrol,cec)或其他通信协议的信令进行通信,这些信令使得能够在有或没有用户干预的情况下进行设备到设备的控制。输出设备可以通过相应的接口1070、1080和1090经由专用连接通信地耦合到系统1000。可替换地,可以经由通信接口1050使用通信信道1060将输出设备连接至系统1000。显示器1100和扬声器1110可以在电子设备中(例如,电视)与系统1000的其他组件集成在单个单元中。在各种实施例中,显示接口1070包括显示驱动器,例如,时序控制器(tcon)芯片。例如,如果输入1130的rf部分是单独的机顶盒的部分,则作为选择显示器1100和扬声器1110可以与其它组件中的一个或多个分开。在其中显示器1100和扬声器1110是外部组件的多个实施例中,可以经由包括例如hdmi端口、usb端口或comp输出的专用的输出连接来提供输出信号。可以通过由处理器1010实现的计算机软件或通过硬件,或者通过硬件和软件的组合来实施实施例。作为非限制性示例,可以通过一个或多个集成电路来是实现实施例。存储器1020可以是适合于技术环境的任何类型并且可以使用任何适合的数据存储技术来实现,作为非限制性示例,其可以是诸如光存储器设备、磁存储器设备、基于半导体的存储器设备、固定的存储器和可移动的存储器。处理器1010可以是适合于技术环境的任何类型,并且作为非限制性示例,可以涵盖微处理器、通用计算机、专用计算机和基于多核架构的处理器中的一个或多个。各种实现涉及解码。如本申请中所使用的“解码”,可以涵盖例如对接收的编码的序列执行的过程的全部或部分,以便产生适用于显示的最终输出。在各种实施例中,这样的过程包括通常由解码器执行的过程(例如,熵解码、反量化、逆变换和差分解码)中的一个或多个。在各种实施例中,这样的过程还包括,或者可替代地包括由本申请中所描述的各种实现的解码器执行的过程(例如,基于块形状、预测工具和变换类型中的一个或多个确定块的扫描模式)。作为另外的示例,在一个实施例中“解码”仅指熵解码,在另一实施例中“解码”仅指差分解码,并且在另一实施例中“解码”指熵解码与差分解码的结合。基于特定描述的上下文,短语“解码过程”是旨在专门指操作的子集还是广义上指更广泛的解码过程将是清楚的,并且相信本领域技术人员会很好地理解。各种实现涉及编码。以与以上关于“解码”的讨论相似的方式,如在本申请中使用的“编码”可以涵盖例如对输入视频序列执行的过程的全部或部分以便产生编码的比特流。在各种实施例中,这样的过程包括通常由编码器执行的过程(例如,划分、差分编码、变换、量化和熵编码)中的一个或多个。在各种实施例中,这样的过程还包括,或者可替代地包括由本申请中所描述的各种实现的编码器执行的过程(例如,基于块形状、预测工具和变换类型中的一个或多个确定块的扫描模式)。作为另外的示例,在一个实施例中“编码”仅指熵编码,在另一实施例中“编码”仅指差分编码,并且在另一实施例中“编码”指差分编码与熵编码的结合。基于特定描述的上下文,短语“编码过程”是旨在专门指操作的子集还是广义上指更广泛的编码过程将是清楚的,并且相信本领域技术人员会很好地理解。注意,如本文所使用的语法元素(例如,tu_coeffscan_type)为说明性术语。如此,它们不妨碍其他语法元素名的使用。当将图作为流程图呈现时,应当理解,其也提供了对应装置的框图。类似地,当将图作为框图呈现时,应当理解,其也提供了对应方法/过程的流程图。各种实施例涉及速率失真(rd)优化。具体地,在编码过程期间,经常给定计算复杂度的约束,通常要考虑速率与失真之间的平衡或权衡。速率失真优化通常被公式化为最小化速率失真函数,该函数是速率与失真的加权和。有多种解决速率失真优化问题的方法。例如,这些方法可以基于对所有编码选项的广泛测试,包括所有考虑的模式或编码参数值,和对其编码成本以及编码和解码后的重建信号的相关失真的完整评估。也可以使用更快的方法来节省编码复杂性,特别是基于预测或预测残差信号而不是重建信号来计算近似失真。也可以使用这两种方法的混合,例如仅对一些可能的编码选项使用近似失真,而对其他编码选项使用完全失真。其他方法仅评估可能的编码选项的子集。更一般地,许多方法采用各种技术中的任何一种来执行优化,但是优化不一定是对编码成本和相关失真两者的完整评估。本文所描述的实现方式和方面可以例如以方法或过程、装置、软件程序、数据流或信号来实现。即使仅在单一形式的实现方式的上下文中进行讨论(例如,仅作为方法讨论),所讨论的特征的实现也可以以其他形式(例如,设备或程序)来实现。装置可以例如以适当的硬件、软件和固件来实现。方法可以在例如通常指处理设备的处理器中实现,该处理包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备,例如计算机、手机、便携式/个人数字助手(“pda”)和有助于最终用户之间的信息的通信的其他设备。对“一个实施例”或“实施例”或“一个实现方式”或“实现方式”以及它们的其他变体的引用,意味着结合实施例所描述的特定的特征、结构、特性等包括在至少一个实施例中。因此,出现在贯穿本申请的各种地方的短语“在一个实施例中”或“在实施例中”或“在一个实现方式中”或“在实现方式中”以及它们的其他变体的呈现,不一定全部指代同一实施例。另外,本申请可以涉及“确定”各种信息。确定信息可以包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一个或多个。此外,本申请可以涉及“访问”各种信息。访问信息可以包括例如接收信息、(例如,从存储器)检索信息、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一个或多个。另外,本申请可以涉及“接收”各种信息。接收与“访问”一样,是一个广义的术语。接收信息可以包括例如访问信息或(例如,从存储器)检索信息中的一个或多个。此外,在诸如存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,通常以某种方式涉及“接收”。应当理解的是,以下“/”、“和/或”以及“至少一个”中的任何一个的使用,例如,在“a/b”、“a和/或b”以及“a和b中的至少一个”的情况下,旨在涵盖仅选择第一个列出的选项(a),或者仅选择第二列出的选项(b),或者选择两个选项(a和b)。作为进一步的示例,在“a、b和/或c”以及“a、b和c中的至少一个”的情况下,这样的短语旨在涵盖仅选择第一个列出的选项(a),或者仅选择第二列出的选项(b),或者仅选择第三列出的选项(c),或者仅选择第一和第二列出的选项(a和b),或者仅选择第一和第三列出的选项(a和c),或者仅选择第二和第三列出的选项(b和c),或者选择所有三个选项(a和b和c)。如对于本领域和相关领域的普通技术人员显而易见的那样,对于列出的尽可能多的项目,这可以被扩展。另外,如本文所使用的,词“信令通知(signal)”尤其是指向相应的解码器指示某些东西。例如,在某些实施例中,编码器信令通知扫描模式中的特定的一个。以这种方式,在实施例中,在编码器侧和解码器侧都使用相同的参数。因此,例如,编码器可以将特定参数发送(显式信令)给解码器,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其他参数,则可以使用信令而无需发送(隐式信令)以简单地允许解码器知道并选择特定参数。通过避免发送任何实际功能,在各种实施例中实现了位节省。应当理解,可以以多种方式来完成信令。例如,在各个实施例中,使用一个或多个语法元素、标志等以将信息信令通知给相应的解码器。尽管前面涉及词“信令通知(signal)”的动词形式,但词“信号(signal)”在本文中也可以用作名词。对于本领域的普通技术人员将显而易见的是,实现方式可以产生各种信号,这些信号被格式化以携带例如可以被存储或发送的信息。信息可以包括例如用于执行方法的指令或由所描述的实现方式之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。可以将这种信号格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码并且利用编码的数据流来调制载波。信号所携带的信息可以是例如模拟或数字信息。众所周知,信号可以通过各种不同的有线或无线链路来发送。信号可以存储在处理器可读介质上。我们描述了许多实施例。这些实施例的特征可以单独提供或以任何组合提供。此外,实施例可单独或以任意组合地包括跨各种权利要求类别和类型的以下特征、设备或方面中的一个或多个:·基于块形状、预测工具和变换类型中的一个或多个来确定块的扫描模式;·包括所述语法元素或者其变体中的一个或多个的比特流或信号。·插入信令语法元素,该信令语法元素使解码器能够以与编码器使用的方式相对应的方式改编扫描次序。·创建和/或发送和/或接收和/或解码包括所述语法元素或者其变体中的一个或多个的比特流或信号。·根据所描述的任何实施例,执行扫描次序的自适应的电视机、机顶盒、手机、平板或其他电子设备。·根据所描述的任何实施例,执行扫描次序的自适应的电视机、机顶盒、手机、平板或其他电子设备,并且其显示(例如,使用显示屏、屏幕、或者其他类型的显示器)结果图像。·根据所描述的任何实施例,调谐(例如,使用调谐器)信道以接收包括编码的图像的信号并且执行扫描次序的自适应的电视机、机顶盒、手机、平板或其他电子设备。·根据所描述的任何实施例,通过无线电接收(例如,使用天线)包括编码的图像的信号并且执行扫描次序的自适应的电视机、机顶盒、手机、平板或其他电子设备。根据至少一个实施例的一般方面,提出了解码方法,包括:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了编码方法,包括:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了解码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:对根据扫描模式扫描的块的变换系数进行熵解码,其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的一般方面,提出了编码装置,其包括一个或多个处理器,该一个或多个处理器被配置为实现:-获得块的变换系数;以及-根据扫描模式扫描所述系数以进行熵编码;其中响应于所述块的形状来确定扫描模式。根据至少一个实施例的另一个一般方面,格式化比特流以包括根据以上所述的编码方法生成的信号。本实施例中的一个或多个还提供其上存储指令的计算机可读存储介质,该指令用于根据以上所述的任何方法的至少部分来对视频数据进行编码或解码。一个或多个实施例还提供其上存储根据以上所述的编码方法生成的比特流的计算机可读存储介质。一个或多个实施例还提供用于发送和接收根据以上所述的编码方法生成的比特流的方法和装置。一个或多个实施例还提供包括用于执行以上所述的任何方法的至少部分的指令的计算机程序产品。在一个实施例中,响应于块是正方形块、水平矩形块还是垂直矩形块来确定扫描模式。在一个实施例中,在所述块是矩形垂直块的情况下,根据水平扫描模式扫描系数,并且在所述块是矩形水平块的情况下,根据垂直扫描模式扫描系数。在一个实施例中,在所述块的最大维度与所述块的最小维度之间的比等于或大于一个值的情况中,在所述块是矩形水平块的情况下,根据垂直扫描模式扫描系数,在所述块是矩形垂直块的情况下,根据水平扫描模式扫描系数。在一个实施例中,在所述块是矩形块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。在一个实施例中,在所述块的最长维度与所述块的最小维度之间的比等于或大于另一值并且所述块是矩形块的情况中,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。在一个实施例中,在所述块是矩形块的情况下,根据所定义的扫描模式来扫描系数,使得沿着最长维度的扫描步长大于沿着最短维度的扫描步长。在一个实施例中,在所述块是多假设帧内-帧间预测块的情况中,在帧内预测模式为水平的情况下应用垂直扫描,并且在帧内预测模式为垂直的情况下应用水平扫描。在一个实施例中,在所述块是多假设预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。在一个实施例中,在所述块是三角形预测块的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。在一个实施例中,获得块的变换系数包括使用至少一个变换对块的残差进行变换以获得变换系数并且响应于所述变换的类型来确定扫描模式,其中,变换的类型由其低频是恒定的、增加的或减少的来定义的。在一个实施例中,在水平和垂直地均应用恒定低频的变换的情况下,根据对角线扫描模式来扫描系数,并且其中在水平和垂直变换之一不是具有恒定低频的变换的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。在一个实施例中,在垂直和水平变换是dct-2的情况下,根据对角线扫描模式扫描系数,并且其中在在dst-7和dct-8变换中选择垂直和水平变换的情况下,根据在模式的集合中由穷举速率失真搜索选择的扫描模式来扫描系数,并且其中在比特流中对所选择的扫描模式进行编码。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1