用于指示多个图像译码操作的分块参数的方法和装置与流程

摘要: 本发明的实施例大体上涉及基于神经网络架构对数据进行编码和解码的领域。具体地,一些实施例涉及用于这种使用多个处理层编码和解码来自码流的图像和/或视频的方法和装置。...
用于指示多个图像译码操作的分块参数的方法和装置与流程

本发明的实施例大体上涉及基于神经网络架构对数据进行编码和解码的领域。具体地,一些实施例涉及用于这种使用多个处理层编码和解码来自码流的图像和/或视频的方法和装置。

背景技术:

1、近数十年来,混合图像和视频编解码器已经用于压缩图像和视频数据。在这种编解码器中,通常通过预测块和通过进一步仅对原始块与其预测之间的差值进行译码来对信号进行逐块编码。具体地,这种译码可以包括变换、量化和生成码流,通常包括一些熵译码。通常,混合编码方法的三个组成部分——变换、量化和熵编码——分别进行优化。如高效视频编码(high-efficiency video coding,hevc)、通用视频编码(versatile videocoding,vvc)和基本视频编码(essential video coding,evc)等现代视频压缩标准也使用变换后的表示来编码预测之后的残差信号。

2、最近,神经网络架构已被应用于图像和/或视频译码。通常,这些基于神经网络(neural network,nn)的方法可以以各种不同的方式应用于图像和视频译码。例如,已经讨论了一些端到端优化的图像或视频译码框架。此外,深度学习已被用于确定或优化端到端译码框架的某些部分,例如预测参数的选择或压缩等。此外,还讨论了一些基于神经网络的方法,用于混合图像和视频译码框架,例如实现为用于图像或视频译码中的帧内或帧间预测的经过训练的深度学习模型。

3、上面讨论的端到端优化的图像或视频译码应用的共同点是,它们会产生一些特征图数据,这些特征图数据将在编码器与解码器之间传输。

4、神经网络是使用非线性单元的一个或多个层的机器学习模型,它们可以基于这些非线性单元预测接收到的输入的输出。一些神经网络除了输出层之外还包括一个或多个隐藏层。可以提供对应的特征图作为每个隐藏层的输出。每个隐藏层的这种对应的特征图可以用作网络中后续层(即后续隐藏层或输出层)的输入。网络的每个层会根据相应参数集的当前值从接收到的输入生成输出。在设备之间(例如,编码器与解码器之间、设备与云之间或不同设备之间)划分的神经网络中,划分位置(例如第一设备)的输出侧的特征图被压缩并传输到神经网络的其余层(例如第二设备)。

5、可能需要使用经过训练的网络架构对编码和解码进行进一步改进。

技术实现思路

1、本发明提供用于改进图像压缩的方法和装置。

2、上述和其它目的通过独立权利要求请求保护的主题来实现。其它实现方式在从属权利要求、说明书和附图中显而易见。

3、特定实施例在所附独立权利要求中概述,其它实施例在从属权利要求中概述。

4、根据第一方面,本发明涉及一种用于从图像数据单元重建图像的图像处理设备,所述设备包括一个或多个处理器,所述一个或多个处理器用于:处理所述图像数据单元以在其中识别第一预定类型的第一字段和第二预定类型的第二字段,并且根据所述第一字段的值,确定用于第二分块级操作(tilewise operation)的分块(tile)大小,并且根据所述第二字段的值,确定用于第一分块级操作的分块大小;对从所述图像数据单元推导的数据执行所述第一分块级操作以生成中间数据;对所述中间数据执行所述第二分块级操作。

5、上述和其它实施例可以各自可选地包括下列单独或组合的一个或多个特征。

6、在一种可能的实现方式中,所述一个或多个处理器用于处理所述图像数据单元以在其中识别第三预定类型的第三字段,并且根据所述第三字段的值,确定用于所述第二分块级操作的分块重叠,并且根据所述第二字段的所述值或第四预定类型的第四字段的值,确定用于所述第一分块级操作的分块重叠。这可以支持以灵活和/或高效的方式指定重叠。

7、第二字段的值可以包括用于第一分块级操作的分块大小的显式值。这可以支持以灵活的方式指定分块大小。

