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

基于缩放列表数据的图像或视频编码的制作方法

2022-04-16 16:26:03 来源:中国专利 TAG:


1.本技术涉及视频或图像编码。例如,本技术涉及基于缩放列表数据的编码技术。


背景技术:

2.近来在各种领域中对诸如超高清(hud)图像和4k或8k或更大视频这样的高分辨率且高质量的图像和视频的需求日益增加。随着图像和视频数据变成高分辨率和高质量,与现有图像和视频数据相比,相对发送的信息量或比特数增加。因此,如果使用诸如现有有线或无线宽带线这样的介质来传输图像数据或者使用现有存储介质来存储图像和视频数据,则传输成本和存储成本增加。
3.此外,近来对诸如虚拟现实(vr)、人工现实(ar)内容或全息图这样的沉浸式媒体的兴趣和需求日益增加。诸如游戏图像这样的图像特性与真实图像的图像特性不同的图像和视频的广播日益增加。
4.因此,为了有效地压缩并传输或存储并回放具有这样的各种特性的高分辨率且高质量的图像和视频的信息,需要高效的图像和视频压缩技术。
5.此外,存在关于缩放处理中的自适应频率加权量化技术的讨论,以便于改进压缩效率并增加主观/客观视觉质量。为了有效地应用此技术,需要一种用于发信号通知相关信息的方法。


技术实现要素:

