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

使用滤波的图像编码/解码方法和装置及发送比特流的方法与流程

2022-04-27 08:58:22 来源:中国专利 TAG:


1.本公开涉及图像编码/解码方法和设备以及发送比特流的方法,更具体地,涉及一种使用滤波来对图像进行编码解码的方法和设备以及发送通过本公开的图像编码方法/设备生成的比特流的方法。


背景技术:

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


技术实现要素:

4.技术问题
5.本公开的目的是提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
6.本公开的目的是提供一种使用滤波来对图像进行编码/解码的方法和设备。
7.本公开的另一个目的是提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
8.本公开的另一个目的是提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
9.本公开的另一个目的是提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
10.本公开所解决的技术问题不限于上述技术问题,本领域技术人员通过以下描述将清楚此处未描述的其它技术问题。
11.技术方案
12.依据根据本公开的一方面的图像编码/解码方法,由于不会发生去块滤波器的并行处理由于变换块的大小减小而无法进行的情况或者由于不同的目标边界而发生滤波器之间交叠的情况,所以图像编码/解码设备可以始终执行滤波器并行处理并且图像编码/解码效率可以增加。
13.根据本公开的一方面的由图像解码设备执行的图像解码方法可以包括以下步骤:推导当前块的重构块;推导重构块的目标边界;确定要应用于目标边界的去块滤波器的滤波器长度;以及基于所确定的滤波器长度对目标边界应用去块滤波器。滤波器长度可以基于与目标边界相邻的变换块的宽度或高度中的至少一个来确定。
14.在本公开的图像解码方法中,当前块可以是应用帧内子分区(isp)模式的块。
15.本公开的图像解码方法还可以包括确定目标边界的边界类型,并且边界类型可以
被确定为垂直边界和水平边界中的一个。
16.在本公开的图像解码方法中,基于目标边界是垂直边界并且变换块的宽度等于或小于第一值,滤波器长度可以被确定为第一长度。
17.在本公开的图像解码方法中,基于变换块的宽度等于或大于第二值,滤波器长度可以被确定为第二长度。
18.在本公开的图像解码方法中,基于变换块的宽度大于第一值且小于第二值,滤波器长度可以被确定为第三长度。
19.在本公开的图像解码方法中,第一值可为4并且第一长度可为1。
20.在本公开的图像解码方法中,基于目标边界是水平边界并且变换块的高度等于或小于第一值,滤波器长度可以被确定为第一长度。
21.在本公开的图像解码方法中,基于变换块的高度等于或大于第二值,滤波器长度可以被确定为第二长度。
22.在本公开的图像解码方法中,基于变换块的高度大于第一值且小于第二值,滤波器长度可以被确定为第三长度。
23.在本公开的图像解码方法中,第一值为4并且第一长度可为1。
24.根据本公开的另一方面的图像解码设备可以包括存储器和至少一个处理器。
25.至少一个处理器可以推导当前块的重构块,推导重构块的目标边界,确定要应用于目标边界的去块滤波器的滤波器长度,并且基于所确定的滤波器长度对目标边界应用去块滤波器。滤波器长度可以基于与目标边界相邻的变换块的宽度或高度中的至少一个来确定。
26.根据本公开的另一方面的图像编码方法可以包括以下步骤:推导当前块的重构块;推导重构块的目标边界;确定要应用于目标边界的去块滤波器的滤波器长度;以及基于所确定的滤波器长度对目标边界应用去块滤波器。滤波器长度可以基于与目标边界相邻的变换块的宽度或高度中的至少一个来确定。
27.在本公开的图像编码方法中,当前块可以是应用帧内子分区(isp)模式的块。
28.此外,根据本公开的另一方面的计算机可读记录介质可以存储由本公开的图像编码设备或图像编码方法生成的比特流。
29.以上关于本公开的简要概述的特征仅仅是本公开的以下详细描述的示例性方面,并不限制本公开的范围。
30.有益效果
31.根据本公开,能够提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
32.此外,根据本公开,能够提供一种使用滤波对图像进行编码/解码的方法和设备。
33.此外,根据本公开,能够提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
34.此外,根据本公开,能够提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
35.此外,根据本公开,能够提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
36.本领域的技术人员将理解,通过本公开可以实现的效果不限于上文已经具体描述的内容,并且将从详细描述中更清楚地理解本公开的其它优点。
附图说明
37.图1是示意性地示出本公开的实施方式适用于的视频编码系统的视图。
38.图2是示意性地示出本公开的实施方式适用于的图像编码设备的视图。
39.图3是示意性地示出本公开的实施方式适用于的图像解码设备的视图。
40.图4是示出根据多类型树结构的块的分割类型的实施方式的视图。
41.图5是示出根据本公开的具有嵌套多类型树结构的四叉树中的块划分信息的信令机制的视图。
42.图6是示出根据实施方式的去块滤波器的应用方法的视图。
43.图7是示出去块滤波器的滤波器强度确定方法的视图。
44.图8是示出帧内预测技术当中的帧内子分区(isp)的视图。
45.图9至图11是示出应用于目标边界的去块滤波器的滤波器长度确定方法的视图。
46.图12是示出根据本公开的实施方式的图像编码/解码方法的视图。
47.图13和图14是示出根据本公开的另一实施方式的去块滤波器长度确定方法的视图。
48.图15和图16是示出根据本公开的另一实施方式的去块滤波器长度确定方法的视图。
49.图17是示出本公开的实施方式适用于的内容流系统的视图。
具体实施方式
50.以下,将结合附图对本公开的实施方式进行详细描述,以易于本领域技术人员实施。然而,本公开可以以各种不同的形式实施,并且不限于这里描述的实施方式。
51.在描述本公开时,如果确定相关已知功能或构造的详细描述使本公开的范围不必要地含糊不清,则将省略其详细描述。在附图中,省略了与本公开的描述无关的部分,并且相似的附图标记被赋予相似的部分。
52.在本公开中,当一个组件“连接”、“耦合”或“链接”到另一个组件时,它不仅可以包括直接连接关系,还可以包括中间组件存在的间接连接关系。另外,当一个组件“包括”或“具有”其它组件时,除非另有说明,否则是指还可以包括其它组件,而不是排除其它组件。
53.在本公开中,术语第一、第二等仅用于将一个组件与其它组件区分开的目的,并且不限制组件的顺序或重要性,除非另有说明。相应地,在本公开的范围内,一个实施方式中的第一组件在另一个实施方式中可以被称为第二组件,类似地,一个实施方式中的第二组件在另一个实施方式中可以被称为第一组件。
54.在本公开中,相互区分的组件旨在清楚地描述每个特征,并不意味着组件必须分开。即,多个组件可以集成在一个硬件或软件单元中实现,或者一个组件可以在多个硬件或软件单元中分布和实现。因此,即使没有特别说明,这些组件集成或分布式的实施方式也包括在本公开的范围内。
55.在本公开中,各个实施方式中所描述的组件并不一定是必不可少的组件,一些组
件可以是可选的组件。因此,由实施方式中描述的组件的子集组成的实施方式也包括在本公开的范围内。此外,除了在各种实施方式中描述的组件之外还包括其它组件的实施方式包括在本公开的范围内。
56.本公开涉及图像的编码和解码,除非在本公开中重新定义,否则本公开中使用的术语可以具有本公开所属技术领域中常用的一般含义。
57.在本公开中,“画面”一般是指表示特定时间段内的一个图像的单元,而切片(slice)/拼块(tile)是构成画面的一部分的编码单元,一个画面可以由一个或更多个切片/拼块组成。此外,切片/拼块可以包括一个或更多个编码树单元(ctu)。
58.在本公开中,“像素”或“像元(pel)”可以意指构成一个画面(或图像)的最小单元。此外,“样本”可以用作对应于像素的术语。一个样本一般可以表示像素或像素的值,也可以仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
59.在本公开中,“单元”可以表示图像处理的基本单元。该单元可以包括画面的特定区域和与该区域相关的信息中的至少一个。在某些情况下,该单元可以与诸如“样本阵列”、“块”或“区域”的术语互换使用。在一般情况下,m
×
n块可以包括m列n行的样本(或样本阵列)或变换系数的集合(或阵列)。
60.在本公开中,“当前块”可以意指“当前编码块”、“当前编码单元”、“编码目标块”、“解码目标块”或“处理目标块”之一。当执行预测时,“当前块”可以意指“当前预测块”或“预测目标块”。当执行变换(逆变换)/量化(解量化)时,“当前块”可以意指“当前变换块”或“变换目标块”。当执行滤波时,“当前块”可以意指“滤波目标块”。
61.在本公开中,术语“/”或“,”可以解释为指示“和/或”。例如,“a/b”和“a,b”可以意指“a和/或b”。此外,“a/b/c”和“a/b/c”可以意指“a、b和/或c中的至少一个”。
62.在本公开中,术语“或”应被解释以指示“和/或”。例如,表达“a或b”可以包括1)仅“a”,2)仅“b”,或3)“a和b”两者。换言之,在本公开中,“或”应被解释以指示“附加地或可替选地”。
63.视频编码系统的概述
64.图1是示意性地示出根据本公开的视频编码系统的视图。
65.根据实施方式的视频编码系统可以包括编码设备10和解码设备20。编码设备10可以将编码的视频和/或图像信息或数据以文件或流的形式经由数字存储介质或网络递送到解码设备20。
66.根据实施方式的编码设备10可以包括视频源生成器11、编码单元12和发送器13。根据实施方式的解码设备20可以包括接收器21、解码单元22和渲染器23。编码单元12可以称为视频/图像编码单元,解码单元22可以称为视频/图像解码单元。发送器13可以被包括在编码单元12中。接收器21可以被包括在解码单元22中。渲染器23可以包括显示器并且显示器可以被配置为单独的装置或外部组件。
67.视频源生成器11可以通过捕获、合成或生成视频/图像的过程来获取视频/图像。视频源生成器11可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(以电子方式)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获过
程可以被生成相关数据的过程代替。
68.编码单元12可以对输入视频/图像进行编码。为了压缩和编码效率,编码单元12可以执行一系列过程,例如预测、变换和量化。编码单元12可以以比特流的形式输出编码数据(编码视频/图像信息)。
69.发送器13可以通过数字存储介质或网络以文件或流的形式将以比特流的形式输出的编码视频/图像信息或数据传输到解码设备20的接收器21。数字存储介质可以包括各种存储介质,例如usb、sd、cd、dvd、蓝光、hdd、ssd等。发送器13可以包括用于通过预定文件格式生成媒体文件的元件并且可以包括用于通过广播/通信网络传输的元件。接收器21可以从存储介质或网络中提取/接收比特流并将比特流传输到解码单元22。
70.解码单元22可以通过执行与编码单元12的操作相对应的一系列过程,例如解量化、逆变换和预测来解码视频/图像。
71.渲染器23可以渲染解码的视频/图像。渲染的视频/图像可以通过显示器显示。
72.图像编码设备的概述
73.图2是示意性地示出本公开的实施方式可适用于的图像编码设备的视图。
74.如图2所示,图像编码设备100可以包括图像分割器110、减法器115、变换器120、量化器130、解量化器140、逆变换器150、加法器155、滤波器160、存储器170、帧间预测单元180、帧内预测单元185和熵编码器190。帧间预测单元180和帧内预测单元185可以统称为“预测单元”。变换器120、量化器130、解量化器140和逆变换器150可以被包括在残差处理器中。残差处理器还可以包括减法器115。
75.在一些实施方式中,配置图像编码设备100的多个组件中的全部或至少一些可以由一个硬件组件(例如,编码器或处理器)来配置。此外,存储器170可以包括解码画面缓冲器(dpb)并且可以由数字存储介质配置。
76.图像分割器110可将输入到图像编码设备100的输入图像(或画面或帧)分割成一个或更多个处理单元。例如,处理单元可以称为编码单元(cu)。可以通过根据四叉树二叉树三叉树(qt/bt/tt)结构递归地分割编码树单元(ctu)或最大编码单元(lcu)来获取编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元分割为更深深度的多个编码单元。对于编码单元的分割,可以首先应用四叉树结构,然后可以应用二叉树结构和/或三叉树结构。可以基于不再分割的最终编码单元来执行根据本公开的编码过程。可以将最大编码单元用作最终编码单元,也可以将通过分割最大编码单元获取的更深深度的编码单元用作最终编码单元。这里,编码过程可以包括稍后将描述的预测、变换和重构的过程。作为另一个示例,编码过程的处理单元可以是预测单元(pu)或变换单元(tu)。预测单元和变换单元可以从最终编码单元划分或分割。预测单元可以是样本预测单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
77.预测单元(帧间预测单元180或帧内预测单元185)可以对要处理的块(当前块)执行预测,并且生成包括当前块的预测样本的预测块。预测单元可以在当前块或cu的基础上确定是应用帧内预测还是帧间预测。预测单元可以生成与当前块的预测有关的各种信息,并且将生成的信息传输到熵编码器190。关于预测的信息可以在熵编码器190中被编码并且以比特流的形式输出。
78.帧内预测单元185可以通过参考当前画面中的样本来预测当前块。根据帧内预测
模式和/或帧内预测技术,参考样本可以位于当前块的邻居中或者可以被分开放置。帧内预测模式可以包括多个非定向模式和多个定向模式。非定向模式可以包括例如dc模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33个定向预测模式或65个定向预测模式。然而,这仅仅是示例,可以根据设置使用更多或更少的定向预测模式。帧内预测单元185可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
79.帧间预测单元180可以基于由参考画面上的运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可以相同或不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等。包括时间邻近块的参考画面可以被称为并置画面(colpic)。例如,帧间预测单元180可基于邻近块配置运动信息候选列表并生成指定使用哪个候选来推导当前块的运动向量和/或参考画面索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测单元180可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式的情况下,与合并模式不同,可以不传输残差信号。在运动向量预测(mvp)模式的情况下,邻近块的运动向量可以用作运动向量预测子,并且当前块的运动向量可以通过编码运动向量差和运动向量预测子的指示符来用信号通知当前块的运动向量。运动向量差可以意指当前块的运动向量与运动向量预测子之间的差。
80.预测单元可以基于以下描述的各种预测方法和预测技术来生成预测信号。例如,预测单元不仅可以应用帧内预测或帧间预测,还可以同时应用帧内预测和帧间预测,以预测当前块。同时应用帧内预测和帧间预测两者来预测当前块的预测方法可以称为组合帧间和帧内预测(ciip)。此外,预测单元可以执行帧内块复制(ibc)以预测当前块。帧内块复制可以用于游戏等的内容图像/视频编码,例如,屏幕内容编码(scc)。ibc是一种在与当前块相隔预定距离的位置处使用当前画面中先前重构的参考块来预测当前画面的方法。当应用ibc时,参考块在当前画面中的位置可以被编码为对应于预定距离的向量(块向量)。
81.预测单元生成的预测信号可用于生成重构信号或生成残差信号。减法器115可以通过从输入图像信号(原始块或原始样本阵列)中减去从预测单元输出的预测信号(预测块或预测样本阵列)来生成残差信号(残差块或残差样本阵列)。生成的残差信号可以被传输到变换器120。
82.变换器120可以通过将变换技术应用于残差信号来生成变换系数。例如,变换技术可以包括离散余弦变换(dct)、离散正弦变换(dst)、karhunen-lo
è
ve变换(klt)、基于图的变换(gbt)或条件非线性变换(cnt)中的至少一种。这里,gbt是指当像素之间的关系信息由图形表示时从图形获得的变换。cnt是指基于使用所有先前重构的像素生成的预测信号获取的变换。此外,变换处理可以应用于具有相同大小的方形像素块或者可以应用于具有可变大小而不是方形的块。
83.量化器130可以对变换系数进行量化并且将它们传输到熵编码器190。熵编码器190可以对量化的信号(关于量化的变换系数的信息)进行编码并且输出比特流。关于量化
变换系数的信息可以被称为残差信息。量化器130可基于系数扫描顺序将块形式的量化变换系数重新排列为一维向量形式,并基于一维向量形式的量化变换系数生成关于量化变换系数的信息。
84.熵编码器190可以执行各种编码方法,例如指数哥伦布、上下文自适应可变长度编码(cavlc)、上下文自适应二进制算术编码(cabac)等。熵编码器190可以一起或单独地编码量化变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)。编码的信息(例如,编码的视频/图像信息)可以比特流的形式以网络抽象层(nal)为单元进行传输或存储。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(aps)、画面参数集(pps)、序列参数集(sps)或视频参数集(vps)。此外,视频/图像信息还可以包括通用约束信息。本公开中描述的用信号通知的信息、传输的信息和/或语法元素可以通过上述编码过程被编码并且被包括在比特流中。
85.比特流可以通过网络传输或者可以存储在数字存储介质中。网络可以包括广播网络和/或通信网络,数字存储介质可以包括usb、sd、cd、dvd、蓝光、hdd、ssd等各种存储介质。可以包括传输从熵编码器190输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)作为图像编码设备100的内部/外部元件。另选地,可以提供发送器作为熵编码器190的组件。
86.从量化器130输出的量化变换系数可用于生成残差信号。例如,可以通过解量化器140和逆变换器150对量化变换系数应用解量化和逆变换来重构残差信号(残差块或残差样本)。
87.加法器155将重构残差信号与从帧间预测单元180或帧内预测单元185输出的预测信号相加,以生成重构信号(重构画面、重构块、重构样本阵列)。如果要处理的块没有残差,例如应用跳过模式的情况,则可以将预测块用作重构块。加法器155可以称为重构器或重构块生成器。生成的重构信号可以用于当前画面中要处理的下一个块的帧内预测,并且可以用于通过如下所述的滤波对下一个画面进行帧间预测。
88.此外,可以如下所述在画面编码处理中应用亮度映射与色度缩放(lmcs)。
89.滤波器160可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器160可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器170中,具体地,存储器170的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。滤波器160可以生成与滤波有关的各种信息并将所生成的信息传输到熵编码器190,如稍后在每种滤波方法的描述中所描述的。与滤波相关的信息可以由熵编码器190编码并以比特流的形式输出。
90.传输到存储器170的修改的重构画面可以用作帧间预测单元180中的参考画面。当通过图像编码设备100应用帧间预测时,可以避免图像编码设备100和图像解码设备之间的预测失配并且可以提高编码效率。
91.存储器170的dpb可以存储修改的重构画面以用作帧间预测单元180中的参考画面。存储器170可以存储从其中推导(或编码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元180并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器170可以存储当前画面中重构块的重构样本并且可以将重构样本传送到帧内预测单元185。
92.图像解码设备的概述
93.图3是示意性地示出本公开的实施方式可适用的图像解码设备的视图。
94.如图3所示,图像解码设备200可以包括熵解码器210、解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260和帧内预测单元265。帧间预测单元260和帧内预测单元265可以统称为“预测单元”。解量化器220和逆变换器230可以被包括在残差处理器中。
95.根据实施方式,配置图像解码设备200的多个组件中的全部或至少一些可以由硬件组件(例如,解码器或处理器)来配置。此外,存储器250可以包括解码画面缓冲器(dpb)或者可以由数字存储介质配置。
96.已经接收到包括视频/图像信息的比特流的图像解码设备200可以通过执行与由图1的图像编码设备100执行的处理相对应的处理来重构图像。例如,图像解码设备200可以使用在图像编码设备中应用的处理单元来执行解码。因此,解码的处理单元例如可以是编码单元。编码单元可以通过分割编码树单元或最大编码单元来获取。通过图像解码设备200解码和输出的重构图像信号可以通过再现设备(未示出)再现。
97.图像解码设备200可以接收以比特流的形式从图1的图像编码设备输出的信号。接收到的信号可以通过熵解码器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的组件。
98.此外,根据本公开的图像解码设备可以被称为视频/图像/画面解码设备。图像解码设备可以分为信息解码器(视频/图像/画面信息解码器)和样本解码器(视频/图像/画面样本解码器)。信息解码器可以包括熵解码器210。样本解码器可以包括解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元160或帧内预测单元265中的至少一个。
99.解量化器220可以对量化变换系数进行解量化并输出变换系数。解量化器220可以
以二维块的形式重新排列量化变换系数。在这种情况下,可以基于在图像编码设备中执行的系数扫描顺序来执行重新排列。解量化器220可以通过使用量化参数(例如,量化步长信息)对量化变换系数执行解量化并获得变换系数。
100.逆变换器230可以对变换系数进行逆变换以获得残差信号(残差块、残差样本阵列)。
101.预测单元可以对当前块执行预测并生成包括当前块的预测样本的预测块。预测单元可以基于从熵解码器210输出的关于预测的信息来确定是将帧内预测还是帧间预测应用于当前块,并且可以确定特定帧内/帧间预测模式(预测技术)。
102.与在图像编码设备100的预测单元中描述的相同的是,预测单元可以基于稍后描述的各种预测方法(技术)来生成预测信号。
103.帧内预测单元265可以通过参考当前画面中的样本来预测当前块。帧内预测单元185的描述同样适用于帧内预测单元265。
104.帧间预测单元260可以基于参考画面上由运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。例如,帧间预测单元260可以基于邻近块配置运动信息候选列表,并且基于接收到的候选选择信息推导当前块的运动向量和/或参考画面索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指定当前块的帧间预测模式的信息。
105.加法器235可以通过将获得的残差信号与从预测单元(包括帧间预测单元260和/或内预测单元265)输出的预测信号(预测块、预测样本阵列)相加生成重构信号(重构画面、重构块、重构样本阵列)。加法器155的描述同样适用于加法器235。
106.此外,可以如下所述在画面解码处理中应用亮度映射与色度缩放(lmcs)。
107.滤波器240可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器240可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器250中,具体地,存储器250的dpb中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。
108.存储在存储器250的dpb中的(修改的)重构画面可以用作帧间预测单元260中的参考画面。存储器250可以存储从其中推导(或解码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元260,以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器250可以存储当前画面中重构块的重构样本并将重构样本传送到帧内预测单元265。
109.在本公开中,在图像编码设备100的滤波器160、帧间预测单元180和帧内预测单元185中描述的实施方式可以同等地或对应地应用于图像解码设备200的滤波器240、帧间预测单元260和帧内预测单元265。
110.ctu的分割的概述
111.如上所述,可以通过根据四叉树/二叉树/三叉树(qt/bt/tt)结构递归地对编码树
单元(ctu)或最大编码单元(lcu)进行分割来获取编码单元。例如,ctu可以被首先分割成四叉树结构。此后,可以通过多类型树结构对四叉树结构的叶节点进一步进行分割。
112.根据四叉树的分割意味着当前cu(或ctu)被同等地分割成四个。通过根据四叉树的分割,可以将当前cu分割成具有相同宽度和相同高度的四个cu。在当前cu不再被分割成四叉树结构时,当前cu对应于四叉树结构的叶节点。与四叉树结构的叶节点对应的cu可以不再被分割并且可以被用作上述最终编码单元。另选地,可以通过多类型树结构对与四叉树结构的叶节点对应的cu进一步进行分割。
113.图4是示出了根据多类型树结构的块的分割类型的实施方式的视图。根据多类型树结构的分割可以包括根据二叉树结构的两种类型的划分和根据三叉树结构的两种类型的划分。
114.根据二叉树结构的两种类型的划分可以包括垂直二叉划分(split_bt_ver)和水平二叉划分(split_bt_hor)。垂直二叉划分(split_bt_ver)意味着当前cu被在垂直方向上同等地划分成两个。如图4所示,通过垂直二叉划分,可以生成高度与当前cu相同并且宽度为当前cu的宽度的一半的两个cu。水平二叉划分(split_bt_hor)意味着当前cu被在水平方向上同等地划分成两个。如图4所示,通过水平二叉划分,可以生成高度为当前cu的高度的一半并且宽度与当前cu相同的两个cu。
115.根据三叉数结构的两种类型的划分可以包括垂直三叉划分(split_tt_ver)和水平三叉划分(split_tt_hor)。在垂直三叉划分(split_tt_ver)中,当前cu被以1:2:1的比率在垂直方向上划分。如图4所示,通过垂直三叉划分,可以生成高度与当前cu相同并且宽度为当前cu的宽度的1/4的两个cu以及高度与当前cu相同并且宽度为当前cu的宽度的一半的一个cu。在水平三叉划分(split_tt_hor)中,当前cu被以1:2:1的比率在水平方向上划分。如图4所示,通过水平三叉划分,可以生成高度为当前cu的高度的1/4并且宽度与当前cu相同的两个cu以及高度为当前cu的高度的一半并且宽度与当前cu相同的一个cu。
116.图5是示出了根据本公开的具有嵌套多类型树结构的四叉树中的分区划分信息的信令机制的视图。
117.这里,ctu被视为四叉树的根节点,并且被首次分割成四叉树结构。用信号通知指定是否对当前cu(四叉树的ctu或节点(qt_node))执行四叉树划分的信息(例如,qt_split_flag)。例如,当qt_split_flag具有第一值(例如,“1”)时,当前cu可以被四叉树分割。另外,当qt_split_flag具有第二值(例如,“0”)时,当前cu不被四叉树分割,而是变成四叉树的叶节点(qt_leaf_node)。然后可以将每个四叉树叶节点进一步分割成多类型树结构。也就是说,四叉树的叶节点可以变成多类型树的节点(mtt_node)。在多类型树结构中,用信号通知第一标志(例如,mtt_split_cu_flag)以指定当前节点是否被附加地分割。如果对应节点被附加地分割(例如,如果第一标志为1),则可以用信号通知第二标志(例如,mtt_split_cu_vertical_flag)以指定划分方向。例如,划分方向在第二标志为1时可以是垂直方向,而在第二标志为0时可以是水平方向。然后,可以用信号通知第三标志(例如,mtt_split_cu_binary_flag)以指定划分类型是二叉划分类型还是三叉划分类型。例如,划分类型在第三标志为1时可以是二叉划分类型,而在第三标志为0时可以是三叉划分类型。通过二叉划分或三叉划分获取的多类型树的节点可以被进一步分割成多类型树结构。然而,可以不将多类型树的节点分割成四叉树结构。如果第一标志为0,则多类型树的对应节点不再被划分,
而是变成多类型树的叶节点(mtt_leaf_node)。与多类型树的叶节点对应的cu可以被用作上述最终编码单元。
118.基于mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag,可以如下表1所示推导cu的多类型树划分模式(mttsplitmode)。
119.[表1]
[0120]
mttsplitmodemtt_split_cu_vertical_flagmtt_split_cu_binary_flagsplit tt hor00split bt hor01split tt verl0split bt ver11
[0121]
ctu可以包括亮度样本的编码块(在下文中称为“亮度块”)以及与其对应的色度样本的两个编码块(在下文中称为“色度块”)。上述编码树方案可以被同等地或单独地应用于当前cu的亮度块和色度块。具体地,可以将一个ctu中的亮度块和色度块分割成相同的块树结构,并且在这种情况下,树结构被表示为single_tree。另选地,可以将一个ctu中的亮度块和色度块分割成单独的块树结构,并且在这种情况下,可以将树结构表示为dual_tree。也就是说,当ctu被分割成双树时,用于亮度块的块树结构和用于色度块的块树结构可以分别存在。在这种情况下,可以将用于亮度块的块树结构称作dual_tree_luma,并且可以将用于色度分量的块树结构称作dual_tree_chroma。对于p和b切片/拼块组,可以将一个ctu中的亮度块和色度块限制为具有相同的编码树结构。然而,对于i切片/拼块组,亮度块和色度块可以具有彼此分开的块树结构。如果应用单独的块树结构,则可以基于特定编码树结构来将亮度ctb分割成cu,并且可以基于另一编码树结构来将色度ctb分割成色度cu。也就是说,应用单独的块树结构的i切片/拼块组中的cu可以包括亮度分量的编码块或两个色度分量的编码块。另外,应用了相同块树结构的i切片/拼块组中的cu和p或b切片/拼块组的cu可以包括三个颜色分量(一个亮度分量和两个色度分量)的块。
[0122]
尽管已经描述了具有嵌套多类型树的四叉树编码树结构,但是对cu进行分割的结构不限于此。例如,可以将bt结构和tt结构解释为多分割树(mpt)结构中包括的概念,并且可以将cu解释为通过qt结构和mpt结构被分割。在通过qt结构和mpt结构对cu进行分割的示例中,可以用信号通知包括关于qt结构的叶节点被分割成多少块的信息的语法元素(例如mpt_split_type)以及包括关于qt结构的叶节点被分割成垂直方向和水平方向中的哪个的信息的语法元素(例如mpt_split_mode),以确定分割结构。
[0123]
在另一示例中,可以以与qt结构、bt结构或tt结构不同的方式对cu进行分割。也就是说,与根据qt结构将较低深度的cu分割成较高深度的cu的1/4、根据bt结构将较低深度的cu分割成较高深度的cu的1/2或者根据tt结构将较低深度的cu分割成较高深度的cu的1/4或1/2不同,在一些情况下可以将较低深度的cu分割成较高深度的cu的1/5、1/3、3/8、3/5、2/3或5/8,并且对cu进行分割的方法不限于此。
[0124]
滤波的概述
[0125]
以下,将描述根据本公开的滤波方法。
[0126]
根据本公开的一些实施方式,可以对由图像编码/解码设备生成的重构画面执行滤波。作为执行滤波的结果,可以生成修改的重构画面,并且图像解码设备可以将修改的重
构画面确定为最终解码画面。另外,在图像编码/解码设备中,修改的重构画面可以被存储在解码画面缓冲器(dpb)或存储器中,然后可以在对画面进行编码/解码时用作参考画面。
[0127]
根据本公开的一些实施方式的滤波可以用作与环路内滤波相同的含义。用于滤波的滤波器可以包括去块滤波器、样本偏移滤波器(sao)、自适应环路滤波器(slf)或双边滤波器中的至少一个。去块滤波器、sao滤波器、alf和/或双边滤波器中的至少一个可以依次应用于重构画面,从而生成修改的重构画面。应用滤波器的顺序可以在图像编码/解码设备中预设。例如,在去块滤波器应用于重构画面之后,可以应用sao滤波器。作为另一示例,在去块滤波器应用于重构画面之后,可以应用alf。根据本公开的一些实施方式的滤波可以由图2的滤波器160和/或图3的滤波器240中的至少一个执行。
[0128]
例如,去块滤波器可以消除在重构画面的块边界处生成的失真。例如,去块滤波器可以推导作为重构画面中的块之间的边界的目标边界,并且设定目标边界的边界强度或滤波器强度。图像编码/解码设备可以通过基于设定的滤波器强度对目标边界应用滤波来对目标边界执行去块滤波。在这种情况下,可以基于与目标边界相邻的两个块的预测模式、运动向量差、参考画面是否相同或者是否存在非零有效系数中的至少一个来确定滤波器强度。
[0129]
作为另一示例,sao滤波器可以以样本为单位补偿重构画面与原始画面之间的偏移差。例如,sao滤波器可以由诸如带偏移滤波器或偏移滤波器的滤波器类型实现。当应用sao滤波器时,样本可以根据sao类型而被分类为不同的类别,并且可以基于类别向各个样本添加偏移值。关于sao滤波器的信息可以包括关于是否应用sao滤波器的信息、sao滤波器类型信息和/或sao偏移值信息中的至少一个。此外,例如,sao滤波器可以被限制为应用于应用了去块滤波器的重构画面。
[0130]
作为另一示例,alf可以是对重构画面应用根据滤波器形状的滤波器系数的样本单元滤波器。图像编码设备可以通过将重构画面与原始画面比较来用信号通知是否应用alf、alf的形状和/或滤波器系数中的至少一个。即,关于alf的信息可以包括关于是否应用alf的信息、alf滤波器形状信息和/或alf滤波系数信息中的至少一个。此外,例如,alf可以被限制为应用于应用于了去块滤波器的重构画面。
[0131]
图6是示出去块滤波器的应用方法的视图。
[0132]
如上所述,去块滤波器可以应用于重构画面。去块滤波器可以基于画面的编码/解码顺序应用于当前块中所包括的各个cu或tu的边界。
[0133]
参照图6,根据本公开的一些实施方式的去块滤波器的应用方法可以包括:推导将应用去块滤波的目标边界(s610);确定滤波器强度(s620);以及基于所确定的滤波器强度对目标边界应用去块滤波器(s630)。
[0134]
以下,将描述确定应用于目标边界的滤波器强度(s620)。根据本公开的一些实施方式,可以根据与目标边界相邻的变换块的条件来确定滤波器强度。在以下描述中,当目标边界是垂直边界时,基于目标边界,左块可以被定义为p块,右块可以被定义为q块。另外,当目标边界是水平边界时,基于目标边界,上块可以被定义为p块,下块可以被定义为q块。另外,在以下描述中,滤波器强度的第一值、第二值和第三值可以分别意指0、1和2,但本公开的范围不限于该定义。
[0135]
例如,当基于块的量化残差域差分脉冲编码调制(bdpcm)应用于包括在一个亮度
cu中的p块样本和q块样本时,目标边界的滤波器强度可以被确定为第一值。作为另一示例,当对包括在一个cu中的p块样本和q块样本进行帧内预测时,目标边界的滤波器强度可以被确定为第三值。作为另一示例,当目标边界是tu的边界并且组合帧间和帧内预测(ciip)应用于包括在一个cu中的p块样本和q块样本时,目标边界的滤波器强度可以被确定为第三值。作为另一示例,当目标边界是tu的边界并且包括在一个tu中的p块样本和q块样本中的至少一个具有非零变换系数级别时,目标边界的滤波器强度可以被确定为第二值。作为另一示例,当包括p块样本的cu的子块的预测模式不同于包括q块样本的cu的子块的预测模式时,目标边界的滤波器强度可以被确定为第二值。
[0136]
作为另一示例,当当前块是亮度块并且满足以下条件中的至少一个时,目标边界的滤波器强度可以被确定为第二值。此外,当以下条件全部不满足时,目标边界的滤波器强度可以被确定为第一值。例如,当包括p块样本的cu的子块和包括q块样本的cu的子块二者均以ibc模式编码/解码并且各个子块的运动向量的水平值或垂直值之间的差等于或大于4单位的1/4亮度样本时,目标边界的滤波器强度可以被确定为第二值。另选地,当包括p块样本的cu的子块和包括q块样本的cu的子块参考不同的参考画面或具有不同数量的运动向量时,目标边界的滤波器强度可以被确定为第二值。当使用一个运动向量来预测包括p块样本的cu的子块和包括q块样本的cu的子块或者各个子块的运动向量的水平值或垂直值之间的差等于或大于4单位的1/4亮度样本时,目标边界的滤波器强度可以被确定为第二值。当使用两个运动向量和两个不同的参考画面来预测包括p块样本的cu的子块并且使用两个运动向量和两个相同的参考画面来预测包括q块样本的cu的子块,并且相同参考画面的运动向量的水平值或垂直值之间的差等于或大于4单位的1/4亮度样本时,目标边界的滤波器强度可以被确定为第二值。
[0137]
当使用两个运动向量和相同的两个参考画面来预测包括p块样本的cu的子块并且使用两个运动向量和相同的两个参考画面来预测包括q块样本的cu的子块时,如果满足以下两个条件,则目标边界的滤波器强度可以被确定为第二值。第一条件可意指各个子块的列表0运动向量的水平值或垂直值差等于或大于4单位的1/4亮度样本的情况或各个子块的列表1运动向量的水平值或垂直值差等于或大于4单位的1/4亮度样本的情况的条件。第二条件可意指用于预测包括p块样本的cu的子块的列表0运动向量和用于预测包括q块样本的cu的子块的列表1运动向量的水平值或垂直值差等于或大于4单位的1/4亮度样本的情况或用于预测包括p块样本的cu的子块的列表1运动向量和用于预测包括q块样本的cu的子块的列表0运动向量的水平值或垂直值差等于或大于4单位的1/4亮度样本的情况的条件。
[0138]
图像编码/解码设备可以基于上述条件来确定目标边界的滤波器强度。此外,当滤波器强度具有第一值时,可以不对目标边界执行滤波。根据本公开的一些实施方式的去块滤波器可以基于滤波器强度和/或滤波器长度中的至少一个来应用。
[0139]
以下,将描述根据重构亮度样本值的滤波器强度确定方法。
[0140]
图7是示出去块滤波器的滤波器强度确定方法的视图。
[0141]
在本公开的一些实施方式中,可以根据变量β和tc来确定去块滤波器。这里,变量β和tc可以是由量化参数qp_l确定的值。例如,可以通过将根据重构亮度样本值确定的偏移与qp_l相加来推导去块滤波器的滤波器强度。例如,重构亮度级别可以被定义为ll,并且ll可以根据下式1来推导。
[0142]
[式1]
[0143]
ll=((p_0,0 p_0,3 q_0,0 q_0,3)》》2)/(1《《bitdepth)
[0144]
式1的p_i,k和q_i,k可意指根据图7确定的p块或q块的样本值。
[0145]
此外,qp_l可以根据下式2来确定。
[0146]
[式2]
[0147]
qp_l=((q_p_q q_p_p 1)》》1) qpoffset
[0148]
式2的q_p_q和q_p_p可意指包括q_0,0和p_0,0的cu的量化参数,并且poffset可以是在sps级别发送的偏移。
[0149]
在本公开的一些实施方式中,去块滤波器可以应用于8
×
8区域。去块滤波器不仅可以应用于cu的边界和构成cu的子块或变换块的边界。在这种情况下,子块可意指通过基于子块的合并模式、仿射模式、帧内子分区(isp)模式和/或基于子块的变换生成的子块或变换块中的至少一种。
[0150]
当在与tu的边界交叉的边界中存在非零系数时,可以对通过isp模式或基于子块的变换生成的子块应用去块滤波器。此外,可以基于邻近子块的参考画面和运动向量根据基于子块的合并模式或仿射模式对子块应用去块滤波器。
[0151]
帧内子分区(isp)的概述
[0152]
图8是示出帧内预测技术当中的帧内子分区(isp)的视图。
[0153]
在传统帧内预测中,要编码/解码的当前块(当前块)被视为一个单元,并且在不划分的情况下执行编码/解码。然而,当应用isp时,可以在水平或垂直方向上划分当前块并且可以执行帧内预测编码/解码。此时,可以以划分的isp子块为单位执行编码/解码以生成重构isp子块,并且重构isp子块可以用作下一划分的isp子块的参考块。
[0154]
当对当前块应用isp模式时,可以针对通过在水平或垂直方向上划分当前块而获得的各个isp子块执行帧内预测。即,帧内预测、残差信号生成和重构信号生成以isp子块为单位执行,并且重构子分区的重构信号可以用作下一子分区的帧内预测的参考样本。
[0155]
图像编码设备可以使用各种方法(例如,基于rdo的方法)来确定isp划分方向。所确定的划分方向可以通过比特流作为关于isp划分方向的信息明确地用信号通知。图像解码设备可以基于关于用信号通知的划分方向的信息来确定当前块的isp划分方向。当isp划分方向由当前块的编码参数(例如,当前块的大小(宽度或高度))隐含地确定时,图像编码设备和图像解码设备可以使用相同的方法来确定当前块的isp划分方向。
[0156]
通过划分当前块而获得的各个isp子块可能需要包括最少16个样本。例如,当当前块是4
×
4块时,可以隐含地确定不应用isp。另外,当当前块是4
×
8块或8
×
4块时,如图8的(a)所示,应用isp的当前块可以被划分成两个isp子块。另外,当当前块不是4
×
4块、4
×
8块或8
×
4块时,如图8的(b)所示,应用isp的当前块可以被划分成四个isp子块。在图8的(a)和图8的(b)所示的示例中,当isp划分方向是水平方向时,可以按照上isp子块至下isp子块的顺序执行编码和/解码。另外,当isp划分方向是垂直方向时,可以按照左isp子块至右isp子块的顺序执行编码和/解码。
[0157]
例如,根据当前块的大小的isp子块或系数组的大小可以基于下表2来确定。
[0158]
[表2]
[0159]
块大小系数组大小1×
n,n≥161
×
16n
×
1,n≥1616
×
12
×
n,n≥82
×
8n
×
2,n≥88
×
2所有其它可能的m
×
n情况4
×4[0160]
实施方式#1
[0161]
以下,将描述使用上述去块滤波器来对图像进行编码/解码的方法。根据本公开的实施方式,可以确定去块滤波器的滤波器长度。尽管在以下描述中,变换块、p块和/或q块被描述为基于isp模式推导的子块,但本公开的范围不限于此。这里,变换块可以指与目标边界相邻的p块或q块中的至少一个。另外,尽管在以下描述中当前块或变换块被描述为亮度块,但本公开的范围不限于此。
[0162]
根据本公开的实施方式,当p块的宽度或q块的宽度为4时,应用于作为垂直边界的目标边界的q块滤波器长度可以被确定为1。相比之下,当q块的宽度等于或大于32时,应用于目标边界的q块滤波器长度可以被确定为7。在其它情况下,应用于目标边界的q块滤波器长度可以被确定为3。
[0163]
此外,当p块的宽度或q块的宽度为4时,应用于作为垂直边界的目标边界的p块滤波器长度可以被确定为1。相比之下,当p块的宽度等于或大于32时,应用于目标边界的p块滤波器长度可以被确定为7。在其它情况下,应用于目标边界的p块滤波器长度可以被确定为3。
[0164]
此外,当p块的高度或q块的高度为4时,应用于作为水平边界的目标边界的q块滤波器长度可以被确定为1。相比之下,当q块的高度等于或大于32时,应用于目标边界的滤波器长度可以被确定为7。在其它情况下,应用于目标边界的q块滤波器长度可以被确定为3。
[0165]
此外,当p块的高度或q块的高度为4时,应用于作为水平边界的目标边界的p块滤波器长度可以被确定为1。相比之下,当p块的高度等于或大于32时,应用于目标边界的滤波器长度可以被确定为7。在其它情况下,应用于目标边界的p块滤波器长度可以被确定为3。
[0166]
根据本公开的实施方式,当变换块的宽度或大小等于或小于预定值时,可能存在无法执行滤波器的并行化的问题。以下,将详细描述在上述实施方式中可能出现的去块滤波器的问题。
[0167]
图9至图11是示出应用于目标边界的去块滤波器的滤波器长度确定方法的视图。
[0168]
图9至图11示出16
×
16块被分割成四个4
×
16块,并且第二4
×
16块和第四4
×
16块分别通过isp模式被分割成两个2
×
16子块和四个1
×
16子块的状态。
[0169]
参照图9,对于第一滤波器边界,p块滤波器长度可以被确定为1,q块滤波器边界可以被确定为3。参照图10,对于第二滤波器边界,p块滤波器长度可以被确定为3,q块滤波器长度可以被确定为1。参照图11,对于第三滤波器边界,q块滤波器长度可以被确定为3,并且对于第四滤波器边界,p块滤波器长度可以被确定为3。
[0170]
在图10和图11中,尽管子块的宽度小于4,但是由于对应块为p块时的滤波器长度与对应块为q块时的滤波器长度之和大于4,所以在两个边界所应用的滤波之间可能发生交叠。可能存在通过交叠滤波器长度无法执行滤波的并行处理的问题。以下,将详细描述解决这种问题的方法。
[0171]
具体地,当isp模式应用于当前块时,作为帧内预测结果生成的变换块可以具有小于传统上定义的最大变换块的大小。即,根据本公开的一些实施方式,甚至对应用了isp模式的块也可执行滤波的并行处理。
[0172]
图12是示出根据本公开的实施方式的图像编码/解码方法的视图。
[0173]
参照图12,根据本公开的实施方式的图像编码/解码方法可以包括:推导当前块的重构块(s1210);推导重构块的目标边界(s1220);确定要应用于目标边界的去块滤波器的滤波器长度(s1230);和/或基于所确定的滤波器长度来应用去块滤波器(s1240)。
[0174]
在这种情况下,可以基于与目标边界相邻的变换块的宽度或高度中的至少一个来确定滤波器长度。
[0175]
实施方式#2
[0176]
根据本公开的另一实施方式,当变换块的宽度或高度满足预定条件时,可以考虑这一点来确定应用于目标边界的滤波器长度。
[0177]
例如,当变换块的宽度或高度小于最小变换块的大小时,应用于目标边界的滤波器长度可以被确定为预设值。例如,当变换块的宽度或高度小于4时,应用于目标边界的滤波器长度可以被确定为1。
[0178]
图13和图14是示出根据本公开的另一实施方式的去块滤波器长度确定方法的视图。
[0179]
图13示出根据图10的实施方式的解决问题的去块滤波器长度确定方法。当变换块的宽度或高度等于或小于4时,目标边界的滤波器长度可以被确定为1。参照图13,由于2
×
16子块的宽度等于或小于4,所以第一目标边界的q块滤波器长度和第二目标边界的p块滤波器长度二者可以被确定为1。因此,不会发生第一目标边界的q块滤波器与第二目标边界的p块滤波器之间的交叠。
[0180]
图14示出根据图11的实施方式的解决问题的去块滤波器长度确定方法。参照图13,由于1
×
16 isp子块的宽度等于或小于4,所以第一目标边界的q块滤波器长度和第二目标边界的p块滤波器长度二者可以被确定为1。因此,可能不会发生第三目标边界的q块滤波器与第四目标边界的p块滤波器之间的交叠。
[0181]
图15和图16是示出根据本公开的另一实施方式的去块滤波器长度确定方法的视图。
[0182]
参照图15,首先,可以确定推导的目标边界是垂直边界还是水平边界(s1510)。当目标边界是水平边界(s1510:否)时,可以执行水平边界的滤波器长度推导处理(s1525)。将通过图16描述水平边界的滤波器长度推导处理。
[0183]
例如,图像编码/解码设备可以首先确定q块滤波器长度。当目标边界是垂直边界(s1510:是)时,可以确定p块的宽度或q块的宽度中的至少一个等于或小于第一值(s1520)。当p块的宽度或q块的宽度中的至少一个等于或小于第一值(s1520:是)时,用于目标边界的q块滤波器长度可以被确定为第一长度(s1521)。此外,当p块的宽度和q块的宽度大于第一值(s1520:否)时,q块的宽度是否等于或大于第二值(s1530)。当q块的宽度等于或大于第二值(s1530:是)时,用于目标边界的q块滤波器长度可以被确定为第二长度(s1531)。此外,当q块的宽度大于第一值且小于第二值(s1530:否)时,用于目标边界的q块滤波器长度可以被确定为第三长度(s1532)。
[0184]
接下来,图像编码/解码设备可以确定p块滤波器长度。在确定q块滤波器长度之后,可以确定p块的宽度或q块的宽度中的至少一个是否等于或小于第一值(s1540)。当p块的宽度或q块的宽度中的至少一个等于或小于第一值(s1540:是)时,用于目标边界的p块滤波器长度可以被确定为第一长度(s1541)。此外,当p块的宽度和q块的宽度大于第一值(s1540:否)时,可以确定p块的宽度是否等于或大于第二值(s1550)。当p块的宽度等于或大于第二值(s1550:是)时,用于目标边界的p块滤波器长度可以被确定为第二长度(s1551)。此外,当p块的宽度大于第一值且小于第二值(s1550:否)时,用于目标边界的p块滤波器长度可以被确定为第三长度(s1552)。
[0185]
例如,第一值和第二值可以分别为4和32。另外,第一长度、第二长度和第三长度可以分别具有值1、7和3,但这仅是示例,不限于此。另外,尽管在上面的示例中描述了首先推导q块滤波器长度,然后推导p块滤波器长度的实施方式,但是首先推导q块滤波器长度,然后推导p块滤波器长度的实施方式以及同时推导q块滤波器长度和p块滤波器长度的实施方式也可以被包括在本公开的范围内。
[0186]
参照图16,首先,可以确定推导的目标边界是垂直边界还是水平边界(s1610)。图16的s1620至s1651可以是图15的s1525的详细描述。另外,图16的s1610和图15的s1510可以指示相同的配置。
[0187]
例如,图像编码/解码设备可以首先确定q块滤波器长度。当目标边界是水平边界(s1610:是)时,p块的高度或q块的高度中的至少一个等于或小于第一值(s1620)。当p块的宽度或q块的宽度中的至少一个等于或小于第一值(s1620:是)时,用于目标边界的q块滤波器长度可以被确定为第一长度(s1621)。此外,当p块的高度和q块的高度大于第一值(s1620:否)时,可以确定q块的高度是否等于或大于第二值(s1630)。当q块的高度等于或大于第二值(s1630:是)时,用于目标边界的q块滤波器长度可以被确定为第二长度(s1631)。此外,q块的高度大于第一值且小于第二值(s1530:否),用于目标边界的q块滤波器长度可以被确定为第三长度(s1532)。
[0188]
接下来,图像编码/解码设备可以确定p块滤波器长度。在确定q块滤波器长度之后,可以确定p块的高度或q块的高度中的至少一个是否等于或小于第一值(s1640)。当p块的高度或q块的高度中的至少一个等于或小于第一值(s1640:是)时,用于目标边界的p块滤波器长度可以被确定为第一长度(s1641)。此外,当p块的高度和q块的高度大于第一值(s1640:否)时,p块的高度是否等于或大于第二值(s1650)。当p块的高度等于或大于第二长度(s1650:是)时,用于目标边界的p块滤波器长度可以被确定为第二长度(s1651)。此外,当p块的高度大于第一值且小于第二值(s1650:否)时,用于目标边界的p块滤波器长度可以被确定为第三长度(s1652)。
[0189]
例如,第一值和第二值可以分别为4和32。另外,第一长度、第二长度和第三长度可以分别具有值1、7和3,但这仅是示例,不限于此。另外,尽管在上面的示例中描述了首先推导q块滤波器长度,然后推导p块滤波器长度的实施方式,但是首先推导q块滤波器长度,然后推导p块滤波器长度的实施方式以及同时推导q块滤波器长度和p块滤波器长度的实施方式也可以被包括在本公开的范围内。
[0190]
根据本实施方式,由于不会发生去块滤波器的并行处理由于变换块的大小减小而无法进行的情况(例如,在通过应用isp模式而生成的子块的情况下)或者由于不同的目标
边界而发生滤波器之间交叠的情况,所以图像编码/解码设备可以始终执行滤波器并行处理并且图像编码/解码效率可以增加。
[0191]
在本说明书中,执行并行化或并行处理并不意味着图像编码/解码设备始终执行并行处理。即使当支持并行处理时,也可以考虑图像编码/解码设备的硬件性能、服务类型和服务质量来确定是否执行并行处理。例如,当图像编码/解码设备使用多处理器实现时,可以通过本公开的实施方式执行去块滤波器的并行处理。此外,当图像编码/解码设备使用单处理器实现时,可以在不应用上述实施方式的情况下依次对目标边界应用去块滤波器。
[0192]
虽然为了描述的清楚起见,上述本公开的示例性方法被表示为一系列操作,但并不旨在限制执行步骤的顺序,并且必要时这些步骤可以同时或以不同的顺序来执行。为了实现根据本发明的方法,所描述的步骤可以进一步包括其它步骤,可以包括除了一些步骤之外的其余步骤,或者可以包括除了一些步骤之外的其它附加步骤。
[0193]
在本公开中,执行预定操作(步骤)的图像编码装置或图像解码装置可以执行确认相应操作(步骤)的执行条件或情况的操作(步骤)。例如,如果描述了在满足预定条件时执行预定操作,则图像编码装置或图像解码装置可以在确定是否满足预定条件之后执行预定操作。
[0194]
本公开的各种实施方式不是所有可能组合的列表并且旨在描述本公开的代表性方面,并且在各种实施方式中描述的事项可以独立地或以两个或更多个的组合应用。
[0195]
本公开的各种实施方式可以以硬件、固件、软件或其组合来实现。在通过硬件实现本公开的情况下,本公开可以通过专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理器件(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、通用处理器、控制器、微控制器、微处理器等来实现。
[0196]
此外,应用本公开的实施方式的图像解码设备和图像编码设备可以包括在多媒体广播传送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监控摄像头、视频聊天装置、诸如视频通信的实时通信装置、移动流传输装置、存储介质、摄像机、视频点播(vod)服务提供装置、ott视频(over the top video)装置、互联网流传输服务提供装置、三维(3d)视频装置、视频电话视频装置、医疗视频装置等中,并且可用于处理视频信号或数据信号。例如,ott视频装置可以包括游戏机、蓝光播放器、互联网接入电视、家庭影院系统、智能电话、平板pc、数字录像机(dvr)等。
[0197]
图17是示出可应用本公开的实施方式的内容流系统的视图。
[0198]
如图17中所示,应用本公开的实施方式的内容流系统可以主要包括编码服务器、流服务器、网络服务器、媒体存储装置、用户装置和多媒体输入装置。
[0199]
编码服务器将从诸如智能电话、相机、摄像机等多媒体输入装置输入的内容压缩成数字数据以生成比特流并将该比特流发送到流服务器。作为另一示例,当智能电话、相机、摄像机等多媒体输入装置直接生成比特流时,可以省略编码服务器。
[0200]
比特流可以由应用本公开的实施方式的图像编码方法或图像编码设备产生,并且流服务器可以在发送或接收比特流的过程中暂时存储比特流。
[0201]
流服务器基于用户通过网络服务器的请求将多媒体数据发送到用户装置,并且网络服务器用作向用户告知服务的媒介。当用户向网络服务器请求所需的服务时,网络服务器可以将其递送到流服务器,并且流服务器可以向用户发送多媒体数据。在这种情况下,内
容流系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流系统中的装置之间的命令/响应。
[0202]
流服务器可以从媒体存储装置和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时接收内容。在这种情况下,为了提供平滑的流服务,流服务器可以在预定时间内存储比特流。
[0203]
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(pda)、便携式多媒体播放器(pmp)、导航设备、石板pc、平板pc、超级本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字电视、台式计算机、数字标牌等。
[0204]
内容流系统中的各个服务器可以作为分布式服务器运行,在这种情况下,从各个服务器接收的数据可以被分布。
[0205]
本公开的范围包括用于使根据各种实施方式的方法的操作能够在设备或计算机上执行的软件或机器可执行命令(例如,操作系统、应用、固件、程序等)、具有存储在其上并且可在设备或计算机上执行的此类软件或命令的非暂时性计算机可读介质。
[0206]
工业实用性
[0207]
本公开的实施方式可以被用于对图像进行编码或解码。
再多了解一些

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

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

相关文献