8、第四字段的值可以包括用于第一分块级操作的分块重叠的显式值。这可以支持以灵活的方式指定重叠。

9、第二字段可以包括标志,所述标志当设置为一个值或状态(例如,‘1’)时,表示第一分块级操作和第二分块级操作包括并置分块,当设置为另一个值或状态(例如,‘0’)时,表示第一分块级操作和第二分块级操作包括分层分块。并置分块可以具有相同的大小和/或位置,和/或可以定义为使得后续操作中的每个分块包括或仅包括通过在先前操作中处理相应或对应的分块所产生的样本。分层分块在先前和后续的分块级操作之间可以进行位移和/或具有不同的大小。以这种方式指定分块的类型有助于高效地指定分块参数。

10、具有预定性质的第二字段的值(例如,‘1’)可以表示用于第一分块级操作的分块大小可以根据第一字段的值确定。设备的一个或多个处理器可以响应于具有该性质的第二字段,以这种方式确定分块大小。这可以支持高效地指定分块大小。

11、具有预定性质的第二字段的值(例如,‘1’)可以表示用于第一分块级操作的分块重叠可以根据第三字段的值确定。这可以支持高效地指定分块重叠。

12、第一分块级操作可以是对超潜在空间中的分块执行的预测操作。中间数据可以包括潜在空间中的预测操作的输出。第二分块级操作可以是对潜在空间中的分块执行的合成操作。这种性质的流水线可以提供高效的图像重建。

13、第一分块级操作和第二分块级操作可以对方形分块执行操作。分块大小可以表示为沿分块的任何单个边的样本数量。分块大小可以是分块的长度或宽度。分块大小可以表示为长度或宽度除以预定因子。这些特征可以支持高效地表示分块大小。

14、分块的分块重叠可以表示为从边向内并由其与相邻分块的重叠所跨越的样本数量。这可以支持高效地表示分块重叠。

15、通过第一分块级操作处理的分块的分块大小可以在需要至多7比特的超潜在空间中表示。通过第一分块级操作处理的分块的分块重叠在至多3比特的超潜在空间中表示。第二分块级操作的显式值可以对于分块大小以至多9比特表示,对于分块重叠以至多4比特表示。这种特征可以提供高效的大小和/或重叠选项范围。

16、用于第一分块级操作的分块大小可以确定为第一字段的值的分数。设备的一个或多个处理器可以被布置成以这种方式确定分块大小。这可以支持高效地指定分块大小。

17、通过第一分块级操作处理的分块的分块重叠可以确定为第三字段的值的分数。设备的一个或多个处理器可以被布置成以这种方式确定分块重叠。这可以支持高效地指定分块重叠。

18、用于预测操作的分块大小和分块重叠可以在超潜在空间中表示,并可以通过将第二字段或第四字段的显式值乘以4来转换用于多阶段上下文建模。一个或多个处理器可以用于执行这种转换。这可以支持高效地指定大小和重叠。

19、根据第二方面,本发明涉及一种数据载体,存储图像数据单元,所述图像数据单元包括数据,所述数据可以通过以下方式重建以形成图像:对从所述图像数据单元推导的数据执行第一分块级操作以生成中间数据并对所述中间数据执行第二分块级合成操作;所述图像数据单元包括第一预定类型的第一字段和第二预定类型的第二字段,所述第一预定类型的第一字段指定用于所述第一分块级操作的分块大小,所述第二预定类型的第二字段指定用于所述第二分块级操作的分块大小。

20、该数据载体可以被布置为向第一方面的一个或多个处理器提供输入。

21、上述和其它实施例可以各自可选地包括下列单独或组合的一个或多个特征。

22、根据第三方面,本发明涉及一种用于通过包括第一子网和第二子网的神经网络处理表示图像数据的图像张量的方法,所述处理包括在分块头数据中指示(signalling)由所述神经网络的每个子网处理的图像张量的分块部分的尺寸,所述方法包括:处理所述分块头数据以在其中识别第一预定类型的第一字段和第二预定类型的第二字段,并且根据所述第一字段的所述值,确定用于应用所述第二子网的分块大小,并且根据所述第二字段的所述值确定用于应用所述第一子网的分块大小;将所述第一子网应用于从所述图像张量推导的分块部分以生成中间张量数据;将所述第二子网应用于从所述中间张量数据推导的分块部分。这种方法可以由第一方面或第四方面所阐述的装置执行。装置的模块可以执行所述操作。

