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

基于子层级别信息的图像编码/解码方法和设备及存储比特流的记录介质与流程

2023-02-16 13:12:06 来源:中国专利 TAG:


1.本公开涉及图像编码/解码方法和设备以及存储比特流的记录介质,更具体地,涉及一种基于子层级别信息的图像编码/解码方法和设备,以及用于存储通过本公开的图像编码方法/设备生成的比特流的记录介质。


背景技术:

2.最近,各个领域对诸如高清(hd)图像和超高清(uhd)图像的高分辨率和高质量图像的需求正在增加。随着图像数据的分辨率和质量的提高,与现有图像数据相比,传输的信息量或比特量相对增加。传输信息量或比特量的增加导致传输成本和存储成本的增加。
3.因此,需要高效的图像压缩技术来有效地传输、存储和再现关于高分辨率和高质量图像的信息。


技术实现要素:

4.技术问题
5.本公开的目的是提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
6.本公开的另一目的是提供一种基于按时间标识符值的降序编码/解码的子层级别信息标志的图像编码/解码方法和设备。
7.本公开的另一目的是提供一种基于按时间标识符值的降序编码/解码的子层级别信息的图像编码/解码方法和设备。
8.本公开的另一目的是提供一种在同一循环中执行子层级别信息的用信号通知/解析过程和推断过程的图像编码/解码方法和设备。
9.本公开的另一目的是提供一种存储由根据本公开的图像编码方法或设备生成的比特流的非暂时性记录介质。
10.本公开的另一目的是提供一种存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流的非暂时性记录介质。
11.本公开的另一目的是提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
12.本公开所解决的技术问题不限于上述技术问题,本领域技术人员通过以下描述将清楚此处未描述的其它技术问题。
13.技术方案
14.根据本公开的一方面的图像解码方法包括:从比特流获得指定当前层中的一个或更多个子层中的每一个的子层级别信息是否存在的第一标志,以及基于第一标志从比特流获得子层级别信息。可以按一个或更多个子层的时间标识符值的降序获得第一标志。
15.根据本公开的另一方面的图像解码设备包括存储器和至少一个处理器。至少一个
处理器可以从比特流获得指定针对当前层中的一个或更多个子层中的每一个的子层级别信息是否存在的第一标志,并且基于第一标志从比特流获得子层级别信息。可以按一个或更多个子层的时间标识符值的降序获得第一标志。
16.根据本公开的另一方面的图像编码方法包括:对指定针对当前层中的一个或多个子层中的每一个是否存在子层级别信息的第一标志进行编码;以及基于第一标志对子层级别信息进行编码。可以按一个或更多个子层的时间标识符值的降序对进行编码第一标志。
17.另外,根据本公开的另一方面的计算机可读记录介质可以存储由本公开的图像编码设备或图像编码方法生成的比特流。
18.在根据本公开的另一方面的发送方法中,可以发送由本公开的图像编码方法或图像编码设备生成的比特流。
19.以上关于本公开的简要概述的特征仅仅是本公开的以下详细描述的示例性方面,并不限制本公开的范围。
20.有益效果
21.根据本公开,可以提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
22.根据本公开,可以提供基于按时间标识符值的降序编码/解码的子层级别信息标志的图像编码/解码方法和设备。
23.根据本公开,可以提供基于按时间标识符值的降序编码/解码的子层级别信息的图像编码/解码方法和设备。
24.根据本公开,可以提供一种在同一循环中执行子层级别信息的用信号通知/解析过程和推断过程的图像编码/解码方法和设备。
25.此外,根据本公开,可以提供存储由根据本公开的图像编码方法或装置生成的比特流的计算机可读记录介质。
26.此外,根据本公开,可以提供一种计算机可读记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重建图像的比特流。
27.此外,根据本公开,可以提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
28.本领域技术人员将理解,通过本公开可以实现的效果不限于上文具体描述的内容,并且根据详细描述将更清楚地理解本公开的其他优点。
附图说明
29.图1是示意性地例示本公开的实施方式适用于的视频编码系统的图。
30.图2是示意性地例示本公开的实施方式适用于的图像编码设备的图。
31.图3是示意性地例示本公开的实施方式适用于的图像解码设备的图。
32.图4是例示编码图像/视频的层结构的示例的图。
33.图5是本公开的实施方式适用于的多层编码设备的示意性框图,并且其中执行对多层视频/图像信号进行编码的步骤。
34.图6是本公开的实施方式适用于的解码设备的示意性框图,并且其中执行对多层视频/图像信号进行解码的步骤。
35.图7是例示根据实施方式的通过图像编码设备基于多层结构对图像进行编码的方法的图。
36.图8是例示根据实施方式的通过图像解码设备基于多层结构对图像进行解码的方法的图。
37.图9是例示包括ptl信息的vps语法的示例的图。
38.图10是例示包括ptl信息的sps语法的示例的图。
39.图11是例示包括ptl信息的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法的示例的图。
40.图12是例示根据本公开的实施方式的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法的图。
41.图13是例示根据本公开的实施方式的图像编码方法的流程图。
42.图14是例示根据本公开的实施方式的图像解码方法的流程图。
43.图15例示本公开的实施方式适用于的内容流系统的图。
具体实施方式
44.以下,将结合附图对本公开的实施方式进行详细描述,以易于本领域技术人员实施。然而,本公开可以以各种不同的形式实施,并且不限于这里描述的实施方式。
45.在描述本公开时,如果确定相关已知功能或构造的详细描述使本公开的范围不必要地含糊不清,则将省略其详细描述。在附图中,省略了与本公开的描述无关的部分,并且相似的附图标记被赋予相似的部分。
46.在本公开中,当一个组件“连接”、“联接”或“链接”到另一个组件时,它不仅可以包括直接连接关系,还可以包括中间组件存在的间接连接关系。另外,当一个组件“包括”或“具有”其它组件时,除非另有说明,否则是指还可以包括其它组件,而不是排除其它组件。
47.在本公开中,术语第一、第二等仅用于将一个组件与其它组件区分开的目的,并且不限制组件的顺序或重要性,除非另有说明。相应地,在本公开的范围内,一个实施方式中的第一组件在另一个实施方式中可以被称为第二组件,类似地,一个实施方式中的第二组件在另一个实施方式中可以被称为第一组件。
48.在本公开中,相互区分的组件旨在清楚地描述每个特征,并不意味着组件必须分开。即,多个组件可以集成在一个硬件或软件单元中实现,或者一个组件可以在多个硬件或软件单元中分布和实现。因此,即使没有特别说明,这些组件集成或分布式的实施方式也包括在本公开的范围内。
49.在本公开中,各个实施方式中所描述的组件并不一定是必不可少的组件,一些组件可以是可选的组件。因此,由实施方式中描述的组件的子集组成的实施方式也包括在本公开的范围内。此外,除了在各种实施方式中描述的组件之外还包括其它组件的实施方式包括在本公开的范围内。
50.本公开涉及图像的编码和解码,除非在本公开中重新定义,否则本公开中使用的术语可以具有本公开所属技术领域中常用的一般含义。
51.在本公开中,“画面”一般是指表示特定时间段内的一个图像的单元,而切片(slice)/拼块(tile)是构成画面的一部分的编码单元,一个画面可以由一个或更多个切
片/拼块组成。此外,切片/拼块可以包括一个或更多个编码树单元(ctu)。
52.在本公开中,“像素”或“像元(pel)”可以意指构成一个画面(或图像)的最小单元。此外,“样本”可以用作对应于像素的术语。一个样本一般可以表示像素或像素的值,也可以仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
53.在本公开中,“单元”可以表示图像处理的基本单元。该单元可以包括画面的特定区域和与该区域相关的信息中的至少一个。在某些情况下,该单元可以与诸如“样本阵列”、“块”或“区域”的术语互换使用。在一般情况下,m
×
n块可以包括m列n行的样本(或样本阵列)或变换系数的集合(或阵列)。
54.在本公开中,“当前块”可以意指“当前编码块”、“当前编码单元”、“编码目标块”、“解码目标块”或“处理目标块”中的一个。当执行预测时,“当前块”可以意指“当前预测块”或“预测目标块”。当执行变换(逆变换)/量化(解量化)时,“当前块”可以意指“当前变换块”或“变换目标块”。当执行滤波时,“当前块”可以意指“滤波目标块”。
55.另外,在本公开中,除非明确说明为色度块,“当前块”可以意指包括亮度分量块和色度分量块二者的块或“当前块的亮度块”。当前块的亮度分量块可以通过包括诸如“亮度块”或“当前亮度块”的亮度分量块的明确描述来表示。另外,“当前块的色度分量块”可以通过包括诸如“色度块”或“当前色度块”的色度分量块的明确描述来表示。
56.在本公开中,术语“/”或“,”可以解释为指示“和/或”。例如,“a/b”和“a,b”可以意指“a和/或b”。此外,“a/b/c”和“a/b/c”可以意指“a、b和/或c中的至少一个”。
57.在本公开中,术语“或”应被解释以指示“和/或”。例如,表达“a或b”可以包括1)仅“a”,2)仅“b”,或3)“a和b”两者。换言之,在本公开中,“或”应被解释以指示“附加地或另选地”。
58.视频编码系统的概述
59.图1是例示本公开的实施方式适用于的视频编码系统的图。
60.根据实施方式的视频编码系统可以包括编码设备10和解码设备20。编码设备10可以将编码的视频和/或图像信息或数据以文件或流的形式经由数字存储介质或网络递送到解码设备20。
61.根据实施方式的编码设备10可以包括视频源生成器11、编码单元12和发送器13。根据实施方式的解码设备20可以包括接收器21、解码单元22和渲染器23。编码单元12可以称为视频/图像编码单元,解码单元22可以称为视频/图像解码单元。发送器13可以被包括在编码单元12中。接收器21可以被包括在解码单元22中。渲染器23可以包括显示器并且显示器可以被配置为单独的装置或外部组件。
62.视频源生成器11可以通过捕获、合成或生成视频/图像的过程来获取视频/图像。视频源生成器11可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(以电子方式)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获过程可以被生成相关数据的过程代替。
63.编码单元12可以对输入视频/图像进行编码。为了压缩和编码效率,编码单元12可以执行一系列过程,例如预测、变换和量化。编码单元12可以以比特流的形式输出编码数据
(编码视频/图像信息)。
64.发送器13可以通过数字存储介质或网络以文件或流的形式将以比特流的形式输出的编码视频/图像信息或数据传输到解码设备20的接收器21。数字存储介质可以包括各种存储介质,例如usb、sd、cd、dvd、蓝光、hdd、ssd等。发送器13可以包括用于通过预定文件格式生成媒体文件的元件并且可以包括用于通过广播/通信网络传输的元件。接收器21可以从存储介质或网络中提取/接收比特流并将比特流传输到解码单元22。
65.解码单元22可以通过执行与编码单元12的操作相对应的一系列过程,例如解量化、逆变换和预测来解码视频/图像。
66.渲染器23可以渲染解码的视频/图像。渲染的视频/图像可以通过显示器显示。
67.图像编码设备的概述
68.图2是示意性地示出本公开的实施方式可适用于的图像编码设备的图。
69.如图2所示,图像编码设备100可以包括图像分割器110、减法器115、变换器120、量化器130、解量化器140、逆变换器150、加法器155、滤波器160、存储器170、帧间预测单元180、帧内预测单元185和熵编码器190。帧间预测单元180和帧内预测单元185可以统称为“预测器”。变换器120、量化器130、解量化器140和逆变换器150可以被包括在残差处理器中。残差处理器还可以包括减法器115。
70.在一些实施方式中,配置图像编码设备100的多个组件中的全部或至少一些可以由一个硬件组件(例如,编码器或处理器)来配置。此外,存储器170可以包括解码画面缓冲器(dpb)并且可以由数字存储介质配置。
71.图像分割器110可将输入到图像编码设备100的输入图像(或画面或帧)分割成一个或更多个处理单元。例如,处理单元可以称为编码单元(cu)。可以通过根据四叉树二叉树三叉树(qt/bt/tt)结构递归地分割编码树单元(ctu)或最大编码单元(lcu)来获取编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元分割为更深深度的多个编码单元。对于编码单元的分割,可以首先应用四叉树结构,然后可以应用二叉树结构和/或三叉树结构。可以基于不再分割的最终编码单元来执行根据本公开的编码过程。可以将最大编码单元用作最终编码单元,也可以将通过分割最大编码单元获取的更深深度的编码单元用作最终编码单元。这里,编码过程可以包括稍后将描述的预测、变换和重构的过程。作为另一个示例,编码过程的处理单元可以是预测单元(pu)或变换单元(tu)。预测单元和变换单元可以从最终编码单元划分或分割。预测单元可以是样本预测单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
72.预测单元(帧间预测单元180或帧内预测单元185)可以对要处理的块(当前块)执行预测,并且生成包括当前块的预测样本的预测块。预测单元可以在当前块或cu的基础上确定是应用帧内预测还是帧间预测。预测单元可以生成与当前块的预测有关的各种信息,并且将生成的信息传输到熵编码器190。关于预测的信息可以在熵编码器190中被编码并且以比特流的形式输出。
73.帧内预测单元185可以通过参考当前画面中的样本来预测当前块。根据帧内预测模式和/或帧内预测技术,参考样本可以位于当前块的邻居中或者可以被分开放置。帧内预测模式可以包括多个非定向模式和多个定向模式。非定向模式可以包括例如dc模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33个定向预测模式或65个定向预
测模式。然而,这仅仅是示例,可以根据设置使用更多或更少的定向预测模式。帧内预测单元185可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
74.帧间预测单元180可以基于由参考画面上的运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、双预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可以相同或不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等。包括时间邻近块的参考画面可以被称为并置画面(colpic)。例如,帧间预测单元180可以基于邻近块配置运动信息候选列表并生成指示使用哪个候选来推导当前块的运动向量和/或参考画面索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测单元180可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式的情况下,与合并模式不同,可以不传输残差信号。在运动向量预测(mvp)模式的情况下,邻近块的运动向量可以用作运动向量预测子,并且当前块的运动向量可以通过编码运动向量差和运动向量预测子的指示符来用信号通知当前块的运动向量。运动向量差可以意指当前块的运动向量与运动向量预测子之间的差。
75.预测单元可以基于以下描述的各种预测方法和预测技术来生成预测信号。例如,预测单元不仅可以应用帧内预测或帧间预测,还可以同时应用帧内预测和帧间预测,以预测当前块。同时应用帧内预测和帧间预测两者来预测当前块的预测方法可以称为组合帧间和帧内预测(ciip)。此外,预测单元可以执行帧内块复制(ibc)以预测当前块。帧内块复制可以用于游戏等的内容图像/视频编码,例如,屏幕内容编码(scc)。ibc是一种在与当前块相隔预定距离的位置处使用当前画面中先前重构的参考块来预测当前画面的方法。当应用ibc时,参考块在当前画面中的位置可以被编码为对应于预定距离的向量(块向量)。ibc基本上在当前画面中执行预测,但是可以类似于帧间预测执行,因为在当前画面内推导参考块。即,ibc可以使用本公开中描述的至少一种帧间预测技术。
76.预测单元生成的预测信号可用于生成重构信号或生成残差信号。减法器115可以通过从输入图像信号(原始块或原始样本阵列)中减去从预测单元输出的预测信号(预测块或预测样本阵列)来生成残差信号(残差块或残差样本阵列)。生成的残差信号可以被传输到变换器120。
77.变换器120可以通过将变换技术应用于残差信号来生成变换系数。例如,变换技术可以包括离散余弦变换(dct)、离散正弦变换(dst)、karhunen-lo
è
ve变换(klt)、基于图的变换(gbt)或条件非线性变换(cnt)中的至少一种。这里,gbt是指当像素之间的关系信息由图形表示时从图形获得的变换。cnt是指基于使用所有先前重构的像素生成的预测信号获取的变换。此外,变换处理可以应用于具有相同大小的正方形像素块或者可以应用于具有可变大小而不是正方形的块。
78.量化器130可以对变换系数进行量化并且将它们传输到熵编码器190。熵编码器190可以对量化的信号(关于量化的变换系数的信息)进行编码并且输出比特流。关于量化变换系数的信息可以被称为残差信息。量化器130可以基于系数扫描顺序将块类型的量化
变换系数重新排列为一维向量形式,并基于一维向量形式的量化变换系数生成关于量化变换系数的信息。
79.熵编码器190可以执行各种编码方法,例如指数哥伦布、上下文自适应可变长度编码(cavlc)、上下文自适应二进制算术编码(cabac)等。熵编码器190可以一起或单独地编码量化变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)。编码的信息(例如,编码的视频/图像信息)可以比特流的形式以网络抽象层(nal)为单元进行传输或存储。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(aps)、画面参数集(pps)、序列参数集(sps)或视频参数集(vps)。此外,视频/图像信息还可以包括通用约束信息。本公开中描述的用信号通知的信息、传输的信息和/或语法元素可以通过上述编码过程被编码并且被包括在比特流中。
80.比特流可以通过网络传输或者可以存储在数字存储介质中。网络可以包括广播网络和/或通信网络,数字存储介质可以包括usb、sd、cd、dvd、蓝光、hdd、ssd等各种存储介质。可以包括传输从熵编码器190输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)作为图像编码设备100的内部/外部元件。另选地,可以提供发送器作为熵编码器190的组件。
81.从量化器130输出的量化变换系数可用于生成残差信号。例如,可以通过解量化器140和逆变换器150对量化变换系数应用解量化和逆变换来重构残差信号(残差块或残差样本)。
82.加法器155将重构残差信号与从帧间预测单元180或帧内预测单元185输出的预测信号相加,以生成重构信号(重构画面、重构块、重构样本阵列)。如果要处理的块没有残差,例如应用跳过模式的情况,则可以将预测块用作重构块。加法器155可以称为重构器或重构块生成器。生成的重构信号可以用于当前画面中要处理的下一个块的帧内预测,并且可以用于通过如下所述的滤波对下一个画面进行帧间预测。
83.滤波器160可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器160可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器170中,具体地,存储器170的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。滤波器160可以生成与滤波有关的各种信息并将所生成的信息传输到熵编码器190,如稍后在每种滤波方法的描述中所描述的。与滤波相关的信息可以由熵编码器190编码并以比特流的形式输出。
84.传输到存储器170的修改的重构画面可以用作帧间预测单元180中的参考画面。当通过图像编码设备100应用帧间预测时,可以避免图像编码设备100和图像解码设备之间的预测失配并且可以提高编码效率。
85.存储器170的dpb可以存储修改的重构画面以用作帧间预测单元180中的参考画面。存储器170可以存储从其中推导(或编码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元180并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器170可以存储当前画面中重构块的重构样本并且可以将重构样本传送到帧内预测单元185。
86.图像解码设备的概述
87.图3是示意性地示出本公开的实施方式可适用的图像解码设备的图。
88.如图3所示,图像解码设备200可以包括熵解码器210、解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260和帧内预测单元265。帧间预测单元260和帧内预测单元265可以统称为“预测器”。解量化器220和逆变换器230可以被包括在残差处理器中。
89.根据实施方式,配置图像解码设备200的多个组件中的全部或至少一些可以由硬件组件(例如,解码器或处理器)来配置。此外,存储器250可以包括解码画面缓冲器(dpb)或者可以由数字存储介质配置。
90.已经接收到包括视频/图像信息的比特流的图像解码设备200可以通过执行与由图2的图像编码设备100执行的处理相对应的处理来重构图像。例如,图像解码设备200可以使用在图像编码设备中应用的处理单元来执行解码。因此,解码的处理单元例如可以是编码单元。编码单元可以通过分割编码树单元或最大编码单元来获取。通过图像解码设备200解码和输出的重构图像信号可以通过再现设备(未示出)再现。
91.图像解码设备200可以接收以比特流的形式从图2的图像编码设备输出的信号。接收到的信号可以通过熵解码器210进行解码。例如,熵解码器210可以解析比特流以推导图像重构(或画面重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(aps)、画面参数集(pps)、序列参数集(sps)或视频参数集(vps)。此外,视频/图像信息还可以包括通用约束信息。图像解码设备还可以基于关于参数集的信息和/或通用约束信息对画面进行解码。本公开中描述的用信号通知/接收的信息和/或语法元素可以通过解码过程被解码并从比特流中获得。例如,熵解码器210基于诸如指数哥伦布编码、cavlc或cabac的编码方法对比特流中的信息进行解码,并输出图像重构所需的语法元素的值和残差的变换系数的量化值。更具体地,cabac熵解码方法可以接收与比特流中每个语法元素对应的bin,使用解码目标语法元素信息、邻近块和解码目标块的解码信息或前一阶段解码的符号/bin的信息来确定上下文模型,根据确定的上下文模型通过预测bin的出现概率来对bin执行算术解码,并且生成与每个语法元素的值对应的符号。在这种情况下,cabac熵解码方法可以在确定上下文模型后,通过将解码的符号/bin的信息用于下一个符号/bin的上下文模型来更新上下文模型。由熵解码器210解码的信息中与预测相关的信息可以被提供给预测单元(帧间预测单元260和帧内预测单元265),并且在熵解码器210中对其执行熵解码的残差值,即,量化变换系数和相关的参数信息可以被输入到解量化器220。另外,可以将熵解码器210解码的信息当中关于滤波的信息提供给滤波器240。此外,用于接收从图像编码设备输出的信号的接收器(未示出)可以进一步被配置为图像解码设备200的内部/外部元件,或者接收器可以是熵解码器210的组件。
92.此外,根据本公开的图像解码设备可以被称为视频/图像/画面解码设备。图像解码设备可以分为信息解码器(视频/图像/画面信息解码器)和样本解码器(视频/图像/画面样本解码器)。信息解码器可以包括熵解码器210。样本解码器可以包括解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260或帧内预测单元265中的至少一个。
93.解量化器220可以对量化变换系数进行解量化并输出变换系数。解量化器220可以以二维块的形式重新排列量化变换系数。在这种情况下,可以基于在图像编码设备中执行的系数扫描顺序来执行重新排列。解量化器220可以通过使用量化参数(例如,量化步长信
息)对量化变换系数执行解量化并获得变换系数。
94.逆变换器230可以对变换系数进行逆变换以获得残差信号(残差块、残差样本阵列)。
95.预测单元可以对当前块执行预测并生成包括当前块的预测样本的预测块。预测单元可以基于从熵解码器210输出的关于预测的信息来确定是将帧内预测还是帧间预测应用于当前块,并且可以确定特定帧内/帧间预测模式(预测技术)。
96.与在图像编码设备100的预测单元中描述的相同的是,预测单元可以基于稍后描述的各种预测方法(技术)来生成预测信号。
97.帧内预测单元265可以通过参考当前画面中的样本来预测当前块。帧内预测单元185的描述同样适用于帧内预测单元265。
98.帧间预测单元260可以基于参考画面上由运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、双预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。例如,帧间预测单元260可以基于邻近块配置运动信息候选列表,并且基于接收到的候选选择信息推导当前块的运动向量和/或参考画面索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示当前块的帧间预测模式的信息。
99.加法器235可以通过将获得的残差信号与从预测单元(包括帧间预测单元260和/或帧内预测单元265)输出的预测信号(预测块、预测样本阵列)相加生成重构信号(重构画面、重构块、重构样本阵列)。如果要处理的块没有残差(例如,应用跳过模式的情况),则预测块可以用作重构块。加法器155的描述同样适用于加法器235。加法器235可以称为重构器或重构块生成器。所生成的重构信号可以用于当前画面中要处理的下一块的帧内预测,并且可以用于通过如下所述的滤波对下一画面的帧间预测。
100.滤波器240可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器240可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器250中,具体地,存储器250的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。
101.存储在存储器250的dpb中的(修改的)重构画面可以用作帧间预测单元260中的参考画面。存储器250可以存储从其中推导(或解码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元260,以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器250可以存储当前画面中重构块的重构样本并将重构样本传送到帧内预测单元265。
102.在本公开中,在图像编码设备100的滤波器160、帧间预测单元180和帧内预测单元185中描述的实施方式可以同等地或对应地应用于图像解码设备200的滤波器240、帧间预测单元260和帧内预测单元265。
103.对层结构进行编码的示例
104.根据本公开的编码视频/图像可以例如根据下面将描述的编码层和结构来处理。
105.图4是例示编码图像/视频的层结构的示例的图。
106.编码图像/视频被分类为用于图像/视频解码处理和处理自己的视频编码层(vcl)、用于发送和存储编码信息的下层系统以及存在于vcl和下层系统之间并负责网络适配功能的网络抽象层(nal)。
107.在vcl中,可以生成包括压缩图像数据(切片数据)的vcl数据,或者可以生成图像的解码处理另外所需的补充增强信息(sei)消息或包括诸如画面参数集(pps)、序列参数集(sps)或视频参数集(vps)的信息的参数集。
108.在nal中,头信息(nal单元报头)可以被添加到vcl中生成的原始字节序列有效载荷(rbsp)以生成nal单元。在这种情况下,rbsp是指vcl中生成的切片数据、参数集、sei消息。nal单元报头可以包括根据对应nal单元中所包括的rbsp数据指定的nal单元类型信息。
109.如图4所示,nal单元可以根据vcl中生成的rbsp的类型被分类为vcl nal单元和非vcl nal单元。vcl nal单元可以意指包括关于图像的信息(切片数据)的nal单元,非vcl nal单元可以意指包括对图像进行解码所需的信息(参数集或sei消息)的nal单元。
110.vcl nal单元和非vcl nal单元可以根据下层系统的数据标准附有头信息并通过网络发送。例如,nal单元可以被修改为具有预定标准(例如,h.266/vvc文件格式、rtp(实时传输协议)或ts(传输流))的数据格式,并通过各种网络发送。
111.如上所述,在nal单元中,可以根据对应nal单元中所包括的rbsp数据结构来指定nal单元类型,并且关于nal单元类型的信息可以被存储在nal单元报头中并用信号通知。例如,这可以根据nal单元是否包括关于图像的信息(切片数据)大致分类为vcl nal单元类型和非vcl nal单元类型。vcl nal单元类型可以根据包括在vcl nal单元中的画面的性质和类型来分类,并且非vcl nal单元类型可以根据参数集的类型来分类。
112.下面将列出根据包括在非vcl nal单元类型中的参数集/信息的类型指定的nal单元类型的示例。
[0113]-dci(解码能力信息)nal单元:包括dci的nal单元类型
[0114]-vps(视频参数集)nal单元:包括vps的nal单元类型
[0115]-sps(序列参数集)nal单元:包括sps的nal单元类型
[0116]-pps(画面参数集)nal单元:包括pps的nal单元类型
[0117]-aps(适配参数集)nal单元:包括aps的nal单元类型
[0118]-ph(画面报头)nal单元:包括画面报头的nal单元类型
[0119]
上述nal单元类型可以具有用于nal单元类型的语法信息,并且该语法信息可以被存储在nal单元报头中并用信号通知。例如,该语法信息可以是nal_unit_type,nal单元类型可以使用nal_unit_type值来指定。
[0120]
此外,一个画面可以包括多个切片,并且一个切片可以包括切片报头和切片数据。在这种情况下,可以向一个画面中的多个切片(切片报头和切片数据集)进一步添加一个画面报头。画面报头(画面报头语法)可以包括共同适用于画面的信息/参数。切片报头(切片报头语法)可以包括共同适用于切片的信息/参数。aps(aps语法)或pps(pps语法)可以包括共同适用于一个或更多个切片或画面的信息/参数。sps(sps语法)可以包括共同适用于一个或更多个序列的信息/参数。vps(vps语法)可以是共同适用于多个层的信息/参数。dci(dci语法)可以包括与解码能力有关的信息/参数。
[0121]
在本公开中,高级语法(hls)可以包括aps语法、pps语法、sps语法、vps语法、dci语法、画面报头语法或切片报头语法中的至少一个。另外,在本公开中,低级语法(lls)可以包括例如切片数据语法、ctu语法、编码单元语法、变换单元语法等。
[0122]
在本公开中,在编码设备中编码并以比特流的形式用信号通知给解码设备的图像/视频信息可以不仅包括画面内分割相关信息、帧内/帧间预测信息、残差信息、环路内滤波信息,而且包括关于切片报头的信息、关于画面报头的信息、关于aps的信息、关于pps的信息、关于sps的信息、关于vps的信息和/或关于dci的信息。另外,图像/视频信息还可以包括一般约束信息和/或关于nal单元报头的信息。
[0123]
基于多层的编码
[0124]
根据本公开的图像/视频编码可以包括基于多层的图像/视频编码。基于多层的图像/视频编码可以包括可缩放编码。在基于多层的编码或可缩放编码中,可以为各个层处理输入信号。根据层,输入信号(输入图像/视频)可以在分辨率、帧频、比特深度、颜色格式纵横比或视图中的至少一个方面具有不同的值。在这种情况下,通过使用层之间的差异(例如,基于可缩放性)执行层间预测,可减少冗余信息传输/处理并且增加压缩效率。
[0125]
图5是本公开的实施方式适用于的执行多层视频/图像信号的编码的多层编码设备500的示意性框图。
[0126]
图5的多层编码设备500可以包括图2的编码设备。与图2相比,在图5的多层编码设备500中未示出图像分割器110和加法器155,多层编码设备500可以包括图像分割器110和加法器155。在这种情况下,可以以层为单位包括图像分割器110和加法器155。以下,在图5的描述中将聚焦于基于多层的预测。例如,除了以下描述之外,多层编码设备500可以包括上面参照图2描述的编码设备的技术构思。
[0127]
为了描述方便,图5中示出由两个层组成的多层结构。然而,本公开的实施方式不限于两个层,应用本公开的实施方式的多层结构可以包括两个或更多个层。
[0128]
参照图5,编码设备500包括层1的编码器500-1和层0的编码器500-0。层0可以是基层、参考层或较低层,层1可以是增强层、当前层或较高层。
[0129]
层1的编码器500-1可以包括预测器520-1、残差处理器530-1、滤波器560-1、存储器570-1、熵编码器540-1和复用器(mux)570。在实施方式中,mux可以作为外部组件而被包括。
[0130]
层0的编码器500-0可以包括预测器520-0、残差处理器530-0、滤波器560-0、存储器570-0和熵编码器540-0。
[0131]
预测器520-0和520-1可以基于如上所述的各种预测方案针对输入图像执行预测。例如,预测器520-0和520-1可以执行帧间预测和帧内预测。预测器520-0和520-1可以以预定处理单元执行预测。预测单元可以是编码单元(cu)或变换单元(tu)。可以根据预测结果生成预测块(包括预测样本),并且基于此,残差处理器可以推导残差块(包括残差样本)。
[0132]
通过帧间预测,可以基于关于当前画面的前一画面和/或下一画面中的至少一个的信息来执行预测,从而生成预测块。通过帧内预测,可以基于当前画面中的邻近样本来执行预测,从而生成预测块。
[0133]
作为帧间预测模式或方法,可以使用上述各种预测模式或方法。在帧间预测中,可以为要预测的当前块选择参考画面,并且可以从参考画面选择与当前块对应的参考块。预
测器520-0和520-1可以基于参考块来生成预测块。
[0134]
另外,预测器520-1可以使用关于层0的信息来针对层1执行预测。在本公开中,为了描述方便,使用关于另一层的信息预测关于当前层的信息的方法被称为层间预测。
[0135]
使用关于另一层的信息而预测(例如,通过层间预测而预测)的关于当前层的信息可以是纹理、运动信息、单位信息或预定参数(例如,滤波参数等)中的至少一个。
[0136]
另外,用于当前层的预测(例如,用于层间预测)的关于另一层的信息可以是纹理、运动信息、单位信息或预定参数(例如,滤波参数等)中的至少一个。
[0137]
层间预测,当前块可以是当前层(例如,层1)中的当前画面中的块并且可以是要编码的块。参考块是当前块的预测所参考的层(参考层,例如层0)上属于与当前块所属的画面(当前画面)相同的访问单元(au)的画面(参考画面)中的块,并且可以是与当前块对应的块。
[0138]
作为层间预测的示例,存在使用参考层的运动信息来预测当前层的运动信息的层间运动预测。根据层间运动预测,可以使用参考块的运动信息来预测当前块的运动信息。即,在根据下面将描述的帧间预测模式来推导运动信息时,可以基于层间参考块的运动信息而非时间邻近块来推导运动信息候选。
[0139]
当应用层间运动预测时,预测器520-1可以缩放并使用参考层的参考块(即,层间参考块)运动信息。
[0140]
作为层间预测的另一示例,层间纹理预测可以使用重构参考块的纹理作为当前块的预测值。在这种情况下,预测器520-1可以通过上缩放来缩放参考块的纹理。层间纹理预测可以被称为层间(重构)样本预测或简称为层间预测。
[0141]
在作为层间预测的另一示例的层间参数预测中,可以在当前层中重用参考层的推导参数,或者可以基于参考层中使用的参数来推导当前层的参数。
[0142]
在作为层间预测的另一示例的层间残差预测中,可以使用另一层的残差信息来预测当前层的残差信息,并且基于此,可以执行当前块的预测。
[0143]
在作为层间预测的另一示例的层间差异预测中,可以使用通过对当前层的重构画面和参考层的重构画面进行上采样或下采样而获得的图像之间的差异来执行当前块的预测。
[0144]
在作为层间预测的另一示例的层间语法预测中,可以使用参考层的语法信息来预测或生成当前块的纹理。在这种情况下,所参考的参考层的语法信息可以包括关于帧内预测模式的信息和运动信息。
[0145]
使用上述层间的多种预测方法可以在预测特定块时使用。
[0146]
这里,作为层间预测的示例,尽管描述了层间纹理预测、层间运动预测、层间单位信息预测、层间参数预测、层间残差预测、层间差异预测、层间语法预测等,但本公开中适用的层间预测不限于此。
[0147]
例如,可以作为当前层的帧间预测的扩展来应用层间预测。即,通过将从参考层推导的参考画面包括在当前块的帧间预测能够参考的参考画面中,可针对当前块执行帧间预测。
[0148]
在这种情况下,层间参考画面可以包括在当前块的参考画面列表中。预测器520-1可以使用层间参考画面针对当前块执行帧间预测。
[0149]
这里,层间参考画面可以是通过对参考层的重构画面进行采样以与当前层对应而构造的参考画面。因此,当参考层的重构画面对应于当前层的画面时,参考层的重构画面可以用作层间参考画面而无需采样。例如,当在参考层的重构画面和当前层的重构画面中样本的宽度和高度相同并且参考层的画面中的左上端、右上端、左下端和右下端与当前层的画面中的左上端、右上端、左下端和右下端之间的偏移为0时,参考层的重构画面可以用作当前层的层间参考画面而无需再次采样。
[0150]
另外,从其推导层间参考画面的参考层的重构画面可以是属于与要编码的当前画面相同的au的画面。
[0151]
当通过将层间参考画面包括在参考画面列表中来执行当前块的帧间预测时,在参考画面列表l0和l1之间,参考画面列表中的层间参考画面的位置可以不同。例如,在参考画面列表l0中,层间参考画面可以位于当前画面之前的短期参考画面之后,在参考画面列表l1中,层间参考画面可以位于参考画面列表的末尾。
[0152]
这里,参考画面列表l0是用于p切片的帧间预测的参考画面列表或者在b切片的帧间预测中用作第一参考画面列表的参考画面列表。参考画面列表l1可以是用于b切片的帧间预测的第二参考画面列表。
[0153]
因此,参考画面列表l0可以依次由当前画面之前的短期参考画面、层间参考画面、当前画面之后的短期参考画面和长期参考画面组成。参考画面列表l1可以依次由当前画面之后的短期参考画面、当前画面之前的短期参考画面、长期参考画面和层间参考画面组成。
[0154]
在这种情况下,预测(p)切片是执行帧内预测或使用每预测块的最多一个运动向量和参考画面索引执行帧间预测的切片。双预测(b)切片是执行帧内预测或使用预测块的最多两个运动向量和参考画面索引执行预测的切片。在这方面,帧内(i)切片是仅应用帧内预测的切片。
[0155]
另外,当基于包括层间参考画面的参考画面列表执行当前块的帧间预测时,参考画面列表可以包括从多个层推导的多个层间参考画面。
[0156]
当包括多个层间参考画面时,层间参考画面可以交替地布置在参考画面列表l0和l1中。例如,假设诸如层间参考画面ilrpi和层间参考画面ilrpj的两个层间参考画面包括在用于当前块的帧间预测的参考画面列表中。在这种情况下,在参考画面列表l0中,ilrpi可以位于当前画面之前的短期参考画面之后,ilrpj可以位于列表的末尾。另外,在参考画面列表l1中,ilrpi可以位于列表的末尾,ilrpj可以位于当前画面之后的短期参考画面之后。
[0157]
在这种情况下,参考画面列表l0可以依次由当前画面之前的短期参考画面、层间参考画面ilrpi、当前画面之后的短期参考画面、长期参考画面和层间参考画面ilrpj组成。参考画面列表l1可以依次由当前画面之后的短期参考画面、层间参考画面ilrpj、当前画面之前的短期参考画面、长期参考画面和层间参考画面ilrpi组成。
[0158]
另外,两个层间参考画面中的一个可以是从用于分辨率的可缩放层推导的层间参考画面,另一个可以是从用于提供另一视图的层推导的层间参考画面。在这种情况下,例如,如果ilrpi是从用于提供不同分辨率的层推导的层间参考画面并且ilrpj是从用于提供不同视图的层推导的层间参考画面,则在仅支持可缩放性而不包括视图的可缩放视频编码的情况下,参考画面列表l0可以依次由当前画面之前的短期参考画面、层间参考画面
ilrpi、当前画面之后的短期参考画面和长期参考画面组成,参考画面列表l1可以依次由当前画面之后的短期参考画面、当前画面之前的短期参考画面、长期参考画面和层间参考画面ilrpi组成。
[0159]
此外,在层间预测中,作为关于层间参考画面的信息,可以仅使用样本值,可以仅使用运动信息(运动向量),或者可以使用样本值和运动信息二者。当参考画面索引指示层间参考画面时,根据从编码设备接收的信息,预测器520-1可以仅使用层间参考画面的样本值,可以仅使用层间参考画面的运动信息(运动向量),或者可以使用层间参考画面的样本值和运动信息二者。
[0160]
当仅使用层间参考画面的样本值时,预测器520-1可以从层间参考画面推导运动向量所指定的块的样本作为当前块的预测样本。在不考虑视图的可缩放视频编码的情况下,使用层间参考画面的帧间预测(层间预测)中的运动向量可以被设定为固定值(例如,0)。
[0161]
当仅使用层间参考画面的运动信息时,预测器520-1可以使用层间参考画面所指定的运动向量作为用于推导当前块的运动向量的运动向量预测子。另外,预测器520-1可以使用层间参考画面所指定的运动向量作为当前块的运动向量。
[0162]
当使用层间参考画面的样本值和运动信息二者时,预测器520-1可以使用层间参考画面中与当前块对应的区域的样本和层间参考画面中指定的运动信息(运动向量)来预测当前块。
[0163]
当应用层间预测时,编码设备可以向解码设备发送指示参考画面列表中的层间参考画面的参考索引,并且可以向解码设备发送用于指定从层间参考画面中使用哪些信息(样本信息、运动信息或者样本信息和运动信息)的信息,即,用于指定两个层之间的层间预测的依赖性的依赖性类型的信息。
[0164]
图6是本公开的实施方式适用于的执行多层视频/图像信号的解码的解码设备的示意性框图。图6的解码设备可以包括图3的解码设备。图6所示的重新对准器可以被省略或包括在解量化器中。在此图的描述中,将聚焦于基于多层的预测。另外,可以包括图3的解码设备的描述。
[0165]
在图6的示例中,为了描述方便,将描述由两个层组成的多层结构。然而,应该注意,本公开的实施方式不限于此,应用本公开的实施方式的多层结构可以包括两个或更多个层。
[0166]
参照图6,解码设备600可以包括层1的解码器600-1和层1的解码器600-0。层1的解码器600-1可以包括熵解码器610-1、残差处理器620-1、预测器630-1、加法器640-1、滤波器650-1和存储器660-1。层0的解码器600-2可以包括熵解码器610-0、残差处理器620-0、预测器630-0、加法器640-0、滤波器650-0和存储器660-0。
[0167]
当从编码设备接收到包括图像信息的比特流时,解复用器(demux)605可以将各个层的信息解复用并且将信息发送到各个层的解码设备。
[0168]
熵解码器610-1和610-0可以与编码设备中使用的编码方法对应执行解码。例如,当编码设备中使用cabac时,熵解码器610-1和610-0可以使用cabac执行熵解码。
[0169]
当当前块的预测模式是帧内预测模式时,预测器630-1和630-0可以基于当前画面中的邻近重构样本来执行当前块的帧内预测。
[0170]
当当前块的预测模式是帧间预测模式时,预测器630-1和630-0可以基于当前画面之前或之后的至少一个画面中所包括的信息来执行当前块的帧间预测。可以通过检查从编码设备接收的信息来推导帧间预测所需的一些或所有运动信息。
[0171]
当应用跳过模式作为帧间预测模式时,不从编码设备发送残差,并且预测块可以是重构块。
[0172]
此外,层1的预测器630-1可以仅使用关于层1的信息来执行帧间预测或帧内预测并且使用关于另一层(层0)的信息来执行层间预测。
[0173]
作为使用关于另一层的信息而预测(例如,通过层间预测而预测)的关于当前层的信息,可以存在纹理、运动信息、单位信息、预定参数(例如,滤波参数等)中的至少一个。
[0174]
作为用于当前层的预测(例如,用于层间预测)的关于另一层的信息,可以存在纹理、运动信息、单位信息、预定参数(例如,滤波参数等)中的至少一个。
[0175]
在层间预测中,当前块可以是当前层(例如,层1)中的当前画面中的块,并且可以是要解码的块。参考块可以是当前块的预测所参考的层(参考层,例如层0)上属于与当前块所属的画面(当前画面)相同的访问单元(au)的画面(参考画面)中的块,并且可以是与当前块对应的块。
[0176]
多层解码设备600可以如多层编码设备500中描述执行层间预测。例如,多层解码设备600可以执行如在多层编码设备500中描述的层间纹理预测、层间运动预测、层间单位信息预测、层间参数预测、层间残差预测、层间差异预测、层间语法预测等,本公开中适用的层间预测不限于此。
[0177]
当从编码设备接收到参考画面索引或者从邻近块推导的参考画面索引指示参考画面列表中的层间参考画面时,预测器630-1可以使用层间参考画面执行层间预测。例如,当参考画面索引指示层间参考画面时,预测器630-1可以推导层间参考画面中运动向量所指定的区域的样本值作为当前块的预测块。
[0178]
在这种情况下,层间参考画面可以包括在当前块的参考画面列表中。预测器630-1可以使用层间参考画面来针对当前块执行帧间预测。
[0179]
如上面在多层编码设备500中描述的,在多层解码设备600的操作中,层间参考画面可以是通过对参考层的重构画面进行采样以与当前层对应而构造的参考画面。针对参考层的重构画面对应于当前层的画面的情况的处理可以按照与编码处理相同的方式执行。
[0180]
另外,如上面在多层编码设备500中描述的,在多层解码设备600的操作中,从其推导层间参考画面的参考层的重构画面可以是属于与要编码的当前画面相同的au的画面。
[0181]
另外,如上面在多层编码设备500中描述的,在多层解码设备600的操作中,当通过将层间参考画面包括在参考画面列表中来执行当前块的帧间预测时,在参考画面列表l0和l1之间,参考画面列表中的层间参考画面的位置可以不同。
[0182]
另外,如上面在多层编码设备500中描述的,在多层解码设备600的操作中,当基于包括层间参考画面的参考画面列表执行当前块的帧间预测时,参考画面列表可以包括从多个层推导的多个层间参考画面,并且可以执行层间参考画面的布置以与编码处理中描述的对应。
[0183]
另外,如上面在多层编码设备500中描述的,在多层解码设备600的操作中,作为关于层间参考画面的信息,可以仅使用样本值,可以仅使用运动信息(运动向量),或者可以使
用样本值和运动信息二者。
[0184]
多层解码设备600可以从多层编码设备500接收指示参考画面列表中的层间参考画面的参考索引并且基于此执行层间预测。另外,多层解码设备600可以从多层编码设备500接收用于指定从层间参考画面中使用哪些信息(样本信息、运动信息或样本信息和运动信息)的信息,即,用于指定两个层之间的层间预测的依赖性的依赖性类型的信息。
[0185]
将参照图7和图8描述根据实施方式的由多层图像编码设备和多层图像解码设备执行的图像编码方法和解码方法。在下文中,为了便于描述,多层图像编码设备可以被称为图像编码设备。另外,多层图像解码设备可以被称为图像解码设备。
[0186]
图7是例示根据实施方式的由图像编码设备基于多层结构对图像进行编码的方法的图。根据实施方式的图像编码设备可以对第一层的画面进行编码(s710)。接下来,图像编码设备可以基于第一层对第二层的画面进行编码(s720)。接下来,图像编码设备可以输出比特流(针对多层)(s730)。
[0187]
图8是例示根据实施方式的通过图像解码设备基于多层结构对图像进行解码的方法的图。根据实施方式的图像解码设备可以从比特流获得视频/图像信息(s810)。接下来,图像解码设备可以基于视频/图像信息对第一层的画面进行解码(s820)。接下来,图像解码设备可以基于视频/图像信息和第一层来对第二层的画面进行解码(s830)。
[0188]
在一个实施方式中,视频/图像信息可以包括下面描述的高级语法(hls)。在一个实施方式中,hls可以包括本公开中公开的sps和/或pps。例如,视频/图像信息可以包括本公开中描述的信息和/或语法元素。如本公开中所描述,可以基于第一层的画面的运动信息/重构样本/参数来对第二层的画面进行编码。在一个实施方式中,层可以是低于第二层的层。在一个实施方式中,当第二层是当前层时,第一层可以被称为参考层。
[0189]
视频参数集信令
[0190]
关于多层的信息可以在视频参数集(vps)中用信号通知。例如,对于多层比特流,可以在vps中用信号通知关于层之间的依赖性的信息和/或关于可以经解码的层的可用集合的信息。这里,可解码的层的可用集合可被称作输出层集合(ols)。另外,可以在vps中用信号通知ols的ptl(简档、层和级别)信息、dpb(解码画面缓冲器)信息和/或hrd(假想参考解码器)信息。
[0191]
图9为例示包括ptl信息的vps语法的示例的图。
[0192]
参照图9,vps可以包括指定vps的标识符的语法元素vps_video_parameter_set_id。vps_video_parameter_set_id的值可以被约束为大于0。
[0193]
另外,vps可以包括作为关于层或子层的数量的语法元素的vps_max_layers_minus1、vps_max_sublayer_minus1和vps_all_layers_same_num_sublayer_flag。
[0194]
通过将语法元素vps_max_layers_minus1加1而获得的值可以指定参考vps的每个编码视频序列(cvs)中的层的最大允许数量。
[0195]
通过将1加到语法元素vps_max_sublayer_minus1而获得的值可以指定可以存在于参考vps的每个cvs中的层中的时间子层的最大数量。在一个实施方式中,vps_max_sublayer_minus1的值可以被约束在0到6的范围内。
[0196]
语法元素vps_all_layers_same_num_sublayer_flag可以指定时间子层的数量针对参考vps的每一cvs中的所有层是否是相同的。例如,第一值(例如,1)的vps_all_layers_
same_num_sublayer_flag可以指定时间子层的数量针对参考vps的每个cvs中的所有层是相同的。相比之下,第二值(例如,0)的vps_all_layers_same_num_sublayer_flag可以指定时间子层的数量针对参考vps的每个cvs中的所有层可以相同或可以不相同。当vps_all_layers_same_num_sublayer_flag不存在时,vps_all_layers_same_num_sublayer_flag的值可以被推断为第一值(例如,1)。
[0197]
另外,vps可以包括作为关于ptl的语法元素(简档、层和级别)对的vps_num_ptls_minus1、vps_pt_present_flag[i]、vps_ptl_max_temporal_id[i]以及vps_ols_ptl_idx[i]。
[0198]
通过将语法元素vps_num_ptls_minus1加1而获得的值可以指定vps中的profile_tier_level()语法结构的数量。在一个示例中,vps_num_ptls_minus1的值可以被约束为小于变量totalnumols的值。此处,totalnumols可以指定由vps指定的ols的总数。
[0199]
语法元素vps_pt_present_flag[i]可以指定简档、层和一般约束信息是否存在于vps中的第i profile_tier_level()语法结构中。例如,第一值(例如,1)的vps_pt_present_flag[i]可以指定简档、层和一般约束信息存在于vps中的第iprofile_tier_level()语法结构中。相比之下,第二值(例如,0)的vps_pt_present_flag[i]可以指定简档、层和一般约束信息不存在于vps中的第i profile_tier_level()语法结构中。当vps_pt_present_flag[i]具有第二值(例如,0)时,针对vps中的第iprofile_tier_level()语法结构的简档、层和一般约束信息可以被推断为与针对vps中的第(i-1)个profile_tier_level()语法结构的简档、层和一般约束信息相同。当vps_pt_present_flag[i]不存在时,vps_pt_present_flag[i]的值可以被推断为第一值(例如,1)。
[0200]
语法元素vps_ptl_max_temporal_id[i]可以指定其中级别信息存在于vps中的第iprofile_tier_level()语法结构中的最高子层表示的temporalid。在一示例中,vps_ptl_max_temporal_id[i]的值可以被约束于0到vps_max_sublayer_minus1的范围中。当vps_ptl_max_temporal_id[i]不存在时,vps_ptl_max_temporal_id[i]的值可以被推断为与vps_max_sublayer_minus1的值相同。
[0201]
语法元素vps_ols_ptl_idx[i]可以指定针对vps中的profile_tier_level()语法结构的列表的应用于第i ols的profile_tier_level()语法结构的索引。当vps_ols_ptl_idx[i]存在时,vps_ols_ptl_idx[i]的值可以被约束于0到vps_num_ptls_minus1的范围内。当vps_ols_ptl_idx[i]不存在时,可以使用以下方法推断vps_ols_ptl_idx[i]的值。
[0202]-当vps_num_ptls_minus1等于0时,vps_ols_ptl_idx[i]的值可以被推断为等于0。
[0203]-在其它情况下(例如,当vps_num_ptls_minus1大于0并且vps_num_ptls_minus1 1等于totalnumolss时),vps_ols_ptl_idx[i]的值可以被推断为等于i。
[0204]
当numlayersinols[i]等于1时,应用于第i ols的profile_tier_level()语法结构也可以存在于由第i ols中的层参考的sps中。当numlayersinols[i]等于1时,比特流一致性可以要求在vps和sps中用信号通知的profile_tier_level()对于第i ols应相同。
[0205]
vps中的每个profile_tier_level()语法结构可以被约束为由vps_ols_ptl_idx[i]的至少一个值参考。这里,i的值可以被约束在0到totalnumolss-1的范围内。
[0206]
此外,可以在sps(序列参数集)中用信号通知ptl信息。
[0207]
图10是例示包括ptl信息的sps语法的示例的图。
[0208]
参照图10,sps可以包括指定sps的标识符的语法元素sps_seq_parameter_set_id和指定由sps参考的vps的标识符的语法元素sps_video_parameter_set_id。当sps_video_parameter_set_id的值大于0时,sps_video_parameter_set_id可以指定由sps参考的vps的vps_video_parameter_set_id的值。
[0209]
针对单层比特流的vps的存在可以为可选的。当vps不存在时,sps_video_parameter_set_id的值可以被推断为等于0。当sps_video_parameter_set_id的值等于0时,可应用以下内容。
[0210]-sps不参考vps,并且当对参考sps的每个cvs进行解码时不参考vps。
[0211]-vps_max_layers_minus1的值被推断为等于0。
[0212]-vps_max_sublayer_minus1的值被推断为等于6。
[0213]-cvs(编码视频序列)被约束为仅包括一个层(即,cvs中的所有vcl nal单元被约束为具有相同值的nuh_layer_id)。
[0214]-generallayeridx[nuh_layer_id]的值被推断为等于0。
[0215]-vps_independent_layer_flag[generallayeridx[nuh_layer_id]]的值被推断为等于1。
[0216]
另外,sps可以包括关于子层的数量的语法元素sps_max_sublayer_minus1。
[0217]
通过将语法元素sps_max_sublayer_minus1加1而获得的值可以指定可以存在于参考sps的每个clvs(编码层视频序列)中的时间子层的最大数量。
[0218]
当sps_video_parameter_set_id的值大于0时,sps_max_sublayer_minus1的值可以被约束在0到vps_max_sublayer_minus1的范围中。
[0219]
在其它情况下(例如,当sps_video_parameter_set_id的值等于0时),可应用以下内容。
[0220]-sps_max_sublayer_minus1的值可以被约束在0到6的范围中。
[0221]-vps_max_sublayer_minus1的值被推断为等于sps_max_sublayer_minus1。
[0222]-numsublayersinlayerinols的值可以被推断为等于sps_max_sublayer_minus1 1。
[0223]-vps_ols_ptl_idx的值推断被为等于0,并且vps_ptl_max_tid的值(即,vps_ptl_max_tid)被推断为等于sps_max_sublayer_minus1。
[0224]
另外,sps可以包括指定包括profile_tier_level()语法结构的预定语法结构是否存在于sps中的语法元素sps_ptl_dpb_hrd_params_present_flag。例如,第一值(例如,1)的sps_ptl_dpb_hrd_params_present_flag可以指定profile_tier_level()语法结构和dpb_parameters()语法结构存在于sps中,并且general_timing_hrd_parameters()语法结构和ols_timing_hrd_parameters()语法结构也可存在于sps中。相比之下,第二值(例如,0)的sps_ptl_dpb_hrd_params_present_flag可以指定所有profile_tier_level()语法结构、dpb_parameters()语法结构、general_timing_hrd_parameters()语法结构和ols_timing_hrd_parameters()语法结构不存在于sps中。
[0225]
在示例中,当ols仅包括具有大于0的sps_video_parameter_set_id值并且具有与sps的nuh_layer_id相同的nuh_layer_id的一个层时或当sps_video_parameter_set_id的
值等于0时,sps_ptl_dpb_hrd_params_present_flag可被约束为具有第一值(例如,1)。
[0226]
此外,当sps_ptl_dpb_hrd_params_present_flag具有第一值(例如,1)时,可以在sps中调用profile_tier_level(1,sps_max_sublayer_minus1)语法。在这种情况下,profile_tier_level(1,sps_max_sublayer_minus1)语法的第一调用输入值可以指定是否存在ptl信息(例如,profiletierpresentflag)。另外,profile_tier_level(1,sps_max_sublayer_minus1)语法的第二调用输入值可以指定可以存在于每个cvs中的时间子层的最大数量(例如,maxnumsublayersminus1)。
[0227]
图11是例示包括ptl信息的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法的示例的图。
[0228]
参照图11,profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法可以包括关于ptl的一般信息(简档、层和级别)的语法元素general_profile_idc、general_tier_flag和general_level_idc。可仅在ptl信息存在时(即,profiletierpresentflag==1)用信号通知/解析语法元素。
[0229]
语法元素general_profile_idc可以指定如vvc标准的附录a中所指定olsinscope遵守的简档信息。比特流可以被约束为不包括除了上述附录a中指定的值之外的general_profile_idc的值。general_profile_idc的其它值可以被保留以供将来使用。
[0230]
语法元素general_tier_flag可以指定用于分析如vvc标准的附录a中所指定的general_level_idc的层上下文信息。
[0231]
语法元素general_level_idc可以指定如vvc标准的附录a中所指定的olsinscope遵守的级别信息。比特流可被约束为不包括除了上述附录a中指定的值之外的general_level_idc的值。general_level_idc的其它值可以保留以供将来使用。
[0232]
在一个示例中,较大值的general_level_idc可以指定较高级别。针对olsinscope的dci(解码能力信息)nal单元中用信号通知的最大级别可以高于针对olsinscope中的clvs的sps中用信号通知的级别,但是可以不低于它。
[0233]
在一个示例中,当olsinscope遵守多个简档时,general_profile_idc可以被约束以指定提供如由编码器确定的优选解码结果或优选比特流识别的简档。
[0234]
在一个示例中,当olsinscope的cvs遵守不同简档时,由于多个profile_tier_level()语法结构可以被包括在dci nal单元中,因此针对olsinscope的每个cvs可以存在由能够对cvs进行解码的解码器指定的至少一个ptl集合。
[0235]
另外,profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法可以包括关于子简档的语法元素ptl_num_sub_profiles和general_sub_profile_idc[i]。仅当ptl信息存在(即,profiletierpresentflag==1)时可以用信号通知/解析语法元素。
[0236]
语法元素ptl_num_sub_profiles可以指定profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法中存在的general_sub_profile_idc[i]的数量。
[0237]
语法元素general_sub_profile_idx[i]可以指定第i互操作性元数据的指示符。
[0238]
另外,profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法可以包括关于子层级别的语法元素ptl_sublayer_level_present_flag[i]和
sublayer_level_idc[i]。
[0239]
语法元素ptl_sublayer_level_present_flag[i]可以指定子层级别信息是否存在于具有等于i的temporalid的子层表示的profile_tier_level()语法结构中。例如,第一值(例如,1)的ptl_sublayer_level_present_flag[i]可以指定第i时间子层的子层级别信息存在于profile_tier_level()语法结构中。相比之下,第二值(例如,0)的ptl_sublayer_level_present_flag[i]可以指定第i时间子层的子层级别信息不存在于profile_tier_level()语法结构中。ptl_sublayer_level_present_flag[i]可以按i的值的升序用信号通知/解析,其中i从0到maxnumsublayersminus1-1。
[0240]
语法元素sublayer_level_idc[i]可以指定第i时间子层的子层级别索引。sublayer_level_idc[i]可以按i的升序用信号通知/解析,其中i从0到maxnumsublayersminus1-1。另外,仅当ptl_sublayer_level_present_flag[i]具有第一值(例如,1)时可以用信号通知/解析sublayer_level_idc[i]。
[0241]
当sublayer_level_idc[i]不存在时,可如下推断sublayer_level_idc[i]的值。
[0242]-sublayer_level_idc[maxnumsublayersminus1]可以被推断为与同一profile_tier_level()语法结构的general_level_idc相同的值。
[0243]-对于从maxnumsublayersminus1-1到0的i(即,按i值的降序),sublayer_level_idc[i]被推断为与sublayer_level_idc[i 1]相同的值。
[0244]
如上文所描述,可以基于ptl_sublayer_level_present_flag[i]的值来确定sublayer_level_idc[i]的存在。具体地,当ptl_sublayer_level_present_flag[i]具有第一值(例如,1)时,可以按temporalid的值(即,i)的升序用信号通知/解析sublayer_level_idc[i]。相比之下,当ptl_sublayer_level_present_flag[i]具有第二值(例如,0)时,可以不用信号通知/解析sublayer_level_idc[i]。
[0245]
此外,当sublayer_level_idc[i]不存在时,sublayer_level_idc[i]的值可以被推断为与较高子层的子层级别索引(即,sublayer_level_idc[i 1])相同的值。也就是说,sublayer_level_idc[i]的用信号通知/解析按i值的升序执行,而sublayer_level_idc[i]的推断过程(或推断规则)可以按i值的降序执行。因此,当未用信号通知/解析sublayer_level_idc[i 1]时,可以不推断sublayer_level_idc[i](其不存在于profile_tier_level()语法结构中)的值。另外,推断过程可以不在与sublayer_level_idc[i]用信号通知/解析过程相同的循环中执行。
[0246]
为了解决这些问题,根据本公开的实施方式,可以从较高时间子层到较低时间子层按降序用信号通知/解析子层级别信息。
[0247]
图12是例示根据本公开的实施方式的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法的图。
[0248]
参照图12,profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法可以包括关于子层级别信息的语法元素ptl_sublayer_level_present_flag[i]和sublayer_level_idc[i]。在一个实施方式中,可以从较高时间子层到较低时间子层按降序用信号通知/解析子层级别信息。
[0249]
时间子层(或子层)可以意指由具有特定值的temporalid的vcl nal单元以及关联的非vcl nal单元组成的时间可缩放比特流的时间可缩放层。
[0250]
对于帧间预测,具有小于或等于当前画面的temporalid的值的temporalid的(解码)画面可以用作参考画面。
[0251]
在一个示例中,可以通过从经由nal单元的nal单元报头发信号通知的nuh_temporal_id_plus1的值减1来推导temporalid(即,temporalid=nuh_temporal_id_plus1-1)。
[0252]
另外,当nal_unit_type(在nal单元报头中)在idr_w_radl到rsv_irap_12的范围中时,temporalid可以被约束为0。相比之下,当nal_unit_type等于stsa_nut并且vps_independent_layer_flag[generallayeridx[nuh_layer_id]]具有第一值(例如,1)时,temporalid可以被约束为非零。这里,vps_independent_layer_flag[i]可以指定具有索引i的层是否可使用层间预测。例如,第一值(例如,1)的vps_independent_layer_flag[i]可以指定具有索引i的层可不使用层间预测。相比之下,第二值(例如,0)的vps_independent_layer_flag[generallayeridx[nuh_layer_id]]可以指定具有索引i的层可以使用层间预测且语法元素vps_direct_ref_layer_flag[i][j](其中,0≤j≤i-1)存在于vps语法中。vps_independent_layer_flag[i]可以包括在参照图9描述的vps语法中,并且当vps_independent_layer_flag[i]不存在于vps语法中时,vps_independent_layer_flag[i]的值可以被推断为第一值(例如,1)。
[0253]
另外,temporalid的值可以被约束为针对一个访问单元(au)的所有vcl nal单元相同。一个编码画面、pu(画面单元)或au的temporalid的值可以等于编码画面、pu或au的vcl nal单元的temporalid的值。子层表示的temporalid的值可以等于子层表示中的所有vcl nal单元的temporalid的最大值。
[0254]
另外,可如下约束非vcl nal单元的temporalid的值。
[0255]-当nal_unit_type等于dci_nut、vps_nut或sps_nut时,temporalid的值可以被约束为0,并且包括nal单元的au的temporalid的值也被约束为0。
[0256]-相比之下,当nal_unit_type等于ph_nut时,temporalid的值被约束为等于包括nal单元的pu的temporalid的值。
[0257]-相比之下,当nal_unit_type等于eos_nut或eob_nut时,temporalid的值被约束为0。
[0258]-相比之下,当nal_unit_type等于aud_nut、fd_nut、prefix_sei_nut或suffix_sei_nut时,temporalid的值被约束为等于包括nal单元的au的temporalid的值。
[0259]-相比之下,当nal_unit_type等于pps_nut、prefix_aps_nut或suffix_aps_nut时,temporalid的值被约束为大于或等于包括nal单元的pu的temporalid的值。
[0260]
在一个示例中,当nal单元为非vcl nal单元时,temporalid的值可以等于应用非vcl nal单元的所有au的temporalid值的最小值。当nal_unit_type等于pps_nut、prefix_aps_nut或suffix_aps_nut时,temporalid的值可以大于或等于包括nal单元的au的temporalid的值。这是因为所有pps和aps可以包括在比特流的开始中(例如,此信息在带外发送并且接收器将其放置于比特流的开始中)。此处,第一编码画面可以具有值等于0的temporalid。
[0261]
语法元素ptl_sublayer_level_present_flag[i]可以指定子层级别信息是否存在于具有等于i的temporalid的子层表示(即,第i时间子层)的profile_tier_level()语
法结构(例如,“1”:存在并且“0”:不存在)中。
[0262]
在一个实施方式中,ptl_sublayer_level_present_flag[i]可以按temporalid的值(即,i)的降序用信号通知/解析。更具体地,ptl_sublayer_level_present_flag[i]可以按第二高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)的顺序用信号通知/解析。
[0263]
语法元素sublayer_level_idc[i]可以指定第i个时间子层的子层级别索引。
[0264]
语法元素sublayer_level_idc[i]的语义在除了不存在该值时的推断过程(或推断规则)之外等于general_level_idc,但适用于具有等于i的temporalid的子层表示。
[0265]
在一个实施方式中,sublayer_level_idc[i]可以按temporalid的值(即,i)的降序用信号通知/解析。更具体地,sublayer_level_idc[i]可以按第二最高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)的顺序用信号通知。另外,仅当ptl_sublayer_level_present_flag[i]具有第一值(例如,1)时可以用信号通知/解析sublayer_level_idc[i]。sublayer_level_idc[maxnumsublayersminus1]的值可以被推断为等于同一profile_tier_level()语法结构的general_level_idc的值。
[0266]
当sublayer_level_idc[i]不存在时,sublayer_level_idc[i]的值(其中,0≤i≤maxnumsublayersminus1-1)可以被推断为与sublayer_level_idc[i 1]相同的值。
[0267]
此外,在性能评估模拟过程中,为了比较层能力,具有第二值(例如,0)的general_tier_flag的层(即,主层)可以被视为比具有第一值(例如,1)的general_tier_flag的层(即,较高层)更低的层。另外,为了比较层能力,当特定级别处的general_level_idc或sublayer_level_idc[i]的值小于另一级别处的值时,预定层的特定级别可以被视为低于该层的另一级别。
[0268]
如上文所述,根据本公开的实施方式,ptl_sublayer_level_present_flag[i]的用信号通知/解析可以按temporalid的值(即,i)的降序执行。类似地,sublayer_level_idc[i]的用信号通知/解析和推断过程(或推断规则)也可以按i的值的降序执行。也就是说,可以在sublayer_level_idc[i]之前用信号通知/解析sublayer_level_idc[i 1]。因此,sublayer_level_idc[i]的值的推断过程可以在与sublayer_level_idc[i]的用信号通知/解析过程相同的循环中执行。
[0269]
在下文中,将参照图13和图14详细描述根据本公开的实施方式的图像编码/解码方法。
[0270]
图13为根据本公开的一个实施方式的图像编码方法的流程图。
[0271]
图13的图像编码方法可以由图2或图5的图像编码设备执行。例如,步骤s1310和步骤s1320可以由熵编码器190、540-0或540-1执行。
[0272]
参照图13,图像编码设备可以对指定针对当前层中的一个或更多个子层中的每一个是否存在子层级别信息的第一标志进行编码(s1310)。第一标志可以意指上文参照图12描述的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法中的ptl_sublayer_level_present_flag[i]。另外,子层级别信息可以意指上文参照图12所描述的profile_tier_level(profiletierpresentflag,maxnumsublayersminus1)语法中的sublayer_level_idc[i]。
[0273]
在一个实施方式中,可以按一个或更多个子层的时间标识符值的降序来对第一标
志(例如,ptl_sublayer_level_present_flag[i])进行编码。可以通过从经由nal单元报头用信号通知的nuh_temporal_id_plus1的值减去1(即,temporalid=nuh_temporal_id_plus1-1)来推导时间标识符值。
[0274]
在一个实施方式中,可以基于当前层中的子层的最大数量(例如,maxnumsublayersminus1)来对第一标志进行编码。例如,如上文参照图12所述,可以从第二最高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)来对ptl_sublayer_level_present_flag[i]进行编码/用信号通知。
[0275]
图像编码设备可以基于第一标志对子层级别信息进行编码(s1320)。例如,如上文参照图12所述,仅当ptl_sublayer_level_present_flag[i]具有指定子层级别信息存在的第一值(例如,1)时,可以对sublayer_level_idc[i]进行编码/用信号通知。
[0276]
在一个实施方式中,可以按时间标识符值的降序对子层级别信息(例如,sublayer_level_idc[i])进行编码。
[0277]
在一个实施方式中,可以基于当前层中的子层的最大数量来对子层级别信息进行编码。例如,如上文参照图12所述,可以按第二最高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)的顺序对sublayer_level_idc[i]进行编码/用信号通知。
[0278]
图14是根据本公开的一个实施方式的图像解码方法的流程图。
[0279]
图14的图像解码方法可以由图3或图6的图像解码设备执行。例如,步骤s1410到步骤s1420可以由熵解码器210、610-0或610-1执行。
[0280]
参照图14,图像解码设备可以从比特流获得(或解码)指定针对当前层中的一个或更多个子层中的每一个是否存在子层级别信息的第一标志(s1410)。
[0281]
在一个实施方式中,第一标志(例如,ptl_sublayer_level_present_flag[i])可以按一个或更多个子层的时间标识符值的降序获得。可以通过从经由nal单元报头用信号通知的nuh_temporal_id_plus1的值减去1(即,temporalid=nuh_temporal_id_plus1-1)来推导时间标识符值。
[0282]
在一个实施方式中,可以基于当前层中的子层的最大数量(例如,maxnumsublayersminus1)获得第一标志。例如,如上文参照图12所述,可以从第二最高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)对ptl_sublayer_level_present_flag[i]进行解码/用信号通知。
[0283]
图像解码设备可以基于第一标志从比特流获得(或解码)子层级别信息(s1420)。例如,如上文参照图12所述,仅当ptl_sublayer_level_present_flag[i]具有指定子层级别信息存在的第一值(例如,1)时,才看可以对sublayer_level_idc[i]进行解码/解析。
[0284]
在一个实施方式中,子层级别信息(例如,sublayer_level_idc[i])可以按时间标识符值的降序获得。
[0285]
在一个实施方式中,可以基于当前层中的子层的最大数量获得子层级别信息。例如,如上文参照图12所述,可以按第二最高时间子层(即,i=maxnumsublayersminus1-1)到第一时间子层(即,i=0)的顺序来对sublayer_level_idc[i]进行解码/解析。
[0286]
在一个实施方式中,基于指定当前层中的第一子层的第一子层级别信息(例如,sublayer_level_idc[i])不存在的第一标志(例如,ptl_sublayer_level_present_flag
[i]),可以跳过获得第一子层级别信息的步骤。在这种情况下,第一子层级别信息可以被设置(或推断)为与具有比第一子层的第一时间标识符值大1的第二时间标识符值的第二子层的第二子层级别信息(例如,sublayer_level_idc[i 1])相同的值。
[0287]
在一个实施方式中,所述一个或更多个子层当中具有最大时间标识符值的第三子层的第三子层级别信息可以被设置(或推断)为与针对一个或更多个ols预设的一般级别索引信息(例如,general_level_idc)相同的值。这里,一般级别索引信息可以指定由视频参数集(vps)指定的一个或更多个ols符合的级别。在一个示例中,较大值的general_level_idc可以指定较高级别。
[0288]
如上文所描述,根据上文参照图13和图14所描述的根据本公开的实施方式的图像编码/解码方法,可以按一个或更多个子层的时间标识符值的降序获得指定针对当前层中的一个或更多个子层中的每一个是否存在子层级别信息的第一标志(例如,ptl_sublayer_level_present_flag[i])。类似地,子层级别信息(例如,sublayer_level_idc[i])也可以按时间标识符值的降序获得。因此,子层级别信息的推断过程可以在与子层级别信息的用信号通知/解析过程相同的循环中执行。
[0289]
虽然为了描述的清楚起见,上述本公开的示例性方法被表示为一系列操作,但并不旨在限制执行步骤的顺序,并且必要时这些步骤可以同时或以不同的顺序来执行。为了实现根据本公开的方法,所描述的步骤可以进一步包括其它步骤,可以包括除了一些步骤之外的其余步骤,或者可以包括除了一些步骤之外的其它附加步骤。
[0290]
在本公开中,执行预定操作(步骤)的图像编码装置或图像解码装置可以执行确认相应操作(步骤)的执行条件或情况的操作(步骤)。例如,如果描述了在满足预定条件时执行预定操作,则图像编码装置或图像解码装置可以在确定是否满足预定条件之后执行预定操作。
[0291]
本公开的各种实施方式不是所有可能组合的列表并且旨在描述本公开的代表性方面,并且在各种实施方式中描述的事项可以独立地或以两个或更多个的组合应用。
[0292]
本公开的各种实施方式可以以硬件、固件、软件或其组合来实现。在通过硬件实现本公开的情况下,本公开可以通过专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理器件(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器等来实现。
[0293]
此外,应用本公开的实施方式的图像解码设备和图像编码设备可以被包括在多媒体广播传送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监控摄像头、视频聊天装置、诸如视频通信的实时通信装置、移动流传输装置、存储介质、摄像机、视频点播(vod)服务提供装置、ott视频(over the top video)装置、互联网流传输服务提供装置、三维(3d)视频装置、视频电话视频装置、医疗视频装置等中,并且可用于处理视频信号或数据信号。例如,ott视频装置可以包括游戏机、蓝光播放器、互联网接入电视、家庭影院系统、智能电话、平板pc、数字录像机(dvr)等。
[0294]
图15是示出可应用本公开的实施方式的内容流系统的图。
[0295]
如图15中所示,应用本公开的实施方式的内容流系统可以主要包括编码服务器、流服务器、网络服务器、媒体存储装置、用户装置和多媒体输入装置。
[0296]
编码服务器将从诸如智能电话、相机、摄像机等多媒体输入装置输入的内容压缩
成数字数据以生成比特流并将该比特流发送到流服务器。作为另一示例,当智能电话、相机、摄像机等多媒体输入装置直接生成比特流时,可以省略编码服务器。
[0297]
比特流可以由应用本公开的实施方式的图像编码方法或图像编码设备产生,并且流服务器可以在发送或接收比特流的过程中暂时存储比特流。
[0298]
流服务器基于用户通过网络服务器的请求将多媒体数据发送到用户装置,并且网络服务器用作向用户告知服务的媒介。当用户向网络服务器请求所需的服务时,网络服务器可以将其递送到流服务器,并且流服务器可以向用户发送多媒体数据。在这种情况下,内容流系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流系统中的装置之间的命令/响应。
[0299]
流服务器可以从媒体存储装置和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时接收内容。在这种情况下,为了提供平滑的流服务,流服务器可以在预定时间内存储比特流。
[0300]
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(pda)、便携式多媒体播放器(pmp)、导航设备、板式pc、平板pc、超级本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字电视、台式计算机、数字标牌等。
[0301]
内容流系统中的各个服务器可以作为分布式服务器运行,在这种情况下,从各个服务器接收的数据可以被分布。
[0302]
本公开的范围包括用于使根据各种实施方式的方法的操作能够在设备或计算机上执行的软件或机器可执行命令(例如,操作系统、应用、固件、程序等)、具有存储在其上并且可在设备或计算机上执行的此类软件或命令的非暂时性计算机可读介质。
[0303]
工业适用性
[0304]
本公开的实施方式可以被用于对图像进行编码或解码。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献