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

通过确定边界强度执行去块滤波的图像编码/解码方法和设备及发送比特流的方法与流程

2022-11-09 22:14:48 来源:中国专利 TAG:


1.本公开涉及图像编码/解码方法和设备,并且更具体地,涉及用于通过确定边界强度来执行去块滤波的图像编码/解码方法和设备以及发送由本公开的图像编码方法/设备生成的比特流的方法。


背景技术:

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


技术实现要素:

4.技术问题
5.本公开的目的是提供一种具有提高的编码/解码效率的图像编码/解码方法和设备。
6.本公开的另一个目的是提供一种用于执行去块滤波的图像编码/解码方法和设备。
7.本公开的另一个目的是提供一种用于确定去块滤波的边界强度以便执行去块滤波的图像编码/解码方法和设备。
8.本公开的另一个目的是提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
9.本公开的另一个目的是提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
10.本公开的另一个目的是提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
11.本公开所解决的技术问题不限于上述技术问题,本领域技术人员通过以下描述将清楚此处未描述的其它技术问题。
12.技术方案
13.根据本公开一方面的图像解码方法由图像解码设备执行。所述图像解码方法包括:获得重构画面;确定所述重构画面中的去块滤波的目标边界;确定所述目标边界的边界强度;以及基于所述边界强度对所述目标边界应用去块滤波。基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,可以基于是否对与所述目标边界相邻的两个块中的至少一个执行联合cbcr残差编码来确定所述边界强度,并且所述联合cbcr残差编
码可以对应于将色度cb分量和色度cr分量的残差样本编码为单个变换块。
14.在根据本公开的图像解码方法中,基于针对相邻块发信号通知的第一标志来确定是否可以对与所述目标边界相邻的块执行联合cbcr残差编码。
15.在根据本公开的图像解码方法中,基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,还可以基于与所述目标边界相邻的两个块中的至少一个是否包括非零变换系数级别来确定所述边界强度。
16.在根据本公开的图像解码方法中,可以基于针对相邻块发信号通知的第二标志来确定与所述目标边界相邻的块是否包括至少一个非零变换系数级别。
17.在根据本公开的图像解码方法中,基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,可以基于与所述目标边界相邻的两个块的两个第一标志和两个第二标志的和来确定所述边界强度。
18.在根据本公开的图像解码方法中,可以基于和大于0来确定所述边界强度为1。
19.在根据本公开的图像解码方法中,基于所述目标边界是变换块边界并且所述重构画面的颜色分量是亮度分量,可以基于与所述目标边界相邻的两个块中的至少一个是否包括非零变换系数级别来确定所述边界强度。
20.根据本公开的另一实施方式的图像解码设备可以包括存储器和至少一个处理器。所述至少一个处理器可以获得重构画面、确定所述重构画面中的去块滤波的目标边界、确定所述目标边界的边界强度以及基于所述边界强度对所述目标边界应用去块滤波。基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,可以基于是否对与所述目标边界相邻的两个块中的至少一个执行联合cbcr残差编码来确定所述边界强度,并且所述联合cbcr残差编码可以对应于将色度cb分量和色度cr分量的残差样本编码为单个变换块。
21.根据本公开的另一方面的图像编码方法可以包括以下步骤:生成重构画面、确定所述重构画面中的去块滤波的目标边界、确定所述目标边界的边界强度以及基于所述边界强度对所述目标边界应用去块滤波。基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,可以基于是否对与所述目标边界相邻的两个块中的至少一个执行联合cbcr残差编码来确定所述边界强度,并且所述联合cbcr残差编码可以对应于将色度cb分量和色度cr分量的残差样本编码为单个变换块。
22.在根据本公开的图像编码方法中,基于针对相邻块发信号通知的第一标志来确定是否可以对与所述目标边界相邻的块执行联合cbcr残差编码。
23.在根据本公开的图像编码方法中,基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,还可以基于与所述目标边界相邻的两个块中的至少一个是否包括非零变换系数级别来确定所述边界强度。
24.在根据本公开的图像编码方法中,可以基于针对相邻块发信号通知的第二标志来确定与所述目标边界相邻的块是否包括至少一个非零变换系数级别。
25.在根据本公开的图像编码方法中,基于所述目标边界是变换块边界并且所述重构画面的颜色分量是色度分量,可以基于与所述目标边界相邻的两个块的两个第一标志和两个第二标志的和来确定所述边界强度。
26.在根据本公开的图像编码方法中,可以基于和大于0来确定所述边界强度为1。
27.根据本公开的另一方面的传输方法可以发送由本公开的图像编码设备或图像编码方法生成的比特流。
28.根据本公开的另一方面的计算机可读记录介质可以存储由本公开的图像编码设备或图像编码方法生成的比特流。
29.以上关于本公开简要概括的特征仅仅是本公开的以下详细描述的示例性方面,并且不限制本公开的范围。
30.有益效果
31.根据本公开,可以提供一种具有提高的编码/解码效率的图像编码/解码方法和设备。
32.根据本公开,可以提供一种用于执行去块滤波的图像编码/解码方法和设备。
33.根据本公开,可以提供一种用于确定去块滤波的边界强度以便执行去块滤波的图像编码/解码方法和设备。
34.此外,根据本公开,能够提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
35.此外,根据本公开,能够提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
36.此外,根据本公开,能够提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
37.本领域的技术人员将理解,通过本公开可以实现的效果不限于上文已经具体描述的内容,并且将从详细描述中更清楚地理解本公开的其它优点。
附图说明
38.图1是示意性地示出根据本公开的实施方式的视频编码系统的视图。
39.图2是示意性地示出根据本公开的实施方式的图像编码设备的视图。
40.图3是示意性地示出根据本公开的实施方式的图像解码设备的视图。
41.图4是可应用本公开的实施方式的图像解码过程的示意性流程图。
42.图5是可应用本公开的实施方式的图像编码过程的示意性流程图。
43.图6是示出根据本公开的去块滤波的流程图。
44.图7是示出根据本公开的实施方式的确定目标边界的边界强度的方法的流程图。
45.图8是示出与本公开的实施方式相关的变换块中的语法元素的信令的视图。
46.图9是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
47.图10是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
48.图11是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
49.图12是示出根据本公开的基于去块滤波的编码过程的流程图。
50.图13是示出根据本公开的基于去块滤波的解码过程的流程图。
51.图14是示出根据本公开的实施方式的与去块滤波的目标边界相邻的两个块和样
本的视图。
52.图15是示出可应用本公开的实施方式的内容流系统的视图。
具体实施方式
53.在下文中,将参照附图详细描述本公开的实施方式,以便本领域技术人员容易地实现。然而,本公开可以以各种不同的形式实现,并且不限于这里描述的实施方式。
54.在描述本公开时,在确定相关的已知功能或构造的详细描述致使本公开的范围不必要地模糊的情况下,将省略其详细描述。在附图中,省略了与本公开的描述无关的部分,并且相似的附图标记附于相似的部分。
55.在本公开中,当组件“连接”、“联接”或“链接”到另一组件时,其不仅可以包括直接连接关系,还可以包括中间组件存在的间接连接关系。另外,当一个组件“包括”或“具有”其它组件时,除非另有说明,否则是指还可以包括其它组件,而不是排除其它组件。
56.在本公开中,术语第一、第二等仅用于将一个组件与其它组件区分开的目的,并且不限制组件的顺序或重要性,除非另有说明。相应地,在本公开的范围内,一个实施方式中的第一组件在另一个实施方式中可以被称为第二组件,类似地,一个实施方式中的第二组件在另一个实施方式中可以被称为第一组件。
57.在本公开中,相互区分的组件旨在清楚地描述每个特征,并不意味着组件必须分开。即,多个组件可以集成在一个硬件或软件单元中实现,或者一个组件可以在多个硬件或软件单元中分布和实现。因此,即使没有特别说明,这些组件集成或分布式的实施方式也包括在本公开的范围内。
58.在本公开中,各个实施方式中所描述的组件并不一定是必不可少的组件,一些组件可以是可选的组件。因此,由实施方式中描述的组件的子集组成的实施方式也包括在本公开的范围内。此外,除了在各种实施方式中描述的组件之外还包括其它组件的实施方式包括在本公开的范围内。
59.本公开涉及图像的编码和解码,除非在本公开中重新定义,否则本公开中使用的术语可以具有本公开所属技术领域中常用的一般含义。
60.在本公开中,“画面”一般是指表示特定时间段内的一个图像的单元,而切片(slice)/拼块(tile)/子画面是构成画面的一部分的编码单元,一个画面可以由一个或更多个切片/拼块/子画面组成。此外,切片/拼块/子画面可以包括一个或更多个编码树单元(ctu)。
61.在本公开中,“像素”或“像元(pel)”可以意指构成一个画面(或图像)的最小单元。此外,“样本”可以用作对应于像素的术语。一个样本一般可以表示像素或像素的值,也可以仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
62.在本公开中,“单元”可以表示图像处理的基本单元。该单元可以包括画面的特定区域和与该区域相关的信息中的至少一个。在某些情况下,该单元可以与诸如“样本阵列”、“块”或“区域”的术语互换使用。在一般情况下,m
×
n块可以包括m列n行的样本(或样本阵列)或变换系数的集合(或阵列)。
63.在本公开中,“当前块”可以意指“当前编码块”、“当前编码单元”、“编码目标块”、“解码目标块”或“处理目标块”之一。当执行预测时,“当前块”可以意指“当前预测块”或“预
测目标块”。当执行变换(逆变换)/量化(解量化)时,“当前块”可以意指“当前变换块”或“变换目标块”。当执行滤波时,“当前块”可以意指“滤波目标块”。
64.另外,在本公开中,除非明确地声明为色度块,否则“当前块”可以表示“当前块的亮度块”。“当前块的色度块”可以通过包括诸如“色度块”或“当前色度块”之类的色度块的明确描述来表达。
65.在本公开中,术语“/”或“,”可以解释为指示“和/或”。例如,“a/b”和“a,b”可以意指“a和/或b”。此外,“a/b/c”和“a/b/c”可以意指“a、b和/或c中的至少一个”。
66.在本公开中,术语“或”应被解释以指示“和/或”。例如,表达“a或b”可以包括1)仅“a”,2)仅“b”,或3)“a和b”二者。换言之,在本公开中,“或”应被解释以指示“附加地或另选地”。
67.视频编码系统的概述
68.图1是示意性地示出根据本公开的视频编码系统的视图。
69.根据实施方式的视频编码系统可以包括编码设备10和解码设备20。编码设备10可以将编码的视频和/或图像信息或数据以文件或流的形式经由数字存储介质或网络递送到解码设备20。
70.根据实施方式的编码设备10可以包括视频源生成器11、编码单元12和发送器13。根据实施方式的解码设备20可以包括接收器21、解码单元22和渲染器23。编码单元12可以称为视频/图像编码单元,解码单元22可以称为视频/图像解码单元。发送器13可以被包括在编码单元12中。接收器21可以被包括在解码单元22中。渲染器23可以包括显示器并且显示器可以被配置为单独的装置或外部组件。
71.视频源生成器11可以通过捕获、合成或生成视频/图像的过程来获取视频/图像。视频源生成器11可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(以电子方式)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获过程可以被生成相关数据的过程代替。
72.编码单元12可以对输入视频/图像进行编码。为了压缩和编码效率,编码单元12可以执行一系列过程,例如预测、变换和量化。编码单元12可以以比特流的形式输出编码数据(编码视频/图像信息)。
73.发送器13可以通过数字存储介质或网络以文件或流的形式将以比特流的形式输出的编码视频/图像信息或数据传输到解码设备20的接收器21。数字存储介质可以包括各种存储介质,例如usb、sd、cd、dvd、蓝光、hdd、ssd等。发送器13可以包括用于通过预定文件格式生成媒体文件的元件并且可以包括用于通过广播/通信网络传输的元件。接收器21可以从存储介质或网络中提取/接收比特流并将比特流传输到解码单元22。
74.解码单元22可以通过执行与编码单元12的操作相对应的一系列过程,例如解量化、逆变换和预测来解码视频/图像。
75.渲染器23可以渲染解码的视频/图像。渲染的视频/图像可以通过显示器显示。
76.图像编码设备的概述
77.图2是示意性地示出本公开的实施方式可适用于的图像编码设备的视图。
78.如图2所示,图像编码设备100可以包括图像分割器110、减法器115、变换器120、量化器130、解量化器140、逆变换器150、加法器155、滤波器160、存储器170、帧间预测单元180、帧内预测单元185和熵编码器190。帧间预测单元180和帧内预测单元185可以统称为“预测单元”。变换器120、量化器130、解量化器140和逆变换器150可以被包括在残差处理器中。残差处理器还可以包括减法器115。
79.在一些实施方式中,配置图像编码设备100的多个组件中的全部或至少一些可以由一个硬件组件(例如,编码器或处理器)来配置。此外,存储器170可以包括解码画面缓冲器(dpb)并且可以由数字存储介质配置。
80.图像分割器110可将输入到图像编码设备100的输入图像(或画面或帧)分割成一个或更多个处理单元。例如,处理单元可以称为编码单元(cu)。可以通过根据四叉树二叉树三叉树(qt/bt/tt)结构递归地分割编码树单元(ctu)或最大编码单元(lcu)来获取编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元分割为更深深度的多个编码单元。对于编码单元的分割,可以首先应用四叉树结构,然后可以应用二叉树结构和/或三叉树结构。可以基于不再分割的最终编码单元来执行根据本公开的编码过程。可以将最大编码单元用作最终编码单元,也可以将通过分割最大编码单元获取的更深深度的编码单元用作最终编码单元。这里,编码过程可以包括稍后将描述的预测、变换和重构的过程。作为另一个示例,编码过程的处理单元可以是预测单元(pu)或变换单元(tu)。预测单元和变换单元可以从最终编码单元划分或分割。预测单元可以是样本预测单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
81.预测单元(帧间预测单元180或帧内预测单元185)可以对要处理的块(当前块)执行预测,并且生成包括当前块的预测样本的预测块。预测单元可以在当前块或cu的基础上确定是应用帧内预测还是帧间预测。预测单元可以生成与当前块的预测有关的各种信息,并且将生成的信息传输到熵编码器190。关于预测的信息可以在熵编码器190中被编码并且以比特流的形式输出。
82.帧内预测单元185可以通过参考当前画面中的样本来预测当前块。根据帧内预测模式和/或帧内预测技术,参考样本可以位于当前块的邻居中或者可以被分开放置。帧内预测模式可以包括多个非定向模式和多个定向模式。非定向模式可以包括例如dc模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33个定向预测模式或65个定向预测模式。然而,这仅仅是示例,可以根据设置使用更多或更少的定向预测模式。帧内预测单元185可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
83.帧间预测单元180可以基于由参考画面上的运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可以相同或不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等。包括时间邻近块的参考画面可以被称为并置画面(colpic)。例如,帧间预测单元180可基于邻近块配置运动信息候选列表并生成指示使用哪个候选来推导当前块的运动向量和/或参考画
面索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测单元180可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式的情况下,与合并模式不同,可以不传输残差信号。在运动向量预测(mvp)模式的情况下,邻近块的运动向量可以用作运动向量预测子,并且当前块的运动向量可以通过编码运动向量差和运动向量预测子的指示符来发信号通知当前块的运动向量。运动向量差可以意指当前块的运动向量与运动向量预测子之间的差。
84.预测单元可以基于以下描述的各种预测方法和预测技术来生成预测信号。例如,预测单元不仅可以应用帧内预测或帧间预测,还可以同时应用帧内预测和帧间预测,以预测当前块。同时应用帧内预测和帧间预测二者来预测当前块的预测方法可以称为组合帧间和帧内预测(ciip)。此外,预测单元可以执行帧内块复制(ibc)以预测当前块。帧内块复制可以用于游戏等的内容图像/视频编码,例如,屏幕内容编码(scc)。ibc是一种在与当前块相隔预定距离的位置处使用当前画面中先前重构的参考块来预测当前画面的方法。当应用ibc时,参考块在当前画面中的位置可以被编码为对应于预定距离的向量(块向量)。在ibc中,基本上在当前画面中执行预测,但是可以类似于帧间预测执行预测,因为在当前画面内推导参考块。也就是说,ibc可以使用本公开中描述的帧间预测技术中的至少一种。
85.预测单元生成的预测信号可用于生成重构信号或生成残差信号。减法器115可以通过从输入图像信号(原始块或原始样本阵列)中减去从预测单元输出的预测信号(预测块或预测样本阵列)来生成残差信号(残差块或残差样本阵列)。生成的残差信号可以被传输到变换器120。
86.变换器120可以通过将变换技术应用于残差信号来生成变换系数。例如,变换技术可以包括离散余弦变换(dct)、离散正弦变换(dst)、karhunen-lo
è
ve变换(klt)、基于图的变换(gbt)或条件非线性变换(cnt)中的至少一种。这里,gbt是指当像素之间的关系信息由图形表示时从图形获得的变换。cnt是指基于使用所有先前重构的像素生成的预测信号获取的变换。此外,变换处理可以应用于具有相同大小的方形像素块或者可以应用于具有可变大小而不是方形的块。
87.量化器130可以对变换系数进行量化并且将它们传输到熵编码器190。熵编码器190可以对量化的信号(关于量化的变换系数的信息)进行编码并且输出比特流。关于量化变换系数的信息可以被称为残差信息。量化器130可基于系数扫描顺序将块形式的量化变换系数重新排列为一维向量形式,并基于一维向量形式的量化变换系数生成关于量化变换系数的信息。
88.熵编码器190可以执行各种编码方法,例如指数哥伦布、上下文自适应可变长度编码(cavlc)、上下文自适应二进制算术编码(cabac)等。熵编码器190可以一起或单独地编码量化变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)。编码的信息(例如,编码的视频/图像信息)可以比特流的形式以网络抽象层(nal)为单元进行传输或存储。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(aps)、画面参数集(pps)、序列参数集(sps)或视频参数集(vps)。此外,视频/图像信息还可以包括通用约束信息。本公开中描述的发信号通知的信息、传输的信息和/或语法元素可以通过上述编码过程被编码并且被包括在比特流中。
89.比特流可以通过网络传输或者可以存储在数字存储介质中。网络可以包括广播网
络和/或通信网络,数字存储介质可以包括usb、sd、cd、dvd、蓝光、hdd、ssd等各种存储介质。可以包括传输从熵编码器190输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)作为图像编码设备100的内部/外部元件。另选地,可以提供发送器作为熵编码器190的组件。
90.从量化器130输出的量化变换系数可用于生成残差信号。例如,可以通过解量化器140和逆变换器150对量化变换系数应用解量化和逆变换来重构残差信号(残差块或残差样本)。
91.加法器155将重构残差信号与从帧间预测单元180或帧内预测单元185输出的预测信号相加,以生成重构信号(重构画面、重构块、重构样本阵列)。在要处理的块没有残差的情况下,例如应用跳过模式的情况,则可以将预测块用作重构块。加法器155可以称为重构器或重构块生成器。生成的重构信号可以用于当前画面中要处理的下一个块的帧内预测,并且可以用于通过如下所述的滤波对下一个画面进行帧间预测。
92.滤波器160可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器160可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器170中,具体地,存储器170的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。滤波器160可以生成与滤波有关的各种信息并将所生成的信息传输到熵编码器190,如稍后在每种滤波方法的描述中所描述的。与滤波相关的信息可以由熵编码器190编码并以比特流的形式输出。
93.传输到存储器170的修改的重构画面可以用作帧间预测单元180中的参考画面。当通过图像编码设备100应用帧间预测时,可以避免图像编码设备100和图像解码设备之间的预测失配并且可以提高编码效率。
94.存储器170的dpb可以存储修改的重构画面以用作帧间预测单元180中的参考画面。存储器170可以存储从其中推导(或编码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元180并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器170可以存储当前画面中重构块的重构样本并且可以将重构样本传送到帧内预测单元185。
95.图像解码设备的概述
96.图3是示意性地示出本公开的实施方式可适用的图像解码设备的视图。
97.如图3所示,图像解码设备200可以包括熵解码器210、解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260和帧内预测单元265。帧间预测单元260和帧内预测单元265可以统称为“预测单元”。解量化器220和逆变换器230可以被包括在残差处理器中。
98.根据实施方式,配置图像解码设备200的多个组件中的全部或至少一些可以由硬件组件(例如,解码器或处理器)来配置。此外,存储器250可以包括解码画面缓冲器(dpb)或者可以由数字存储介质配置。
99.已经接收到包括视频/图像信息的比特流的图像解码设备200可以通过执行与由图2的图像编码设备100执行的处理相对应的处理来重构图像。例如,图像解码设备200可以使用在图像编码设备中应用的处理单元来执行解码。因此,解码的处理单元例如可以是编码单元。编码单元可以通过分割编码树单元或最大编码单元来获取。通过图像解码设备200
解码和输出的重构图像信号可以通过再现设备(未示出)再现。
100.图像解码设备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的组件。
101.此外,根据本公开的图像解码设备可以被称为视频/图像/画面解码设备。图像解码设备可以分为信息解码器(视频/图像/画面信息解码器)和样本解码器(视频/图像/画面样本解码器)。信息解码器可以包括熵解码器210。样本解码器可以包括解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260或帧内预测单元265中的至少一个。
102.解量化器220可以对量化变换系数进行解量化并输出变换系数。解量化器220可以以二维块的形式重新排列量化变换系数。在这种情况下,可以基于在图像编码设备中执行的系数扫描顺序来执行重新排列。解量化器220可以通过使用量化参数(例如,量化步长信息)对量化变换系数执行解量化并获得变换系数。
103.逆变换器230可以对变换系数进行逆变换以获得残差信号(残差块、残差样本阵列)。
104.预测单元可以对当前块执行预测并生成包括当前块的预测样本的预测块。预测单元可以基于从熵解码器210输出的关于预测的信息来确定是将帧内预测还是帧间预测应用于当前块,并且可以确定特定帧内/帧间预测模式(预测技术)。
105.与在图像编码设备100的预测单元中描述的相同的是,预测单元可以基于稍后描述的各种预测方法(技术)来生成预测信号。
106.帧内预测单元265可以通过参考当前画面中的样本来预测当前块。帧内预测单元185的描述同样适用于帧内预测单元265。
107.帧间预测单元260可以基于参考画面上由运动向量指定的参考块(参考样本阵列)
来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。例如,帧间预测单元260可以基于邻近块配置运动信息候选列表,并且基于接收到的候选选择信息推导当前块的运动向量和/或参考画面索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示当前块的帧间预测模式的信息。
108.加法器235可以通过将获得的残差信号与从预测单元(包括帧间预测单元260和/或内预测单元265)输出的预测信号(预测块、预测样本阵列)相加生成重构信号(重构画面、重构块、重构样本阵列)。加法器155的描述同样适用于加法器235。在对于要处理的块不存在残差的情况下,诸如当应用跳跃模式时,预测块可被用作重构块。加法器155的描述同样适用于加法器235。加法器235可以被称为重构器或重构块生成器。生成的重构信号可以用于当前画面中要处理的下一个块的帧内预测,并且可以用于通过如下所述的滤波的下一个画面的帧间预测。
109.滤波器240可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器240可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器250中,具体地,存储器250的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。
110.存储在存储器250的dpb中的(修改的)重构画面可以用作帧间预测单元260中的参考画面。存储器250可以存储从其中推导(或解码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元260,以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器250可以存储当前画面中重构块的重构样本并将重构样本传送到帧内预测单元265。
111.在本公开中,在图像编码设备100的滤波器160、帧间预测单元180和帧内预测单元185中描述的实施方式可以同等地或对应地应用于图像解码设备200的滤波器240、帧间预测单元260和帧内预测单元265。
112.图像解码/编码过程的概述
113.在图像/视频编码中,可以根据一系列解码顺序对构成图像/视频的画面进行编码/解码。可以与上述解码顺序不同地设置与解码画面的输出顺序相对应的画面顺序,并且基于此,在帧间预测期间不仅可以执行前向预测,还可以执行后向预测。
114.图4是可应用本公开的实施方式的图像解码过程的示意性流程图。
115.图4中示出的每个过程可以由图3的图像解码设备执行。例如,步骤s410可以由图像解码设备的熵解码器210执行,步骤s420可以由预测单元260和265执行,步骤s430可以由残差处理器220和230执行,步骤s440可以由加法器235执行,并且步骤s450可以由滤波器240执行。步骤s410可以包括本公开中描述的信息解码(解析)过程,步骤s420可以包括本公开中描述的帧间/帧内预测过程,步骤s430可以包括本公开中描述的残差处理过程,步骤s440可以包括本公开中描述的块/画面重构过程,并且步骤s450可以包括本公开中描述的环内滤波过程。
116.参照图4,画面解码过程可以示意性地包括用于(通过解码)从比特流获得视频/图像信息的过程(s410)、图像(画面)重构过程(s420至s440)和用于重构图像(画面)的环内滤波过程(s450)。可以基于通过帧间/帧内预测(s420)获得的预测样本和通过残差处理(s430)获得的残差样本(量化变换系数的解量化和逆变换)来执行图像重构过程。对于通过图像重构过程生成的重构画面,可以通过环内滤波过程(s450)生成修改的重构画面,修改的重构画面可以输出为解码画面,存储在图像解码设备的存储器或解码画面缓冲器(dpb)250中,并且在解码稍后的画面时用作帧间预测过程中的参考画面。在一些情况下,可以省略环内滤波过程。在这种情况下,重构画面可以作为解码画面输出,存储在图像解码设备的dpb 250或存储器中,并且在解码稍后的画面时用作帧间预测过程中的参考画面。环内滤波过程(s450)可包括去块滤波过程、样本自适应偏移(sao)过程、自适应环路滤波器(alf)过程和/或双向滤波器过程,如上所述,可以省略其中的一些或全部。另外,可以依次应用去块滤波过程、采样自适应偏移(sao)过程、自适应环路滤波器(alf)过程和/或双向滤波器过程中的一个或一些,或者可以依次应用它们中的所有。例如,在去块滤波过程应用于重构图像之后,可以执行sao过程。另选地,在去块滤波过程应用于重构图像之后,可以执行alf过程。这甚至可以在图像编码设备中类似地执行。
117.图5是可应用本公开的实施方式的图像编码过程的示意性流程图。
118.图5中示出的每个过程可以由图2的图像编码设备执行。例如,步骤s510可以由图像编码设备的预测单元180和185执行,步骤s520可以由残差处理器115、120和130执行,并且步骤s530可以在熵编码器190中执行。步骤s510可以包括本公开中描述的帧间/帧内预测过程,步骤s520可以包括本公开中描述的残差处理过程,并且步骤s530可以包括本公开中描述的信息编码过程。
119.参照图5,图像编码过程可以示意性地不仅包括用于以比特流的形式编码和输出用于画面重构的信息(例如,预测信息、残差信息、分割信息等)的过程,还包括用于生成当前画面的重构画面的过程和用于对重构画面应用环内滤波的过程(可选的)。图像编码设备可以通过解量化器140和逆变换器150从量化的变换系数推导(修改的)残差样本,并且基于步骤s510输出的预测样本和(修改的)残差样本来生成重构画面。以这种方式生成的重构画面可以等于在图像解码设备中生成的重构画面。与图像解码设备类似,修改的重构画面可以通过用于重构画面的环内滤波过程来生成,并且可以存储在解码画面缓冲器(dpb)170或存储器中,并且可以在编码稍后的画面时用作帧间预测过程中的参考画面。如上所述,在一些情况下,可以省略一些或全部环内滤波过程。当执行环内滤波过程时,(环内)滤波相关信息(参数)可在熵编码器190中被编码并以比特流的形式输出,并且图像解码设备可以基于滤波相关信息使用与图像编码设备相同的方法来执行环内滤波过程。
120.通过这样的环内滤波过程,可以减少在视频/图像编码期间出现的噪声(例如,块效应和振铃效应),并且可以提高主观/客观视觉质量。另外,通过在图像编码设备和图像解码设备二者中执行环内滤波过程,图像编码设备和图像解码设备可以推导相同的预测结果,可以增加画面编码可靠性并且可以减少要发送用于画面编码的数据量。
121.如上所述,图像(画面)重构过程不仅可以在图像解码设备中执行,而且可以在图像编码设备中执行。可以基于以块为单位的帧内预测/帧间预测来生成重构块,并且可以生成包括重构块的重构画面。当当前画面/切片/拼块组是i画面/切片/拼块组时,可以仅基于
帧内预测来重构包括在当前画面/切片/拼块组中的块。另一方面,当当前画面/切片/拼块组是p或b画面/切片/拼块组时,可以基于帧内预测或帧间预测来重构包括在当前画面/切片/拼块组中的块。在这种情况下,帧间预测可应用于当前画面/切片/拼块组中的一些块且帧内预测可应用于其余块。画面的颜色分量可以包括亮度分量和色度分量,并且除非在本公开中明确限制,否则本公开的方法和实施方式可应用于亮度分量和色度分量二者。
122.图6是示出根据本公开的去块滤波的流程图。图6所示的去块滤波可以对应于上述环内滤波的去块滤波。图6所示的去块滤波例如可以由图2的滤波器160或者图3的滤波器240执行。
123.去块滤波可以对应于用于去除在重构画面中的块之间的边界处发生的失真的滤波技术。可以通过去块滤波过程从重构的画面推导目标边界(s610)。另外,可以确定推导的目标边界的边界强度(bs)。可以基于所确定的边界强度来执行针对目标边界的去块滤波(s630)。可以基于与目标边界相邻的两个块的预测模式、运动向量差、参考画面是否相同和/或存在/不存在非零有效系数来确定边界强度。
124.去块滤波可以应用于重构画面。可以按照与针对重构画面的每个cu的解码过程相同的顺序来执行去块滤波。首先,可以对垂直边缘进行滤波(水平滤波)。此后,可以对水平边缘进行滤波(垂直滤波)。去块滤波可以应用于所有编码块(或子块)边缘和变换块边缘。
125.如上所述,环内滤波可包括sao。sao可以对应于以样本为单位补偿重构画面和原始画面之间的偏移差的方法。例如,可以基于诸如频带偏移或边缘偏移的类型来应用sao。根据sao,样本可以根据每个sao类型分类为不同的类别。可以基于分类的类别向每个样本添加偏移值。sao的滤波信息可以包括关于是否应用sao的信息、sao类型信息和/或sao偏移值信息。可以在应用去块滤波之后将sao应用于重构画面。
126.另外,环内滤波可以包括alf。alf可以对应于用于根据滤波器形状基于滤波器系数对以样本为单位的重构画面执行滤波的技术。编码设备可以通过在重构画面和原始画面之间的比较来确定是否应用alf、alf形状和/或alf滤波系数。另外,这可以发信号通知给解码设备。alf的滤波信息可以包括是否应用alf的信息、alf滤波器形状信息和/或alf滤波系数信息。可以在应用去块滤波之后对重构画面应用alf。
127.根据本公开的一些实施方式,可以根据与目标边界相邻的两个块的条件来确定边界强度。在本公开中,边界强度和边界滤波强度可以互换使用。
128.图14是示出根据本公开的实施方式的与去块滤波的目标边界相邻的两个块和样本的视图。
129.在图14中,由粗实线表示的边界可以是去块滤波的目标边界。
130.如图14中所示,当目标边界是垂直边界时,可以基于目标边界将左块定义为p块,并且可以将右块定义为q块。另外,当目标边界是水平边界时,可以基于目标边界将上块定义为p块,并且可以将下块定义为q块。
131.在本公开中,p块中的样本可以由pn表示,并且q块中的样本可以由qn表示。也就是说,pn和qn可以是面对p块和q块之间的边界(目标边界)的样本。在这种情况下,n可以是大于或等于0的整数,并且可以表示距目标边界的距离。p0可以是紧邻目标边界的p块中的样本,并且q0可以表示紧邻目标边界的q块中的样本。例如,p0可以是与目标边界相邻的左块或上块的样本,q0可以是与目标边界相邻的右块或下块的样本。另选地,如图14中所示,p块中的
样本可以由p
n,m
表示,并且q块中的样本可以由q
n,m
表示。在这种情况下,n是如上所述的大于或等于0的整数,并且可以表示距目标边界的距离。另外,m可以是用于区分在一个块(p块或q块)中位于距目标边界相同距离处的样本的索引。
132.另外,在以下描述中,边界强度的第一值、第二值和第三值可以分别表示0、1和2,但是本公开的范围不受这种定义的限制。
133.图像编码设备和图像解码设备可以基于边界强度执行去块滤波。例如,当边界强度是第一值(例如,0)时,可以不对对应的目标边界应用滤波。可以基于滤波器强度(强滤波器/弱滤波器)和/或滤波器长度来应用去块滤波。
134.在本公开中,可以通过从比特流获得与去块滤波相关的信息来执行去块滤波。例如,与去块滤波相关的信息可以包括指定去块滤波是否可用的标志。另外,与去块滤波相关的信息可以包括用于推导边界强度的信息。
135.可以根据重构画面的颜色分量(亮度分量(y)和色度分量(cb,cr))单独地执行去块滤波过程。例如,可以根据颜色分量(亮度分量(y)和色度分量(cb,cr))不同地推导边界强度bs。另外,例如,可以根据颜色分量(亮度分量(y)和色度分量(cb,cr))单独推导目标边界。在本公开中,颜色分量可以由分量索引cidx指定。例如,当cidx为0时,其可以指定亮度分量。另外,当cidx是1时,其可以指定色度分量cb,并且当cidx是2时,其可以指定色度分量cr。
136.图7是示出根据本公开的实施方式的确定目标边界的边界强度的方法的流程图。
137.参照图7,可以确定当前块是否是亮度分量块(例如,cidx=0)并且样本p0和q0二者是否都被包括在应用了基于块的量化残余域差分脉冲编码调制(bdpcm)的编码块(例如,intra_bdpcm_luma_flag=1)中(s710)。当满足上述条件时(s710为是),可以将对应目标边界的边界强度确定为第一值(例如,0)。
138.当不满足步骤s710的条件时(s710为否),可以确定步骤s720。具体地,可以确定当前块是否是色度分量块(例如,cidx》0)并且样本p0和q0二者是否都包括在应用了bdpcm的编码块(例如,intra_bdpcm_chroma_flag=1)中(s720)。当满足上述条件时(s720为是),可以将对应目标边界的边界强度确定为第一值(例如,0)。
139.当不满足步骤s720的条件时(s720为否),可以确定步骤s730。具体地,可以确定样本p0或样本q0包括在以帧内预测模式编码的编码块中(s730)。当满足上述条件时(s730为是),可以将对应目标边界的边界强度确定为第三值(例如,2)。
140.当不满足步骤s730的条件时(s730为否),可以确定步骤s740。具体地,可以确定目标边界是编码块的边界并且样本p0或样本q0是否包括在应用了组合帧间和帧内预测(ciip)的编码块(例如,ciip_flag=1)中(s740)。当满足上述条件时(s740为是),可以将对应目标边界的边界强度确定为第三值(例如,2)。
141.当不满足步骤s740的条件时(s740为否),可以确定步骤s750。具体地,可以确定目标边界是变换块的边界并且样本p0或样本q0是否包括在具有一个或更多个非零变换系数级别的变换块中(s750)。当满足上述条件时(s750为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。
142.当不满足步骤s750的条件时(s750为否),可以确定步骤s760。具体地,可以确定包含样本p0的编码子块的预测模式和包含样本q0的编码子块的预测模式是否不同(s760)。当
满足上述条件时(s760为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。例如,当以ibc预测模式对位于目标边界两侧的两个编码子块中的一个进行编码并且以帧间预测模式对另一个进行编码时,可以将对应的目标边界的边界强度确定为第二值(例如,1)。
143.当不满足步骤s760的条件时(s760为否),可以确定步骤s770。具体地,在步骤s770中,可以确定颜色分量是否是亮度分量(例如,cidx=0)、目标边界是否是子块的边界(例如,edgeflags=2)以及是否满足以下描述的各种其它条件中的至少一个(s770)。在步骤s770中,当颜色分量是亮度分量、目标边界是子块的边界并且满足以下描述的其它条件(条件1至条件5)中的至少一个时(s770为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。
[0144]-条件1:以ibc预测模式对包含样本p0的编码子块和包含样本q0的编码子块二者进行编码,并且每个子块的块向量的水平分量或垂直分量之间的差大于或等于以1/16亮度样本为单位的8单位值。
[0145]-条件2:包含样本p0的编码子块和包含样本q0的编码子块参考不同的参考画面或具有不同数量的运动向量。在条件2中,通过仅考虑针对帧间预测参考的画面是否相同来确定参考画面是否相同,并且不考虑对应的参考画面是属于参考画面列表0还是参考画面列表1。另外,不考虑指定对应参考画面的索引值是否相同。另外,可以使用预测方向标志(predflagl0、predflagl1)值来确定运动向量的数量。例如,可以将运动向量的数量推导为predflagl0 predflagl1。
[0146]-条件3:使用一个运动向量来预测包含样本p0的编码子块和包含样本q0的编码子块,并且每个子块的运动向量的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值。
[0147]-条件4:使用两个运动向量和两个不同参考画面来预测包括相同p0的编码子块,并且使用两个运动向量和两个相同参考画面来预测包含样本q0的编码子块,并且同一参考画面的运动向量的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值。
[0148]-条件5:使用相同参考画面的两个运动向量来预测包含样本p0的编码子块,使用相同参考画面的两个运动向量来预测包含样本q0的编码子块,并且满足以下两个条件(条件5-1和条件5-2)。
[0149]-条件5-1:用于预测每个编码子块的列表0运动向量的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值,并且用于预测每个编码子块的列表1运动向量的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值
[0150]-条件5-2:用于预测包括子块p0的编码子块的列表0运动向量和用于预测包括样本q0的编码子块的列表1运动向量之间的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值,或者用于预测包括子块p0的编码子块的列表1运动向量和用于预测包括样本q0的编码子块的列表0运动向量之间的水平分量或垂直分量之间的差可以大于或等于以1/16亮度样本为单位的8单位值。
[0151]
在上述条件1至条件5中,运动向量的垂直(或水平)分量之间的差可以意指运动向
量的垂直(或水平)分量之间的差的绝对值。
[0152]
当不满足步骤s770的条件时(s770为否),可以将对应目标边界的边界强度确定为第一值(例如,0)。
[0153]
参照图7描述的确定边界强度bs的方法是示例性的,并且根据本公开的边界强度确定方法不限于图7所示的示例。例如,可以省略图7中所示的一些步骤,并且除了图7所示的步骤之外的步骤可以被添加到图7的流程图的任何位置。另外,图7中所示的一些步骤可以与其它步骤同时执行,或者可以改变步骤的顺序。
[0154]
在图7所示的示例中,步骤s750确定与目标边界相邻的两个变换块是否包括非零变换系数级别。另外,当满足步骤s750的条件时,可以将对应目标边界的边界强度确定为第二值(例如,1)。
[0155]
然而,当将两个色度分量(例如,cb分量和cr分量)的残差样本编码为单个变换块时,与步骤s750的确定相关,可能出现块边界的边界强度的确定不准确的问题。例如,在本公开中,“联合cbcr残差编码”可意指将两个色度分量(例如,cb分量和cr分量)的残差样本编码为单个变换块的技术。可以基于通过比特流发信号通知的信息(例如,标志)来确定是否针对当前块应用联合cbcr残差编码。也就是说,图像编码设备可以确定是否对当前块执行联合cbcr残差编码,并且基于此将标志信息编码为比特流。另外,图像解码设备可以通过从比特流解析标志信息来确定是否对当前块执行(已经执行)联合cbcr残差编码,并且基于此重构当前块。例如,在本公开中,标志信息可以是tu_joint_cbcr_residual_flag。
[0156]
图8是示出与本公开的实施方式相关的变换块中的语法元素的信令的视图。
[0157]
在图8所示的示例中,tu_cb_coded_flag[x][y]可以指定左上样本的坐标为(x,y)的cb分量的变换块(以下称为“cb变换块”)是否包括一个或更多个非零变换系数级别。例如,第二值(例如,1)的tu_cb_coded_flag可指定cb变换块包括一个或更多个非零变换系数级别。另外,第一值(例如,0)的tu_cb_coded_flag可指定cb变换块不包括一个或更多个非零变换系数级别。当tu_cb_coded_flag是第一值时,cb变换块中的所有变换系数级别可被设置为0。另外,当在比特流中不存在tu_cb_coded_flag时,可以将其值推断为第一值。
[0158]
在图8所示的示例中,tu_cr_coded_flag[x][y]可以指定左上样本的坐标为(x,y)的cr分量的变换块(以下称为“cr变换块”)是否包括一个或更多个非零变换系数级别。例如,第二值(例如,1)的tu_cr_coded_flag可指定cr变换块包含一个或更多个非零变换系数级别。另外,第一值(例如,0)的tu_cr_coded_flag可指定cr变换块不包括一个或更多个非零变换系数级别。当tu_cr_coded_flag是第一值时,cr变换块中的所有变换系数级别可被设置为0。另外,当在比特流中不存在tu_cr_coded_flag时,可以将其值推断为第一值。
[0159]
在图8所示的示例中,tu_y_coded_flag[x][y]可以指定左上样本的坐标为(x,y)的亮度分量的变换块(以下称为“亮度变换块”)是否包括一个或更多个非零变换系数级别。例如,第二值(例如,1)的tu_y_coded_flag可指定亮度变换块包含一个或更多个非零变换系数级别。另外,第一值(例如,0)的tu_y_coded_flag可指定亮度变换块不包括一个或更多个非零变换系数级别。当tu_y_coded_flag是第一值时,亮度变换块中的所有变换系数级别可被设置为0。当在比特流中不存在tu_y_coded_flag时,可基于其它各种语法元素和/或变量将其值推断为第一值或第二值。
[0160]
在图8所示的示例中,tu_joint_cbcr_residual_flag[x][y]可以指定对于左上样
本的坐标为(x,y)的变换块,cb分量的残差样本和cr分量的残差样本是否被编码为单个变换块。例如,当tu_joint_cbcr_residual_flag是第二值(例如,1)时,变换单元可包括用于单个变换块的变换系数级别,并且可从单个变换块推导cb分量和cr分量的残差样本。另外,当tu_joint_cbcr_residual_flag是第一值(例如,0)时,可以如tu_cb_coded_flag和tu_cr_coded_flag所指定那样对色度分量的变换系数级别进行编码/解码。例如,当tu_cb_coded_flag为1时,可以对cb变换块的变换系数级别进行编码/解码,并且当tu_cb_coded_flag为0时,可以将cb变换块的变换系数级别推断为0而不进行编码/解码。类似地,当tu_cr_coded_flag是1时,可以对cr变换块的变换系数级别进行编码/解码,并且当tu_cr_coded_flag是0时,可以将cr变换块的变换系数级别推断为0而不进行编码/解码。当在比特流中不存在tu_joint_cbcr_residual_flag时,可以将其值推断为第一值。
[0161]
如图8中所示,可以基于各种参数和/或条件来确定每个颜色分量(亮度(y)、色度(cb和cr))的残差信息(transform_skip_flag、residual_coding()和/或residual_ts_coding())的传输。从图8中可以明显看出,残差信息的信令条件不限于tu_y_coded_flag、tu_cb_coded_flag和tu_cr_coded_flag。然而,在本公开中,作为残差信息的信令条件,可以仅提及tu_y_coded_flag、tu_cb_coded_flag、tu_cr_coded_flag和/或一些条件。这是为了便于描述,并且残差信息的信令条件不限于此。也就是说,残差信息的信令条件可以包括图8所示的信令条件中的全部或一部分,或者可以包括图8中未示出的附加信令条件。如图8中所示,例如,当tu_y_coded_flag是1时,可以发信号通知亮度变换块的残差信息。类似地,可以基于tu_cb_coded_flag和tu_cr_coded_flag发信号通知cb变换块和cr变换块的残差信息。
[0162]
然而,如图8所示,可以仅在满足以下条件时发信号通知用于cr变换块的残差信息。
[0163]
!(tu_cb_coded_flag&&tu_joint_cbcr_residual_flag)
[0164]
根据上述条件,当tu_cb_coded_flag和tu_joint_cbcr_residual_flag都是1时,不发信号通知cr变换块的残差信息。也就是说,当tu_cb_coded_flag和tu_joint_cbcr_residual_flag二者都是1时,尽管tu_cr_coded_flag是1,但是不发信号通知用于cr分量的transform_skip_flag和残差语法。在这种情况下,可以将cr变换块中的所有变换系数级别推导为0。
[0165]
在上述示例中,当tu_cb_coded_flag是1时,cb变换块包括至少一个非零变换系数级别,并且尽管tu_cr_coded_flag是1,但是cr变换块中的所有变换系数级别可以被推导为0。因此,基于步骤s750的确定,可以将cb分量的目标边界的边界强度推导为1,并且可以将cr分量的目标边界的边界强度推导为除1之外的值。
[0166]
因此,通过应用联合cbcr残差编码,在边界强度确定处理中可能出现以下两个问题。
[0167]
首先,在步骤s750中,尽管tu_cr_coded_flag是1,但是也可以将cr分量的目标边界的边界强度推导为1以外的值。
[0168]
第二,尽管tu_cr_coded_flag是0,但是当tu_joint_cbcr_flag是1时,cr变换块可以包括一个或更多个非零变换系数级别。然而,在步骤s750中,也可以将cr分量的目标边界的边界强度推导为1以外的值。
[0169]
在下文中,将描述通过考虑根据联合cbcr残差编码的应用的上述问题改进图7的实施方式的各种实施方式。
[0170]
图9是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
[0171]
图9是为了改进参照图7描述的边界强度确定方法,图7的方法和图9的方法可以相同或重叠。在图7的方法和图9的方法中,可以省略对相同或重叠步骤的重复描述。例如,图7的步骤s710至s750可以分别对应于图9的步骤s910至s950。另外,图7的步骤s760至s770可以分别对应于图9的步骤s970至s980。将省略对相应步骤的重复描述。与图7的方法相比,根据图9的边界强度确定方法还包括步骤s960。
[0172]
具体地,参照图9,当不满足步骤s950的条件时(s950为否),可以确定步骤s960。更具体地,可以确定目标边界是否是变换块的边界并且是否满足以下描述的两个条件中的至少一个(s960)。当满足上述条件时(s960为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。
[0173]-条件s960-1:当前块是色度cb分量块(例如,cidx=1),并且样本p0或样本q0包括在执行了联合cbcr残差编码的变换块(例如,tu_joint_cbcr_residual_flag=1)中。
[0174]-条件s960-2:当前块是色度cr分量块(例如,cidx=2),并且样本p0或样本q0包括在执行了联合cbcr残差编码的变换块(例如,tu_joint_cbcr_residual_flag=1)中。
[0175]
上述条件s960-1和s960-2可以合并为一个条件,例如如下。
[0176]-s960合并条件:当前块是色度块(例如,cidx》0),并且样本p0或样本q0包括在执行了联合cbcr残差编码的变换块(例如,tu_joint_cbcr_residual_flag=1)中。
[0177]
参照图9描述的确定边界强度bs的方法是示例性的,并且根据本公开的边界强度确定方法不限于图9所示的示例。例如,可以省略图9中所示的一些步骤,并且除了图9所示的步骤之外的步骤可以被添加到图9的流程图的任何位置。另外,图9中所示的一些步骤可以与其它步骤同时执行,或者可以改变步骤的顺序。
[0178]
例如,由于tu_joint_cbcr_residual_flag可以意指tu_cu_coded_flag或tu_cr_coded_flag中的至少一个是1,因此,对于cb变换块或cr变换块,可以改变为省略根据图9的边界强度确定方法中的步骤s950。
[0179]
根据参照图9描述的边界强度确定方法,可以解决通过应用联合cbcr残差编码可能出现的上述两个问题。也就是说,当应用了联合cbcr残差编码时,可将针对变换块边界的去块滤波的边界强度确定为非零值(例如,1)。
[0180]
图10是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
[0181]
图10是为了改进参照图7描述的边界强度确定方法,图7的方法和图10的方法可以相同或重叠。在图7的方法和图10的方法中,可以省略对相同或重叠步骤的重复描述。例如,图7的步骤s710至s740可以分别对应于图10的步骤s1010至s1040。另外,图7的步骤s760至s770可以分别对应于图10的步骤s1060至s1070。将省略对相应步骤的重复描述。与图7的方法相比,根据图10的边界强度确定方法还包括步骤s1050而不是步骤s750。
[0182]
具体地,参照图10,当不满足步骤s1040的条件时(s1040为否),可以确定步骤s1050。具体地,可以确定目标边界是否是变换块的边界并且是否满足以下描述的三个条件
中的至少一个(s1050)。当满足上述条件时(s1050为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。
[0183]-条件s1050-1:当前块是亮度分量块(例如,cidx=0),并且样本p0或样本q0被包括在包括一个或更多个非零变换系数级别的亮度变换块(例如,tu_y_coded_flag=1)中。
[0184]-条件s1050-2:当前块是色度cb分量块(例如,cidx=1),并且样本p0或样本q0被包括在包括一个或更多个非零变换系数级别的cb变换块(例如,tu_cb_coded_flag=1)中。
[0185]-条件s1050-3:当前块是色度cr分量块(例如,cidx=2),并且样本p0或样本q0被包括在包括一个或更多个非零变换系数级别的cr变换块(例如,tu_cr_coded_flag=1)中。
[0186]
参照图10描述的确定边界强度bs的方法是示例性的,并且根据本公开的边界强度确定方法不限于图10所示的示例。例如,可以省略图10中所示的一些步骤,并且除了图10所示的步骤之外的步骤可以被添加到图10的流程图的任何位置。另外,图10中所示的一些步骤可以与其它步骤同时执行,或者可以改变其它步骤的顺序。
[0187]
根据参照图10描述的边界强度确定方法,可以解决通过应用联合cbcr残差编码可能出现的上述两个问题。也就是说,由于图10的方法确定变换块是否针对每个颜色分量包括一个或更多个非零变换系数级别,即使在应用联合cbcr残差编码时,也可以准确地确定用于变换块边界的去块滤波的边界强度。
[0188]
图11是示出根据本公开的另一实施方式的确定目标边界的边界强度的方法的流程图。
[0189]
图11是为了改进参照图7描述的边界强度确定方法,图7的方法和图11的方法可以相同或重叠。在图7的方法和图11的方法中,可以省略对相同或重叠步骤的重复描述。例如,图7的步骤s710至s740可以分别对应于图11的步骤s1110至s1140。另外,图7的步骤s760至s770可以分别对应于图11的步骤s1160至s1170。将省略对相应步骤的重复描述。与图7的方法相比,根据图11的边界强度确定方法还包括步骤s1150而不是步骤s750。
[0190]
参照图11,当不满足步骤s1140的条件时(s1140为否),可以确定步骤s1150。具体地,可以确定目标边界是否是变换块的边界并且是否满足以下描述的四个条件中的至少一个(s1150)。当满足上述条件时(s1150为是),可以将对应目标边界的边界强度确定为第二值(例如,1)。
[0191]-条件s1150-1:当前块是亮度分量块(例如,cidx=0),并且样本p0或样本q0被包括在包括一个或更多个变换系数级别的亮度变换块(例如,tu_y_coded_flag=1)中。
[0192]-条件s1150-2:当前块是色度cb分量块(例如,cidx=1),并且样本p0或样本q0被包括在包括一个或更多个非零变换系数级别的cb变换块(例如,tu_cb_coded_flag=1)中。
[0193]-条件s1150-3:当前块是色度cr分量块(例如,cidx=2),并且样本p0或样本q0被包括在包括一个或更多个非零变换系数级别的cr变换块(例如,tu_cr_coded_flag=1)中。
[0194]-条件s1150-4:当前块不是亮度分量块(例如,cidx≠0),并且样本p0或样本q0包括在执行了联合cbcr残差编码的变换块(例如,tu_joint_cbcr_residual_flag=1)中。
[0195]
参照图11描述的确定边界强度bs的方法是示例性的,并且根据本公开的边界强度确定方法不限于图11所示的示例。例如,可以省略图11中所示的一些步骤,并且除了图11所示的步骤之外的步骤可以被添加到图11的流程图的任何位置。另外,图11中所示的一些步骤可以与其它步骤同时执行,或者可以改变步骤的顺序。
[0196]
根据参照图11描述的边界强度确定方法,可以解决通过应用联合cbcr残差编码可能出现的上述两个问题。也就是说,由于图11的方法确定变换块是否针对每个颜色分量包括一个或更多个非零变换系数级别,即使当应用联合cbcr残差编码时,也可以准确地确定用于变换块边界的去块滤波的边界强度。另外,根据图11的方法,当应用联合cbcr残差编码时,可将针对变换块边界的去块滤波的边界强度确定为非零值(例如,1)。
[0197]
在参照图7至图11描述的实施方式中,可以不同地改变通过考虑联合cbcr残差编码的应用而基于变换块是否包括一个或更多个非零变换系数级别的确定的边界强度的确定。
[0198]
例如,如上所述,当对与目标边界相邻的两个块(p块和q块)中的至少一个块(tu_joint_cbcr_residual_flag是1)应用联合cbcr残差编码时,可以将边界强度确定为第二值(例如,1)。另外,当与目标边界相邻的两个块(p块和q块)中的至少一个包括非零变换系数级别(对应颜色分量的编码标志为1)时,边界强度可被确定为第二值(例如,1)。
[0199]
因此,根据本公开的另一实施方式,步骤s750的条件可以如下改变。
[0200]
对于亮度分量(例如,cidx=0),当p块的tu_y_coded_flag的值与q块的tu_y_coded_flag的值之和大于0时,可将对应边界强度确定为第二值(例如,1)。
[0201]
对于cb分量(例如,cidx=1),当p块的tu_cb_coded_flag的值、tu_joint_cbcr_residual_flag的值、q块的tu_cb_coded_flag的值和tu_joint_cbcr_residual_flag的值大于0时,可以确定对应的边界强度为第二值(例如,1)。
[0202]
对于cr分量(例如,cidx=2),当p块的tu_cr_coded_flag的值、tu_joint_cbcr_residual_flag的值、q块的tu_cr_coded_flag的值和tu_joint_cbcr_residual_flag的值大于0时,可以确定对应的边界强度为第二值(例如,1)。
[0203]
如上所述,根据改变的示例,当p块或q块中的至少一个包括非零变换系数级别或者对p块或q块中的至少一个应用联合cbcr残差编码时,可以将对应的边界强度确定为第二值(例如,1)。
[0204]
图12是示出根据本公开的基于去块滤波的编码过程的流程图。
[0205]
参照图12,图像编码设备可以生成重构画面(s1210)。图像编码设备可以通过对要编码的输入图像进行编码并对其进行重构来生成重构画面。
[0206]
图像编码设备可以推导重构画面的去块滤波器相关信息(s1220)。
[0207]
如上所述,去块滤波器相关信息可以包括指定去块滤波器是否可用的标志。另外,去块滤波器相关信息可包括用于推导边界强度的各种信息。可以根据亮度分量(y)和色度分量(cb、cr)不同地推导边界强度。可以根据亮度分量(y)和色度分量(cb、cr)单独推导应用去块滤波的目标边界。
[0208]
图像编码设备可以通过基于推导的去块滤波器相关信息对重构画面应用去块滤波来生成修改的重构画面(s1230)。修改的重构画面可被发送到存储器170,并且可被用作帧间预测单元180中的参考画面。存储器170中的dpb可以存储修改的重构画面以用作帧间预测的参考画面。
[0209]
图像编码设备可以对包括去块滤波器相关信息的图像数据进行编码(s1240)。例如,去块滤波器相关信息可被发送到熵编码器190并由熵编码器190编码,从而以比特流的形式输出。
[0210]
图13是示出根据本公开的基于去块滤波的解码过程的流程图。
[0211]
参照图13,图像解码设备可以从比特流获得包括去块滤波器相关信息的图像数据(s1310)。
[0212]
图3的图像解码设备200可以接收以比特流的形式从图2的图像编码设备100输出的信号。熵解码器210可以通过解析比特流来获得图像重构(或画面重构)所需的信息(例如,视频/图像信息)。
[0213]
图像解码设备可以基于所获得的图像信息生成重构画面(s1320)。
[0214]
例如,图3的图像解码设备200的加法器235可以通过将获得的残差信号与从预测单元(帧间预测单元260和/或帧内预测单元265)输出的预测信号(预测块、预测样本阵列)相加来生成重构画面。
[0215]
图像解码设备可以通过对重构画面应用去块滤波来生成修改的重构画面(s1330)。
[0216]
图3的图像解码设备200的滤波器240可以通过对重构画面应用滤波来提高主观/客观图像质量。例如,滤波器240可以通过将各种滤波方法应用于重构画面来生成修改的重构画面。修改的重构画面可以存储在存储器250中,具体地,存储在存储器250的dpb中。存储在存储器250的dpb中的(修改的)重构画面可以用作帧间预测单元260中的参考画面。
[0217]
虽然为了描述的清楚起见,上述本公开的示例性方法被表示为一系列操作,但并不旨在限制执行步骤的顺序,并且必要时这些步骤可以同时或以不同的顺序来执行。为了实现根据本发明的方法,所描述的步骤可以进一步包括其它步骤,可以包括除了一些步骤之外的其余步骤,或者可以包括除了一些步骤之外的其它附加步骤。
[0218]
在本公开中,执行预定操作(步骤)的图像编码设备或图像解码设备可以执行确认相应操作(步骤)的执行条件或情况的操作(步骤)。例如,在描述了在满足预定条件时执行预定操作的情况下,图像编码设备或图像解码设备可以在确定是否满足预定条件之后执行预定操作。
[0219]
本公开的各种实施方式不是所有可能组合的列表并且旨在描述本公开的代表性方面,并且在各种实施方式中描述的事项可以独立地或以两个或更多个的组合应用。
[0220]
本公开的各种实施方式可以以硬件、固件、软件或其组合来实现。在通过硬件实现本公开的情况下,本公开可以通过专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理器件(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器等来实现。
[0221]
此外,应用本公开的实施方式的图像解码设备和图像编码设备可以包括在多媒体广播传送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监控摄像头、视频聊天装置、诸如视频通信的实时通信装置、移动流传输装置、存储介质、摄像机、视频点播(vod)服务提供装置、ott视频(over the top video)装置、互联网流传输服务提供装置、三维(3d)视频装置、视频电话视频装置、医疗视频装置等中,并且可用于处理视频信号或数据信号。例如,ott视频装置可以包括游戏机、蓝光播放器、互联网接入电视、家庭影院系统、智能电话、平板pc、数字录像机(dvr)等。
[0222]
图15是示出可应用本公开的实施方式的内容流系统的视图。
[0223]
如图15中所示,应用本公开的实施方式的内容流系统可以主要包括编码服务器、
流服务器、网络服务器、媒体存储装置、用户装置和多媒体输入装置。
[0224]
编码服务器将从诸如智能电话、相机、摄像机等多媒体输入装置输入的内容压缩成数字数据以生成比特流并将该比特流发送到流服务器。作为另一示例,当智能电话、相机、摄像机等多媒体输入装置直接生成比特流时,可以省略编码服务器。
[0225]
比特流可以由应用本公开的实施方式的图像编码方法或图像编码设备产生,并且流服务器可以在发送或接收比特流的过程中暂时存储比特流。
[0226]
流服务器基于用户通过网络服务器的请求将多媒体数据发送到用户装置,并且网络服务器用作向用户告知服务的媒介。当用户向网络服务器请求所需的服务时,网络服务器可以将其递送到流服务器,并且流服务器可以向用户发送多媒体数据。在这种情况下,内容流系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流系统中的装置之间的命令/响应。
[0227]
流服务器可以从媒体存储装置和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时接收内容。在这种情况下,为了提供平滑的流服务,流服务器可以在预定时间内存储比特流。
[0228]
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(pda)、便携式多媒体播放器(pmp)、导航设备、石板pc、平板pc、超级本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字电视、台式计算机、数字标牌等。
[0229]
内容流系统中的各个服务器可以作为分布式服务器运行,在这种情况下,从各个服务器接收的数据可以被分布。
[0230]
本公开的范围包括用于使根据各种实施方式的方法的操作能够在设备或计算机上执行的软件或机器可执行命令(例如,操作系统、应用、固件、程序等)、具有存储在其上并且可在设备或计算机上执行的此类软件或命令的非暂时性计算机可读介质。
[0231]
工业实用性
[0232]
本公开的实施方式可以被用于对图像进行编码或解码。
再多了解一些

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

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

相关文献