23、上述和其它实施例可以各自可选地包括下列单独或组合的一个或多个特征。

24、在一种可能的实现方式中,所述方法可以包括:处理所述分块头数据以在其中识别第三预定类型的第三字段,并根据所述第三字段的所述值,确定用于应用所述第二子网的分块重叠,并根据所述第二字段的所述值或第四预定类型的第四字段的值,确定用于应用第一子网的分块重叠。

25、第二字段的值可以包括用于应用第一子网的分块大小的显式值。这可以支持高效地指定分块大小。

26、所述方法可以包括:根据所述第四字段的所述值确定用于应用第一子网的分块重叠,其中,所述第四字段包括所述分块重叠的显式值。这可以支持高效地指定分块重叠。

27、所述方法可以包括标志,所述标志当设置为第一预定值(例如“1”)时,表示所述第一分块级操作和所述第二分块级操作包括并置分块,当设置为第二预定值(例如“0”)时,表示所述第一分块级操作和所述第二分块级操作包括分层分块。以这种方式指定分块的类型有助于高效地指定分块参数。

28、第二字段的值可以表示用于应用第一子网的分块大小可以根据第一字段的值确定。这可以支持高效地指定分块大小。

29、第二字段的值可以表示用于应用第一子网的分块重叠可以根据第三字段的值确定。这可以支持高效地指定分块重叠。

30、应用第一子网可以涉及对超潜在空间中的分块执行预测操作。中间张量数据可以包括潜在空间中预测操作的输出,应用第二子网的步骤可以包括对潜在空间中的分块执行合成操作。这种性质的流水线可以提供高效的图像重建。

31、第一子网和第二子网可以应用于方形分块,分块大小可以表示为沿分块的任何单个边的样本数量。这可以支持高效地指定分块大小。

32、分块的分块重叠可以表示为从边向内并由其与相邻分块的重叠所跨越的样本数量。这可以支持高效地指定分块重叠。

33、由第一子网处理的分块的分块大小可以在需要至多7比特的超潜在空间中表示。由第一子网处理的分块的分块重叠可以在至多3比特的超潜在空间中表示。用于应用第二子网的显式值可以对于分块大小以至多9比特表示,对于分块重叠以至多4比特表示。可以提供有效的分块大小和/或重叠范围。

34、用于第一子网的分块大小可以确定为第一字段的值的分数。由第一子网处理的分块的分块重叠可以确定为第三字段的值的分数。这些方法中的任一种方法都是指定相应数量的高效方法。

35、用于应用第一子网的分块大小和分块重叠可以在超潜在空间中表示。它可以通过将第二字段和第四字段的显式值乘以4来转换用于多阶段上下文建模。这可以支持高效地利用带宽来传输第二字段和/或第四字段。

36、根据第四方面,本发明涉及一种用于通过神经网络处理表示图像数据的图像张量的图像处理设备,所述处理包括:指示所述图像张量的分块部分的尺寸,所述设备用于指示所述神经网络的多个子网的分块头数据中的所述尺寸,并且根据以下语法格式化所述指示:

37、tile_header (comp) {

38、tile_y_enable[comp]

39、if (tile_y_enable[comp]) {

40、tile_y_size[comp]

41、tile_y_overlap[comp]

42、}

43、tile_z_enable[comp]

44、if (tile_z_enable[comp]) {

45、tile_z_is_derived[comp]

46、if (!tile_z_is_derived) {

47、tile_z_size[comp]

48、tile_z_overlap[comp]

49、}

50、}

51、}

52、所述语法在功能上可以与上面表示的语法等效。例如,可以为相同的概念赋予不同的名称,而不会在功能上改变语法。所述语法可以提供一种高效的方式来传输分块大小和/或重叠信息。

53、在分块级操作中,可以处理相邻样本的多个块组(chunk)或分块。每个块组或分块的样本可以一起处理,但与其它块组或分块的样本分开处理。可以以串行或并行的方式处理块组或分块。