6.技术问题
7.本公开的技术方面在于提供一种用于增加图像编码效率的方法和装置。
8.本公开的另一个技术方面在于提供一种用于在缩放处理中增加编码效率的方法和装置。
9.本公开的又一个技术方面在于提供一种用于有效地构造在缩放处理中使用的缩放列表的方法和装置。
10.本公开的又一个技术方面在于提供一种用于分层地发信号通知在缩放处理中使用的缩放列表相关信息的方法和装置。
11.本公开的又一个技术方面在于提供一种用于有效地应用基于缩放列表的缩放处理的方法和装置。
12.技术方案
13.根据本文档的实施方式,可以通过自适应参数集(aps)来发信号通知缩放列表数据。此外,可以基于aps中包括的aps id信息来标识aps。aps可以基于aps中包括的指示用于缩放列表数据的aps的aps类型信息而包括缩放列表数据。此外,aps id信息的值可以具有在针对指示用于缩放列表数据的aps的aps类型信息的特定范围内的值。
14.根据本文档的实施方式,指示是否使用缩放列表数据的启用标志信息可以被分层地发信号通知。可以基于在更高层级语法(例如,sps)发信号通知的启用标志信息来发信号
通知在更低层级语法(例如,图片报头/切片报头/类型组报头)中的启用标志信息。
15.根据本文的实施方式,sps语法和pps语法可以被构造为使得不直接在sps或pps层级中发信号通知缩放列表数据语法。因此,通过基于sps中的启用标志信息在aps中单独解析/发信号通知缩放列表数据,能够提高编码效率。
16.根据本文档的实施方式,提供了一种由解码装置执行的视频/图像解码方法。视频/图像解码方法可以包括本文档的实施方式中公开的方法。
17.根据本文档的实施方式,提供了一种执行视频/图像解码的解码装置。解码装置可以执行本文档的实施方式中公开的方法。
18.根据本文档的实施方式,提供了一种由编码装置执行的视频/图像编码方法。视频/图像编码方法可以包括在本文档的实施方式中公开的方法。
19.根据本文档的实施方式,提供了一种执行视频/图像编码的编码装置。编码装置可以执行本文档的实施方式中公开的方法。
20.根据本文档的实施方式,提供了一种计算机可读数字存储介质,其中存储根据本文档的实施方式中的至少一个中公开的视频/图像编码方法生成的编码视频/图像信息。
21.根据本文档的实施方式,提供了一种计算机可读数字存储介质,其中,存储了使解码装置执行本文档的实施方式中的至少一个中公开的视频/图像解码方法的编码信息或编码视频/图像信息。
22.技术效果
23.本文档可以具有各种效果。例如,根据本文档的实施方式,能够提高整体图像/视频压缩效率。此外,根据本文档的实施方式,通过应用高效缩放处理,能够主观/客观视觉质量并且能够增强编码效率。此外,根据本文档的实施方式,可以高效地构造在缩放处理中使用的缩放列表,并且因此可以分层地发信号通知缩放列表相关信息。此外,根据本文档的实施方式,能够通过高效地应用基于缩放列表的缩放处理来增加编码效率。此外,根据本文档的实施方式,能够获得通过对在缩放处理中使用的缩放列表矩阵施加限制来促进实现并且限制最坏情况存储器要求的效果。
24.可以通过本文档的详细实施方式获得的效果不限于以上列出的效果。例如,可以存在相关领域的普通技术人员根据本文档可以理解或推导出的各种技术效果。因此,本文档的详细效果不限于本文档中明确描述的那些,并且可以包括可以从本文档的技术特征理解或推导出的各种效果。
附图说明
25.图1示意性地例示了可以应用于本文档的实施方式的视频/图像编码系统的示例。
26.图2是示意性地描述可以应用本文档的实施方式的视频/图像编码装置的配置的图。
27.图3是示意性地描述可以应用本文档的实施方式的视频/图像解码装置的配置的图。
28.图4例示了可以应用本文档的实施方式的示意性的视频/图像编码方法的示例。
29.图5例示了可以应用本文档的实施方式的示意性的视频/图像解码方法的示例。
30.图6示例性地例示了用于编码的图像/视频的分层结构。
31.图7和图8示意性地例示了根据本文档的实施方式的视频/图像编码方法和相关组件的示例。
32.图9和图10示意性地例示了根据本文档的实施方式的视频/图像解码方法和相关组件的示例。
33.图11例示了可以应用本文档中公开的实施方式的内容流传输系统的示例。
具体实施方式
34.本文档可以以各种方式修改并且可以具有各种实施方式,并且特定实施方式将在附图中例示并详细地描述。然而,这并不旨在将本文档限制于特定实施方式。本说明书中通常使用的术语用于描述特定的实施方式,而不是用来限制本文档的技术精神。除非在上下文中另外明确表示,否则单数的表述包括复数的表述。该说明书中的诸如“包括”或“具有”这样的术语应该被理解为指示存在本说明书中描述的特性、数字、步骤、操作、元件、组件或其组合,而没有排除存在或添加一个或更多个特性、数字、步骤、操作、元件、组件或其组合的可能性。
35.此外,为了便于与不同特征功能相关的描述,独立地例示了本文档中描述的附图中的元件。这并不意指各个元件被实现为单独的硬件或单独的软件。例如,至少两个元件可以被组合,以形成单个元件,或者单个元件可以被划分成多个元件。其中元件被组合和/或分开的实施方式也被包括在本文档的权利范围内,除非它偏离了本文档的实质。
36.在本文档中,术语“a或b”可以意指“仅a”、“仅b”或“a和b这二者”。换句话说,在本文档中,术语“a或b”可以被解释为指示“a和/或b”。例如,在本文档中,术语“a、b或c”可以意指“仅a”、“仅b”、“仅c”或“a、b和c的任何组合”。
37.本文档中使用的斜线“/”或逗号可以意指“和/或”。例如,“a/b”可以意指“a和/或b”。因此,“a/b”可以意指“仅a”、“仅b”或“a和b这二者”。例如,“a、b、c”可以意指“a、b或c”。
38.在本文档中,“a和b中的至少一个”可以意指“仅a”、“仅b”或“a和b这二者”。此外,在本文档中,表达“a或b中的至少一个”或“a和/或b中的至少一个”可以被解释为“a和b中的至少一个”。
39.此外,在本文档中,“a、b和c中的至少一个”可以意指“仅a”、“仅b”、“仅c”或“a、b和c的任何组合”。此外,“a、b或c中的至少一个”或“a、b和/或c中的至少一个”可以意指“a、b和c中的至少一个”。
40.此外,本文档中使用的括号可以意指“例如”。具体地,在表达“预测(帧内预测)”的情况下,可以指示将“帧内预测”作为“预测”的示例提出。换句话说,本文档中的术语“预测”不限于“帧内预测”,并且可以指示将“帧内预测”作为“预测”的示例提出。此外,即使在表达“预测(即,帧内预测)”的情况下,也可以指示将“帧内预测”作为“预测”的示例提出。
41.该文档涉及视频/图像编码。例如,本文档中公开的方法/实施方式可以应用于通用视频编码(vvc)中公开的方法。此外,本文档中公开的方法/实施方式可以应用于在基本视频编码(evc)标准、aomedia video 1(av1)标准、第二代音频视频编码标准(avs2)或下一代视频/图像编码标准(例如,h.267或h.268等)中公开的方法。
42.本文档提出视频/图像编码的各种实施方式,并且除非相反地提及,否则这些实施方式可以被彼此组合地执行。
43.在本文档中,视频可以意指根据时间的流逝的一系列图像的集合。图片通常意指表示特定时间段的一个图像的单元,并且切片/图块(tile)是在编码中构成图片的一部分的单元。切片/图块可以包括一个或更多个编码树单元(ctu)。图块是图片中的特定图块列和特定图块行内的ctu的矩形区域。图块列是ctu的高度等于图片的高度并且宽度由图片参数集中的语法元素指定的矩形区域。图块行是ctu的高度由图片参数集中的语法元素指定并且宽度等于图片的宽度的矩形区域。图块扫描是以下的分割图片的ctu的特定顺序排序:可以在图块中按ctu光栅扫描对ctu进行连续排序,而可以按图片的图块的光栅扫描对图片中的图块进行连续排序。切片包括可以排他地包含在单个nal单元中的图片的图块内的整数个完整图块或整数个连续的完整ctu行。
44.此外,一个图片可以被划分成两个或更多子图片。子图片可以是图片内一个或多个切片的矩形区域。
45.像素或像元(pel)可以意指构成一个图片(或图像)的最小单元。另外,“样本”可以被用作与像素对应的术语。样本通常可以表示像素或像素的值,并且可以仅表示亮度分量的像素/像素值,或仅表示色度分量的像素/像素值。
46.单元可以表示图像处理的基本单元。单元可以包括图片的特定区域和与该区域相关的信息中的至少一个。一个单元可以包括一个亮度块和两个色度(例如,cb、cr)块。根据情况,可以将单元和诸如块、区域等这样的术语互换地使用。在通常情况下,m
×
n块可以包括由m列和n行组成的样本(或样本阵列)或变换系数的集合(或阵列)。
47.此外,在此文档中,可以省略量化/解量化和/或变换/逆变换中的至少一个。当省略量化/解量化时,量化变换系数可以被称为变换系数。当省略变换/逆变换时,变换系数可以称为系数或残差系数,或者为了表达的统一性,仍可以称为变换系数。
48.在此文档中,量化变换系数和变换系数可以分别称为变换系数和缩放变换系数。在这种情况下,残差信息可以包括关于变换系数的信息,并且可以通过残差编码语法发信号通知关于变换系数的信息。可以基于残差信息(或关于变换系数的信息)推导变换系数,并且可以通过对变换系数进行逆变换(缩放)来推导缩放变换系数。残差样本可以基于经缩放的变换系数的逆变换来推导。这也可以在本文档的其他部分应用/表达。
49.在本文档中,在一个附图中单独解释的技术特征可以单独实施,或者可以同时实施。
50.在下文中,将参考附图更具体地描述本文档的优选实施方式。在下文中,在附图中,相同的附图标记在相同的元件中使用,并且可以省略相同元件的重复描述。
51.图1示意性地例示了可以应用本文档的实施方式的视频/图像编码系统的示例。
52.参照图1,视频/图像编码系统可以包括第一设备(源设备)和第二设备(接收设备)。源设备可以经由数字存储介质或网络以文件或流传输的形式将编码后的视频/图像信息或数据传递到接收设备。
53.源设备可以包括视频源、编码装置和发送器。接收设备可以包括接收器、解码装置和渲染器。编码装置可以被称为视频/图像编码装置,并且解码装置可以被称为视频/图像解码装置。发送器可以被包括在编码装置中。接收器可以被包括在解码装置中。渲染器可以包括显示器,并且显示器可以被配置成单独的设备或外部组件。
54.视频源可以通过捕获、合成或生成视频/图像的处理来获得视频/图像。视频源可
以包括视频/图像捕获设备和/或视频/图像生成设备。视频/图像捕获设备可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成设备可以包括例如计算机、平板计算机和智能电话,并且可以(电子地)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获处理可以被生成相关数据的处理取代。
55.编码装置可以对输入视频/图像进行编码。编码装置可以执行诸如针对压缩和编码效率的预测、变换和量化这样的一系列过程。编码后的数据(编码后的视频/图像信息)可以以比特流的形式输出。
56.发送器可以通过数字存储介质或网络以文件或流传输的形式将以比特流的形式输出的编码后的视频/图像信息或数据发送到接收设备的接收器。数字存储介质可以包括诸如usb、sd、cd、dvd、蓝光、hdd、ssd等这样的各种存储介质。发送器可以包括用于通过预定文件格式生成媒体文件的元件,并且可以包括用于通过广播/通信网络进行发送的元件。接收器可以接收/提取比特流,并且将接收/提取的比特流发送到解码装置。
57.解码装置可以通过执行与编码装置的操作对应的诸如解量化、逆变换、预测等这样的一系列过程来解码视频/图像。
58.渲染器可以渲染解码后的视频/图像。可以通过显示器显示渲染后的视频/图像。
59.图2是示意性地描述可以应用本文档的视频/图像编码装置的配置的图。下文中,编码装置可以包括图像编码装置和/或视频编码装置。
60.参照图2,编码装置200可以包括图像分割器210、预测器220、残差处理器230、熵编码器240、加法器250、滤波器260和存储器270。预测器220可以包括帧间预测器221和帧内预测器222。残差处理器230可以包括变换器232、量化器233、解量化器234、逆变换器235。残差处理器230还可以包括减法器231。加法器250可以被称为重构器或重构块生成器。根据实施方式,上面已描述的图像分割器210、预测器220、残差处理器230、熵编码器240、加法器250和滤波器260可以由一个或更多个硬件组件(例如,编码器芯片组或处理器)构成。另外,存储器270可以包括解码图片缓冲器(dpb),并且可以由数字存储介质构成。硬件组件还可以包括存储器270作为内部/外部组件。
61.图像分割器210可以将输入到编码装置200的输入图像(或图片或帧)分割成一个或更多个处理单元。作为一个示例,处理单元可以被称为编码单元(cu)。在这种情况下,从编码树单元(ctu)或最大编码单元(lcu)开始,可以根据四叉树二叉树三叉树(qtbttt)结构来递归地分割编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元划分成深度更深的多个编码单元。在这种情况下,例如,可以首先应用四叉树结构,随后可以应用二叉树结构和/或三叉树结构。另选地,可以首先应用二叉树结构。可以基于没有被进一步分割的最终编码单元来执行根据本文档的编码过程。在这种情况下,基于根据图像特性的编码效率,可以将最大编码单元直接用作最终编码单元。另选地,可以按需要将编码单元递归地分割成深度进一步更深的编码单元,使得可以将最佳大小的编码单元用作最终编码单元。这里,编码过程可以包括随后将描述的诸如预测、变换和重构这样的过程。作为另一示例,处理单元还可以包括预测单元(pu)或变换单元(tu)。在这种情况下,可以从上述的最终编码单元划分或分割预测单元和变换单元。预测单元可以是样本预测的单元,并且变换单元可以是用于推导变换系数的单元和/或用于根据变换系数推导残差信号
的单元。
62.根据情况,可以将单元和诸如块、区域等这样的术语互换地使用。在常规情况下,m
×
n块可以表示由m列和n行组成的样本或变换系数的集合。样本通常可以表示像素或像素的值,并且可以仅表示亮度分量的像素/像素值,或仅表示色度分量的像素/像素值。样本可以被用作与一个图片(或图像)的像素或像元(pel)对应的术语。
63.在编码装置200中,从输入图像信号(原始块、原始样本阵列)中减去从帧间预测器221或帧内预测器222输出的预测信号(预测块、预测样本阵列)以生成残差信号(残差块、残差样本阵列),并且所生成的残差信号被发送到变换器232。在这种情况下,如所示出的,在编码器200中从输入图像信号(原始块、原始样本阵列)中减去预测信号(预测块、预测样本阵列)的单元可以被称为减法器231。预测器可以对处理目标块(下文中,被称为“当前块”)执行预测,并且可以生成包括用于当前块的预测样本的预测块。预测器可以确定以当前块或cu为基础应用帧内预测还是帧间预测。如随后在对每种预测模式的描述中所讨论的,预测器可以生成诸如预测模式信息这样的与预测相关的各种信息,并且将所生成的信息发送到熵编码器240。关于预测的信息可以在熵编码器240中被编码并且以比特流的形式被输出。
64.帧内预测器222可以通过参考当前图片中的样本来预测当前块。根据预测模式,参考样本可以位于当前块的附近或与当前块分开。在帧内预测中,预测模式可以包括多种非定向模式和多种定向模式。非定向模式可以包括例如dc模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33种定向预测模式或65种定向预测模式。然而,这仅仅是示例,并且根据设置,可以使用更多或更少的定向预测模式。帧内预测器222可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
65.帧间预测器221可以基于参考图片上的运动矢量所指定的参考块(参考样本阵列)来推导用于当前块的预测块。此时,为了减少在帧间预测模式下发送的运动信息的量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为基础来预测运动信息。运动信息可以包括运动矢量和参考图片索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前图片中存在的空间邻近块和参考图片中存在的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可以彼此相同或彼此不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等,并且包括时间邻近块的参考图片可以被称为并置图片(colpic)。例如,帧间预测器221可以基于邻近块来配置运动信息候选列表,并且生成指示哪个候选被用于推导当前块的运动矢量和/或参考图片索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测器221可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式下,与合并模式不同,不能发送残差信号。在运动信息预测(运动矢量预测、mvp)模式的情况下,邻近块的运动矢量可以被用作运动矢量预测项,并且可以通过发信号通知运动矢量差来指示当前块的运动矢量。
66.预测器220可以基于各种预测方法来生成预测信号。例如,预测器可以将帧内预测或帧间预测应用于对一个块的预测,并且也可以同时应用帧内预测和帧间预测。这可以被称为组合的帧间和帧内预测(ciip)。另外,预测器可以基于帧内块复制(ibc)预测模式或调色板模式,以便对块执行预测。ibc预测模式或调色板模式可以被用于诸如屏幕内容编码
(scc)这样的游戏等的内容图像/视频编码。尽管ibc基本上在当前图片中执行预测,但是其执行方式与帧间预测的相似之处在于,它推导当前图片中的参考块。即,ibc可以使用本文档中描述的帧间预测技术中的至少一种。调色板模式可以被视为帧内编码或帧内预测的示例。当应用调色板模式时,可以基于关于调色板索引和调色板表的信息来发信号通知图片中的样本值。
67.通过预测器(包括帧间预测器221和/或帧内预测器222)生成的预测信号可以被用于生成重构信号或者生成残差信号。变换器232可以通过向残差信号应用变换技术来生成变换系数。例如,变换技术可以包括离散余弦变换(dct)、离散正弦变换(dst)、karhunen-lo
è
ve变换(klt)、基于图的变换(gbt)或有条件非线性变换(cnt)中的至少一种。这里,gbt意指当用曲线图表示像素之间的关系信息时从曲线图获得的变换。cnt是指基于使用所有先前重构的像素生成的预测信号而获得的变换。另外,变换处理可以被应用于大小相同的正方形像素块,或者可以应用于大小可变的块而非正方形的块。
68.量化器233可以对变换系数进行量化并且将它们发送到熵编码器240,并且熵编码器240可以对量化的信号(关于量化变换系数的信息)进行编码并且输出比特流中的编码后的信号。关于量化变换系数的信息可以被称为残差信息。量化器233可以基于系数扫描顺序将块类型的量化变换系数重新布置成一维矢量形式,并且基于一维矢量形式的量化变换系数来生成关于量化变换系数的信息。熵编码器240可以执行诸如例如指数哥伦布(exponential golomb)、上下文自适应可变长度编码(cavlc)、上下文自适应二进制算术编码(cabac)等这样的各种编码方法。熵编码器240可以对除了量化变换系数(例如,语法元素的值等)之外的视频/图像重构所需的信息一起或分别进行编码。编码后的信息(例如,编码后的视频/图像信息)可以以比特流的形式在网络抽象层(nal)的单元基础上进行发送或存储。视频/图像信息还可以包括关于诸如适应参数集(aps)、图片参数集(pps)、序列参数集(sps)、视频参数集(vps)等这样的各种参数集的信息。另外,视频/图像信息还可以包括常规约束信息。在本文档中,从编码装置发送到/发信号通知给解码装置的信息和/或语法元素可以被包括在视频/图片信息中。视频/图像信息可以通过上述编码过程进行编码并且被包括在比特流中。可以通过网络传输比特流,或者将其存储在数字存储介质中。这里,网络可以包括广播网络、通信网络和/或类似物,并且数字存储介质可以包括诸如usb、sd、cd、dvd、蓝光、hdd、ssd等这样的各种存储介质。发送从熵编码器240输出的信号的发送器(未示出)或存储其的存储器(未示出)可以被配置成编码装置200的内部/外部元件,或者发送器可以被包括在熵编码器240中。
69.从量化器233输出的量化变换系数可以被用于生成预测信号。例如,通过经由解量化器234和逆变换器235对量化变换系数应用解量化和逆变换,可以重构残差信号(残差块或残差样本)。加法器155将重构后的残差信号与从帧间预测器221或帧内预测器222输出的预测信号相加,使得可以生成重构信号(重构图片、重构块、重构样本阵列)。当如在应用跳过模式的情况下一样没有针对处理目标块的残差时,可以将预测块用作重构块。加法器250可以被称为重构器或重构块生成器。所生成的重构信号可以被用于当前图片中的下一处理目标块的帧内预测,并且如随后描述的,可以被用于通过滤波进行的下一图片的帧间预测。
70.此外,在图片编码和/或重构处理中,可以应用亮度映射与色度缩放(lmcs)。
71.滤波器260可以通过向重构信号应用滤波来改善主观/客观视频质量。例如,滤波
器260可以通过向重构图片应用各种滤波方法来生成修改后的重构图片,并且可以将修改后的重构图片存储在存储器270中,尤其是存储在存储器270的dpb中。各种滤波方法可以包括例如解块滤波、样本自适应偏移、自适应环形滤波、双边滤波等。如随后在对每种滤波方法的描述中所讨论的,滤波器260可以生成与滤波相关的各种信息,并且将所生成的信息发送到熵编码器240。关于滤波的信息可以在熵编码器240中被编码并且以比特流的形式被输出。
72.已发送到存储器270的修改后的重构图片可以被用作帧间预测器221中的参考图片。据此,编码装置可以避免在应用帧间预测时编码装置100和解码装置中的预测失配,并且还可以提高编码效率。
73.存储器270的dpb可以存储修改后的重构图片,以便使用它作为帧间预测器221中的参考图片。存储器270可以存储从中已推导(或编码了)运动信息的当前图片中的块的运动信息和/或已经重构的图片中的块的运动信息。所存储的运动信息可以被发送到帧间预测器221,以被用作邻近块的运动信息或时间邻近块的运动信息。存储器270可以存储当前图片中的重构块的重构样本,并且将它们发送到帧内预测器222。
74.图3是示意性地描述可以应用本文档的视频/图像解码装置的配置的图。在下文中,解码装置可以包括图像解码装置和/或视频解码装置。
75.参照图3,视频解码装置300可以包括熵解码器310、残差处理器320、预测器330、加法器340、滤波器350和存储器360。预测器330可以包括帧间预测器331和帧内预测器332。残差处理器320可以包括解量化器321和逆变换器322。根据实施方式,上面已描述的熵解码器310、残差处理器320、预测器330、加法器340和滤波器350可以由一个或更多个硬件组件(例如,解码器芯片组或处理器)构成。另外,存储器360可以包括解码图片缓冲器(dpb),并且可以由数字存储介质构成。硬件组件还可以包括存储器360作为内部/外部组件。
76.当输入包括视频/图像信息的比特流时,解码装置300可以与据此已在图2的编码装置中处理视频/图像信息的处理对应地重构图像。例如,解码装置300可以基于与从比特流获得的与块分割相关的信息来推导单元/块。解码装置300可以通过使用在编码装置中应用的处理单元来执行解码。因此,解码的处理单元可以是例如编码单元,可以从编码树单元或最大编码单元顺着四叉树结构、二叉树结构和/或三叉树结构对其进行分割。可以用编码单元推导一个或更多个变换单元。可以通过再现装置来再现通过解码装置300解码并输出的重构图像信号。
77.解码装置300可以以比特流的形式接收从图2的编码装置输出的信号,并且可以通过熵解码器310对接收到的信号进行解码。例如,熵解码器310可以对比特流进行解析,以推导图像重构(或图片重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可以包括关于诸如自适应参数集(aps)、图片参数集(pps)、序列参数集(sps)、视频参数集(vps)等这样的各种参数集的信息。另外,视频/图像信息还可以包括常规约束信息。解码装置可以进一步基于关于参数集的信息和/或常规约束信息对图片进行解码。在本文档中,随后将描述的发信号通知/接收的信息和/或语法元素可以通过解码过程被解码并且从比特流获得。例如,熵解码器310可以基于诸如指数哥伦布编码、cavlc、cabac等这样的编码方法对比特流中的信息进行解码,并且可以输出图像重构所需的语法元素的值和关于残差的变换系数的量化值。更具体地,cabac熵解码方法可以接收与比特流中的各语法元素对应的bin,使用解
码目标语法元素信息以及邻近和解码目标块的解码信息或者在先前步骤中解码的符号/bin的信息来确定上下文模型,根据所确定的上下文模型来预测bin生成概率并且对bin执行算术解码以生成与每个语法元素值对应的符号。这里,cabac熵解码方法可以在确定上下文模型之后使用针对下一个符号/bin的上下文模型解码的符号/bin的信息来更新上下文模型。在熵解码器310中解码的信息当中的关于预测的信息可以被提供到预测器(帧间预测器332和帧内预测器331),并且在熵解码器310中已对其执行了熵解码的残差值(即,量化变换系数)和关联的参数信息可以被输入到残差处理器320。残差处理器320可以推导残差信号(残差块、残差样本、残差样本阵列)。另外,在熵解码器310中解码的信息当中的关于滤波的信息可以被提供到滤波器350。此外,接收从编码装置输出的信号的接收器(未示出)还可以将解码装置300构成为内部/外部元件,并且接收器可以是熵解码器310的组件。此外,根据本文档的解码装置可以被称为视频/图像/图片解码装置,并且解码装置可以被分为信息解码器(视频/图像/图片信息解码器)和样本解码器(视频/图像/图片样本解码器)。信息解码器可以包括熵解码器310,并且样本解码器可以包括解量化器321、逆变换器322、加法器340、滤波器350、存储器360、帧间预测器332和帧内预测器331中的至少一个。
78.解量化器321可以通过对量化变换系数进行解量化来输出变换系数。解量化器321可以将量化变换系数重新布置为二维块的形式。在这种情况下,可以基于已在编码装置中执行的系数扫描的顺序来执行重新布置。解量化器321可以使用量化参数(例如,量化步长信息)对量化变换系数执行解量化,并且获得变换系数。
79.逆变换器322通过对变换系数进行逆变换来获得残差信号(残差块、残差样本阵列)。
80.预测器可以对当前块执行预测,并且生成包括用于当前块的预测样本的预测块。预测器可以基于从熵解码器310输出的关于预测的信息来确定向当前块应用帧内预测还是帧间预测,并且可以确定特定帧内/帧间预测模式。
81.预测器320可以基于各种预测方法来生成预测信号。例如,预测器可以将帧内预测或帧间预测应用于对一个块的预测,并且也可以同时应用帧内预测和帧间预测。这可以被称为组合的帧间和帧内预测(ciip)。另外,预测器可以基于帧内块复制(ibc)预测模式或调色板模式,以便对块执行预测。ibc预测模式或调色板模式可以被用于诸如屏幕内容编码(scc)这样的游戏等的内容图像/视频编码。尽管ibc基本上在当前图片中执行预测,但是其执行方式与帧间预测的相似之处在于,它推导当前图片中的参考块。即,ibc可以使用本文档中描述的帧间预测技术中的至少一种。调色板模式可以被视为帧内编码或帧内预测的示例。当应用调色板模式时,关于调色板表和调色板索引的信息可以被包括在视频/图像信息中并被发信号通知。
82.帧内预测器331可以通过参考当前图片中的样本来预测当前块。根据预测模式,参考样本可以位于当前块的附近或与当前块分开。在帧内预测中,预测模式可以包括多种非定向模式和多种定向模式。帧内预测器331可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
83.帧间预测器332可以基于参考图片上的运动矢量所指定的参考块(参考样本阵列)来推导用于当前块的预测块。此时,为了减少在帧间预测模式下发送的运动信息的量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为基础来预测运动信息。
运动信息可以包括运动矢量和参考图片索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前图片中存在的空间邻近块和参考图片中存在的时间邻近块。例如,帧间预测器332可以基于邻近块来配置运动信息候选列表,并且基于接收到的候选选择信息来推导当前块的运动矢量和/或参考图片索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示用于当前块的帧间预测的模式的信息。
84.加法器340将所获得的残差信号与从预测器(帧间预测器332或帧内预测器331)输出的预测信号(预测块、预测样本阵列)相加,使得可以生成重构信号(重构图片、重构块、重构样本阵列)。当如在应用跳过模式的情况下一样没有针对处理目标块的残差时,可以将预测块用作重构块。
85.加法器340可以被称为重构器或重构块生成器。所生成的重构信号可以用于当前图片中的要处理的下一块的帧内预测,可以通过如下所述的滤波而输出,或者可以用于下一图片的帧间预测。
86.此外,亮度映射与色度缩放(lmcs)可以被应用于图片解码处理。
87.滤波器350可以通过向重构后的信号应用滤波来改善主观/客观图像质量。例如,滤波器350可以通过向重构图片应用各种滤波方法来生成修改后的重构图片,并且将修改后的重构图片存储在存储器360中,具体地,存储在存储器360的dpb中。各种滤波方法可以包括例如解块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。
88.存储在存储器360的dpb中的(修改后的)重构图片可以被用作帧间预测器332中的参考图片。存储器360可以存储从其推导(或解码出)当前图片中的运动信息的块的运动信息和/或已经重构的图片中的块的运动信息。所存储的运动信息可以被发送到帧间预测器332,以便被用作空间邻近块的运动信息或时间邻近块的运动信息。存储器360可以存储当前图片中的重构块的重构样本,并且将重构样本传送到帧内预测器331。
89.在本公开中,在编码装置200的滤波器260、帧间预测器221和帧内预测器222中描述的实施方式可以与解码装置300的滤波器350、帧间预测器332和帧内预测器331相同或者被分别对应于解码装置300的滤波器350、帧间预测器332和帧内预测器331进行应用。
90.如上所述,在执行视频编码时,执行预测以提高压缩效率。可以通过预测生成包括用于当前块的预测样本的预测块,即,目标编码块。在这种情况下,预测块包括空间域(或像素域)中的预测样本。在编码装置和解码装置中同样地推导预测块。编码装置可以通过向解码装置发信号通知关于原始块而非原始块的原始样本值本身与预测块之间的残差的信息(残差信息)来提高图像编码效率。解码装置可以基于残差信息来推导包括残差样本的残差块,可以通过将残差块与预测块相加来生成包括重构样本的重构块,并且可以生成包括重构块的重构图片。
91.可以通过变换和量化过程来生成残差信息。例如,编码装置可以推导原始块与预测块之间的残差块,可以通过对残差块中所包括的残差样本(残差样本阵列)执行变换过程来推导变换系数,可以通过对变换系数执行量化过程来推导量化变换系数,并且可以(通过比特流)向解码装置发信号通知相关残差信息。在这种情况下,残差信息可以包括诸如值信息、位置信息、变换方案、变换核以及量化变换系数的量化参数这样的信息。解码装置可以基于残差信息执行解量化/逆变换过程,并且可以推导残差样本(或残差块)。解码装置可以
基于预测块和残差块来生成重构图片。此外,编码装置可以通过对量化变换系数进行解量化/逆变换来推导残差块以供后续图片的帧间预测参考,并且可以生成重构图片。
92.帧内预测可以指示基于当前块所属于的图片(在下文中,称为当前图片)中的参考样本生成用于当前块的预测样本的预测。当对当前块应用帧内预测时,可以推导要用于当前块的帧内预测的邻近参考样本。当前块的邻近参考样本可以包括作为与大小为nwxnh的当前块的左边界相邻的样本和与大小为nwxnh的当前块的左上角邻近的样本的总共2xnh个样本、作为与当前块的上边界相邻的样本和与当前块的右上角邻近的样本的总共2xnh个样本、以及邻近当前块的左上角的一个样本。可替选地,当前块的邻近参考样本可以包括多列的上邻近样本和多行的左邻近样本。此外,当前块的邻近参考样本可以包括与大小为nwxnh的当前块的右边界相邻的总共nh个样本、与当前块的下边界相邻的共nw个样本以及邻近当前块的右下角的一个样本。
93.然而,当前块的邻近参考样本中的一些尚未被解码或可能不可用。在这种情况下,解码装置可以通过用可用样本替换不可用样本来构造将用于预测的邻近参考样本。可替选地,可以通过可用样本的插值来配置将用于预测的邻近参考样本。
94.如果推导邻近参考样本,则(i)可以基于当前块的邻近参考样本的平均值或插值来推导预测样本,并且(ii)可以基于当前块的邻近参考样本当中的关于预测样本的特定(预测)方向上存在的参考样本来推导预测样本。(i)的情况可以被称为是非定向模式或非角度模式,并且(ii)的情况可以被称为定向模式或角度模式。
95.另外,可以通过邻近参考样本当中的基于当前块的预测样本的位于当前块的帧内预测模式的预测方向的第一邻近样本和位于与预测方向相反的方向的第二邻近样本的插值来生成预测样本。上述情况可以被称为线性内插帧内预测(lip)。此外,可以使用线性模型基于亮度样本来生成色度预测样本。这种情况可以被称为lm模式或cclm(色度分量lm)模式。
96.此外,可以基于经滤波的邻近参考样本推导当前块的临时预测样本,并且还可以通过对根据帧内预测模式在常规邻近参考样本(即,未经滤波的邻近参考样本)当中推导的至少一个参考样本与临时预测样本进行加权求和来推导当前块的预测样本。前述情况可被称作位置相关的帧内预测(pdpc)。
97.此外,可以通过在当前块的邻近多参考样本线当中选择具有最高预测准确度的参考样本线来使用位于对应线中的预测方向上的参考样本推导预测样本,并且可以通过用于向解码装置指示(发信号通知)此时使用的参考样本线的方法来执行帧内预测编码。前述情况可被称为多参考线(mrl)帧内预测或基于mrl的帧内预测。
98.此外,可以通过将当前块划分成垂直或水平子分区而基于相同帧内预测模式执行帧内预测,并且可以子分区为单位来推导并使用邻近参考样本。也就是说,在此情况下,用于当前块的帧内预测模式同等地应用于子分区,并且可以子分区为单位来推导并使用邻近参考样本,由此在一些情况下增强帧内预测性能。这种预测方法可以被称为帧内子分区(isp)帧内预测或基于isp的帧内预测。
99.前述帧内预测方法可以被称为与帧内预测模式分开的帧内预测类型。帧内预测类型可称为诸如帧内预测技术或附加帧内预测模式之类的各种术语。例如,帧内预测类型(或附加帧内预测模式等)可以包括前述lip、pdpc、mrl及isp中的至少一者。不同于诸如lip、
pdpc、mrl及isp之类的特定帧内预测类型的一般帧内预测方法可被称作正常帧内预测类型。如果不应用特定帧内预测类型,那么通常可应用正常帧内预测类型,并且可以基于前述帧内预测模式执行预测。此外,如果必要的话,也可针对推导的预测样本执行后处理滤波。
100.具体地,帧内预测过程可以包括帧内预测模式/类型确定步骤、邻近参考样本推导步骤和基于帧内预测模式/类型的预测样本推导步骤。此外,如有必要,可以对推导的预测样本执行后滤波步骤。
101.如果应用帧内预测,则可以通过使用邻近块的帧内预测模式来确定应用于当前块的帧内预测模式。例如,解码装置可以基于接收到的最可能模式(mpm)索引来选择基于当前块的邻近块(例如,左邻近块和/或上邻近块)的帧内预测模式和附加候选模式推导出的mpm列表内的mpm候选之一,或者可以基于其余帧内预测模式信息选择未包括在mpm候选(和平面模式)中的其余帧内预测模式之一。mpm列表可以被构造为包括平面模式作为候选或不包括平面模式作为候选。例如,如果mpm列表包括平面模式作为候选,则mpm列表可以具有六个候选。如果mpm列表不包括平面模式作为候选,则mpm列表可以具有五个候选。如果mpm列表不包括平面模式作为候选,则可以发信号通知指示当前块的帧内预测模式是否为非平面模式的非平面标志(例如,intra_luma_not_planar_flag)。例如,可以首先发信号通知mpm标志,并且当mpm标志的值为1时可以发信号通知mpm索引和非平面标志。此外,当非平面标志的值为1时可以发信号通知mpm索引。在这种情况下,为什么mpm列表被构造为不包括平面模式作为候选被首先通过首先发信号通知标志(非平面标志)来检查模式是否是平面模式的原因是因为平面模式总是被视为mpm,而不是平面模式不是mpm。
102.例如,可以基于mpm标志(例如,intra_luma_mpm_flag)来指示应用于当前块的帧内预测模式是存在于mpm候选(和平面模式)当中还是存在于其余模式当中。mpm标志的值1可以指示当前块的帧内预测模式存在于mpm候选(和平面模式)内。mpm标志的值0可以指示当前块的帧内预测模式不存在于mpm候选(和平面模式)内。非平面标志(例如,intra_luma_not_planar_flag)的值0可以指示当前块的帧内预测模式是平面模式。非平面标志的值1可以指示当前块的帧内预测模式不是平面模式。可以以mpm_idx或intra_luma_mpm_idx语法元素的形式发信号通知mpm索引。可以以rem_intra_luma_pred_mode或intra_luma_mpm_remainder语法元素的形式发信号通知其余帧内预测模式信息。例如,其余帧内预测模式信息可以通过按照预测模式编号的顺序对其余帧内预测模式进行编索引来指示所有帧内预测模式当中不包括在mpm候选(和平面模式)中的其余帧内预测模式之一。帧内预测模式可以是亮度分量(样本)的帧内预测模式。在下文中,帧内预测模式信息可以包括mpm标志(例如,intra_luma_mpm_flag)、非平面标志(例如,intra_luma_not_planar_flag)、mpm索引(例如,mpm_idx或intra_luma_mpm_idx)或其余帧内预测模式信息(rem_intra_luma_pred_mode或intra_luma_mpm_remainder)中的至少一个。在本文档中,mpm列表可以称为各种术语,诸如mpm候选列表和candmodelist。如果将基于矩阵的帧内预测(mip)应用于当前块,则可以发信号通知用于mip的单独的mpm标志(例如,intra_mip_mpm_flag)、mpm索引(例如,intra_mip_mpm_idx)或其余帧内预测模式信息(例如,intra_mip_mpm_remainder),并且不发信号通知非平面标志。
103.换句话说,通常,如果分割了用于图像的块,则要编码的当前块和邻近块具有相似的图像特征。因此,当前块和邻近块将具有彼此相同或相似的帧内预测模式的概率较高。因
此,编码器可以使用邻近块的帧内预测模式,以便对当前块的帧内预测模式进行编码。
104.例如,编码器/解码器可以构造当前块的最可能模式(mpm)。mpm列表也可以被指示为mpm候选列表。在这种情况下,mpm可以表示在帧内预测模式的编码时通过考虑当前块与邻近块之间的相似性来提高编码效率所使用的模式。如上所述,mpm列表可以被构造为包括平面模式或者可以通过排除平面模式来构造mpm列表。例如,如果mpm列表包括平面模式,则mpm列表的候选数量可以为6。此外,如果mpm列表不包括平面模式,则mpm列表的候选数量可以为5。编码器/解码器可以构造包括五个或六个mpm的mpm列表。
105.为了构造mpm列表,可以考虑默认帧内模式、邻近帧内模式和推导出的帧内模式这三种类型的模式。在这种情况下,对于邻近帧内模式,可以考虑两个邻近块,即,左邻近块和上邻近块。
106.如果如上所述,mpm列表被构造为不包括平面模式,则平面模式被排除在列表之外,并且mpm列表候选的数量可以设置为5。
107.此外,帧内预测模式的非定向模式(或非角度模式)可以包括基于当前块的邻近参考样本的平均值的dc模式或基于插值的平面模式。
108.当应用帧间预测时,编码装置/解码装置的预测器可以通过以块为单位执行帧间预测来推导预测样本。当对当前块执行预测时可以应用帧间预测。即,编码/解码装置的预测器(更具体地,帧间预测器)可以通过以块为单位执行帧间预测来推导预测样本。帧间预测可以表示通过依赖于除当前图片之外的图片的数据元素(例如,样本值或运动信息)的方法推导的预测。当对当前块应用帧间预测时,可以基于由参考图片索引指示的参考图片上的运动矢量指定的参考块(参考样本阵列)推导用于当前块的预测块(预测样本阵列)。在这种情况下,为了减少在帧间预测模式中发送的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单位来预测当前块的运动信息。运动信息可以包括运动矢量和参考图片索引。运动信息可以进一步包括帧间预测类型(l0预测、l1预测、bi预测等)信息。在应用帧间预测的情况下,邻近块可以包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可以彼此相同或彼此不同。时间邻近块可以被称为诸如并置参考块、并置cu(colcu)等的名称,并且包括时间邻近块的参考图片可以被称为并置图片(colpic)。例如,可以基于当前块的邻近块来配置运动信息候选列表,并且可以发信号通知指示选择(使用)哪个候选的标志或索引信息以便推导当前块的运动矢量和/或参考图片索引。可以基于各种预测模式来执行帧间预测,并且例如,在跳过模式和合并模式的情况下,当前块的运动信息可以与选择的邻近块的运动信息相同。在跳过模式的情况下,与合并模式不同,可以不发送残差信号。在运动矢量预测(mvp)模式的情况下,所选择的邻近块的运动矢量可以用作运动矢量预测器并且可以发信号通知运动矢量差。在这种情况下,可以通过使用运动矢量预测器和运动矢量差的和来推导当前块的运动矢量。
109.运动信息可以进一步包括根据帧间预测类型(l0预测、l1预测、bi预测等)的l0运动信息和/或l1运动信息。l0方向运动矢量可被称为l0运动矢量或mvl0,而l1方向运动矢量可以被称为l1运动矢量或mvl1。基于l0运动矢量的预测可以称为l0预测,基于l1运动矢量的预测可以称为l1预测,并且基于l0运动矢量和l1运动矢量这两者的预测可以称为双向预测。这里,l0运动矢量可以指示与参考图片列表l0相关联的运动矢量,并且l1运动矢量可以
指示与参考图片列表l1相关联的运动矢量。参考图片列表l0可以包括按照输出顺序在当前图片之前的图片,并且参考图片列表l1可以包括按照输出顺序在当前图片之后的图片作为参考图片。先前的图片可以被称为前向(参考)图片并且随后的图片可以被称为反向(参考)图片。参考图片列表l0可以进一步包括按照输出顺序在当前图片之后的图片作为参考图片。在这种情况下,可以首先在参考图片列表l0中对先前图片进行索引,并且然后可以对后续图片进行索引。参考图片列表l1可以进一步包括按照输出顺序在当前图片之前的图片作为参考图片。在这种情况下,可以首先在参考图片列表l1中对后续图片进行索引,并且然后可以对先前图片进行索引。这里,输出顺序可以对应于图片顺序计数(poc)顺序。
110.图4例示了本文档的实施方式适用的示意性视频/图像编码方法的示例。
111.图4中公开的方法可以由上述图2的编码装置200执行。具体地,s400可以由编码装置200的帧间预测器221或帧内预测器222执行,s410、s420、s430、s440可以由编码装置200的减法器231、变换器232、量化器233和熵编码器240执行。
112.参照图4,编码装置可以通过当前块的预测来推导预测样本(s400)。编码装置可以确定是对当前块执行帧间预测还是帧内预测,并且可以基于rd成本确定特定帧间预测模式或特定帧内预测模式。根据所确定的模式,编码装置可以推导当前块的预测样本。
113.编码装置可以通过比较当前块的原始样本和预测样本来推导残差样本(s410)。
114.编码装置可以通过残差样本的变换来推导变换系数(s420),并对推导出的变换系数进行量化以推导量化变换系数(s430)。
115.编码装置可以对包括预测信息和残差信息的图像信息进行编码,并以比特流的形式输出编码后的图像信息(s440)。预测信息是与预测处理相关的信息并且可以包括预测模式信息和运动信息(例如,当应用帧间预测时)。残差信息可以包括关于量化变换系数的信息。可以对残差信息进行熵编码。
116.输出的比特流可以通过存储介质或网络向解码装置递送。
117.图5示出了本公开的实施方式可以适用的示意性视频/图像解码方法的示例。
118.图5中公开的方法可以由上述图3的解码装置300执行。具体地,s500可以由解码装置300的帧间预测器332或帧内预测器331执行。在s500中通过解码比特流中所包括的预测信息来推导相关语法元素的值的处理可以由解码装置300的熵解码器310执行。s510、s520、s530和s540可以分别由解码装置300的熵解码器310、解量化器321、逆变换器322和加法器340执行。
119.参照图5,解码装置可以执行与编码装置所执行的操作相对应的操作。解码装置可以基于接收到的预测信息对当前块执行帧间预测或帧内预测并且推导预测样本(s500)。
120.解码装置可以基于接收到的残差信息推导当前块的量化变换系数(s510)。解码装置可以通过熵解码从残差信息推导量化变换系数。
121.解码装置可以对量化变换系数进行解量化,以推导变换系数(s520)。
122.解码装置通过变换系数的逆变换处理来推导残差样本(s530)。
123.解码装置可以基于预测样本和残差样本生成当前块的重构样本,并基于此生成重构图片(s540)。如上所述,此后可以将环路内滤波处理进一步应用于重构图片。
124.此外,如上所述,编码装置的量化器可以对变换系数应用量化以推导量化变换系数,并且编码装置的解量化器或解码装置的解量化器可以通过将解量化应用到量化变换系
数来推导变换系数。
125.通常,在视频/图像编码中,量化率可以被改变,并且压缩可以使用改变的量化率来被调整。从实现的角度考虑,考虑到复杂度,可以使用量化参数(qp)来代替直接使用量化率。例如,可以使用0到63的整数值的量化参数,并且每个量化参数值可以对应实际的量化率。用于亮度分量(亮度样本)的量化参数(qpy)和用于色度分量(色度样本)的量化参数(qpc)可以被不同地设置。
126.量化过程将变换系数(c)作为输入,并将其除以量化率(qstep)以获得基于此的量化变换系数(c’)。在这种情况下,考虑到计算复杂度,量化率乘以缩放以形成整数,并且可以通过与缩放值相对应的值来执行移位操作。可以基于量化率和缩放值的乘积来推导量化缩放(quantization scale)。也就是说,量化缩放可以根据qp被推导。量化缩放可以被应用于变换系数(c)以基于其推导量化变换系数(c’)。
127.解量化过程是量化过程的逆过程,并且将量化变换系数(c’)乘以量化率(qstep),并且基于此可以获得重构变换系数(c”)。在这种情况下,可以根据量化参数推导层级缩放(level scale),并且可以将层级缩放应用于量化变换系数(c’)以基于此推导重构的变换系数(c”)。由于变换和/或量化过程中的损失,重构的变换系数(c”)可能与原始变换系数(c)略有不同。因此,编码装置以与解码装置相同的方式执行解量化。
128.此外,可以应用根据频率调整量化强度的自适应频率加权量化技术。自适应频率加权量化技术是一种对每个频率应用不同量化强度的方法。自适应频率加权量化可以使用预定义的量化缩放矩阵为每个频率不同地应用量化强度。即,可以进一步基于量化缩放矩阵来执行上述量化/解量化过程。例如,可以根据当前块的大小和/或应用于当前块的预测模式是帧间预测还是帧内预测,使用不同的量化缩放矩阵以便于生成当前块的残差信号。量化缩放矩阵可以被称为量化矩阵或缩放矩阵。量化缩放矩阵可以是预定义的。此外,对于自适应频率缩放,可以在编码装置中配置/编码关于量化缩放矩阵的频率量化缩放信息,并发信号通知给解码装置。频率量化缩放信息可以被称为量化缩放信息。频率量化缩放信息可以包括缩放列表数据(scaling_list_data)。可以基于缩放列表数据推导(修改的)量化缩放矩阵。此外,频率量化缩放信息可以包括指示缩放列表数据是否存在的存在标志信息。可替选地,当缩放列表数据在更高层级(例如,sps)被发信号通知时,可以进一步包括指示缩放列表数据是否在更低层级(例如,pps或图块组报头等)被修改的信息。
129.如上所述,可以发信号通知缩放列表数据以指示用于量化/解量化的(基于频率的量化)缩放矩阵。
130.hevc标准中存在对默认和用户定义的缩放矩阵的信令支持,并且目前在vvc标准中采用。但是,对于vvc标准,已并入对以下功能的信令的附加支持。
[0131]-缩放矩阵的三种模式:off、default、user_defined
[0132]-更大的块大小范围(亮度为4x4到64x64,色度为2x2到32x32)
[0133]-矩形变换块(tb)
[0134]-相关量化
[0135]-多重变换选择(mts)
[0136]-将高频系数归零的大型变换
[0137]-帧内子块分区(isp)
[0138]-帧内块复制(ibc)(也称为当前图片参考(cpr))
[0139]-所有tb大小的默认缩放矩阵,默认值为16
[0140]
应该注意的是,缩放矩阵不应应用于所有大小的变换跳过(ts)和二次变换(st)。
[0141]
在下文中,将详细描述用于支持vvc标准中的缩放列表的高层级语法(hsl)结构。首先,可以通过序列参数集(sps)发信号通知标志以指示缩放列表可用于正在解码的当前编码的视频序列(cvs)。然后,如果该标志可用,则可以解析附加标志以指示特定数据是否存在于sps的缩放列表中。这可以在表1中示出。
[0142]
表1是来自于sps的摘录,以描述cvs的缩放列表。
[0143]
[表1]
[0144][0145]
在表1的sps语法中包括的语法元素的语义可以在下面的表2中被示出。
[0146]
[表2]
[0147][0148]
参考上面的表1和表2,可以从sps发信号通知scaling_list_enabled_flag。例如,如果scaling_list_enabled_flag的值为1,则可以指示在变换系数的缩放处理中使用了缩放列表,并且如果scaling_list_enabled_flag的值为0,则可以指示在变换系数的缩放处理中没有使用缩放列表。在这种情况下,当scaling_list_enabled_flag的值为1时,sps_scaling_list_data_present_flag可以进一步从sps发信号通知。例如,当sps_scaling_list_data_present_flag的值为1时,可能指示在sps中存在scaling_list_data()语法结构,而当sps_scaling_list_data_present_flag的值为0时,则可以指示scaling_list_data()语法结构不存在于sps中。如果sps_scaling_list_data_present_flag不存在,则可以推断sps_scaling_list_data_present_flag的值为0。
[0149]
此外,标志(例如,pps_scaling_list_data_present_flag)可以首先在图片参数集(pps)中被解析。如果此标志可用,则可以在pps中解析scaling_list_data()。如果scaling_list_data()最初存在于sps中并且稍后在pps中解析,则pps中的数据可能优先
于sps中的数据。下面的表3是来自于pps的摘录以描述缩放列表数据。
[0150]
[表3]
[0151][0152][0153]
在表3的pps语法中包括的语法元素的语义可以在下面的表4中示出。
[0154]
[表4]
[0155][0156]
参考表3和表4,可以从pps发信号通知pps_scaling_list_data_present_flag。例如,当pps_scaling_list_data_present_flag的值为1时,可以指示被用于参考pps的图片的缩放列表数据是基于由活动的sps指定的缩放列表和pps指定的缩放列表推导的。当pps_scaling_list_data_present_flag的值为0时,可以指示用于参考pps的图片的缩放列表数据被推断为与由活动sps指定的缩放列表相同。此时,当scaling_list_enabled_flag的值为0时,pps_scaling_list_data_present_flag的值应为0。当scaling_list_enabled_flag的值为1时,sps_scaling_list_data_present_flag的值为0,并且pps_scaling_list_data_present_flag的值为0,可以使用默认缩放列表数据以推导如在缩放列表数据语义中描述的扫描因子。
[0157]
可以在vvc标准中为以下量化矩阵大小定义缩放列表。这可以在下表5中示出。量化矩阵的支持范围已扩展到包括hevc标准中的2x2和64x64以及4x4、8x8、16x16和32x32。
[0158]
[表5]
[0159]
量化矩阵的大小sizeid1x102x214x42
8x8316x16432x32564x646
[0160]
表5定义所有使用的量化矩阵大小的sizeid。可以使用上述组合为sizeid、编码单元的预测模式(cupredmode)和颜色分量的不同组合指配matrixid。这里可以考虑的cupredmode可以是帧间、帧内和ibc(帧内块复制)。帧内模式和ibc模式可以被同等对待。因此,对于给定的颜色分量可以共享相同的matrixid。这里,可以考虑的颜色分量可以是亮度(luma(y))和两种颜色分量(cb和cr)。分配的matrixid可以表示如下表6所示。
[0161]
表6根据sizeid、预测模式和颜色分量示出matrixid。
[0162]
[表6]
[0163][0164]
下面的表7示出用于缩放列表数据的语法结构的示例(例如,scaling_list_data())。
[0165]
[表7]
[0166][0167]
包括在表7的语法中的语法元素的语义可以在下面的表8中示出。
[0168]
[表8]
[0169]
[0170]
[0171][0172]
参考表7和表8,为了提取缩放列表数据(例如,scaling_list_data()),对于从1到6的所有sizeid和从0到5的matrixid,缩放列表数据可以应用于2x2色度分量和64x64亮度分量。然后,可以解析标志(例如,scaling_list_pred_mode_flag)以指示缩放列表的值是否与参考缩放列表的值相同。参考缩放列表可以由scaling_list_pred_matrix_id_delta[sizeid][matrixid]表示。然而,当scaling_list_pred_mode_flag[sizeid][matrixid]为1时,可以显式地发信号通知缩放列表数据。当scaling_list_pred_matrix_id_delta为0时,可以使用带有默认值的default模式,如表9至表12中所示。对于scaling_list_pred_matrix_id_delta的其他值,如表8的语义所示,可以首先确定refmatrixid。
[0173]
在显式信令中,即,在user defined模式中,可以首先确定发信号通知的系数的最大数量。在量化块大小为2x2、4x4和8x8的情况下,可以发信号通知所有系数。对于大于8x8的大小,即,16x16、32x32和64x64,只能发信号通知64个系数。即,可以发信号通知8x8基本矩阵并且可以从基本矩阵对其余系数进行上采样。
[0174]
下面的表9是示例,其示出scalinglist[1][matrixid][i](i=0..3)的默认值。
[0175]
[表9]
[0176]
i0123scalinglist[1][1,2,4,5][i]16161616
[0177]
下面的表10是示例,其示出scalinglist[2][matrixid][i](i=0..15)的默认值。
[0178]
[表10]
[0179]
i0123456789101112131415scalinglist[2][0..5][i]16161616161616161616161616161616
[0180]
下面的表11是示例,其示出scalinglist[3..5][matrixid][i](i=0..63)的默认值。
[0181]
[表11]
[0182]
i0123456789101112 131415scalinglist[3..5][0..5][i]16161616161616161616161616 161616
i-160123456789101112 131415scalinglist[3..5][0..5][i]16161616161616161616161616 161616i-320123456789101112 131415scalinglist[3..5][0..5][i]16161616161616161616161616 161616i-480123456789101112 131415scalinglist[3..5][0..5][i]16161616161616161616161616 161616
[0183]
下面的表12是示例,其示出scalinglist[6][matrixid][i](i=0..63)的默认值。
[0184]
[表12]
[0185]
i0123456789101112131415scalinglist[6][0,3][i]16161616161616161616161616161616i-160123456789101112131415scalinglist[6][0,3][i]16161616161616161616161616161616i-320123456789101112131415scalinglist[6][0,3][i]16161616161616161616161616161616i-480123456789101112131415scalinglist[6][0,3][i]16161616161616161616161616161616
[0186]
如上所述,默认缩放列表数据可以被用于推导缩放因子(scalingfactor)。
[0187]
5-维阵列的缩放因子scalingfactor[sizeid][sizeid][matrixid][x][y](其中x,y=0..(1<<sizeid)-1)可以表示根据表5中所示的变量sizeid和上表6中所示的变量matrixid的缩放因子的阵列。
[0188]
下表13示出基于上述默认缩放列表根据量化矩阵的大小推导缩放因子的示例。
[0189]
[表13]
[0190]
[0191]
[0192][0193]
对于矩形大小的量化矩阵,5维阵列的scalingfactor[sizeidw][sizeidh][matrixid][x][y]的缩放因子(其中x=0..(1《《sizeidw)-1,y=0..(1《《sizeidh)-1,sizeidw!=sizeidh)可以根据下表15中所示的变量sizeidw和sizeidh表示缩放因子阵列,并且可以如下表14中所示推导。
[0194]
[表14]
[0195][0196]
对于满足以下条件的样本,方形大小的量化矩阵应归零。
[0197]-x》32
[0198]-y》32
[0199]-解码的tu未使用默认变换模式进行编码,(1《《sizeidw)==32和x》16
[0200]-解码的tu未使用默认变换模式进行编码,(1《《sizeidh)==32且y》16
[0201]
下面的表15示出根据量化矩阵的大小的sizeidw和sizeidh的示例。
[0202]
[表15]
[0203]
量化矩阵的大小sizeidwsizeidh100211422833164432556466
[0204]
此外,作为示例,上述缩放列表数据(例如,scaling_list_data())可以基于如表16中所示的语法结构和如下表17中所示的语义来描述。如上所述,缩放列表、缩放矩阵、缩放因子等可以基于表16和表17中公开的缩放列表数据(例如,scaling_list_data())中包括的语法元素推导。可以应用与表5到表15中相同或者相似的程序。
[0205]
[表16]
[0206]
[0207]
[表17]
[0208]
[0209]
[0210][0211]
在下文中,此文档提出一种用于在量化/解量化过程中应用自适应频率加权量化技术时有效地发信号通知缩放列表数据的方法。
[0212]
图6示例性地示出编码的图像/视频的分层结构。
[0213]
参照图6,编码的图像/视频被划分为处理图像/视频解码过程和自身的vcl(视频编码层)、发送和存储编码的信息的子系统、以及存在于vcl和子系统这两者之间的网络抽象层(nal),并且负责网络自适应功能。
[0214]
vcl可以生成包括压缩图像数据(切片数据)的vcl数据,或者生成包括图片参数集(picture parameter set:pps)、序列参数集(sequence parameter set:sps)、视频参数集(video parameter set:vps)等的参数集或图像解码过程额外必要的补充增强信息(sei)消息。
[0215]
在nal中,可以通过将报头信息(nal单元报头)添加到在vcl中生成的原始字节序列有效载荷(rbsp)来生成nal单元。在这种情况下,rbsp指的是在vcl中生成的切片数据、参数集、sei消息等。nal单元报头可以包括根据相应nal单元中包括的rbsp数据指定的nal单元类型信息。
[0216]
此外,nal单元可以根据在vcl中生成的rbsp被划分为vcl nal单元和非vcl nal单元。vcl nal单元可以意指包括关于图像的信息(切片数据)的nal单元,并且非vcl nal单元可以意指包含解码图像所必要的信息(参数集或sei消息)的nal单元。
[0217]
上述vcl nal单元和非vcl nal单元可以通过根据子系统的数据标准附加报头信息而通过网络发送。例如,可以将nal单元转换为诸如h.266/vvc文件格式、实时传输协议(rtp)、传输流(ts)等预定标准的数据形式,并且通过各种网络进行发送。
[0218]
如上所述,在nal单元中,可以根据相应nal单元中包括的rbsp数据结构来指定nal单元类型,并且可以在nal单元报头中存储和发信号通知关于该nal单元类型的信息。
[0219]
例如,取决于nal单元是否包括关于图像(切片数据)的信息,nal单元可以被粗略地分类成vcl nal单元类型和非vcl nal单元类型。vcl nal单元类型可以根据vcl nal单元中包括的图片的属性和类型进行分类,并且非vcl nal单元类型可以根据参数集的类型进行分类。
[0220]
以下是根据非vcl nal单元类型中包括的参数集的类型指定的nal单元类型的示例。
[0221]-aps(自适应参数集)nal单元:用于包括aps的nal单元的类型
[0222]-dps(解码参数集)nal单元:用于包括dps的nal单元的类型
[0223]-vps(视频参数集)nal单元:用于包括vps的nal单元的类型
[0224]-sps(序列参数集)nal单元:用于包括sps的nal单元的类型
[0225]-pps(图片参数集)nal单元:用于包括pps的nal单元的类型
[0226]-ph(图片报头)nal单元:用于包括ph的nal单元的类型
[0227]
上述nal单元类型具有用于nal单元类型的语法信息,并且该语法信息可以被存储在nal单元报头中并发信号通知。例如,语法信息可以是nal_unit_type,并且nal单元类型可以由nal_unit_type值指定。
[0228]
此外,如上所述,一个图片可以包括多个切片,并且一个切片可以包括切片报头和切片数据。在这种情况下,一个图片报头可以被进一步添加到一个图片中的多个切片(切片报头和切片数据集)。图片报头(图片报头语法)可以包括通常适用于图片的信息/参数。在本文档中,切片可以与图块组混合或替换为图块组。此外,在本文档中,切片报头可以与类型组报头混合或替换为类型组报头。
[0229]
切片报头(切片报头语法)可以包括通常适用于切片的信息/参数。aps(aps语法)或pps(pps语法)可以包括通常适用于一个或多个切片或图片的信息/参数。sps(sps语法)可以包括通常适用于一个或多个序列的信息/参数。vps(vps语法)可以包括通常适用于多个层的信息/参数。dps(dps语法)可以包括通常适用于整个视频的信息/参数。dps可以包括与编码的视频序列(cvs)的级联相关的信息/参数。在本文档中,高层级语法(hls)可以包括aps语法、pps语法、sps语法、vps语法、dps语法、图片报头语法和切片报头语法中的至少一个。
[0230]
在本文档中,在编码装置中编码并以比特流的形式发信号通知给解码装置的图像/视频信息可以包括切片报头中包括的信息、图片报头中包括的信息、aps中包括的信息、pps中包括的信息、sps中包括的信息、在vps中包括的信息和/或在dps中包括的信息、以及图片中的图片分区相关信息、帧内/帧间预测信息、残差信息、环内滤波信息等。另外,图像/视频信息可以进一步包括nal单元报头的信息。
[0231]
另一方面,在vvc标准中使用aps(自适应参数集)来发送用于alf(自适应环路滤波器)和lmcs(色度缩放与亮度映射)过程的信息。此外,aps具有可扩展的结构,使得其可用于发送其他数据结构(即,不同的语法结构)。因此,该文档提出一种通过aps解析/发信号通知用于频率加权量化的缩放列表数据的方法。
[0232]
缩放列表数据是可以在如上所述的量化/解量化过程中应用的用于频率加权量化的量化缩放信息,并且可以是将缩放因子与每个频率索引相关联的列表。
[0233]
作为实施方式,下表18示出用于发送缩放列表数据的自适应参数集(aps)结构的示例。
[0234]
[表18]
[0235][0236]
包括在表18的aps语法中的语法元素的语义可以在下面的表19中被示出。
[0237]
[表19]
[0238][0239]
参考表18和表19,adaptation_parameter_set_id语法元素可以在aps中被解析/发信号通知。adaptation_parameter_set_id为aps提供标识符以供其他语法元素参考。即,可以基于adaptation_parameter_set_id语法元素来识别aps。adaptation_parameter_set_id语法元素可以称为aps id信息。aps可以在图片之间共享并且可以在图片内的不同图块组中不同。
[0240]
此外,aps_params_type语法元素可以在aps中被解析/发信号通知。aps_params_type可以指示从aps发送的aps参数的类型,如下表20所示。aps_params_type语法元素可以被称为aps参数类型信息或aps类型信息。
[0241]
例如,下表20是示出可以通过aps发送的aps参数的类型的示例,并且可以与aps_params_type的值相对应地指示每个aps参数类型。
[0242]
[表20]
[0243]
aps_params_typeaps_params_type的名称aps参数的类型
0alf_apsalf参数1lmcs_apslmcs参数2scaling_apsscaling列表数据参数3..7预留预留
[0244]
参考表20,aps_params_type可以是用于对相应aps的类型进行分类的语法元素。当aps_params_type的值为0时,相应aps类型可以是alf_aps,相应aps可以携带alf数据,并且alf数据可以包括用于推导滤波器/滤波器系数的alf参数。当aps_params_type的值为1时,相应aps类型可以是lmcs_aps,相应aps可以携带lmcs数据,并且lmcs数据可以包括用于推导lmcs模型/bins/映射索引的lmcs参数。当aps_params_type的值为2时,相应aps类型可以是scaling_aps,相应aps可以携带scaling列表数据,并且scaling列表数据可以包括用于推导基于频率的量化缩放矩阵/缩放因子/缩放列表的值的缩放列表数据参数。
[0245]
例如,如上表18中所示,aps_params_type语法元素可以在aps中解析/发信号通知,并且在这种情况下,当aps_params_type指示值为0时(即,aps_params_type指示alf_aps)alf数据(即,alf_data())可以被解析/发信号通知。可替选地,当aps_params_type的值为1(即,aps_params_type指示lmcs_aps)时,lmcs数据(即,lmcs_data())可被解析/发信号通知。可替选地,当aps_params_type的值为2(即,aps_params_type指示scaling_aps)时,可以解析/发信号通知缩放列表数据(即,scaling_list_data())。
[0246]
此外,参考表18和19,aps_extension_flag语法元素可以在aps中被解析/发信号通知。aps_extension_flag可以指示是否存在aps扩展数据标志(aps_extension_data_flag)语法元素。例如,可以使用aps_extension_flag以为vvc标准的更高版本提供扩展点。aps_extension_flag语法元素可以被称为aps扩展标志。例如,当aps_extension_flag的值为0时,可以指示aps rbsp语法结构中不存在aps扩展数据标志(aps_extension_data_flag)。可替选地,当aps_extension_flag的值为1时,可以指示aps rbsp语法结构中存在aps扩展数据标志(aps_extension_data_flag)。
[0247]
aps_extension_data_flag语法元素可以基于aps_extension_flag语法元素被解析/发信号通知。aps_extension_data_flag语法元素可以称为aps扩展数据标志。例如,当aps_extension_flag的值为1时,可以解析/发信号通知aps_extension_data_flag,并且在这种情况下,aps_extension_data_flag可以具有任意值。
[0248]
如上所述,根据本文档的实施方式,可以通过分配用于指示缩放列表数据的数据类型(例如,scaling_aps)和解析/发信号通知指示数据类型的语法元素(例如,aps_params_type)来承载有效的缩放列表数据。即,根据本文档的实施方式,可以使用其中集成缩放列表数据的aps的结构。
[0249]
另一方面,在当前的vvc标准中,可以基于指示缩放列表数据是否是在sps(序列参数集)中可用来指示缩放列表数据(即,scaling_list_data())的使用。如果标志(即,sps_scaling_list_enabled_flag)被启用(即,1或真作为指示缩放列表数据可用的情况),则可以解析另一个标志(即,sps_scaling_list_data_present_flag)。此外,当sps_scaling_list_data_present_flag被启用时(即,当其指示在sps中存在缩放列表数据,并且为1或真时),可以解析缩放列表数据(即,scaling_list_data())。也就是说,在当前的vvc标准中,sps发信号通知缩放列表数据。在这种情况下,因为sps启用会话协商并且通常被带外发送,
所以可以不必将缩放列表数据作为与确定变换块的缩放因子有关的信息进行发送,并且可以在解码过程中使用。如果编码器在sps中发送缩放列表数据,解码器需要预留大量内存来存储从缩放列表数据获得的信息,并且还需要预留该信息直到用于变换块解码。因此,这个过程在sps层级处可能是不必要的,并且在更低层级处解析/发信号通知可能更有效。因此,该文档提出一种分层结构来有效地解析/发信号通知缩放列表数据。
[0250]
在一个实施方式中,缩放列表数据不是从更高层级语法sps解析/发信号通知的,而是从更低层级语法pps、图块组报头、切片报头和/或其他适当报头解析/发信号通知的。
[0251]
例如,sps语法可以如下表21所示进行修改。下面的表21示出用于描述针对cvs的缩放列表的sps语法示例。
[0252]
[表21]
[0253][0254]
包括在表21的sps语法中的语法元素的语义可以在下面的表22中被示出。
[0255]
[表22]
[0256][0257]
参考表21和22,可以在sps中解析/发信号通知scaling_list_enabled_flag语法元素。该scaling_list_enabled_flag语法元素可以基于其值为0还是1来指示缩放列表是否可用。例如,当scaling_list_enabled_flag的值为1时,其指示缩放列表被用于变换系数的缩放处理中,并且当scaling_list_enabled_flag的值为0时,可以指示在变换系数的缩放处理中没有使用缩放列表。
[0258]
即,scaling_list_enabled_flag语法元素可以称为缩放列表可用标志,并且可以在sps(或sps层级)处发信号通知。换句话说,基于在sps层级处发信号通知的scaling_list_enabled_flag的值,可以确定缩放列表对于参考相应sps的cvs中的图片基本上可用。此外,可以通过在比sps更低的层级(例如,pps、图块组报头、切片报头和/或其他适当报头)发信号通知附加可用标志来获得缩放列表。
[0259]
此外,sps_scaling_list_data_present_flag语法元素可以不在sps中解析/发信号通知。也就是说,可以通过从sps移除sps_scaling_list_data_present_flag语法元素来解析/发信号通知标志信息。sps_scaling_list_data_present_flag语法元素可以是指示缩放列表数据的语法结构是否存在于sps中的信息。可以基于标志信息解析/发信号通知由sps指定的缩放列表数据。然而,可以通过移除sps_scaling_list_data_present_flag语法元素而在sps层级中不解析/发信号通知缩放列表数据。
[0260]
如上所述,根据本文档的实施方式,缩放列表(scaling_list_data())不是在sps层级处直接发信号通知的,并且仅缩放列表可用标志(scaling_list_enabled_flag)可以被配置成被显式地发信号通知。此后,可以基于sps中的可用标志(scaling_list_enabled_
flag)在更低层级语法中单独解析缩放列表(scaling_list_data())。因此,根据本文档的实施方式,由于可以根据分层结构解析/发信号通知缩放列表数据,所以可以进一步改进编码效率。
[0261]
另一方面,缩放列表数据的存在或不存在以及缩放列表数据的使用以工具启用标志的存在为条件。这里,工具启用标志可以是指示是否启用相应工具的信息,并且可以包括例如scaling_list_enabled_flag语法元素。即,scaling_list_enabled_flag语法元素可以被用于通过指示缩放列表数据是否可用来指示是否启用缩放列表。然而,此工具应该对解码器具有语法限制。也就是说,必须存在约束标志来通知解码器此工具当前未用于解码编码的视频序列(cvs)。因此,此文档提出一种方法,其中应用用于缩放列表数据的约束标志。
[0262]
作为实施方式,下表23示出用于使用约束标志发信号通知缩放列表数据的语法(例如,一般约束信息语法)的示例。
[0263]
[表23]
[0264][0265]
表23的语法中包括的语法元素的语义可以在下面的表24中被示出。
[0266]
[表24]
[0267][0268]
参考表23和24,可以通过general_constraint_info()解析/发信号通知约束标志。general_constraint_info()可以被称为关于一般约束信息字段或约束标志的信息。例如,no_scaling_list_constraint_flag语法元素可以用作约束标志。此处,约束标志可用于指定一致性比特流属性。例如,当no_scaling_list_constraint_flag语法元素的值为1时,scaling_list_enabled_flag指示必须指定为0的比特流一致性要求,并且当no_scaling_list_constraint_flag语法元素的值为0时,可以指示不存在限制。
[0269]
此外,如上所述,根据本文档的实施方式,可以通过分层结构来递送缩放列表数据。因此,该文档提出一种可以通过切片报头解析/发信号通知的缩放列表数据的结构。这里,切片报头可以被称为图块组报头,或者可以与图片报头混合或被替换为图片报头。
[0270]
作为实施方式,下面的表25示出用于发信号通知缩放列表数据的切片报头语法的示例。
[0271]
[表25]
[0272][0273]
表25的切片报头语法中包括的语法元素的语义可以如下面的表26所表达。
[0274]
[表26]
[0275][0276][0277]
参考表25和表26,slice_pic_parameter_set_id语法元素可以在切片报头中被解析/发信号通知。slice_pic_parameter_set_id语法元素可以指示使用中的pps的标识符。即,slice_pic_parameter_set_id语法元素是用于识别在相应切片中参考的pps的信息,并且可以指示pps_pic_parameter_set_id的值。slice_pic_parameter_set_id的值必须在0到63的范围内。slice_pic_parameter_set_id语法元素可以被称为切片参考的pps标识信息或pps id信息。
[0278]
此外,slice_scaling_list_enabled_flag语法元素可以在切片报头中被解析/发信号通知。slice_scaling_list_enabled_flag语法元素可以指示缩放列表在当前切片中是否可用。例如,当slice_scaling_list_enabled_flag的值为1时,可以指示当前切片中缩放列表可用,并且当slice_scaling_list_enabled_flag的值为0时,可以指示当前切片中缩放列表不可用。可替选地,如果slice_scaling_list_enabled_flag不存在于切片报头中,则可以推断其值为0。
[0279]
在这种情况下,是否解析slice_scaling_list_enabled_flag语法元素可以基于在更高层级语法(即,sps)中发信号通知的scaling_list_enabled_flag语法元素来确定。例如,当从sps发信号通知的scaling_list_enabled_flag的值为1时(即,当确定在更高层级处缩放列表数据可用时),从切片报头解析slice_scaling_list_enabled_flag,并且使用相应切片中的缩放列表确定是否执行缩放处理。
[0280]
此外,slice_scaling_list_aps_id语法元素可以在切片报头中被解析/发信号通知。slice_scaling_list_aps_id语法元素可以指示相应切片中参考的aps的标识符。即,slice_scaling_list_aps_id语法元素可以指示包括由相应切片所参考的缩放列表数据的aps的id信息(adaptation_parameter_set_id)。另一方面,与slice_scaling_list_aps_id具有相同aps id信息(adaptation_parameter_set_id)的aps nal单元(即,包括缩放列表数据的aps nal单元)的temporalid(即,临时id)必须小于或等于要编码的切片nal单元的temporalid(即,临时id)。
[0281]
此外,可以基于slice_scaling_list_enabled_flag语法元素来确定是否解析slice_scaling_list_aps_id语法元素。例如,当slice_scaling_list_aps_id的值为1时(即,当确定在切片报头中缩放列表可用时),可以解析slice_scaling_list_aps_id。此后,可以从解析的slice_scaling_list_aps_id所指示的aps获得缩放列表数据。
[0282]
此外,当具有相同值的aps id信息(adaptation_parameter_set_id)的多个缩放数据aps(包括缩放列表数据的多个aps)被同一图片中的两个或更多个切片参考时,多个具有相同值(adaptation_parameter_set_id)的aps id信息的缩放数据aps必须包括相同的内容。
[0283]
此外,当存在上面所提及的语法元素时,切片报头语法元素slice_pic_parameter_set_id、slice_pic_order_cnt_lsb和slice_temporal_mvp_enabled_flag中的每个的值在编码的图片的所有切片报头中必须相同。
[0284]
如上所述,根据本文档的实施方式,可以使用分层结构来有效地发信号通知缩放列表数据。即,可以通过首先发信号通知指示缩放列表数据在更高层级处是否可用(sps语法)的启用标志(例如,scaling_list_enabled_flag),并且然后在更低层级(例如,切片报头、图片报头等)处发信号通知附加可用标志(例如,slice_scaling_list_enabled_flag)来确定是否在每个更低层级处使用缩放列表数据。此外,由相应切片或图块组所参考的aps id信息(例如,slice_scaling_list_aps_id)通过更低层级(例如,切片报头、图片报头等)发信号通知,并且缩放列表数据可以从由aps id信息识别的aps推导。
[0285]
此外,本文档可以在根据分层结构发信号通知缩放列表数据中应用诸如上面表25和26中提出的方法,并且缩放列表数据可以通过切片报头的结构被递送,如下表27中所示。
[0286]
作为实施方式,下表27示出用于发信号通知缩放列表数据的切片报头语法的示
例。这里,切片报头可以被称为图块组报头,或者可以与图片报头混合或被替换为图片报头。
[0287]
[表27]
[0288][0289]
表27的切片报头语法中包括的语法元素的语义可以在下面的表28中被示出。
[0290]
[表28]
[0291][0292]
参考上面的表27和表28,可以在切片报头中解析/发信号通知slice_pic_parameter_set_id语法元素。slice_pic_parameter_set_id语法元素可以指示使用中的pps的标识符。即,slice_pic_parameter_set_id语法元素是用于识别在相应的切片中参考的pps的信息,并且可以指示pps_pic_parameter_set_id的值。slice_pic_parameter_set_id的值必须在0至63的范围内。slice_pic_parameter_set_id语法元素可以被称为由切片参考的pps标识信息或pps id信息。
[0293]
此外,slice_scaling_list_aps_id语法元素可以在切片报头中被解析/发信号通
知。slice_scaling_list_aps_id语法元素可以指示相应切片中参考的aps的标识符。也就是说,slice_scaling_list_aps_id语法元素可以指示包括由相应切片所参考的缩放列表数据的aps的id信息(adaptation_parameter_set_id)。例如,与slice_scaling_list_aps_id具有相同aps id信息(adaptation_parameter_set_id)的aps nal单元(即,包括缩放列表数据的aps nal单元)的temporalid(即,临时id)必须小于或等于要编码的切片nal单元的temporalid(即,临时id)。
[0294]
在这种情况下,是否解析slice_scaling_list_aps_id语法元素可以基于在更高层级语法(即,sps)中发信号通知的scaling_list_enabled_flag语法元素来被确定。例如,当由sps发信号通知的scaling_list_enabled_flag的值为1时(即,当确定在更高层级处缩放列表数据可用时),可以从切片报头解析slice_scaling_list_aps_id。此后,可以从解析的slice_scaling_list_aps_id所指示的aps获取缩放列表数据。
[0295]
即,根据本实施方式,因为在sps中的相应标志(例如,scaling_list_enabled_flag)被启用时可以解析包括缩放列表数据的aps id,如上表25所示,基于在更高层级语法(即,sps)中发信号通知的scaling_list_enabled_flag语法元素,可以解析包括要在更低层级(例如,切片报头或图片报头)中参考的缩放列表数据的aps id(例如,slice_scaling_list_aps_id)信息。
[0296]
此外,该文档提出一种使用多个aps来发信号通知缩放列表数据的方法。在下文中,将描述根据本文档的实施方式的有效地发信号通知包括缩放列表数据的多个aps id的方法。这种方法在比特流合并期间很有用。
[0297]
作为实施方式,下面的表29示出用于使用多个aps发信号通知缩放列表数据的切片报头语法的示例。这里,切片报头可以被称为图块组报头,或者可以与图片报头混合或被替换为图片报头。
[0298]
[表29]
[0299][0300]
表29的切片报头语法中包括的语法元素的语义可以如下表30所示来表达。
[0301]
[表30]
[0302][0303]
参考上面的表29和表30,slice_pic_parameter_set_id语法元素可以在切片报头中被解析/发信号通知。slice_pic_parameter_set_id语法元素可以指示在slice_pic_parameter_set_id语法元素中使用的pps的标识符。即,slice_pic_parameter_set_id语法元素是用于识别在相应的切片中参考的pps的信息,并且可以指示pps_pic_parameter_set_id的值。slice_pic_parameter_set_id的值必须在0至63的范围内。slice_pic_parameter_set_id语法元素可以被称为由切片参考的pps标识信息或pps id信息。
[0304]
此外,slice_scaling_list_enabled_flag语法元素可以在切片报头中被解析/发信号通知。slice_scaling_list_enabled_flag语法元素可以指示缩放列表在当前切片中是否可用。例如,当slice_scaling_list_enabled_flag的值为1时,可以指示当前切片中缩放列表可用,并且当slice_scaling_list_enabled_flag的值为0时,可以指示当前切片中缩放列表不可用。可替选地,当切片报头中不存在slice_scaling_list_enabled_flag时,可以推断其值为0。
[0305]
在这种情况下,是否解析slice_scaling_list_enabled_flag语法元素可以基于在更高层级语法(即,sps)中发信号通知的scaling_list_enabled_flag语法元素来确定。例如,当从sps发信号通知的scaling_list_enabled_flag的值为1时(即,当确定在更高层处缩放列表数据可用时),从切片报头解析slice_scaling_list_enabled_flag,并且可以使用相应切片中的缩放列表确定是否执行缩放处理。
[0306]
此外,num_scaling_list_aps_ids_minus1语法元素可以在切片报头中被解析/发信号通知。num_scaling_list_aps_ids_minus1语法元素可以是用于指示包括由相应切片所参考的缩放列表数据的aps的数量的信息。例如,num_scaling_list_aps_ids_minus1语法元素的值加1而获得的值可以是aps的数量。num_scaling_list_aps_ids_minus1的值必须在0到7的范围内。
[0307]
这里,可以基于slice_scaling_list_enabled_flag语法元素来确定是否解析num_scaling_list_aps_ids_minus1语法元素。例如,当slice_scaling_list_enabled_
flag的值为1时(即,确定在相应切片中缩放列表数据可用时),可以解析num_scaling_list_aps_ids_minus1。在这种情况下,slice_scaling_list_aps_id[i]语法元素可以基于num_scaling_list_aps_ids_minus1的值来被解析/发信号通知。
[0308]
即,slice_scaling_list_aps_id[i]可以指示包括第i个缩放列表数据(即,第i个缩放数据aps)的aps的标识符(adaptation_parameter_set_id)。换句话说,可以发信号通知aps id信息与由num_scaling_list_aps_ids_minus1语法元素所指示的aps的数量一样多。另一方面,具有与slice_scaling_list_aps_id[i]相同的aps id信息(adaptation_parameter_set_id)的aps nal单元(即,包括缩放列表数据的aps nal单元)的temporalid(即,临时id)必须小于或等于要编码的切片nal单元的temporalid(即,临时id)。
[0309]
此外,当具有相同值的aps id信息(adaptation_parameter_set_id)的多个缩放数据aps(包括缩放列表数据的多个aps)被同一图片中的两个或更多个切片参考时,具有相同值(adaptation_parameter_set_id)的aps id信息的多个缩放数据aps必须包括相同的内容。
[0310]
此外,本公开提出了一种根据分层结构使缩放列表数据在发信号通知缩放列表数据时不被冗余地发信号通知的方案。作为实施方式,可以从图片参数集(pps)移除缩放列表数据的信令。缩放列表数据可以由sps或aps和/或另一适当报头集完全发信号通知。
[0311]
作为实施方式,下表31示出了不在pps中发信号通知缩放列表数据的pps语法的示例。
[0312]
[表31]
[0313][0314]
下表32为例示可以移除以便避免表31的pps语法中的缩放列表数据的冗余信令的语法元素(例如,pps_scaling_list_data_present_flag)的语义的示例。
[0315]
[表32]
[0316][0317]
参考上面的表31和表32,可以从pps移除用于在pps中发信号通知缩放列表数据的信息(例如,pps_scaling_list_data_present_flag语法元素)。pps_scaling_list_data_
present_flag语法元素可以基于其值是0还是1来表示是否由pps发信号通知缩放列表数据。例如,如果pps_scaling_list_data_present_flag语法元素的值等于1,则它可以表示用于参考pps的图片的缩放列表数据是基于由活动sps指定的缩放列表和由pps指定的缩放列表数据推导出的。如果pps_scaling_list_data_present_flag语法元素的值等于0,则它可以表示用于参考pps的图片的缩放列表数据被推断为等于由活动sps指定的值。也就是说,pps_scaling_list_data_present_flag语法元素可以为用于表示是否存在从pps发信号通知的缩放列表数据的信息。
[0318]
也就是说,在本实施方式中,为了防止缩放列表数据被冗余地信令,可以通过如以上表31中那样移除pps_scaling_list_data_present_flag语法元素(即,通过不发信号通知pps_scaling_list_data_present_flag语法元素)来使缩放列表数据不被pps解析/发信号通知。
[0319]
此外,本公开提出了一种用于在aps中发信号通知缩放列表矩阵的方案。现有方案使用三种模式(即,off(关闭)、default(默认)和user_defined(用户定义)模式)。off模式表示缩放列表数据不应用于变换块。default模式表示在生成缩放矩阵时使用固定值。user_defined模式表示基于块大小、预测模式和颜色分量来使用缩放矩阵。当前在vvc中支持的缩放矩阵的总数为44,因此与hevc中的28的缩放矩阵的总数相比大大地增加。当前,缩放列表数据可以由sps发信号通知,并且可以有条件地存在于pps中。由于缩放列表数据由aps发信号通知,因此sps和pps对相同数据的冗余信令是不必要的,因此可以被移除。
[0320]
例如,在当前vvc中定义的缩放矩阵通过使用scaling_list_enabled_flag表示在sps中是否启用标志。如果表示启用标志,那么在用于变换系数的缩放处理中使用缩放列表,而如果表示未启用标志,那么在用于变换系数的缩放处理中不使用缩放列表(例如,off模式)。此外,可以解析与表示缩放列表数据是否存在于sps中相关的sps_scaling_list_data_present_flag。除了sps中的信令之外,缩放列表数据还可以存在于pps中。如果pps_scaling_list_data_present_flag表示在pps中启用标志,那么缩放列表数据可以存在于pps中。如果缩放列表数据存在于sps和pps两者中,那么来自pps的缩放列表数据可以用于参考活动pps的帧中。在scaling_list_enable_flag表示启用标志但缩放列表数据仅存在于sps中而不存在于pps中的情况下,来自sps的缩放列表数据可以由帧参考。在scaling_list_enable_flag表示启用标志且缩放列表数据不存在于sps或pps中的情况下,可以使用default模式。此外,可以在缩放列表数据本身内发信号通知default模式的使用。如果显式地发信号通知缩放列表数据,则可以使用user_defined模式。可以使用从缩放列表发信号通知的信息来确定给定变换块的缩放因子。为此,提议在aps中发信号通知缩放列表数据。
[0321]
当前,在vvc中采用和使用缩放列表数据,并且vvc中支持的缩放矩阵比hevc中的缩放矩阵更广泛。在vvc中支持的缩放矩阵可以针对亮度选择从4
×
4到64
×
64的块大小并且针对色度选择从2
×
2到32
×
32的块大小。此外,可以集成矩形变换块(tb)大小、相依量化、多个变换选择、具有归零高频率系数的大变换、帧内子块分割(isp)和帧内块复制(ibc)。帧内块复制(ibc)和帧内编码模式可以共享相同的缩放矩阵。
[0322]
因此,在user_defined模式的情况下,矩阵的数量可以如下发信号通知。
[0323]-matrixtype:30=2(针对帧内&ibc/帧间)
×
3(y/cb/cr分量)
×
5(正方形tb大小:针对亮度,从4
×
4到64
×
64,针对色度,从2
×
2到32
×
32)
[0324]-matrixtype_dc:14=2(针对帧内&ibc/帧间
×
1针对y分量)
×
3(tb大小:16
×
16,32
×
32,64
×
64) 4(2针对帧内&ibc/帧间
×
2针对cb/cr分量)
×
2(tb大小:16
×
16,32
×
32)
[0325]
dc值可以相对于具有16
×
16、32
×
32和64
×
64的大小的缩放矩阵进行单独编码。如果变换块(tb)大小小于8
×
8,那么可以针对一个缩放矩阵中的所有元素执行信令。如果变换块(tb)大小等于或大于8
×
8,那么可以仅相对于作为默认缩放矩阵的一个8
×
8缩放矩阵中的64个元素执行信令。为了获得大小大于8
×
8的正方形矩阵,可以将默认8
×
8矩阵进行与必要大小对应的上采样。在使用default模式的情况下,可以将缩放矩阵的数量设置为16。因此,在vvc中支持44个不同的矩阵,而在hevc中仅支持28个矩阵。vvc中支持的缩放矩阵的数量比hevc中的缩放矩阵的数量更广泛,并且为了避免sps和/或pps中的冗余信令,作为更实际的选择,可以使用aps来发信号通知缩放列表数据。这可以避免缩放列表数据的不必要的冗余信令。
[0326]
为了解决上述问题,本公开提出了一种用于在aps中发信号通知缩放矩阵的方案。为此,缩放列表数据可以仅由aps发信号通知,而不由sps或pps中的条件存在来发信号通知。此外,aps id可以由切片报头发信号通知。
[0327]
作为实施方式,sps可以发信号通知与表示是否使用缩放列表数据相关的标志(例如,scaling_list_enable_flag),pps可以通过移除标志而不发信号通知与表示是否存在缩放列表数据相关的标志(例如,pps_scaling_list_data_present_flag),并且aps可以发信号通知缩放列表数据。此外,切片报头可以发信号通知aps id。在此情况下,如果在sps中发信号通知的scaling_list_enable_flag的值等于1(即,如果表示使用缩放列表数据),且在切片报头中不发信号通知aps id,那么可以使用默认缩放矩阵。如上文所描述的本公开的实施方式可以由如表33到表41中的语法和语义来实现。
[0328]
表33表示用于发信号通知缩放列表数据的aps结构示例。
[0329]
[表33]
[0330][0331]
上表33的aps语法中所包含的语法元素的语义可以表示为如下表34所示。
[0332]
[表34]
[0333][0334][0335]
参考上面的表33和表34,可以在aps中解析/发信号通知adaptation_parameter_set_id语法元素。adaptation_parameter_set_id提供用于参考其它语法元素的aps的标识符。也就是说,可以基于adaptation_parameter_set_id语法元素来标识aps。adaptation_parameter_set_id语法元素可以被称作aps id信息。aps可以在图片之间共享,且可以在图片中的另一切片中彼此不同。
[0336]
此外,可以在aps中解析/发信号通知aps_params_type语法元素。如下表35中所示,aps_params_type可以表示从aps发送的aps参数的类型。aps_params_type语法元素可以被称作aps参数类型信息或aps类型信息。
[0337]
例如,下表35示出了表示可以通过aps发送的aps参数的类型的示例,并且每个aps参数类型可以对应于aps_params_type值地进行表示。
[0338]
[表35]
[0339]
aps_params_typeaps_params_type的名称aps参数的类型0alf_apsalf参数1lmcs_apslmcs参数2scaling_apsscaling列表数据参数3..7预留预留
[0340]
参考上表35,aps_params_type可以是用于分类对应aps的类型的语法元素。如果aps_params_type的值等于0,那么对应aps类型可为alf_aps,对应aps可以携带alf数据,且alf数据可以包括用于推导滤波器/滤波器系数的alf参数。如果aps_params_type的值等于1,则对应的aps类型可以是lmcs_aps,对应的aps可以携带lmcs数据,并且lmcs数据可以包括用于推导lmcs模型/bin/映射索引的lmcs参数。如果aps_params_type的值等于2,那么对应aps类型可为scaling_aps,对应aps可以携带scaling列表数据,且scaling列表数据可以包括用于推导基于频率的量化缩放矩阵/缩放因子/缩放列表的值的缩放列表数据参数。
[0341]
例如,如上表33中所示,可以在aps中解析/发信号通知aps_params_type语法元
素,且在此情况下,如果aps_params_type的值等于0(即,如果aps_params_type表示alf_aps),那么可以解析/发信号通知alf数据(即,alf_data())。此外,如果aps_params_type的值等于1(即,如果aps_params_type表示lmcs_aps),则可以解析/发信号通知lmcs数据(即,lmcs_data())。此外,如果aps_params_type的值等于2(即,如果aps_params_type表示scaling_aps),那么可以解析/发信号通知缩放列表数据(即,scaling_list_data())。
[0342]
此外,参考上面的表33和表34,可以在aps中解析/发信号通知aps_extension_flag语法元素。aps_extension_flag可以指示aps扩展数据标志(aps_extension_data_flag)语法元素是否存在。例如,aps_extension_flag可以用于为vvc标准的稍后版本提供扩展点。aps_extension_flag语法元素可以被称作aps扩展标志。例如,如果aps_extension_flag的值等于0,那么其可以表示aps扩展数据标志(aps_extension_data_flag)不存在于aps rbsp语法结构中。此外,如果aps_extension_flag的值等于1,那么其可以表示aps扩展数据标志(aps_extension_data_flag)存在于aps rbsp语法结构中。
[0343]
基于aps_extension_flag语法元素,可以解析/发信号通知aps_extension_data_flag语法元素。aps_extension_data_flag语法元素可以被称作aps扩展数据标志。例如,如果aps_extension_flag的值等于1,那么可以解析/发信号通知aps_extension_data_flag,且在此情况下,aps_extension_data_flag可以具有随机值。
[0344]
如上文所描述,根据本公开的实施方式,可以通过分配用于表示缩放列表数据的数据类型(例如,scaling_aps)且通过解析/发信号通知用于表示数据类型的语法元素(例如,aps_params_type)来高效地携带缩放列表数据。也就是说,根据本公开的实施方式,可以使用其中集成了缩放列表数据的aps结构。
[0345]
此外,在发信号通知aps中的缩放列表数据时,sps可以发信号通知是否使用缩放列表数据,且基于此,可以根据aps中的aps参数类型(例如,aps_params_type)解析/发信号通知缩放列表数据。此外,在本公开的实施方式中,为了避免在上层语法中的冗余缩放列表数据的信令,可以使与表示缩放列表数据语法结构(例如,scaling_list_data())是否存在于sps或pps中相关的标志信息不从sps或pps解析/发信号通知,因此可以不在sps或pps中发信号通知缩放列表数据。这可以通过下面的表36至表39中的语法和语义来实现。
[0346]
例如,sps语法可如以下表36中那样校正。表36表示其中sps不发信号通知缩放列表数据的sps语法结构的示例。
[0347]
[表36]
[0348][0349]
表36的sps语法中所包含的语法元素的语义可以类似于下表37地修改。例如,在表36和表37中,为了避免缩放列表数据的冗余信令,可以移除包含于sps中的语法元素的一些(例如,sps_scaling_list_data_present_flag)。
[0350]
[表37]
[0351][0352]
参考上面的表36和表37,可以在sps中解析/发信号通知scaling_list_enabled_flag语法元素。基于语法元素值是0还是1,scaling_list_enabled_flag语法元素可以表示是否使用缩放列表。例如,如果scaling_list_enabled_flag的值等于1,那么其可以表示缩放列表用于变换系数的缩放处理中,而如果scaling_list_enabled_flag的值等于0,那么其可以表示缩放列表不用于变换系数的缩放处理中。
[0353]
也就是说,scaling_list_enabled_flag语法元素可以被称作缩放列表启用标志,且可以在sps(或sps层级)中发信号通知。换句话说,基于在sps层级处发信号通知的scaling_list_enabled_flag的值,可以确定缩放列表基本上相对于cvs中参考对应sps的图片使用。此外,可以通过在比sps低的层级(例如,pps、图块组报头、切片报头及和/或另一适当报头)处发信号通知附加启用标志来获得缩放列表。
[0354]
此外,sps_scaling_list_data_present_flag语法元素可以不在sps中解析/发信号通知。也就是说,通过移除sps中的sps_scaling_list_data_present_flag语法元素,可以不解析/发信号通知此标志信息。sps_scaling_list_data_present_flag语法元素是与表示缩放列表数据的语法结构是否存在于sps中相关的标志信息,并且根据此标志信息,可以解析/发信号通知由sps指定的缩放列表数据。然而,通过移除sps_scaling_list_data_present_flag语法元素,sps层级可经配置以不直接发信号通知缩放列表数据,而是仅显式地发信号通知缩放列表启用标志(scaling_list_enabled_flag)。
[0355]
此外,pps中的缩放列表数据的信令可如以下表38中那样移除。例如,下表38表示其中pps不发信号通知缩放列表数据的pps语法结构的示例。
[0356]
[表38]
[0357][0358]
表38的pps语法中所包含的语法元素的语义可以类似于下表39那样修改。例如,下表39例示了可以移除以便避免pps语法中的缩放列表数据的冗余信令的语法元素(例如,pps_scaling_list_data_present_flag)的语义。
[0359]
[表39]
[0360][0361]
参考上面的表38和表39,pps_scaling_list_data_present_flag语法元素可以不在pps中解析/发信号通知。也就是说,通过移除pps中的pps_scaling_list_data_present_flag语法元素,此标志信息可以被配置为不解析/发信号通知。pps_scaling_list_data_present_flag语法元素可以为用于表示缩放列表数据的语法结构是否存在于pps中的标志信息,并且根据此标志信息,可以解析/发信号通知由pps指定的缩放列表数据。然而,通过移除pps_scaling_list_data_present_flag语法元素,可以不直接在pps层级发信号通知缩放列表数据。
[0362]
如上所述,通过移除用于表示缩放列表数据是否存在于sps或pps层级处的标志信息,sps语法和pps语法可以被配置为使得在sps或pps层级处不直接发信号通知缩放列表数据语法。sps可以仅显式地发信号通知缩放列表启用标志(scaling_list_enabled_flag),此后,更低层级语法(例如,aps)可以基于sps中的启用标志(scaling_list_enabled_flag)而单独地解析缩放列表(scaling_list_data())。因此,根据本公开的实施方式,可以根据分层结构来解析/发信号通知缩放列表数据,因此可以进一步提高编码效率。
[0363]
此外,在发信号通知aps中的缩放列表数据时,可以在切片报头中发信号通知aps id,可以基于从切片报头获得的aps id来识别aps,且可以从所识别的aps解析/发信号通知缩放列表数据。此处,切片报头已被解释为仅一个示例,并且可以与各种报头(诸如图块组报头或图片报头)可互换地使用或替换。
[0364]
例如,下表40表示包括aps id语法元素以便发信号通知aps中的缩放列表数据的切片报头语法的示例。
[0365]
[表40]
[0366][0367]
表40的切片报头语法中所包含的语法元素的语义可以如下表41中所示地表达。
[0368]
[表41]
[0369][0370][0371]
参考上面的表40和表41,slice_pic_parameter_set_id语法元素可以在切片报头中解析/发信号通知。slice_pic_parameter_set_id语法元素可以表示正在使用的pps的标
识符。也就是说,slice_pic_parameter_set_id语法元素可以为用于标识由对应切片参考的pps的信息,并且可以表示pps_pic_parameter_set_id的值。slice_pic_parameter_set_id的值应当在0到63的范围内。slice_pic_parameter_set_id语法元素可以被称作由切片所参考的pps标识信息或pps id信息。
[0372]
此外,slice_scaling_list_present_flag语法元素可以在切片报头中解析/发信号通知。slice_scaling_list_present_flag语法元素可以为用于表示当前切片是否存在缩放列表矩阵的信息。例如,如果slice_scaling_list_present_flag的值等于1,那么其可以表示当前切片存在缩放列表矩阵,而如果slice_scaling_list_present_flag的值等于0,那么其可以表示默认缩放列表数据用于推导缩放因子(scalingfactor)阵列。此外,如果slice_scaling_list_present_flag不存在于切片报头中,那么可以推断该值等于0。
[0373]
在此情况下,是否解析slice_scaling_list_present_flag语法元素可以基于在更高层级语法(即,sps)发信号通知的scaling_list_enabled_flag语法元素来确定。例如,如果在sps中发信号通知的scaling_list_enabled_flag的值等于1(即,如果确定在更高层级处使用缩放列表数据),那么可以在切片报头中解析slice_scaling_list_present_flag,并且可以确定是否使用对应切片中的缩放列表执行缩放处理。
[0374]
此外,slice_scaling_list_aps_id语法元素可以在切片报头中解析/发信号通知。slice_scaling_list_aps_id语法元素可以表示由对应切片参考的aps的标识符。也就是说,slice_scaling_list_aps_id语法元素可以表示包含由对应切片参考的缩放列表数据的aps的id信息(adaptation_parameter_set_id)。此外,具有与slice_scaling_list_aps_id相同的aps id信息(adaptation_parameter_set_id)的aps nal单元(即,包括缩放列表数据的aps nal单元)的temporalid(即,时间id)应当等于或小于正被编码的切片nal单元的temporalid(即,时间id)。
[0375]
此外,是否解析slice_scaling_list_aps_id语法元素可以基于slice_scaling_list_present_flag语法元素来确定。例如,如果slice_scaling_list_present_flag的值等于1(即,如果缩放列表存在于切片报头中),那么可以解析slice_scaling_list_aps_id。此后,可以从由解析的slice_scaling_list_aps_id指示的aps中获得缩放列表数据。
[0376]
此外,在具有相同值的aps id信息(adaptation_parameter_set_id)的多个scaling data aps(包括缩放列表数据的多个aps)由同一图片中的两个或两个以上切片参考的情况下,具有相同值的aps id信息(adaptation_parameter_set_id)的多个scaling data aps应当包括相同内容。
[0377]
根据如上所述的表40和表41,尽管已解释在切片报头中发信号通知aps id,但这仅为一个示例,并且在本公开中,可以在图片报头或图块组报头中发信号通知aps id。
[0378]
此外,本公开提出了一种用于在另一报头集中重新定位缩放列表数据的通用方案。作为实施方式,提出了在报头集中包括缩放列表数据的通用结构。在当前vvc的情况下,aps被用作适当的报头集,但是它也可以将由nal单元类型(nut)标识的缩放列表数据封装在其报头集中。它可以如下面的表42和表43中那样实现。
[0379]
例如,下表42示出了表示nal单元类型和对应rbsp语法结构的示例。这里,如上所述,可取决于包含于对应nal单元中的rbsp数据来指定nal单元类型,且可以发信号通知关于nal单元类型的信息以存储于nal单元报头中。
[0380]
[表42]
[0381][0382]
[0383]
如上表42中所示,可以将缩放列表数据定义为一个nal单元类型的值(例如,scaling_nut),并且作为用于scaling_nut的nal单元类型的值,可以指定特定值(例如,21或未指定为nal单元类型的预留值中的一者)。scaling_nut可以是包括缩放列表数据参数集(例如,scaling_list_data_parameter集)的nal单元的类型。
[0384]
此外,可以在比aps、pps和/或另一适当报头高的层级处确定是否使用scaling_nut,或者可以在比另一nal单元类型更低的层级处确定是否使用scaling_nut。
[0385]
例如,下表43表示用于发信号通知缩放列表数据的缩放列表数据参数集的语法。
[0386]
[表43]
[0387][0388]
表43的缩放列表数据参数集语法中所包含的语法元素的语义可以如下表44中所示地表达。
[0389]
[表44]
[0390][0391][0392]
参考上面的表43和表44,缩放列表数据参数集(例如,scaling_list_data_parameter_set)可以为由用于scaling_nut的nal单元类型的值(例如,21)指定的报头集。scaling_list_data_parameter_set_id语法元素可以在缩放列表数据参数集中被解析/发
信号通知。scaling_list_data_parameter_set_id语法元素可以提供用于其它语法元素的参考的缩放列表数据的标识符。也就是说,可以基于scaling_list_data_parameter_set_id语法元素来标识缩放列表参数集。scaling_list_data_parameter_set_id语法元素可以被称作缩放列表数据参数集id信息。缩放列表数据参数集可以在图片之间共享,并且可以在图片中的不同切片中不同。
[0393]
缩放列表数据(例如,scaling_list_data语法)可以从由scaling_list_data_parameter_set_id标识的缩放列表数据参数集中解析/发信号通知。
[0394]
此外,scaling_list_data_extension_flag语法元素可以在缩放列表数据参数集中解析/发信号通知。scaling_list_data_extension_flag语法元素可以表示缩放列表数据扩展标志(scaling_list_data_extension_flag)语法元素是否存在于缩放列表数据rbsp语法结构中。例如,如果scaling_list_data_extension_flag的值等于1,那么其可以表示缩放列表数据扩展标志(scaling_list_data_extension_flag)语法元素存在于缩放列表数据rbsp语法结构中。此外,如果scaling_list_data_extension_flag的值等于0,那么其可以表示缩放列表数据扩展标志(scaling_list_data_extension_flag)语法元素不存在于缩放列表数据rbsp语法结构中。
[0395]
可以基于scaling_list_data_extension_flag语法元素解析/发信号通知scaling_list_data_extension_data_flag语法元素。scaling_list_data_extension_data_flag语法元素可以被称作用于缩放列表数据的扩展数据标志。例如,如果scaling_list_data_extension_flag的值等于1,那么可以解析/发信号通知scaling_list_data_extension_data_flag,并且在此情况下,scaling_list_data_extension_data_flag可以具有随机值。
[0396]
如上所述,根据本公开的实施方式,用于缩放列表数据的一个报头集结构可以被定义和使用,并且用于缩放列表数据的报头集可以被指定为nal单元类型(例如,scaling_nut)。在这种情况下,用于缩放列表数据的报头集可以被定义为缩放列表数据参数集(例如,scaling_list_data_parameter_set),并且由此,可以获得缩放列表数据。
[0397]
此外,本公开提出一种用于有效地编码包含于缩放列表数据中的语法元素(scaling_lsit_pred_matrix_id_delta)的方案。
[0398]
在当前vvc的情况下,使用具有左位第一的无符号整数0阶指数哥伦布编码的语法元素来对scaling_lsit_pred_matrix_id_delta语法元素进行编码。然而,为了提高编码效率,本公开的实施方式提出了用于相对于具有0到5的范围的scaling_lsit_pred_matrix_id_delta语法元素使用固定长度码(例如,u(3))进行编码的方案,如下表45中那样。在此情况下,为了提高整个范围的效率,可以通过仅使用三个位来执行编码可以是足够的。
[0399]
例如,下表45表示缩放列表数据语法结构的示例。
[0400]
[表45]
[0401][0402]
表45的缩放列表数据语法中所包含的语法元素的语义可以如下表46中所示地表达。
[0403]
[表46]
[0404]
[0405]
[0406][0407]
如上面的表45和表46中所示,可以从缩放列表数据语法中解析/发信号通知scaling_list_pred_matrix_id_delta语法元素。scaling_list_pred_matrix_id_delta语法元素可以表示用于推导缩放列表的参考缩放列表。在此情况下,在解析scaling_list_pred_matrix_id_delta时,可以使用固定长度码(例如,u(3))。
[0408]
此外,在发信号通知aps中的缩放列表数据时,可以对缩放列表矩阵施加限制。因此,本文档提出了一种限制缩放列表矩阵的数量的方法。根据本文档中提出的方法,可以获得促进实现并且限制最坏情况的存储器要求的效果。
[0409]
在实施方式中,可以限制包括缩放列表数据的aps(即,发信号通知缩放列表数据语法的aps)的数量。为此,可以添加以下约束条件。这样的约束条件是用于放置保持器。也就是说,可以使用不同的值。(应当注意,这些约束意味着放置保持器。可以使用不同的值。
[0410]
为了便于描述,包括缩放列表数据的aps(即,发信号通知缩放列表数据语法的aps)可以表示为scaling list aps。换句话说,如上所述,如果在aps中发送的aps参数类型(例如,aps_params_type)为指示缩放列表数据参数的类型(例如,scaling_aps),那么可以将在aps中发送的缩放列表数据指示为scaling list aps。
[0411]
例如,包括缩放列表数据的aps(即,scaling list aps)的总数可以小于3。当然,可以使用另一合适值。例如,可以在0至7的范围内使用另一合适值。也就是说,可以在0至7的范围内确定包括缩放列表数据的aps(即,scaling list aps)的总数。
[0412]
此外,例如,包括缩放列表数据的aps(即,scaling list aps)可以每图片仅允许一个scaling list aps。
[0413]
下表47是例示用于指示用于限制包括缩放列表数据的aps的约束条件的语法元素及其语义的示例。
[0414]
[表47]
[0415][0416]
参考表47,可以基于指示scaling list aps的aps id信息(即,aps id信息)的语法元素(例如,slice_scaling_list_aps_id)来限制包括缩放列表数据的aps(即,scaling list aps)的数量。
[0417]
例如,语法元素slice_scaling_list_aps_id可以指示切片所参考的scaling list aps的aps标识信息(即,aps id信息)。在此情况下,语法元素slice_scaling_list_aps_id的值可以限于特定值。例如,语法元素slice_scaling_list_aps_id的值可以限于在0到3的范围内。这仅仅是示例,并且可以被限制为具有另一值。对于另一示例,语法元素slice_scaling_list_aps_id的值可以限于在0到7的范围内。
[0418]
此外,例如,具有与slice_lmcs_aps_id相同的aps id(adaptation_parameter_set_id)的缩放列表aps nal单元的temporalid(即,时间id)需要小于或等于编码切片nal单元的temporalid(即,时间id)。
[0419]
此外,例如,如果具有相同aps id(adaptation_parameter_set_id)值的多个相同scaling list aps由同一图片上的两个切片参考,那么具有相同aps id(adaptation_parameter_set_id)值的多个scaling list aps需要具有相同内容。
[0420]
此外,例如,具有相同aps id(adaptation_parameter_set_id)值和相同内容的仅一个scaling list aps需要由同一图片上的一个或更多个切片参考。换句话说,同一图片内的一个或更多个切片需要参考包括缩放列表数据的相同aps。
[0421]
为了描述本文档的详细示例,已经撰写了以下附图。已经例示性地提出了在附图中撰写的详细装置的名称或详细术语的名称(例如,语法/语法元素的名称),并且本文档的技术特性不受以下附图中使用的详细名称的限制。
[0422]
图7和图8示意性地例示了根据本文档的实施方式的视频/图像编码方法和相关组件的示例。
[0423]
在图7中公开的方法可以由在图2中公开的编码装置200来执行。具体地,图7中的步骤s700可以由在图2中公开的减法器231执行。图7中的步骤s710可以由在图2中公开的变换器232执行。图7中的步骤s720到s730可以由在图2中公开的量化器233执行。图7中的步骤s740可以由在图2中公开的熵编码器240执行。此外,可以通过包括本文档中描述的实施方
式来执行图7中公开的方法。因此,省略或简单地给出与图7中的前述实施方式冗余的内容的详细描述。
[0424]
参照图7,编码装置可以推导当前块的残差样本(s700)。
[0425]
在实施方式中,首先,编码装置可以确定当前块的预测模式并推导预测样本。例如,编码装置可以确定是对当前块执行帧间预测还是执行帧内预测,并且可以基于rd成本确定详细帧间预测模式或详细帧内预测模式。编码装置可以通过基于所确定的预测模式执行预测来推导当前块的预测样本。在此情况下,可以应用本文档中所公开的诸如帧间预测或帧内预测之类的各种预测方法。此外,编码装置可以生成并编码与应用于当前块的预测相关的信息(例如,预测模式信息)。此外,编码装置可以通过比较当前块的原始样本与预测样本来推导残差样本。
[0426]
编码装置可以基于残差样本推导变换系数(s710)。
[0427]
在实施方式中,编码装置可以通过针对残差样本的变换处理来推导变换系数。在此情况下,编码装置可以通过考虑编码效率来确定是否对当前块应用变换。也就是说,编码装置可以确定变换是否应用于残差样本。例如,如果变换未应用于残差样本,那么编码装置可以推导残差样本作为变换系数。另选地,如果将变换应用于残差样本,那么编码装置可以通过对残差样本执行变换来推导变换系数。在此情况下,编码装置可以基于变换是否应用于当前块而生成并编码变换跳过标志信息。变换跳过标志信息可以为指示是将变换应用于当前块还是跳过变换的信息。
[0428]
编码装置可以基于变换系数推导量化变换系数(s720)。
[0429]
在实施方式中,编码装置可以通过将对变换系数应用量化处理来推导量化变换系数。在此情况下,编码装置可以应用依据频率而调整量化强度的频率加权量化。在此情况下,还可以基于频率特定量化缩放值来执行量化处理。可以使用缩放矩阵推导用于频率加权量化的量化缩放值。例如,编码装置/解码装置可以使用预定义的缩放矩阵。编码装置可以构造和编码用于缩放矩阵的频率特定量化缩放信息,并且可以向解码装置发信号通知频率特定量化缩放信息。频率特定量化缩放信息可以包括缩放列表数据。可以基于缩放列表数据推导(修改的)缩放矩阵。
[0430]
此外,编码装置可以按与解码装置相同的方式执行解量化处理。在此情况下,编码装置可以基于缩放列表数据推导(修改的)缩放矩阵,并且可以通过基于(修改的)缩放矩阵将解量化应用于量化变换系数来推导重构变换系数。在此情况下,由于变换/量化处理的损失,重构变换系数可以不同于初始变换系数。
[0431]
在这种情况下,缩放矩阵可以表示上述基于频率的量化缩放矩阵,并且为了便于描述,可以与量化缩放矩阵、量化矩阵、缩放矩阵或缩放列表可互换地或替换地使用,并且不限于本实施方式中使用的详细名称。
[0432]
也就是说,编码装置还可以在执行量化处理中应用频率加权量化。在此情况下,缩放列表数据可以被生成为用于缩放矩阵的信息。已经通过将表5至表17作为示例来详细描述该处理,并且因此在本实施方式中,省略了冗余内容或详细描述。
[0433]
编码装置可以基于量化变换系数生成残差信息(s730)。
[0434]
在这种情况下,残差信息是通过变换和/或量化处理生成的信息,并且可以是关于量化变换系数的信息。例如,残差信息可以包括诸如值信息、位置信息、变换方案、变换核或
量化变换系数的量化参数之类的信息。
[0435]
此外,如果在量化处理中推导量化变换系数时进一步应用频率加权量化,那么可以进一步生成用于量化变换系数的缩放列表数据。缩放列表数据可以包括用于推导量化变换系数的缩放列表参数。在此情况下,编码装置可以生成缩放列表数据相关信息,并且可以生成包括(例如)缩放列表数据的aps。
[0436]
编码装置可以编码图像信息(或视频信息)(s740)。在这种情况下,图像信息可以包括残差信息。此外,图像信息可以包括与用于推导预测样本的预测相关的信息(例如,预测模式信息)。此外,图像信息可以包括关于缩放列表数据的信息。也就是说,图像信息可以包括在编码处理中推导的各种类型的信息,并且可以通过包括各种类型的信息来编码。
[0437]
在实施方式中,图像信息可以包括根据本文档的前述实施方式的各种类型的信息,并且可以包括表1至表47中的至少一个中公开的信息。
[0438]
例如,图像信息可以包括自适应参数集(aps)。aps可以包括aps id信息和aps类型信息(aps参数的类型信息)。也就是说,可以基于aps id信息来标识aps,并且可以基于aps类型信息将与对应类型相对应的aps参数包括在aps中。例如,aps类型信息可以包括用于自适应环路滤波器(alf)参数的alf类型、用于亮度映射与色度缩放(lmcs)参数的lmcs类型以及用于缩放列表数据参数的缩放列表类型,并且可以如表35中所示。例如,当aps类型信息的值为2时,这可以指示aps类型信息为包括缩放列表数据参数的aps。
[0439]
例如,aps可以像表33(或表18)那样构造。aps id信息可以是表33和表34(或表18和表19)中描述的adaptation_parameter_set_id。aps类型信息可以为表33至表35(或表18至表20)中描述的aps_params_type。例如,如果aps参数的类型信息(例如,aps_params_type)为与指示包括缩放列表数据的aps相关的scaling_aps类型(或当aps参数的类型信息(例如,aps_params_type)的值为2时),那么aps可以包括缩放列表数据(例如,scaling_list_data())。也就是说,编码装置可以基于与指示包括缩放列表数据的aps相关的scaling_aps类型信息而通过aps发信号通知缩放列表数据(例如,scaling_list_data())。也就是说,可以基于aps类型信息(scaling_aps类型信息)将缩放列表数据包括在aps中。如上所述,缩放列表数据可以包括用于推导在量化/解量化处理中使用的缩放列表/缩放矩阵/缩放因子的缩放列表参数。换句话说,缩放列表数据可以包括用于构造缩放列表的语法元素。
[0440]
此外,例如,aps id信息可以具有在特定范围内的值。例如,aps id信息的值可以具有在从0到3或从0到7的特定范围内的值。这仅仅被描述为示例,并且aps id信息的值的范围可以具有不同的值。此外,aps id信息的值的范围可以基于aps类型信息(例如,aps_params_type)来确定。如果aps类型信息指示用于缩放列表数据的aps(例如,scaling_aps类型),那么可以基于语法元素(例如,slice_scaling_list_aps_id)(例如,在表47中那样)来指示aps id信息的值。例如,如果aps类型信息(例如,aps_params_type)指示包括缩放列表数据的aps(例如,在scaling_aps类型的情况下),那么aps id信息的值可以具有在从0到3或者从0到7的范围内的值。在此情况下,一个图片内的切片可以参考用于缩放列表数据的相同aps。另选地,如果aps类型信息(例如,aps_params_type)指示用于alf的aps(例如,在alf_aps类型的情况下),那么aps id信息的值可以具有在从0到7的范围内的值。另选地,如果aps类型信息(例如,aps_params_type)指示用于lmcs的aps(例如,在lmcs_aps类型的情
况下),那么aps id信息的值可以具有在从0到3的范围内的值。
[0441]
此外,例如,图像信息可以包括序列参数集(sps)。sps可以包括与指示是否使用缩放列表数据相关的第一启用标志信息。例如,sps可以类似于表36(或表21)而构造。第一启用标志信息可以是表36和表37(或表21和表22)中描述的scaling_list_enabled_flag。此外,sps_scaling_list_data_present_flag语法元素可以从sps移除,使得不解析/发信号通知标志信息。sps_scaling_list_data_present_flag语法元素可以为与指示缩放列表数据的语法结构是否存在于sps中相关的信息。可以基于标志信息解析/发信号通知由sps指定的缩放列表数据。然而,sps_scaling_list_data_present_flag语法元素可以被移除,并且因此sps可以被构造为不直接发信号通知缩放列表数据并且仅在sps层级显式发信号通知缩放列表启用标志(scaling_list_enabled_flag)。
[0442]
此外,例如,图像信息可以包括图片参数集(pps)。例如,pps可以像表38那样构造。在此情况下,pps可以被构造为不包括与指示是否使用缩放列表数据相关的启用标志信息。也就是说,pps可以被构造为使得通过从pps中移除pps_scaling_list_data_present_flag语法元素而不解析/发信号通知标志信息。pps_scaling_list_data_present_flag语法元素是与指示缩放列表数据的语法结构是否存在于pps中相关的标志信息。可以基于标志信息解析/发信号通知由pps指定的缩放列表数据。然而,通过移除pps_scaling_list_data_present_flag语法元素,可以不在pps层级中直接发信号通知缩放列表数据。
[0443]
在此情况下,与指示是否使用缩放列表数据相关的第一启用标志信息(例如,scaling_list_enabled_flag)可以在sps中发信号通知,并且可以不在pps中发信号通知。因此,可以基于在sps中发信号通知的第一启用标志信息(例如,当第一启用标志的值(例如,scaling_list_enabled_flag)为1或真时)获得aps中包括的缩放列表数据。
[0444]
此外,例如,图像信息可以包括报头信息。报头信息可以为与包括当前块的切片或图片相关的报头信息,并且可以包括(例如)图片报头或切片报头。报头信息可以包括缩放列表数据相关的aps id信息。包括在报头信息中的缩放列表数据相关的aps id信息可以指示包括缩放列表数据的aps的aps id信息。例如,包括在报头信息中的缩放列表数据相关的aps id信息可以为表40至表41(或表25至表28)中所描述的slice_scaling_list_aps_id,并且可以是由包括当前块的切片/图片参考的aps(包括缩放列表数据,即,scaling list aps)的id信息。也就是说,可以基于报头信息中的缩放列表数据相关的aps id信息(例如,slice_scaling_list_aps_id)来标识包括缩放列表数据的aps。
[0445]
在此情况下,可以基于在sps中解析/发信号通知的第一启用标志信息(scaling_list_enabled_flag)来确定报头信息是否解析/发信号通知包括缩放列表数据的aps的aps id信息。例如,报头信息可以基于与指示使用sps中的缩放列表相关的第一启用标志信息(例如,当第一启用标志信息(例如,scaling_list_enabled_flag)的值为1或真时)而包含包括缩放列表数据的aps的aps id信息。
[0446]
此外,例如,报头信息可以包括与指示是否使用图片或切片中的缩放列表数据相关的第二启用标志信息。例如,第二启用标志信息可以为表40和表41(或表25至表28)中描述的slice_scaling_list_present_flag(或slice_scaling_list_enabled_flag)。
[0447]
在此情况下,报头信息是否解析/发信号通知第二启用标志信息可以基于在sps中解析/发信号通知的第一启用标志信息(scaling_list_enabled_flag)来确定。例如,报头
信息可以基于与指示使用sps中的缩放列表相关的第一启用标志(例如,当第一启用标志的值(例如,scaling_list_enabled_flag)为1或真时)而包括第二启用标志信息。此外,报头信息可以基于第二启用标志(例如,当第二启用标志的值(例如slice_scaling_list_present_flag)为1或真时)而包含包括缩放列表数据的aps的aps id信息。
[0448]
例如,编码装置可以基于如在表40中的sps中发信号通知的第一启用标志信息(例如,scaling_list_enabled_flag)通过报头信息发信号通知第二启用标志信息(例如,slice_scaling_list_present_flag),然后可以基于第二启用标志信息(例如,slice_scaling_list_present_flag)通过报头信息发信号通知包括缩放列表数据的aps的aps id信息(例如,slice_scaling_list_aps_id)。此外,编码装置可以从由发信号通知的aps id信息(例如,slice_scaling_list_aps_id)指示的aps发信号通知缩放列表数据。
[0449]
如上文所描述,可以构造sps语法和pps语法以使得在sps或pps层级中不直接发信号通知缩放列表数据语法。例如,可以仅在sps中显式地发信号通知缩放列表启用标志(scaling_list_enabled_flag)。此后,可以基于sps中的启用标志(scaling_list_enabled_flag)而在更低层级语法(例如,aps)中单独地解析缩放列表(scaling_list_data())。因此,根据本文档的实施方式,可以进一步提高编码效率,因为可以依据分层结构来解析/发信号通知缩放列表数据。
[0450]
包括前述各种类型的信息的图像信息可以以比特流的形式编码和输出。可以通过网络或通过(数字)存储介质将比特流发送到解码装置。在这种情况下,网络可以包括广播网络和/或通信网络,并且数字存储介质可以包括各种存储介质,诸如usb、sd、cd、dvd、蓝光、hdd和ssd。
[0451]
图9和图10示意性地例示了根据本文档的实施方式的视频/图像解码方法和相关组件的示例。
[0452]
在图9中公开的方法可以由在图3中公开的解码装置300来执行。具体地,图9中的步骤s900至步骤s910可以由图3中公开的熵解码器310执行。图9中的步骤s920可以由图3中公开的解量化器321执行。图9中的步骤s930可以由在图3中公开的逆变换器321执行。图9中的步骤s940可以由在图3中公开的加法器340执行。此外,可以通过包括本文档中描述的实施方式来执行图9中公开的方法。因此,省略或简单地给出与图9中的前述实施方式冗余的内容的详细描述。
[0453]
参照图9,解码装置可以从比特流接收图像信息(或视频信息)(s900)。
[0454]
在实施方式中,解码装置可以通过解析比特流来推导图像重构(或图片重构)所需的信息(例如,视频/图像信息)。在此情况下,图像信息可以包括残差信息。残差信息可以包括诸如值信息、位置信息、变换方案、变换核或量化变换系数的量化参数之类的信息。此外,图像信息可以包括与预测相关的信息(例如,预测模式信息)。此外,图像信息可以包括关于缩放列表数据的信息。也就是说,图像信息可以包括解码处理所需的各种类型的信息,并且可以基于编码方法(例如,索引哥伦布编码、cavlc或cabac)而解码。
[0455]
在实施方式中,图像信息可以包括根据本文档的前述实施方式的各种类型的信息,并且可以包括表1至表47中的至少一个中公开的信息。
[0456]
例如,图像信息可以包括自适应参数集(aps)。aps可以包括aps id信息和aps类型信息(aps参数的类型信息)。也就是说,可以基于aps id信息来标识aps,并且可以基于aps
类型信息将与对应类型相对应的aps参数包括在aps中。例如,aps类型信息可以包括用于自适应环路滤波器(alf)参数的alf类型、用于亮度映射与色度缩放(lmcs)参数的lmcs类型以及用于缩放列表数据参数的缩放列表类型,并且可以如表35中所示。例如,当aps类型信息的值为2时,这可以指示aps类型信息为包括缩放列表数据参数的aps。
[0457]
例如,aps可以像表33(或表18)那样构造。aps id信息可以是表33和表34(或表18和表19)中描述的adaptation_parameter_set_id。aps类型信息可以为表33至表35(或表18至表20)中描述的aps_params_type。例如,如果aps参数的类型信息(例如,aps_params_type)为与指示包括缩放列表数据的aps相关的scaling_aps类型(或当aps参数的类型信息(例如,aps_params_type)的值为2时),那么aps可以包括缩放列表数据(例如,scaling_list_data())。也就是说,解码装置可以基于与指示包括缩放列表数据的aps相关的scaling_aps类型信息而通过aps获得并解析缩放列表数据(例如,scaling_list_data())。也就是说,可以基于aps类型信息(scaling_aps类型信息)将缩放列表数据包括在aps中。如上所述,缩放列表数据可以包括用于推导在量化/解量化处理中使用的缩放列表/缩放矩阵/缩放因子的缩放列表参数。换句话说,缩放列表数据可以包括用于构造缩放列表的语法元素。
[0458]
此外,例如,aps id信息可以具有在特定范围内的值。例如,aps id信息的值可以具有在从0到3或从0到7的特定范围内的值。这仅仅被描述为示例,并且aps id信息的值的范围可以具有不同的值。此外,aps id信息的值的范围可以基于aps类型信息(例如,aps_params_type)来确定。如果aps类型信息指示用于缩放列表数据的aps(例如,scaling_aps类型),那么可以基于语法元素(例如,slice_scaling_list_aps_id)(诸如,在表47中那样)来表示aps id信息的值。例如,如果aps类型信息(例如,aps_params_type)指示包括缩放列表数据的aps(例如,在scaling_aps类型的情况下),那么aps id信息的值可以具有在从0到3或者从0到7的范围内的值。在此情况下,一个图片内的切片可以参考用于缩放列表数据的相同aps。另选地,如果aps类型信息(例如,aps_params_type)指示用于alf的aps(例如,在alf_aps类型的情况下),那么aps id信息的值可以具有在从0到7的范围内的值。另选地,如果aps类型信息(例如,aps_params_type)指示用于lmcs的aps(例如,在lmcs_aps类型的情况下),那么aps id信息的值可以具有在从0到3的范围内的值。
[0459]
此外,例如,图像信息可以包括序列参数集(sps)。sps可以包括与指示是否使用缩放列表数据相关的第一启用标志信息。例如,sps可以类似于表36(或表21)而构造。第一启用标志信息可以是表36和表37(或表21和表22)中描述的scaling_list_enabled_flag。此外,sps_scaling_list_data_present_flag语法元素可以从sps移除,使得不解析/发信号通知标志信息。sps_scaling_list_data_present_flag语法元素可以为与指示缩放列表数据的语法结构是否存在于sps中相关的信息。可以基于标志信息解析/发信号通知由sps指定的缩放列表数据。然而,sps_scaling_list_data_present_flag语法元素可以被移除,并且因此sps可以被构造为不直接发信号通知缩放列表数据并且仅在sps层级显式地发信号通知缩放列表启用标志(scaling_list_enabled_flag)。
[0460]
此外,例如,图像信息可以包括图片参数集(pps)。例如,pps可以像表38那样构造。在此情况下,pps可以被构造为不包括与指示是否使用缩放列表数据相关的启用标志信息。也就是说,pps可以被构造为使得通过从pps中移除pps_scaling_list_data_present_flag
语法元素而不解析/发信号通知标志信息。pps_scaling_list_data_present_flag语法元素是与指示缩放列表数据的语法结构是否存在于pps中相关的标志信息。可以基于标志信息解析/发信号通知由pps指定的缩放列表数据。然而,通过移除pps_scaling_list_data_present_flag语法元素,可以不在pps层级中直接发信号通知缩放列表数据。
[0461]
在此情况下,与指示是否使用缩放列表数据相关的第一启用标志信息(例如,scaling_list_enabled_flag)可以在sps中发信号通知,并且可以不在pps中发信号通知。因此,可以基于在sps中发信号通知的第一启用标志信息(例如,当第一启用标志的值(例如,scaling_list_enabled_flag)为1或真时)获得aps中包括的缩放列表数据。
[0462]
此外,例如,图像信息可以包括报头信息。报头信息可以为与包括当前块的切片或图片相关的报头信息,并且可以包括(例如)图片报头或切片报头。报头信息可以包括缩放列表数据相关的aps id信息。包括在报头信息中的缩放列表数据相关的aps id信息可以指示包括缩放列表数据的aps的aps id信息。例如,包括在报头信息中的缩放列表数据相关的aps id信息可以为表40至表41(或表25至表28)中所描述的slice_scaling_list_aps_id,并且可以是由包括当前块的切片/图片参考的aps(包括缩放列表数据,即,scaling list aps)的id信息。也就是说,可以基于报头信息中的缩放列表数据相关的aps id信息(例如,slice_scaling_list_aps_id)来标识包括缩放列表数据的aps。也就是说,解码装置可以基于报头信息中的缩放列表数据相关的aps id信息(例如,slice_scaling_list_aps_id)来标识aps,并且可以从aps获得缩放列表数据。
[0463]
在此情况下,可以基于在sps中解析/发信号通知的第一启用标志信息(scaling_list_enabled_flag)来确定报头信息是否解析/发信号通知包括缩放列表数据的aps的aps id信息。例如,报头信息可以基于与指示使用sps中的缩放列表相关的第一启用标志信息(例如,当第一启用标志信息(例如,scaling_list_enabled_flag)的值为1或真时)而包含包括缩放列表数据的aps的aps id信息。
[0464]
此外,例如,报头信息可以包括与指示是否使用图片或切片中的缩放列表数据相关的第二启用标志信息。例如,第二启用标志信息可以为表40和表41(或表25至表28)中描述的slice_scaling_list_present_flag(或slice_scaling_list_enabled_flag)。
[0465]
在此情况下,报头信息是否解析/发信号通知第二启用标志信息可以基于在sps中解析/发信号通知的第一启用标志信息(scaling_list_enabled_flag)来确定。例如,报头信息可以基于与指示使用sps中的缩放列表相关的第一启用标志(例如,当第一启用标志的值(例如,scaling_list_enabled_flag)为1或真时)而包括第二启用标志信息。此外,报头信息可以基于第二启用标志(例如,当第二启用标志的值(例如slice_scaling_list_present_flag)为1或真时)而包含包括缩放列表数据的aps的aps id信息。
[0466]
例如,解码装置可以基于如在表40(或表25)中在sps中发信号通知的第一启用标志信息(例如,scaling_list_enabled_flag)通过报头信息获得第二启用标志信息(例如,slice_scaling_list_present_flag),然后可以基于第二启用标志信息(例如,slice_scaling_list_present_flag)通过报头信息获得包括缩放列表数据的aps的aps id信息(例如,slice_scaling_list_aps_id)。此外,解码装置可以从由通过报头信息获得的aps id信息(例如,slice_scaling_list_aps_id)指示的aps获得缩放列表数据。
[0467]
如上文所描述,可以构造sps语法和pps语法以使得在sps或pps层级中不直接发信
号通知缩放列表数据语法。例如,可以仅在sps中显式地发信号通知缩放列表启用标志(scaling_list_enabled_flag)。此后,可以基于sps中的启用标志(scaling_list_enabled_flag)而在更低层级语法(例如,aps)中单独地解析缩放列表(scaling_list_data())。因此,根据本文档的实施方式,可以进一步提高编码效率,因为可以依据分层结构来解析/发信号通知缩放列表数据。
[0468]
解码装置可以基于残差信息推导当前块的量化变换系数(s910)。
[0469]
在实施方式中,解码装置可以获得包括在图像信息中的残差信息。如上文所描述,残差信息可以包括诸如值信息、位置信息、变换方案、变换核、量化变换系数的量化参数之类的信息。解码装置可以基于残差信息中包括的量化变换系数信息来推导当前块的量化变换系数。
[0470]
解码装置可以基于量化变换系数推导变换系数(s920)。
[0471]
在实施方式中,解码装置可以通过对量化变换系数应用解量化处理来推导变换系数。在此情况下,解码装置可以应用依据频率而调整量化强度的频率加权量化。在此情况下,还可以基于频率特定量化缩放值来执行解量化处理。可以使用缩放矩阵推导用于频率加权量化的量化缩放值。例如,解码装置可以使用预定义的缩放矩阵,并且可以使用由编码装置发信号通知的缩放矩阵的频率特定量化缩放信息。频率特定量化缩放信息可以包括缩放列表数据。可以基于缩放列表数据推导(修改的)缩放矩阵。
[0472]
也就是说,解码装置还可以在执行解量化处理时应用频率加权量化。在此情况下,解码装置可以通过基于缩放列表数据对量化变换系数应用解量化处理来推导变换系数。
[0473]
在实施方式中,解码装置可以获得包括在图像信息中的aps,并且可以基于aps中包括的aps类型信息获得缩放列表数据。例如,解码装置可以基于与指示包括缩放列表数据的aps相关的scaling_aps类型信息而获得aps中包括的缩放列表数据。在此情况下,解码装置可以基于缩放列表数据推导缩放矩阵,并且可以基于缩放矩阵推导缩放因子,并且可以通过基于缩放因子应用解量化来推导变换系数。已经通过将表5至表17作为示例详细描述了基于缩放列表数据执行缩放的这样的处理,因此在本实施方式中,省略了冗余内容或详细描述。
[0474]
此外,解码装置可以在解量化处理中确定是否应用频率加权量化(即,是否在解量化处理中通过使用缩放列表来推导变换系数(基于频率的量化))。例如,解码装置可以基于从图像信息中包括的sps获得的第一启用标志和/或从图像信息包括中的报头信息获得的第二启用标志信息来确定是否使用缩放列表数据。如果确定基于第一启用标志信息和/或第二启用标志信息使用缩放列表数据,那么解码装置可以通过报头信息获得用于包括缩放列表数据的aps的aps id信息,可以基于aps id信息标识对应的aps,且可以从所标识的aps获得缩放列表数据。
[0475]
解码装置可以基于变换系数推导残差样本(s930)。
[0476]
在实施方式中,解码装置可以通过对当前块的变换系数执行逆变换来推导当前块的残差样本。在此情况下,解码装置可以获得指示是否将逆变换应用于当前块的信息(即,变换跳过标志信息),并且可以基于信息(即,变换跳过标志信息)来推导残差样本。
[0477]
例如,如果不将逆变换应用于变换系数(当用于当前块的变换跳过标志的值为1时),那么解码装置可以推导变换系数作为当前块的残差样本。另选地,如果逆变换应用于
变换系数(当用于当前块的变换跳过标志的值为0时),那么解码装置可以通过对变换系数执行逆变换来推导当前块的残差样本。
[0478]
解码装置可以基于残差样本生成重构样本(s940)。
[0479]
在实施方式中,解码装置可以基于图像信息中包括的预测信息(例如,预测模式信息)来确定是对当前块执行帧间预测还是执行帧内预测,可以通过基于确定执行预测来推导当前块的预测样本。此外,解码装置可以基于预测样本和残差样本生成重构样本。在此情况下,解码装置可以依据预测模式直接使用预测样本作为重构样本,或可以通过将残差样本添加到预测样本而生成重构样本。此外,解码装置可以基于重构样本推导重构块或重构图片。此后,如上文所描述,解码装置可以将环路内滤波过程(诸如去块滤波和/或sao过程)应用于重构图片以便在必要时提高主观/客观图片质量。
[0480]
在以上提到的实施方式中,虽然已基于以一系列步骤或单元的形式的流程图描述了这些方法,但是本文档的实施方式不限于这些步骤的顺序,并且这些步骤中的一些可以按照与其它步骤的顺序不同的顺序执行或者可以与其它步骤同时执行。此外,本领域技术人员将理解,在流程图中示出的步骤不是排它性的,并且在不影响本文档的权利范围的情况下,这些步骤可以包括附加步骤或者可以删除流程图中的一个或更多个步骤。
[0481]
根据本文档的以上提到的方法可以用软件形式实现,并且根据本文档的编码装置和/或解码装置可以被包括在例如tv、计算机、智能电话、机顶盒或显示设备的用于执行图像处理的设备中。
[0482]
在本文档中,当以软件形式实现实施方式时,以上提到的方法可以被实现为用于执行以上提到的功能的模块(程序、函数等)。模块可以被存储在存储器中并且由处理器来执行。存储器可以布置在处理器的内部或外部,并且通过各种公知手段连接到处理器。处理器可以包括专用集成电路(asic)、其它芯片集、逻辑电路和/或数据处理设备。存储器可以包括只读存储器(rom)、随机存取存储器(ram)、闪存、存储卡、存储介质和/或其它存储设备。也就是说,本文档中描述的实施方式可以在处理器、微处理器、控制器或芯片上实现并执行。例如,附图中例示的功能单元可以在计算机、处理器、微处理器、控制器或芯片上实现并执行。在这种情况下,用于这种实现的信息(例如,关于指令的信息)或算法可以被存储在数字存储介质中。
[0483]
此外,应用本文档的解码装置和编码装置可以被包括在多媒体广播发送和接收设备、移动通信终端、家庭影院视频设备、数字影院视频设备、监视相机、视频聊天设备、诸如视频通信这样的实时通信设备、移动流传输设备、存储介质、摄像机、视频点播(vod)服务提供设备、过顶(ott)视频设备、互联网流传输服务提供设备、三维(3d)视频设备、虚拟现实(vr)设备、增强现实(ar)设备、视频电话视频设备、运输工具终端(例如,车辆(包括自主车辆)终端、飞机终端和轮船终端)和医疗视频设备中,并且可以被用于处理视频信号或数据信号。例如,过顶(ott)视频设备可以包括游戏控制台、blueray播放器、互联网访问tv、家庭影院系统、智能电话、平板pc和数字录像机(dvr)。
[0484]
此外,应用本文档的处理方法可以以由计算机执行的程序的形式生成,并且可以被存储在计算机可读记录介质中。根据本文档的具有数据结构的多媒体数据也可以被存储在计算机可读记录介质中。计算机可读记录介质包括存储有计算机可读数据的所有种类的存储设备。计算机可读记录介质可以包括例如blueray盘(bd)、通用串行总线(usb)、rom、
prom、eprom、eeprom、ram、cd-rom、磁带、软盘和光学数据存储设备。此外,计算机可读记录介质包括以载波(例如,通过互联网进行传输)的形式实现的介质。此外,使用编码方法而生成的比特流可以被存储在计算机可读记录介质中,或者可以通过有线和无线通信网络传输。
[0485]
此外,本文档的实施方式可以使用程序代码被实现为计算机程序产品。可以由根据本文档的实施方式的计算机执行程序代码。程序代码可以被存储在可以由计算机读取的载波上。
[0486]
图11例示了可以应用在本文档中公开的实施方式的内容流传输系统的示例。
[0487]
参照图11,应用本文档的实施方式的内容流媒体系统基本上可以包括编码服务器、流传输服务器、web服务器、媒体存储装置、用户设备和多媒体输入设备。
[0488]
编码服务器将从诸如智能电话、相机、摄像机等这样的多媒体输入设备输入的内容压缩成数字数据以生成比特流,并且将该比特流传输到流传输服务器。作为另一示例,当诸如智能电话、相机、摄像机等这样的多媒体输入设备直接生成比特流时,可以省略编码服务器。
[0489]
可以通过应用本文档的实施方式的编码方法或比特流生成方法来生成比特流,并且流传输服务器可以在发送或接收比特流的处理中临时存储比特流。
[0490]
流传输服务器基于用户的请求通过web服务器将多媒体数据发送到用户设备,并且web服务器用作将服务告知用户的介质。当用户向web服务器请求所期望的服务时,web服务器将其传送到流传输服务器,流传输服务器将多媒体数据发送到用户。在这种情况下,内容流传输系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流传输系统中的设备之间的命令/响应。
[0491]
流传输服务器可以从媒体存储装置和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时地接收内容。在这种情况下,为了提供平稳的流传输服务,流传输服务器可以在预定时间内存储比特流。
[0492]
用户设备的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(pda)、便携式多媒体播放器(pmp)、导航仪、触屏pc、平板pc、超级本、可穿戴设备(例如,智能手表、智能眼镜、头戴式显示器)、数字tv、台式计算机、数字标牌等。
[0493]
内容流传输系统中的各个服务器可以作为分布式服务器操作,在这种情况下,从各个服务器接收到的数据可以被分发。
[0494]
这里描述的权利要求可以以各种方式组合。例如,可以将本说明书的方法权利要求的技术特征组合实施为装置,并且将本说明书的装置权利要求的技术特征组合并实施为方法。此外,本说明书方法权利要求的技术特征和装置权利要求的技术特征可以组合实施为装置,并且本说明书的方法权利要求的技术特征和装置权利要求的技术特征可以组合和实施为方法。
再多了解一些

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

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

相关文献