视频编码方法和设备以及视频解码方法和设备与流程

专利2022-06-29  90


本申请是申请日为2014年12月12日、申请号为201480075345.1、题为“用于用信号传送sao参数的视频编码方法和设备以及视频解码方法和设备”的专利申请的分案申请。

本公开涉及一种用于用信号传送样点自适应偏移(sao)参数的视频编码方法和设备以及视频解码方法和设备。



背景技术:

随着用于再现和存储高分辨率或高质量视频内容的硬件的开发和提供,对于用于有效地对高分辨率或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。根据传统的视频编解码器,基于具有预定尺寸的编码单元,根据受限的编码方法来对视频进行编码。

空间域的图像数据经由频率变换被变换为频域的系数。根据视频编解码器,将图像划分为具有预定尺寸的块,对每个块执行离散余弦变换(dct),并以块为单位对频率系数进行编码,以进行频率变换的快速计算。与空间域的图像数据相比,频域的系数容易被压缩。具体地,由于根据经由视频编解码器的帧间预测或帧内预测的预测误差来表示空间域的图像像素值,因此当对预测误差执行频率变换时,大量数据可被变换为0。根据视频编解码器,可通过使用小量数据来代替连续并重复产生的数据,来减少数据量。

具体地,可在对视频进行编码和解码的操作期间采用将重建像素的值调整样点自适应偏移(sao)的方法,以便使原始图像和重建图像之间的误差最小化。



技术实现要素:

技术问题

根据本公开的一方面,提供一种用于用信号传送样点自适应偏移(sao)参数的视频编码方法,所述视频编码方法包括:确定用于对视频中包括的当前块的像素样点值进行补偿的多个带群组;确定指示确定的所述多个带群组中的每个带群组的位置的带群组位置信息;确定针对确定的所述多个带群组中的每个带群组中所包括的带的偏移;产生包括确定的带群组位置信息、确定的偏移以及编码的视频的比特流,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

根据本公开的另一方面,提供一种用于用信号传送样点自适应偏移(sao)参数的视频解码方法,所述视频解码方法包括:从比特流获得针对视频中包括的当前块的多个带群组中的每个带群组的位置信息;从比特流获得针对所述多个带群组中的每个带群组中包括的带的偏移;基于所述多个带群组中的每个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组;通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

有益效果

根据各种实施例,可通过使用用信号传送样点自适应偏移(sao)参数的视频编码方法和视频解码方法来提高压缩效率。

更详细地讲,可用信号传送多个带群组中的每个带群组的带群组位置信息以及每个带群组中包括的每个带的偏移值信息,使得可有效减少原始图像和重建图像之间的失真,并且可防止由于信号传送开销的增加而导致的性能恶化。

附图说明

图1a和图1b分别示出根据本公开的实施例的样点自适应偏移(sao)编码设备的框图和sao编码方法的流程图。

图2a和图2b分别示出根据本公开的实施例的sao解码设备的框图和sao解码方法的流程图。

图3示出根据本公开的实施例的视频解码设备的框图。

图4示出用于描述根据本公开的实施例的确定在被执行样点调整的带类型下的连续带的(确定一个带群组的)处理的示图。

图5示出用于描述根据本公开的另一实施例的确定在被执行样点调整的带类型下的非连续带的(确定多个带群组的)处理的示图。

图6是用于描述根据本公开的实施例的当sao类型是带类型时确定sao参数的处理的示图。

图7示出根据各种实施例的基于树结构的编码单元的视频编码设备的框图。

图8示出根据各种实施例的基于树结构的编码单元的视频解码设备的框图。

图9示出根据各种实施例的编码单元的概念。

图10示出根据各种实施例的基于编码单元的图像编码器的框图。

图11示出根据各种实施例的基于编码单元的图像解码器的框图。

图12示出根据各种实施例的根据深度的较深层编码单元和分区。

图13示出根据各种实施例的编码单元和变换单元之间的关系。

图14示出根据各种实施例的根据深度的多条编码信息。

图15示出根据各种实施例的根据深度的较深层编码单元。

图16、图17和图18示出根据各种实施例的编码单元、预测单元和变换单元之间的关系。

图19示出根据表2的编码信息的编码单元、预测单元和变换单元之间的关系。

图20示出根据各种实施例的存储程序的盘的物理结构。

图21示出用于通过使用盘来记录和读取程序的盘驱动器。

图22示出用于提供内容分发服务的内容供应系统的整体结构。

图23和图24示出根据各种实施例的应用了本公开的视频编码方法和视频解码方法的移动电话的外部结构和内部结构。

图25示出根据各种实施例的应用通信系统的数字广播系统。

图26示出根据各种实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构。

最佳实施方式

根据本公开的一方面,提供一种用于用信号传送样点自适应偏移(sao)参数的视频编码方法,所述视频编码方法包括:确定用于对视频中包括的当前块的像素样点值进行补偿的多个带群组;确定指示确定的所述多个带群组中的每个带群组的位置的带群组位置信息;确定针对确定的所述多个带群组中的每个带群组中所包括的带的偏移;产生包括确定的带群组位置信息、确定的偏移以及编码的视频的比特流,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

确定的带群组位置信息可包括指示确定的所述多个带群组中的每个带群组中所包括的起始带的位置的信息。

确定的所述多个带群组可包括两个带群组。此外,确定的所述多个带群组中的每个带群组可包括两个带。

当前块可以是视频中包括的最大编码单元(lcu)。

确定的所述多个带群组中的每个带群组可包括至少两个相邻带。

根据本公开的另一方面,提供一种用于用信号传送样点自适应偏移(sao)参数的视频解码方法,所述视频解码方法包括:从比特流获得针对视频中包括的当前块的多个带群组中的每个带群组的位置信息;从比特流获得针对所述多个带群组中的每个带群组中包括的带的偏移;基于所述多个带群组中的每个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组;通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

确定的所述多个带群组中的每个带群组的位置信息可包括指示所述多个带群组中的每个带群组中包括的起始带的位置的信息。

确定的所述多个带群组可包括两个带群组。此外,确定的所述多个带群组中的每个带群组可包括两个带。

当前块可以是视频中包括的最大编码单元(lcu)。

确定的所述多个带群组中的每个带群组可包括至少两个相邻带。

所有带中的除了确定的所述多个带群组之外的带的偏移可被初始化为0。

确定的所述多个带群组可以不是连续的。

根据本公开的另一方面,提供一种视频编码设备,包括:样点自适应偏移(sao)参数确定器,被配置为确定用于对视频中包括的当前块的像素样点值进行补偿的多个带群组,确定指示确定的所述多个带群组中的每个带群组的位置的带群组位置信息,确定针对确定的所述多个带群组中的每个带群组中所包括的带的偏移;比特流产生器,被配置为产生包括确定的带群组位置信息、确定的偏移和编码的视频的比特流,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

根据本公开的另一方面,提供一种视频解码设备,包括:接收器,被配置为从比特流获得针对视频中包括的当前块的多个带群组中的每个带群组的位置信息,并从比特流获得针对所述多个带群组中的每个带群组中包括的带的偏移;样点自适应偏移(sao)参数确定器,被配置为基于所述多个带群组中的每个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组;样点补偿器,被配置为通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

根据本公开的另一方面,提供一种记录有用于通过使用计算机执行用于用信号传送sao参数的编码方法和解码方法的程序的计算机可读记录介质。

具体实施方式

在下文中,详细描述制造和使用本公开的方法。如这里所使用的,诸如“单元”和“模块”的术语指示用于处理至少一个功能或操作的单元,其中,单元和模块可被实现为硬件或软件,或者可通过组合硬件和软件来实现。

如这里所使用的,术语本公开的“实施例”或“多个实施例”是指与本公开的至少一个实施例中包括的实施例相关地描述的属性、结构、特征等。因此,诸如“根据实施例”的表述不总是指示相同实施例。

首先,将参照图1至图6描述根据实施例的用于用信号传送样点自适应偏移(sao)参数的视频编码方法和视频解码方法。

另外,将参照图7至图26描述使用了在基于树结构的编码单元的视频编码操作和视频解码操作中的基于像素分类的sao调整的实施例。在下文中,“图像”可表示静止图像或视频的运动图像,或者视频本身。

首先,将参照图1至图6描述用于用信号传送样点自适应偏移(sao)参数的视频编码方法和视频解码方法。在sao编码设备10和sao解码设备20之间用信号传送样点。也就是说,sao编码设备10可对通过对视频进行编码而产生的样点进行编码,可将编码的样点包括在比特流中,并且可发送包括编码的样点的比特流。sao解码设备20可从接收到的比特流解析样点并重建样点。

为了通过将重建像素的像素值调整根据像素分类而确定的偏移来使原始像素与重建像素之间的误差最小化,根据本公开的实施例的sao编码设备10和sao解码设备20用信号传送用于sao调整的sao参数。偏移作为sao参数被sao编码设备10编码并然后发送,sao解码设备20接收被编码并发送的偏移,并对接收到的偏移进行解码。因此,根据本公开的实施例的sao解码设备20可通过对接收到的比特流进行解码、产生每个图像块的重建像素、从比特流重建偏移值、并将重建像素调整所述偏移值,来产生在原始图像与重建图像之间具有最小误差的重建图像。

现在将参照图1a和图1b来描述执行sao调整的sao编码设备10的操作,并且现在将参照图2a和图2b来描述执行sao调整的sao解码设备20的操作。

图1a和图1b分别示出根据实施例的sao编码设备10的框图和使用sao参数的预测的编码方法的流程图。

根据实施例的sao编码设备10包括sao参数确定器12和比特流产生器14。根据实施例的sao编码设备10接收图像(诸如视频条带)的输入,将每个图像划分为块,并对每个块进行编码。块可以具有正方形形状、矩形形状或任意几何形状,并且不限于具有预定尺寸的数据单元。根据实施例的块可以是根据树结构的编码单元之中的最大编码单元(lcu)、数据单元(cu)、预测单元或变换单元。下面将参照图7至图26描述基于根据树结构的编码单元的视频编码方法和视频解码方法。

根据实施例的sao编码设备10可将每个输入图像划分为lcu,并且可将通过对每个lcu的样点执行预测、变换和熵编码而产生的结果数据输出为比特流。lcu的样点可以是lcu中包括的像素的像素值数据。

根据实施例的sao编码设备10可单独地对图像的lcu进行编码。例如,sao编码设备10可基于从当前lcu划分出并具有树结构的编码单元对当前lcu进行编码。

为了对当前lcu进行编码,sao编码设备10可通过对被包括在当前lcu中并具有树结构的编码单元中的每一个编码单元执行帧内预测、帧间预测、变换和量化来对样点进行编码。

然后,sao编码设备10可通过对具有树结构的编码单元中的每一个编码单元执行反量化、逆变换、帧内预测或运动补偿来重建当前lcu中包括的编码的样点。

另外,sao编码设备10可对lcu中的重建的样点执行去块操作以便减轻块边界处的图像恶化,并且可对被执行了去块操作的lcu应用sao以便使原始像素和重建像素之间的误差最小化。这里,sao编码设备10可从边缘类型和带类型之中确定一种sao类型,并且可根据确定的sao类型来应用sao。

然而,如果sao编码设备10在sao类型之中确定了带类型,则sao编码设备10可确定用于sao被应用到的每个带的偏移值。例如,sao编码设备10可确定所有带的偏移值,并且可发送包括所有带的偏移值的比特流。这里,带表示特定偏移值被应用到的样点值的范围,由于带表示特定偏移值被应用到的区间,因此带可被称为区间。同样地,带类型也可被称为区间类型。

在此情况下,sao编码设备10不执行确定所有带之中的最适合应用sao的一些带的处理,因此计算量被减少。

然而,由于sao编码设备10发送所有带的偏移值,因此信号传送开销增加,因此为了防止信号传送开销过度增加,对所有带的数量的增加进行限制。

作为另一示例,sao编码设备10可确定包括所有带之中的sao被应用到的一些带的带群组。然而,带群组的名称不限于此,因此带群组也可被称为区间群组。

更详细地,sao编码设备10可确定包括所有带之中的连续带的一个带群组。例如,sao编码设备10可确定包括四个连续带的一个带群组#1,并且可发送确定的四个连续带的偏移值。在此情况下,sao编码设备10不发送所有带的偏移值,而发送指示带群组#1中包括的起始带的位置的信息以及四个连续带的偏移值,因此不会发生由于信号传送开销的增加而导致的性能恶化。

由于带类型的特性,偏移值经由低带宽和高带宽被发送是有效的。

另外,在带类型为sao类型的情况下,根据实施例的sao编码设备10可高效地发送带的偏移值。更详细地,根据本公开的实施例的sao编码设备10可确定多个带群组,并且可发送确定的多个带群组的偏移值,从而可有效地减少原始图像与重建图像之间的失真,并且可防止由于信号传送开销的增加而导致的性能恶化。这里,多个带群组可以不是连续的。

例如,sao编码设备10可发送多个带群组中的每一个带群组的带群组位置信息以及所述多个带群组中包括的每个带的偏移值信息,从而可有效地减少原始图像与重建图像之间的失真,并且可防止由于信号传送开销的增加而导致的性能恶化。

根据本公开的实施例的sao参数确定器12可确定包括所有带之中的一些带的多个带群组,以便对视频中包括的当前块的像素样点值进行补偿。这里,多个带群组可彼此不相邻。也就是说,多个带群组可以不是连续的。然而,多个带群组不限于此,并因此可彼此相邻。

这里,sao参数确定器12可确定具有最佳率失真代价的多个带群组,使得当前块中包括的原始图像和重建图像之间的失真可被减少,并且比特流可包括更少的sao参数信息。

当sao参数确定器12确定多个带群组以便对视频中包括的当前块的像素样点值进行补偿时,sao参数确定器12可将当前块确定为视频中包括的lcu。

另外,sao参数确定器12可确定指示确定的多个带群组中的每一个带群组的位置的带群组位置信息,并且可确定针对每个带群组中包括的带的偏移值。这里,由sao参数确定器12确定的每个带群组可包括至少一个带。然而,不限于此,sao参数确定器12可确定每个带群组包括至少两个相邻带。

例如,当存在n个带(其中,n可以是16或32)时,sao参数确定器12可针对m个群组中的每个群组确定k个偏移。也就是说,sao参数确定器12可确定m条起始带位置信息和m*k条偏移信息(o[0]、o[1]、…o[m*k-1]、m*k<=n)。

另外,由sao参数确定器12确定的带群组位置信息可包括指示每个带群组中包括的起始带的位置的信息。

另外,sao参数确定器12可确定两个带群组。由sao参数确定器12确定的每个带群组可包括两个带。

根据本公开的实施例的比特流产生器14可产生比特流,其中,比特流包括由sao参数确定器12确定的多个带群组的位置信息、偏移和编码的视频。这里,可对多个带群组的位置信息、偏移和编码的视频进行熵编码,并且,可产生包括被熵编码的多个带群组的位置信息、每个带群组中包括的带的偏移以及视频的比特流。

例如,当存在n个带(其中,n可以是16或32)时,sao参数确定器12可针对m个群组中的每个群组确定具有最佳率失真代价的k个偏移。也就是说,sao参数确定器12可确定m条起始带位置信息(p[0]、…、p[m])和m*k个偏移(o[0]、o[1]、…、o[m*k-1]、m*k<=n),并且比特流产生器14可对m条起始带位置信息和k个偏移进行熵编码,并且可产生包括被熵编码的m条起始带位置信息和被熵编码的k个偏移的比特流。

当带的总数是正整数n(>2),并且针对正整数n,log2n的值具有m<log2n<=m 1的值时,比特流产生器14可通过使用总共m 1个比特根据固定长度编码(flc)方案对起始带位置信息进行二值化,并且可产生包括二值化后的起始带位置信息的比特流。更详细地,当存在两条起始位置信息,并且比特流产生器14确定起始带位于第0个带和第15个带之间的范围以及第n/2 1个带和第n个带之间的范围内时,比特流产生器14可通过使用m个比特根据flc方案对多条起始带位置信息中的每一条起始带位置信息进行二值化。

当带的总数n为32时,第一带群组的起始带位置被确定为第0个带和第15个带之间的范围内的一个带,第二带群组的起始带位置可被确定为在第16个带和第31个带之间的范围内的一个带,因此,可通过使用4个比特根据flc方案来对指示每个带群组的起始带位置的信息进行二值化。当通过使用m个比特根据flc方案对两个带群组中的每个带群组的起始带的位置进行二值化时,可通过使用总共2*m个比特来执行二值化,然而,当两个带群组中的每个带群组的起始带的位置的范围被限定时,针对每个带群组的起始带位置信息的比特数可被减少1,使得通过使用总共2m-2个比特来执行二值化。因此,当这两个带群组中的每个带群组的起始带的位置的范围被限制时,这两个带群组中的每个带群组的起始带的位置可用m个比特来表示,从而与根据flc方案执行二值化的情况相比,可节省2个比特。

根据熵编码方法,可将根据本公开的实施例的sao参数分类为将根据基于上下文的熵编码而被编码的参数以及将以旁路模式被编码的参数。

基于上下文的熵编码方法可包括一系列操作,诸如用于将诸如sao参数的符号变换成比特流的二值化以及对比特流进行基于上下文的算术编码。上下文自适应二进制算术编码(cabac)被广泛用作基于上下文的算术编码方法。根据基于上下文的算术编码和解码,符号比特流的每个比特可被视为上下文的二进制位,每个比特位置可被映射到二进制位索引。比特流的长度(即,二进制位的长度)可根据符号值的大小而变化。对于基于上下文的算术编码和解码,需要对符号执行基于上下文的概率建模。

基于上下文的概率建模需要在当前符号的编码比特基于先前编码的符号被概率预测的假设下被执行。对于基于上下文的概率建模,符号比特流的每个比特位置的上下文(即,每个二进制位索引)需要被重新更新。这里,概率建模是指对在每个二进制位产生0还是1的概率进行分析的处理。可在每个块中重复通过将对新块的符号的每个比特的概率进行分析的结果反映到上下文来更新上下文的处理。如果上述概率建模被重复,则可确定将每个二进制位概率与匹配的概率模型。

因此,针对基于上下文的概率模型,可针对二值化后的当前符号的比特流的每个比特执行选择并输出与当前上下文相应的码的操作,从而执行基于上下文的熵编码。初始值以及在基于上下文的熵编码被执行之后产生的上下文索引可被发送。

针对基于上下文的熵编码来确定符号的每个二进制位的基于上下文的概率模型的操作需要大量计算和计算时间。另一方面,以旁路模式进行的熵编码包括使用不考虑符号的上下文的概率模型的熵编码操作。

现在将参照图1b来更详细地描述根据本公开的实施例的用于用信号传送sao参数的视频解码方法。

在操作11,sao编码设备10可确定多个带群组,以便对视频中包括的当前块的像素样点值进行补偿。这里,所述多个带群组可以不是连续的。

sao编码设备10可确定包括所有带之中的一些带的多个带群组,以便对视频中包括的当前块的像素样点值进行补偿。这里,所述多个带群组可不彼此相邻。

sao编码设备10可确定具有最佳率失真代价的多个带群组,使得当前块中包括的原始图像与重建图像之间的失真可被减少,并且比特流可包括更少的sao参数信息。

当sao编码设备10确定多个带群组以便对视频中包括的当前块的像素样点值进行补偿时,sao编码设备10可将当前块确定为视频中包括的lcu。

在操作13,sao编码设备10确定指示确定的带群组中的每个带群组的位置的带群组位置信息。

这里,由sao编码设备10确定的带群组中的每个带群组可包括至少一个带。

然而,不限于此,sao编码设备10可将每个带群组确定为包括至少两个相邻带。

另外,由sao编码设备10确定的带群组位置信息可包括指示每个带群组中包括的起始带的位置的信息。

另外,sao编码设备10可确定两个带群组。由sao编码设备10确定的每个带群组可包括两个带。

在操作15,sao编码设备10可确定针对每个带群组中包括的带的偏移。

在操作17,sao编码设备10可产生包括确定的多个带群组的位置信息、确定的偏移和编码的视频的比特流。这里,可对指示多个带群组中的每个带群组的位置信息、偏移和编码的视频进行熵编码,并且,可产生包括被熵编码的多个带群组的位置信息、偏移和视频的比特流。

根据本公开的实施例的sao编码设备10可包括总体控制sao参数确定器12和比特流产生器14的中央处理器(未示出)。可选地,sao参数确定器12和比特流产生器14可通过它们各自的系统地进行操作的处理器(未示出)来操作,并且因此sao编码设备10可作为整体来进行操作。可选地,可基于根据实施例的sao编码设备10的外部处理器(未示出)的控制来控制sao参数确定器12和比特流产生器14。

根据实施例的sao编码设备10可包括一个或更多个数据存储器(未示出),其中,所述一个或更多个数据存储器存储sao参数确定器12和比特流产生器14的输入数据和输出数据。sao编码设备10可包括存储器控制器(未示出),其中,存储器控制器对所述一个或更多个数据存储器(未示出)的数据输入和输出进行控制。

为了执行包括变换的视频编码操作并输出视频编码操作的结果,根据实施例的sao编码设备10可与内部或外部视频编码处理器关联地进行操作。

根据本公开的实施例的sao编码设备10的内部视频编码处理器可以是能够执行视频编码操作的独立处理器。此外,sao编码设备10、中央处理单元或图形处理单元可包括用于执行基本视频编码操作的视频编码处理器模块。

图2a和图2b分别示出根据实施例的sao解码设备的框图和sao解码方法的流程图。

根据实施例的sao解码设备20包括接收器22、sao参数确定器24和样点补偿器26。

根据实施例的sao解码设备20接收包括编码的视频数据的比特流。

sao解码设备20可从接收到的比特流解析编码的视频样点,并可对每个图像块执行熵解码、反量化、逆变换、预测和运动补偿来产生重建像素,并因此产生重建图像。

根据实施例的sao解码设备20可接收指示原始像素与重建像素之间的差值的偏移值,并且可使原始图像与重建图像之间的误差最小化。

视频解码设备20可接收视频的每个lcu的编码数据,并且可基于从每个lcu划分出并具有树结构的编码单元来重建每个lcu。

在下文中,现在将参照图2b更详细地描述重建当前lcu的样点并调整偏移的方法。

在操作21,接收器22从比特流获得针对视频中包括的当前块的多个带群组中的每个带群组的位置信息。这里,所述多个带群组可彼此不连续。

在操作23,接收器22可从比特流获得针对每个带群组中包括的带的偏移。

接收器22从接收到的比特流获得当前lcu的sao参数。

对此,sao参数可包括当前lcu的sao类型、偏移值和sao种类。这里,根据sao类型,sao种类可包括带群组的位置信息或边缘方向信息。

在下文中,在操作25,假设sao类型是带类型。

在操作25,sao参数确定器24可基于多个带群组中的每个带群组的位置信息确定多个带群组以便对当前块的样点值进行补偿。这里,所述多个带群组可以不是连续的。

另外,sao参数确定器24可从比特流获得针对每个带群组中包括的带的偏移信息,并且可基于获得的偏移信息来确定针对每个带群组中包括的带的偏移。

这里,由sao编码设备10确定的每个带群组可包括至少一个带。

在操作27,样点补偿器26可通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿。

sao参数确定器24可基于由接收器22确定的sao类型来确定当前lcu的像素值分类方法是边缘类型还是带类型。基于sao类型,可确定关闭(off)类型、边缘类型或带类型。如果sao类型是关闭类型,则可确定偏移调整操作不被应用于当前lcu。在此情况下,不需要解析当前lcu的其它偏移参数。

sao参数确定器24可基于由接收器22确定的sao种类来确定当前lcu的根据边缘类型的基于边缘方向的带范围或根据带类型的带范围。

sao参数确定器24可基于由接收器22确定的偏移值来确定在以上确定的sao种类中包括的原始像素与重建像素之间的差值。

例如,sao参数确定器24可通过使用如以下表1中示出的多个带群组的位置信息和偏移值来确定将被应用于重建像素的带偏移。虽然它们在这里被称为带偏移,但是它们也可被称为区间偏移。

[表1]

参照表1,当存在n个带时,sao参数确定器24通过使用m条起始带位置信息和m*k个偏移值(o[0]、o[1]、…、o[m*k-1],m*k<=n)来确定m条起始带位置信息(p[0]、p[1]、p[2]、…、p[m-1])和n个带偏移。更详细地,sao参数确定器24可将所有带偏移值初始化为0(bo[0]=bo[1]=bo[n-1]=0),然后可确定m个带群组中包括的带的值(bo[p[m] k]),如表1中所示。这里,对从比特流获得的m条起始带位置信息和m*k个偏移值进行解析,并且可通过使用解析出的m条起始带位置信息和解析出的m*k个偏移值来确定针对m个带群组中包括的带的偏移值。

例如,当n=32,m=2,k=2时,sao编码设备10将与存在总共32个带的带类型之中的两个带群组有关的起始带位置信息、以及两个带群组中的每个带群组中包括的两个带的偏移值信息包括在比特流中,并发送比特流。

sao解码设备20可从比特流解析与存在总共32个带的带类型之中的两个带群组有关的起始带位置信息、以及两个带群组中的每个带群组中包括的带的偏移值信息,并且可基于解析出的关于两个带群组的起始带位置信息和解析出的两个带群组中的每个带群组中包括的带的偏移值信息来确定带偏移。在操作25,样点补偿器26可将基于从当前lcu划分出的并具有树结构的编码单元而重建的样点的像素值调整由sao参数确定器24确定的差值。根据实施例的sao解码设备20可包括总体控制接收器22、sao参数确定器24和样点补偿器26的中央处理器(未示出)。可选地,接收器22、sao参数确定器24和样点补偿器26可通过它们各自的系统地进行操作的处理器(未示出)来操作,并且因此sao解码设备20可作为整体来进行操作。可选地,可基于根据实施例的sao解码设备20的外部处理器(未示出)的控制来控制接收器22、sao参数确定器23和样点补偿器26。

根据实施例的sao解码设备20可包括一个或更多个数据存储器(未示出),其中,所述一个或更多个数据存储器存储接收器22、sao参数确定器24和样点补偿器26的输入数据和输出数据。sao解码设备20可包括存储器控制器(未示出),其中,存储器控制器对所述一个或更多个数据存储器(未示出)的数据输入和输出进行控制。

为了执行视频解码操作来重建视频,根据实施例的sao解码设备20可与内部或外部视频解码处理器关联地进行操作。根据实施例的sao解码设备20的内部视频解码处理器可以是能够执行基本视频解码操作的独立处理器。此外,sao解码设备20、中央处理单元或图形处理单元可包括用于执行基本视频解码操作的视频解码处理器模块。

在下文中,参照图3,现在将详细描述使用sao的视频解码操作。图3示出了根据实施例的视频解码设备的框图。

视频解码设备30包括熵解码器31、反量化器32、逆变换器33、重建器34、帧内预测器35、参考画面缓冲器36、运动补偿器37、去块滤波器38和sao单元39。

视频解码设备30可接收包括编码的视频数据的比特流。熵解码器31可从接收到的比特流解析帧内模式信息、帧间模式信息、sao信息和残差。

由熵解码器31重建的残差数据可以是量化后的变换系数。因此,反量化器32可对残差数据执行反量化以重建变换系数,逆变换器33可对重建的变换域的重建系数执行逆变换,并因此可重建空间域的残差值。

为了预测和重建空间域的残差值,可执行帧内预测或运动补偿。

如果熵解码器31提取到帧内模式信息,则帧内预测器35可通过使用帧内模式信息,在与当前样点空间上邻近的样点之中确定将被参考以用于重建当前样点的参考样点。可从由重建器34先前重建的样点之中选择参考样点。

重建器34可通过使用基于帧内模式信息确定的参考样点和由逆变换器33重建的残差值来重建当前样点。

如果熵解码器31提取到帧间模式信息,则运动补偿器37可通过使用帧间模式信息,从在当前画面之前被重建的画面之中确定将被参考以用于重建当前画面的当前样点的参考画面。帧间模式信息可包括运动矢量、参考索引等。通过使用参考索引,从在当前画面之前被重建的并存储在参考画面缓冲器36中的画面之中,可确定将用于对当前样点执行运动补偿的参考画面。通过使用运动矢量,可确定参考画面之中的将用于对当前块执行运动补偿的参考块。重建器34可通过使用基于帧间模式信息确定的参考块和由逆变换器33重建的残差值来重建当前样点。

重建器34可重建样点,并可输出重建后的像素。重建器34可基于具有树结构的编码单元产生每个lcu的重建像素。

去块滤波器38可执行滤波以减轻位于lcu或具有树结构的编码单元中的每个编码单元的边缘区域处的像素的块现象。

此外,sao单元39可根据sao方案来调整每个lcu的重建像素的偏移。sao单元39可基于由熵解码器31提取的sao信息来确定当前lcu的sao类型、sao种类和偏移值。

由熵解码器31从sao信息提取sao参数的操作可与sao解码设备20的接收器22的操作相应,sao单元39的操作可与sao解码设备20的sao参数确定器24和样点补偿器26的操作相应。

sao单元39可基于sao偏移值,确定针对当前lcu的重建像素的偏移值的符号和差值。sao单元39可通过使重建像素的像素值增大或减小基于偏移值确定的差值,来减小重建像素和原始像素之间的误差。

可将包括由sao单元39进行偏移调整后的重建像素的画面存储在参考画面缓冲器36中。因此,通过使用根据sao操作而在重建样点和原始像素之间具有最小化的误差的参考画面,可对下一画面执行运动补偿。

根据sao方案,基于重建像素和原始像素之间的差值,可确定包括重建像素的像素组的偏移。对于sao方案,现在将详细描述用于将重建像素分类为像素组的实施例。

根据sao方案,可基于(i)重建像素的边缘类型或(ii)重建像素的带类型对像素进行分类。可根据sao类型来定义是基于边缘类型还是基于带类型对像素进行分类。

根据sao方案基于边缘类型对像素进行分类的实施例对于本领域普通技术人员来说是显而易见的,因此在此不提供其详细描述。

以下,将参照图4详细描述根据sao方案基于带类型对像素进行分类的实施例。

图4示出用于描述根据本公开的实施例的确定在被执行样点调整的带类型下的连续带的(确定一个带群组的)处理的示图。

当确定像素根据重建像素的带类型被分类时,sao解码设备20可将重建像素分类为具有相似值的带。sao解码设备20可从比特流获得带偏移信息,并且当带偏移根据获得的带偏移信息被确定时,sao解码设备20可通过根据每个带添加带偏移来使重建图像与原始图像之间的差减小。更详细地讲,根据本公开的实施例,重建像素的像素值中的每个像素值可属于多个带之一。例如,根据p比特采样,像素值可具有从最小值min0到最大值max2^(p-1)的总范围。如果像素值的总范围(min,max)被划分为k个区间,则可将像素值的每个区间称为带。如果bk指示第k个带的最大值,则可划分出带[b0,b1-1]、[b1,b2-1]、[b2,b3-1]…和[bk-1,bk]。如果当前重建像素rec(x,y)的像素值属于带[bk-1,bk],则当前带可被确定为k。可均匀或非均匀地来划分带。

例如,参照图4,如果像素值被分类为均等的8比特像素的带,则像素值可被划分为32个带。更详细地讲,像素值可被分类为带[0,7]、[8,15]、…、[240,247]和[248,255]。

在根据带类型被分类的多个带之中,可确定重建像素的像素值中的每个像素值所属的带。此外,可确定这样的偏移值:该偏移值指示在每个带中的原始像素和重建像素之间的误差的平均值。对此,不针对每个带确定偏移值,而是按照以下方式来确定偏移值:可确定当前lcu中包括的像素之中的多少个像素属于每个带,并且然后可确定与具有大量像素的带相邻的带的偏移值。例如,参照图4,可基于每个带的样点44的数量来确定带群组41,并且可确定在确定的带群组41中包括的带的偏移值。然而,不限于此,通过使用各种方法在所有带之中确定一些带以使率失真代价最小化,并且可将由于小的率失真代价而被确定的一些带最终确定为用于调整重建像素值的带。

因此,sao编码设备10和sao解码设备20可对与根据当前带类型被分类的每个带相应的偏移进行编码和收发,并可将重建像素调整所述偏移。

因此,针对带类型,根据实施例的sao编码设备10和sao解码设备20可根据重建像素的像素值所属的带对重建像素进行分类,可将偏移确定为属于同一带的重建像素的误差值的平均值,并可将重建像素调整所述偏移,从而使原始图像和重建图像之间的误差最小化。

当根据带类型的偏移被确定时,根据实施例的sao编码设备10和sao解码设备20可根据带位置将重建像素分类为多个类别。例如,如果像素值的总范围被划分为k个带,则可根据指示第k个带的带索引k对类别编制索引。类别的数量可被确定为与带的数量相应。

然而,为了减少数据量,sao编码设备10和sao解码设备20可限制被用于根据sao方案确定偏移的类别的数量。例如,可将在带索引增加的方向上从具有预定起始位置的带开始的连续的预定数量的带分配为多个类别,并且可仅确定每个类别的偏移。

例如,如果索引为12的带88-95被确定为起始带,则从起始带开始的四个带(即,索引为12、13、14和15的带)可被分配为类别1、2、3和4。因此,可将包括在索引为12的带中的重建像素和原始像素之间的平均误差确定为类别1的偏移o1。类似地,可将包括在索引为13的带96-103中的重建像素和原始像素之间的平均误差确定为类别2的偏移o2,可将包括在索引为14的带104-111中的重建像素和原始像素之间的平均误差确定为类别3的偏移o3,并可将包括在索引为15的带112-119中的重建像素和原始像素之间的平均误差确定为类别4的偏移o4。

在此情况下,需要关于带范围起始位置(即,左侧带位置)的信息来确定被分配为多个类别的多个带的位置。因此,根据实施例的sao编码设备10可对指示左侧带的位置的左侧起始点信息进行编码,并将其作为sao种类发送。例如,参照图4,sao编码设备10可对指示带群组41的左侧起始带42的信息p1进行编码,并发送信息p1。

sao编码设备10可对指示带类型的sao类型、sao种类和根据类别的偏移值进行编码,并发送指示带类型的sao类型、sao种类和根据类别的偏移值。例如,参照图4,可对分别指示带群组41的带的偏移值43的多条信息o1、o2、o3和o4进行编码,并发送信息o1、o2、o3和o4。根据实施例的sao解码设备20可接收sao类型、sao种类和根据类别的偏移值。如果接收到的sao类型是带类型,则sao解码设备20可从sao种类读取起始带位置。sao解码设备20可在从起始带开始的四个带之中确定重建像素所属的带,可在根据类别的偏移值之中确定被分配给当前带的偏移值,并可将重建像素的像素值调整该偏移值。

图5示出用于描述根据本公开的另一实施例的确定在被执行样点调整的带类型下的非连续带的(确定多个带群组的)处理的示图。

参照图5,当根据本公开的实施例的sao编码设备10和sao解码设备20限制在根据sao技术确定偏移时使用的类别的数量时,不连续且彼此分离的预定数量的带按照被分别分配为多个类别,可针对多个类别中的每个类别确定偏移。例如,参照图5,可基于每个带的样点数量56来确定多个带群组51,并且,可确定包括在确定的多个带群组51中的带的偏移值。

例如,如果索引为5的带32-39和索引为22的带168-175分别被确定为带群组的起始带,从每个带群组的起始带开始的两个带(即,索引为5、6、22和23的带)可分别被分配为类别1、2、3和4。因此,可将包括在索引为5的带32-39中的重建像素与原始像素之间的平均误差确定为类别1的偏移o1。类似地,可将包括在索引为6的带40-47中的重建像素和原始像素之间的平均误差确定为类别2的偏移o2,可将包括在索引为22的带168-175中的重建像素和原始像素之间的平均误差确定为类别3的偏移o3,并可将包括在索引为23的带176-183中的重建像素和原始像素之间的平均误差确定为类别4的偏移o4。

在此情况下,需要关于多个带群组开始的位置的信息(即,关于每个带群组中包括的左侧带的位置的信息)来确定被分配为多个类别的多个带群组的位置。因此,根据实施例的sao编码设备10可对指示左侧带的位置的左侧起始点信息进行编码,并将指示左侧带的位置的左侧起始点信息作为sao种类发送。例如,sao编码设备10可对作为每个带群组的左侧起始点信息的索引5和22进行编码,并发送索引5和22,并且不需要对所有带的索引进行编码。

sao编码设备10可发送每个带群组中包括的每个带的偏移。例如,参照图5,sao编码设备10可发送指示第一和第二带群组51中包括的带的偏移值53和55的多条信息o1、o2、o3和o4。

例如,参照图5,在一个带群组中所包括的索引为5的带和索引为6的带的偏移值o1和o2可在没有索引的情况下被发送,在另一带群组中所包括的索引为22的带以及索引为23的带的偏移值o3和o4可在没有索引的情况下被发送。当每个带群组中包括的带的偏移值被发送时,偏移值可按照带群组的顺序被顺序地发送。

按照此方式,sao编码设备10可对指示带类型的sao类型、sao种类以及多个类别的多个偏移值进行编码,并发送指示带类型的sao类型、sao种类以及多个类别的多个偏移值。

根据实施例的sao解码设备20可接收sao类型、sao种类以及多个类别的多个偏移值。

当接收到的sao类型是带类型时,sao解码设备20可从sao类别读取起始带的位置。

例如,参照图4,sao解码设备20可确定重建像素属于带群组41之中的从起始带开始的哪个带,可在多个类别的多个偏移值之中确定被分配给当前带的偏移值,并且可将重建像素值调整该偏移值。

参照图5,当接收到的sao类型是带类型时,sao解码设备20可从sao种类读取多个非连续带群组的位置。

例如,sao解码设备20从分别指示带群组的起始带52和54(p1、p2)的信息,基于预先确定的每个带群组的带的数量,确定多个带群组51,并确定重建像素属于每个带群组的带之中的哪个带。sao解码设备20可在多个类别的多个偏移值之中确定被分配给当前带的偏移值,并且可将重建像素调整该偏移值。在下文中,现在将详细地描述由sao编码设备10和sao解码设备20编码和收发的sao参数。

根据实施例的sao编码设备10和sao解码设备20可根据每个lcu的重建像素的像素分类方案来确定sao类型。

可根据每个块的图像特征来确定sao类型。例如,针对包括垂直边缘、水平边缘和对角边缘的lcu,为了改变边缘值,可通过根据边缘类型对像素值进行分类来确定偏移值。针对不包括边缘区域的lcu,可根据带分类来确定偏移值。因此,sao编码设备10和sao解码设备20可用信号传送针对每个lcu的sao类型。

根据实施例的sao编码设备10和sao解码设备20可针对每个lcu确定sao参数。也就是说,可确定lcu的重建像素的sao类型,可将lcu的重建像素分类为多个类别,并可根据类别来确定偏移值。

在包括在lcu中的重建像素之中,sao编码设备10可将被分类为同一类别的重建像素的平均误差确定为偏移值。可确定每个类别的偏移值。

根据实施例,sao参数可包括sao类型、偏移值和sao种类。sao编码设备10和sao解码设备20可对针对每个lcu确定的sao参数进行收发。

在lcu的sao参数之中,根据实施例的sao编码设备10可对sao类型和偏移值进行编码,并发送sao类型和偏移值。如果sao类型是边缘类型,则根据实施例的sao编码设备10还可发送指示边缘方向的sao种类,其中,sao类型和根据类别的偏移值位于sao种类之后。如果sao类型是带类型,则根据实施例的sao编码设备10还可发送指示起始带位置的sao种类,其中,sao类型和根据类别的偏移值位于sao种类之后。

具体地,如果sao类型是带类型,则sao编码设备10可发送指示多个非连续带群组的起始带的位置的sao种类。这里,当sao类型是带类型时,sao编码设备10可发送指示每个带群组的起始带的位置的sao种类。然而,sao编码设备10不限于发送每个带群组的起始带的位置,并且可发送指示每个带群组的绝对位置的信息。当sao编码设备10发送指示多个带群组的位置的sao种类时,sao编码设备10不限于发送每个带群组的起始带的绝对位置,并且可发送指示在带群组之中的相对位置的sao种类。

如果sao类型是边缘类型,则sao种类可被分类为边缘种类信息。如果sao类型是带类型,则sao种类可被分类为带位置信息。

根据实施例的sao解码设备20可接收每个lcu的sao参数,其中,sao参数包括sao类型、偏移值和sao种类。此外,根据实施例的sao解码设备20可从根据多个类别的多个偏移值之中选择每个重建像素所属的类别的偏移值,并将重建像素调整选择的偏移值。例如,sao解码设备20可将选择的偏移值与每个重建像素相加,并且可对其执行裁剪。裁剪表示这样的处理:如果某个值位于预定范围内,则该值能够被不改变地输出,如果某个值超出了所述预定范围,则该值不会被不改变地输出,位于所述预定范围内的作为该某个值的近似值的值被输出。现在将描述对sao参数之中的偏移值进行收发的实施例。

为了发送偏移值,根据实施例的sao编码设备10还可发送符号信息和剩余的偏移绝对值。

如果绝对偏移值为0,则不需要对符号信息或剩余的偏移值进行编码。然而,如果绝对偏移值不为0,则还可发送符号信息和剩余的偏移值。

然而,如以上所描述的,针对边缘类型,由于可根据类别将偏移值预测为正数或负数,因此不需要发送符号信息。然而,如果sao类型是带类型,则不能根据类别将偏移值预测为整数或负数,因此还可发送符号信息。

根据实施例,在确定偏移值off-set之前,可将偏移值off-set预先限制在从最小值minoffset到最大值maxoffset的范围内(minoffset≤off-set≤maxoffset)。

例如,针对边缘类型,可将类别1和2的重建像素的偏移值确定在从最小值0到最大值7的范围内。针对边缘类型,可将类别3和4的重建像素的偏移值确定在从最小值-7到最大值0的范围内。

例如,针对带类型,可将所有类别的重建像素的偏移值确定在从最小值-7到最大值7的范围内。

为了减小偏移值的传输比特,可将剩余的偏移值限制为p比特值,而不是负数。在此情况下,剩余的偏移值可大于或等于0并可小于或等于最大值和最小值之间的差值(0≤剩余的偏移值≤maxoffset-minoffset 1≤2^p)。如果sao编码设备10发送剩余的偏移值,并且sao解码设备20可知道偏移值的最大值和最小值中的至少一个,则可通过仅使用接收到的偏移值的剩余部分来重建原始偏移值。

图6是用于描述根据本公开的实施例的当sao类型是带类型时确定sao参数的处理的示图。

参照图6,在操作61,sao解码设备20确定当前块的sao类型是否是带偏移(bo)类型。

在操作62,如果当前块的sao类型是bo类型,则sao解码设备20从接收到的比特流解析关于每个带群组中包括的带的偏移值信息。

在操作63,sao解码设备20从接收到的比特流解析每个带群组的起始带位置信息和非零偏移的符号信息。

在操作64,sao解码设备20针对当前块中包括的当前像素的位置确定带。

在操作65,sao解码设备20将与当前像素所属的带相应的偏移值与当前像素相加,并执行裁剪。

在操作66,sao解码设备20确定当前处理的像素是否是当前块中的最后一个像素。

在操作67,如果当前处理的像素不是当前块中的最后一个像素,则sao解码设备20可移动到当前块中的下一像素,并且可对作为新的当前像素的所述下一像素执行操作64、65和66。

在根据实施例的sao编码设备10和根据实施例的sao解码设备20中,如上所述,视频数据可被划分为lcu,每个lcu可基于具有树结构的编码单元被编码和解码,每个lcu可根据像素类别确定偏移值。在下文中,参照图7至图26,将描述在根据各种实施例的基于具有树结构的编码单元的视频编码方法和视频解码方法中使用根据像素类别的sao调整的实施例。

图7示出根据本公开的实施例的基于树结构的编码单元的视频编码设备100的框图。

涉及基于树结构的编码单元的视频预测的视频编码设备100包括lcu划分器110、编码单元确定器120和输出单元130。在下文中,为了便于描述,涉及基于树结构的编码单元的视频编码设备100被称为“视频编码设备100”。

lcu划分器110可基于图像的当前画面的lcu来划分当前画面,其中,lcu是具有最大尺寸的编码单元。如果当前画面大于lcu,则可将当前画面的图像数据划分为至少一个lcu。根据实施例的lcu可以是尺寸为32×32、64×64、128×128、256×256等的数据单元,其中,数据单元的形状是宽度和长度为2的若干次方的正方形。图像数据可根据至少一个lcu被输出到编码单元确定器120。

根据实施例的编码单元可由最大尺寸和深度表征。深度表示编码单元从lcu被空间划分的次数,并且随着深度加深,根据深度的较深层编码单元可从lcu被划分到最小编码单元。最大编码单元的深度可被定义为最高深度,最小编码单元的深度可被定义为最低深度。由于随着lcu的深度加深,与每个深度相应的编码单元的尺寸减小,因此与更高深度相应的编码单元可包括多个与更低深度相应的编码单元。

如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为lcu,并且每个lcu可包括根据深度被划分的较深层编码单元。由于根据深度对根据实施例的lcu进行划分,因此可根据深度对包括在lcu中的空间域的图像数据进行分层分类。

可预先确定编码单元的最大深度和最大尺寸,其中,所述最大深度和最大尺寸限制lcu的高度和宽度被分层划分的总次数。

编码单元确定器120对通过根据深度对lcu的区域进行划分而获得的至少一个划分区域进行编码,并且根据所述至少一个划分区域来确定用于输出最终编码结果的深度。换言之,编码单元确定器120通过根据当前画面的lcu以根据深度的较深层编码单元对图像数据进行编码,并选择具有最小编码误差的深度,来确定深度。将确定的深度和根据lcu的图像数据输出到输出单元130。

基于与等于或低于最大深度的至少一个深度相应的较深层编码单元,对lcu中的图像数据进行编码,并且对基于每个较深层编码单元对图像数据进行编码的结果进行比较。在对较深层编码单元的编码误差进行比较之后,可选择具有最小编码误差的深度。可针对每个lcu选择至少一个深度。

随着编码单元根据深度而被分层地划分以及随着编码单元的数量增加,lcu的尺寸被划分。另外,即使在一个lcu中编码单元与同一深度相应,仍通过分别测量每个编码单元的图像数据的编码误差来确定是否将与同一深度相应的每个编码单元划分到更低深度。因此,即使当图像数据被包括在一个lcu中时,编码误差仍可根据所述一个lcu中的区域而不同,因此深度可根据图像数据中的区域而不同。因此,可在一个lcu中确定一个或更多个深度,并且可根据至少一个深度的编码单元来对lcu的图像数据进行划分。

因此,根据实施例的编码单元确定器120可确定包括在lcu中的具有树结构的编码单元。根据实施例的“具有树结构的编码单元”包括当前lcu中包括的所有较深层编码单元中的与确定为深度的深度相应的编码单元。可根据lcu的同一区域中的深度来分层地确定深度的编码单元,并可在不同区域中独立地确定深度的编码单元。类似地,可独立于另一区域中的深度而确定当前区域中的深度。

根据实施例的最大深度是与从lcu到最小编码单元的划分次数相关的索引。根据实施例的第一最大深度可表示从lcu到最小编码单元的总划分次数。根据实施例的第二最大深度可表示从lcu到最小编码单元的深度等级的总数。例如,当lcu的深度是0时,对lcu划分一次的编码单元的深度可被设置为1,对lcu划分两次的编码单元的深度可被设置为2。这里,如果最小编码单元是lcu被划分四次的编码单元,则存在深度0、1、2、3和4的深度等级,并因此第一最大深度可被设置为4,第二最大深度可被设置为5。

可根据lcu执行预测编码和变换。根据lcu,还基于根据等于最大深度的深度或小于最大深度的深度的较深层编码单元来执行预测编码和变换。

由于每当根据深度对lcu进行划分时,较深层编码单元的数量增加,因此对随着深度加深而产生的所有较深层编码单元执行包括预测编码和变换的编码。在下文中,为了便于描述,在至少一个lcu中,将基于当前深度的编码单元来描述预测编码和变换。

根据实施例的视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,此时,可针对所有操作使用相同的数据单元,或者可针对每个操作使用不同的数据单元。

例如,视频编码设备100不仅可选择用于对图像数据进行编码的编码单元,还可选择不同于编码单元的数据单元,以便对编码单元中的图像数据执行预测编码。

为了在lcu中执行预测编码,可基于深度的编码单元(即,基于不再被划分的编码单元)来执行预测编码。以下,不再被划分且成为用于预测编码的基本单元的编码单元现在将被称为“预测单元”。通过划分预测单元而获取的分区可包括预测单元或通过对预测单元的高度和宽度中选择的至少一个进行划分而获得的数据单元。分区是编码单元的预测单元被划分的数据单元,并且预测单元可以是具有与编码单元相同的尺寸的分区。

例如,当2n×2n(其中,n是正整数)的编码单元不再被划分并且成为2n×2n的预测单元时,分区的尺寸可以是2n×2n、2n×n、n×2n或n×n。分区模式的示例可选择性地包括通过对预测单元的高度或宽度进行对称地划分而获取的对称分区、通过对预测单元的高度或宽度进行非对称地划分(诸如,1:n或n:1)而获取的分区、通过对预测单元进行几何地划分而获取的分区、以及具有任意形状的分区。

预测单元的预测模式可以是帧内模式、帧间模式和跳过模式中的至少一个。例如,可对2n×2n、2n×n、n×2n或n×n的分区执行帧内模式和帧间模式。另外,可仅对2n×2n的分区执行跳过模式。可对编码单元中的一个预测单元独立地执行编码,从而选择具有最小编码误差的预测模式。

根据实施例的视频编码设备100不仅可基于用于对图像数据进行编码的编码单元还可基于与编码单元不同的数据单元,来对编码单元中的图像数据执行变换。为了在编码单元中执行变换,可基于具有小于或等于编码单元的尺寸的数据单元来执行变换。例如,变换单元可包括用于帧内模式的数据单元和用于帧间模式的数据单元。

以与根据树结构的编码单元类似的方式,编码单元中的变换单元可被递归地划分为更小尺寸的区域,因此,可基于根据变换深度的具有树结构的变换单元,对编码单元中的残差数据进行划分。

还可在变换单元中设置变换深度,其中,变换深度指示通过对编码单元的高度和宽度进行划分而达到变换单元的划分次数。例如,在2n×2n的当前编码单元中,当变换单元的尺寸是2n×2n时,变换深度可以是0,当变换单元的尺寸是n×n时,变换深度可以是1,当变换单元的尺寸是n/2×n/2时,变换深度可以是2。也就是说,针对变换单元,可根据变换深度设置具有树结构的变换单元。

根据深度的编码信息不仅要求关于深度的信息,还要求与预测和变换相关的信息。因此,编码单元确定器120不仅可确定产生最小编码误差的深度,还可确定预测单元被划分成分区的分区模式、根据预测单元的预测模式以及用于变换的变换单元的尺寸。

随后将参照图7至图19详细描述根据实施例的lcu中的根据树结构的编码单元以及确定预测单元/分区和变换单元的方法。

编码单元确定器120可通过使用基于拉格朗日乘数的率失真优化来测量根据深度的较深层编码单元的编码误差。

输出单元130在比特流中输出lcu的图像数据和根据深度的编码模式信息,其中,所述lcu的图像数据基于由编码单元确定器120确定的至少一个深度而被编码。

编码的图像数据可与通过对图像的残差数据进行编码而获取的结果相应。

根据深度的编码模式信息可包括深度信息、预测单元的分区模式信息、预测模式信息和变换单元的尺寸信息。

可通过使用根据深度的划分信息来定义深度信息,其中,根据深度的划分信息指定是否对更低深度而不是当前深度的编码单元执行编码。如果当前编码单元的当前深度是深度,则通过使用当前深度的编码单元来对当前编码单元进行编码,因此可将当前深度的划分信息定义为不将当前编码单元划分到更低深度。相反地,如果当前编码单元的当前深度不是深度,则必须对更低深度的编码单元执行编码,并因此可将当前深度的划分信息定义为将当前编码单元划分到更低深度的编码单元。

如果当前深度不是深度,则对被划分成更低深度的编码单元的编码单元执行编码。由于更低深度的至少一个编码单元存在于当前深度的一个编码单元中,因此对更低深度的每个编码单元重复执行编码,并因此可对具有相同深度的编码单元递归地执行编码。

由于针对一个lcu确定树结构的编码单元,并且针对深度的编码单元必须确定至少一条编码模式信息,因此可针对一个lcu确定至少一条编码模式信息。另外,由于根据深度对数据进行分层划分,因此lcu的数据的深度可根据位置而不同,因此可针对数据设置划分信息。

因此,根据实施例的输出单元130可将划分信息分配给包括在lcu中的编码单元、预测单元和最小单元中的至少一个。

根据实施例的最小单元是通过将构成最低深度的最小编码单元划分为4份而获取的正方形数据单元。可选择地,根据实施例的最小单元可以是可包括在lcu中所包括的所有编码单元、预测单元、分区单元和变换单元中的最大正方形数据单元。

例如,通过输出单元130输出的编码信息可被分类为根据较深层编码单元的编码信息和根据预测单元的编码信息。根据较深层编码单元的编码信息可包括关于预测模式的信息和关于分区尺寸的信息。根据预测单元的编码信息可包括关于帧间模式期间的估计方向的信息、关于帧间模式的参考图像索引的信息、关于运动矢量的信息、关于帧内模式的色度分量的信息、以及关于帧内模式期间的插值方法的信息。

关于根据画面、条带或gop定义的编码单元的最大尺寸的信息和关于最大深度的信息可被插入到比特流的头、序列参数集或画面参数集中。

还可通过比特流的头、序列参数集或画面参数集来输出关于针对当前视频允许的变换单元的最大尺寸的信息、以及关于变换单元的最小尺寸的信息。输出单元130可对与以上参照图1a至图14描述的sao参数编码方法相关的sao参数进行编码并输出sao参数。

根据视频编码设备100的最简单实施例,较深层编码单元可以是通过将更高深度的编码单元(更高一层)的高度或宽度划分成两份而获取的编码单元。换言之,当当前深度的编码单元的尺寸是2n×2n时,更低深度的编码单元的尺寸是n×n。另外,尺寸为2n×2n的当前编码单元可最多包括四个尺寸为n×n的更低深度编码单元。

因此,视频编码设备100可基于考虑当前画面的特征而确定的lcu的尺寸和最大深度,通过针对每个lcu确定具有最优形状和最优尺寸的编码单元来形成具有树结构的编码单元。另外,由于可通过使用各种预测模式和变换中的任意一个对每个lcu执行编码,因此可考虑各种图像尺寸的编码单元的特征来确定最优编码模式。

因此,如果以传统宏块对具有高分辨率或大数据量的图像进行编码,则每个画面的宏块的数量极度增加。因此,针对每个宏块产生的压缩信息的条数增加,因此难以发送压缩的信息,并且数据压缩效率降低。然而,通过使用根据实施例的视频编码设备,由于在考虑图像的尺寸的同时增加编码单元的最大尺寸,并同时在考虑图像的特征的同时调整编码单元,因此可提高图像压缩效率。

图7的视频编码设备100可执行以上参照图1a至图6描述的sao编码设备10的操作。

图8示出根据本公开的实施例的基于树结构的编码单元的视频解码设备200的框图。

涉及基于树结构的编码单元的视频预测的视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。在下文中,为了便于描述,根据实施例的涉及基于树结构的编码单元的视频预测的视频解码设备200可被称为“视频解码设备200”。

用于由根据实施例的视频解码设备200进行的解码操作的各种术语(诸如编码单元、深度、预测单元、变换单元和关于各种编码模式的信息)的定义与参照图15和视频编码设备100描述的定义相同。

接收器210接收和解析编码视频的比特流。图像数据和编码信息提取器220从解析的比特流,针对每个编码单元提取编码的图像数据,并将提取的图像数据输出到图像数据解码器230,其中,编码单元具有根据每个lcu的树结构。图像数据和编码信息提取器220可从关于当前画面的头、序列参数集或画面参数集提取关于当前画面的编码单元的最大尺寸的信息。

另外,图像数据和编码信息提取器220从解析的比特流,根据每个lcu,提取关于具有树结构的编码单元的划分信息和编码信息。提取的划分信息和提取的编码信息被输出到图像数据解码器230。也就是说,比特流中的图像数据被划分为lcu,使得图像数据解码器230针对每个lcu对图像数据进行解码。

可针对一条或更多条划分信息设置根据每个lcu的划分信息和编码信息,根据深度的编码信息可包括相应编码单元的分区模式信息、预测模式信息和变换单元的划分信息。另外,根据深度的划分信息可被提取,作为最终深度信息。

由图像数据和编码信息提取器220提取的根据每个lcu的划分信息和编码信息是这样的划分信息和编码信息:该划分信息和编码信息被确定为在编码器(诸如,视频编码设备100)根据每个lcu对根据深度的每个较深层编码单元重复地执行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的编码方法对数据进行解码来重建图像。

由于根据实施例的划分信息和编码信息可被分配给相应的编码单元、预测单元和最小单元中的预定数据单元,因此图像数据和编码信息提取器220可根据预定数据单元,提取划分信息和编码信息。如果相应lcu的划分信息和编码信息根据每个预定数据单元被记录,则可将具有相同深度和划分信息的预定数据单元推断为是包括在同一lcu中的数据单元。

图像数据解码器230基于根据每个lcu的划分信息和编码信息,通过对每个lcu中的图像数据进行解码来重建当前画面。也就是说,图像数据解码器230可基于针对包括在每个lcu中的具有树结构的编码单元之中的每个编码单元的读取的分区模式、预测模式和变换单元,对编码的图像数据进行解码。解码处理可包括预测处理(包含帧内预测和运动补偿)和逆变换处理。

图像数据解码器230可基于关于根据深度的编码单元的预测单元的分区类型和预测模式的信息,根据每个编码单元的分区和预测模式,执行帧内预测或运动补偿。

此外,为了对每个lcu进行逆变换,图像数据解码器230可针对每个编码单元读取关于根据树结构的变换单元的信息,以基于每个编码单元的变换单元来执行逆变换。由于逆变换,可重建编码单元的空间域的像素值。

图像数据解码器230可通过使用根据深度的划分信息来确定当前lcu的最终深度。如果划分信息指定图像数据在当前深度下不再被划分,则当前深度是最终深度。因此,图像数据解码器230可通过使用关于针对与当前深度相应的每个编码单元的预测单元的分区模式、预测模式和变换单元的划分信息的信息,对当前lcu的图像数据进行解码。

也就是说,可通过观察被分配给编码单元、预测单元和最小单元中的预定数据单元的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,并且收集的数据单元可被认为是将由图像数据解码器230以相同编码模式进行解码的一个数据单元。这样,可通过获取关于针对每个编码单元的编码模式的信息来对当前编码单元进行解码。

另外,图8的视频解码设备200可执行以上参照图2a描述的sao解码设备20的操作。

图9示出根据各种实施例的编码单元的概念。

编码单元的尺寸可被表示为宽度×高度,并且可以是64×64、32×32、16×16和8×8。64×64的编码单元可被划分为64×64、64×32、32×64或32×32的分区,32×32的编码单元可被划分为32×32、32×16、16×32或16×16的分区,16×16的编码单元可被划分为16×16、16×8、8×16或8×8的分区,8×8的编码单元可被划分为8×8、8×4、4×8或4×4的分区。

在视频数据310中,分辨率为1920×1080,编码单元的最大尺寸为64,最大深度为2。在视频数据320中,分辨率为1920×1080,编码单元的最大尺寸为64,最大深度为3。在视频数据330中,分辨率为352×288,编码单元的最大尺寸为16,最大深度为1。图17中示出的最大深度表示从lcu到最小编码单元的划分总次数。

如果分辨率高或数据量大,则优选的是编码单元的最大尺寸较大,从而不仅提高编码效率,而且准确地反映图像的特征。因此,具有比视频数据330更高的分辨率的视频数据310和320的编码单元的最大尺寸可被选为64。

由于视频数据310的最大深度是2,因此由于通过对lcu划分两次,深度加深至两层,因此视频数据310的编码单元315可包括长轴尺寸为64的lcu和长轴尺寸为32和16的编码单元。另一方面,由于视频数据330的最大深度是1,因此由于通过对lcu划分一次,深度加深至一层,因此视频数据330的编码单元335可包括长轴尺寸为16的lcu和长轴尺寸为8的编码单元。

由于视频数据320的最大深度是3,因此由于通过对lcu划分三次,深度加深至3层,因此视频数据320的编码单元325可包括长轴尺寸为64的lcu和长轴尺寸为32、16和8的编码单元。随着深度加深,可提高针对详细信息的表达能力。

图10示出根据各种实施例的基于编码单元的图像编码器400的框图。

根据实施例的图像编码器400执行视频编码设备100的画面编码器120的操作以便对图像数据进行编码。换言之,帧内预测器420对当前帧405之中的帧内模式下的编码单元执行帧内预测,帧间预测器415根据预测单元通过使用当前图像405和从重建画面缓冲器410获取的参考图像对帧间模式下的编码单元执行帧间预测。当前图像405可被划分为lcu,然后lcu可被顺序编码。在这方面,可对将被划分为具有树结构的编码单元的lcu进行编码。

通过从与当前图像405的编码的编码单元有关的数据减去从帧内预测器420或帧间预测器415输出的与每个模式的编码单元有关的预测数据来产生残差数据,并且所述残差数据通过变换器425和量化器430根据变换单元被输出为量化后的变换系数。量化后的变换系数通过反量化器445和逆变换器450被重建为空间域中的残差数据。重建的空间域中的残差数据被添加到从帧内预测器420或帧间预测器415输出的针对每个模式的编码单元的预测数据,并因此针对当前图像405的编码单元被重建为空间域的数据。重建的空间域中的数据通过去块单元455和sao执行器460被产生为重建图像,重建图像被存储在重建画面缓冲器410中。重建画面缓冲器410中存储的重建图像可被用作用于对另一图像进行帧间预测的参考图像。由变换器425和量化器430进行量化的变换系数可通过熵编码器435被输出为比特流440。

为了将图像编码器400应用于视频编码设备100,图像编码器400的所有元件(即,帧间预测器415、帧内预测器420、变换器425、量化器430、熵编码器435、反量化器445、逆变换器450、去块单元455和sao执行器460)可根据每个lcu基于具有树结构的编码单元中的每个编码单元执行操作。

具体地,帧内预测器420和帧间预测器415可通过考虑当前lcu的最大尺寸和最大深度,确定具有树结构的编码单元中的每个编码单元的分区模式和预测模式,变换器425可确定是否在具有树结构的编码单元中的每个编码单元中划分根据四叉树的变换单元。

图11示出根据各种实施例的基于编码单元的图像解码器500的框图。

熵解码器515从比特流505解析将被解码的编码图像数据和解码所需的编码信息。编码图像数据对应于量化后的变换系数,并且,反量化器520和逆变换器525从所述量化后的变换系数重建残差数据。

帧内预测器540根据预测单元对帧内模式下的编码单元执行帧内预测。帧间预测器535通过使用参考图像,针对当前图像中的帧间模式下的编码单元执行帧间预测,其中,参考图像是由重建画面缓冲器530根据预测单元获得的。

经过帧内预测器540或帧间预测器535的关于每个模式的编码单元的预测数据和残差数据被求和,使得关于当前图像405的编码单元的空间域中的数据可被重建,重建的空间域中的数据可通过去块单元545和样点补偿器550被输出为重建图像560。重建画面缓冲器530中存储的重建图像可被输出为参考图像。

为了使视频解码设备200的画面解码器230对图像数据进行解码,可执行根据实施例的图像解码器500的熵解码器515之后的操作。

为了将图像解码器500应用于根据实施例的视频解码设备200中,图像解码器500的所有元件(即,熵解码器515、反量化器520、逆变换器525、帧内预测器540、帧间预测器535、去块单元545和样点补偿器550)可针对每个lcu基于具有树结构的编码单元执行操作。

具体地,帧内预测器540和帧间预测器535可确定根据树结构的编码单元中的每个编码单元的分区模式和预测模式,逆变换器525可确定是否在每个编码单元中划分根据四叉树的变换单元。

图12示出根据本公开的实施例的根据深度的较深层编码单元和分区。

根据实施例的视频编码设备100和根据实施例的视频解码设备200使用分层编码单元以考虑图像的特征。可根据图像的特征自适应地确定编码单元的最大高度、最大宽度和最大深度,或可根据用户需求不同地设置编码单元的最大高度、最大宽度和最大深度。可根据编码单元的预定最大尺寸来确定根据深度的较深层编码单元的尺寸。

在根据实施例的编码单元的分层结构600中,编码单元的最大高度和最大宽度均是64,最大深度是3。在此情况下,最大深度表示编码单元从lcu到最小编码单元被划分的总次数。由于深度沿着编码单元的分层结构600的垂直轴加深,因此较深层编码单元的高度和宽度均被划分。另外,预测单元和分区沿着编码单元的分层结构600的水平轴被示出,其中,所述预测单元和分区是对每个较深层编码单元进行预测编码的基础。

也就是说,在编码单元的分层结构600中,编码单元610是lcu,其中,深度为0,尺寸(即,高度乘宽度)为64×64。深度沿着垂直轴加深,存在尺寸为32×32和深度为1的编码单元620、尺寸为16×16和深度为2的编码单元630、尺寸为8×8和深度为3的编码单元640。尺寸为8×8和深度为3的编码单元640是最小编码单元。

编码单元的预测单元和分区根据每个深度沿着水平轴被排列。也就是说,如果尺寸为64×64和深度为0的编码单元610是预测单元,则可将预测单元划分成包括在尺寸为64×64的编码单元610中的分区,即,尺寸为64×64的分区610、尺寸为64×32的分区612、尺寸为32×64的分区614或尺寸为32×32的分区616。

相同地,可将尺寸为32×32和深度为1的编码单元620的预测单元划分成包括在尺寸为32×32的编码单元620中的分区,即,尺寸为32×32的分区620、尺寸为32×16的分区622、尺寸为16×32的分区624和尺寸为16×16的分区626。

相同地,可将尺寸为16×16和深度为2的编码单元630的预测单元划分成包括在尺寸为16×16的编码单元630中的分区,即,尺寸为16×16的分区630、尺寸为16×8的分区632、尺寸为8×16的分区634和尺寸为8×8的分区636。

相同地,可将尺寸为8×8和深度为3的编码单元640的预测单元划分成包括在尺寸为8×8的编码单元640中的分区,即,尺寸为8×8的分区640、尺寸为8×4的分区642、尺寸为4×8的分区644和尺寸为4×4的分区646。

为了确定lcu610的最终深度,视频编码设备100的编码单元确定器120必需对包括在lcu610中的分别与多个深度相应的多个编码单元执行编码。

随着深度加深,包括具有相同范围和相同尺寸的数据的根据深度的较深层编码单元的数量增加。例如,需要四个与深度2相应的编码单元来覆盖包括在与深度1相应的一个编码单元中的数据。因此,为了根据深度比较对相同数据进行编码的结果,必需通过使用与深度1相应的编码单元和四个与深度2相应的编码单元中的每一种对数据进行编码。

为了根据多个深度之中的每个深度执行编码,可沿着编码单元的分层结构600的水平轴,通过对根据深度的编码单元的每个预测单元执行编码,来选择作为相应深度的代表性编码误差的最小编码误差。此外,随着深度沿着编码单元的分层结构600的垂直轴加深,可通过针对每个深度执行编码来比较根据深度的代表性编码误差,以搜索最小编码误差。在编码单元610中的产生最小编码误差的深度和分区可被选为lcu610的最终深度和分区模式。

图13示出根据本公开的实施例的在编码单元和变换单元之间的关系。

根据实施例的视频编码设备100或根据实施例的视频解码设备200针对每个lcu,根据具有小于或等于lcu的尺寸的编码单元,对图像进行编码或解码。可基于不大于相应编码单元的数据单元,来选择用于在编码处理期间进行变换的变换单元的尺寸。

例如,在视频编码设备100或视频解码设备200中,当编码单元710的尺寸是64×64时,可通过使用尺寸为32×32的变换单元720来执行变换。

此外,可通过对小于64×64的尺寸为32×32、16×16、8×8和4×4的变换单元中的每一个执行变换,来对尺寸为64×64的编码单元710的数据进行编码,然后可选择针对原始图像具有最小编码误差的变换单元。

图14示出根据本公开的实施例的多条编码信息。

根据实施例的视频编码设备100的输出单元130可对与最终深度相应的每个编码单元的分区模式信息800、预测模式信息810以及变换单元尺寸信息820进行编码,并将分区模式信息800、预测模式信息810以及变换单元尺寸信息820作为编码模式信息来发送。

分区模式信息800指示关于通过划分当前编码单元的预测单元而获得的分区的形状的信息,其中,分区是用于对当前编码单元进行预测编码的数据单元。例如,可将尺寸为2n×2n的当前编码单元cu_0划分成以下分区中的任意一个:尺寸为2n×2n的分区802、尺寸为2n×n的分区804、尺寸为n×2n的分区806和尺寸为n×n的分区808。这里,关于当前编码单元的分区模式信息800被设置为指示以下分区之一:尺寸为2n×2n的分区802、尺寸为2n×n的分区804、尺寸为n×2n的分区806和尺寸为n×n的分区808。

预测模式信息810指示每个分区的预测模式。例如,预测模式信息810可指示对由分区模式信息800指示的分区执行的预测编码的模式,即,帧内模式812、帧间模式814或跳过模式816。

另外,变换单元尺寸信息820指示当对当前编码单元执行变换时所基于的变换单元。例如,变换单元可以是第一帧内变换单元尺寸822、第二帧内变换单元尺寸824、第一帧间变换单元尺寸826和第二帧间变换单元尺寸828中的一个。

视频解码设备200的图像数据和编码信息提取器210可根据每个较深层编码单元,提取并使用用于解码的分区模式信息800、预测模式信息810和变换单元尺寸信息820。

图15示出根据本公开的实施例的根据深度的较深层编码单元。

划分信息可用来表示深度的改变。划分信息指定当前深度的编码单元是否被划分成更低深度的编码单元。

用于对深度为0和尺寸为2n_0×2n_0的编码单元900进行预测编码的预测单元910可包括以下分区模式的分区:尺寸为2n_0×2n_0的分区模式912、尺寸为2n_0×n_0的分区模式914、尺寸为n_0×2n_0的分区模式916和尺寸为n_0×n_0的分区模式918。仅示出了通过对称地划分预测单元而获得的分区模式912、914、916和918,但如上所述,分区模式不限于此,并且分区模式可包括非对称分区、具有预定形状的分区和具有几何形状的分区。

根据每种分区模式,对尺寸为2n_0×2n_0的一个分区、尺寸为2n_0×n_0的两个分区、尺寸为n_0×2n_0的两个分区和尺寸为n_0×n_0的四个分区重复地执行预测编码。可对尺寸为2n_0×2n_0、n_0×2n_0、2n_0×n_0和n_0×n_0的分区执行帧内模式和帧间模式下的预测编码。仅对尺寸为2n_0×2n_0的分区执行跳过模式下的预测编码。

如果在尺寸为2n_0×2n_0、2n_0×n_0和n_0×2n_0的分区模式912、914和916中的一个分区模式中编码误差最小,则可不将预测单元1610划分到更低深度。

如果在尺寸为n_0×n_0的分区模式918中编码误差最小,则深度从0改变到1并执行划分(操作920),并对深度为2和尺寸为n_0×n_0的编码模式的编码单元930重复地执行编码来搜索最小编码误差。

用于对深度为1和尺寸为2n_1×2n_1(=n_0×n_0)的编码单元930进行预测编码的预测单元930可包括以下分区模式:尺寸为2n_1×2n_1的分区模式942、尺寸为2n_1×n_1的分区模式944、尺寸为n_1×2n_1的分区模式946以及尺寸为n_1×n_1的分区模式948。

如果在尺寸为n_1×n_1的分区模式948中编码误差最小,则深度从1改变到2并执行划分(在操作950),并对深度为2且尺寸为n_2×n_2的编码单元960重复执行编码来搜索最小编码误差。

当最大深度是d时,根据深度的较深层编码单元可被设置直到深度与d-1相应时,并且划分信息可被设置直到深度与d-2相应时。也就是说,当编码被执行直到在与d-2的深度相应的编码单元被划分之后深度是d-1(在操作970)时,用于对深度为d-1且尺寸为2n_(d-1)×2n_(d-1)的编码单元980进行预测编码的预测单元990可包括以下分区模式的分区:尺寸为2n_(d-1)×2n_(d-1)的分区模式992、尺寸为2n_(d-1)×n_(d-1)的分区模式994、尺寸为n_(d-1)×2n_(d-1)的分区模式996和尺寸为n_(d-1)×n_(d-1)的分区模式998。

可对尺寸为2n_(d-1)×2n_(d-1)的一个分区、尺寸为2n_(d-1)×n_(d-1)的两个分区、尺寸为n_(d-1)×2n_(d-1)的两个分区、尺寸为n_(d-1)×n_(d-1)的四个分区重复地执行预测编码,以搜索产生最小编码误差的分区模式。

即使尺寸为n_(d-1)×n_(d-1)的分区模式998具有最小编码误差时,由于最大深度是d,因此深度为d-1的编码单元cu_(d-1)也不再被划分到更低深度,构成当前lcu900的编码单元的深度被确定为d-1,并且当前lcu900的分区模式可被确定为n_(d-1)×n_(d-1)。此外,由于最大深度是d,因此不设置用于深度为d-1的编码单元952的划分信息。

数据单元999可以是用于当前lcu的“最小单元”。根据实施例的最小单元可以是通过将具有最低深度的最小编码单元划分成4份而获得的正方形数据单元。通过重复地执行编码,根据实施例的视频编码设备100可通过比较根据编码单元900的深度的编码误差来选择具有最小编码误差的深度以确定深度,并将相应分区模式和预测模式设置为该深度的编码模式。

这样,在所有深度0、1、…、d-1、d中对根据深度的最小编码误差进行比较,并且具有最小编码误差的深度可被确定为深度。深度、预测单元的分区模式和预测模式可作为编码模式信息被编码并发送。另外,由于编码单元必须从0的深度被划分到深度,因此仅将该深度的划分信息设置为“0”,并且将除了该深度以外的深度的划分信息设置为“1”。

根据实施例的视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的深度和预测单元信息,来对编码单元912进行解码。根据实施例的视频解码设备200可通过使用根据深度的划分信息,将划分信息为“0”的深度确定为深度,并且可使用例如关于相应深度的编码模式信息来进行解码。

图16、图17和图18示出根据本公开的实施例的在编码单元、预测单元和变换单元之间的关系。

编码单元1010是lcu中的根据由视频编码设备100确定的深度的较深层编码单元。预测单元1060是根据深度的每个编码单元1010的预测单元的分区,变换单元1070是根据深度的每个编码单元的变换单元。

当在较深层编码单元1010中lcu的深度是0时,编码单元1012和1054的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。

可通过划分编码单元来获得在预测单元1060中的一些分区1014、1016、1022、1032、1048、1050、1052和1054。也就是说,分区1014、1022、1050和1054是尺寸为2n×n的分区模式,分区1016、1048和1052是尺寸为n×2n的分区模式,分区1032是尺寸为n×n的分区模式。较深层编码单元1010的预测单元和分区小于或等于每个编码单元。

按照小于编码单元1052的数据单元中的变换单元1070,对编码单元1052的图像数据执行变换或逆变换。另外,在尺寸和形状方面,变换单元1070中的编码单元1014、1016、1022、1032、1048、1050、1052和1054是不同于预测单元1060中的编码单元1014、1016、1022、1032、1048、1050、1052和1054的数据单元。也就是说,根据实施例的视频编码设备100和视频解码设备200可对同一编码单元中的单个数据单元执行帧内预测/运动估计/运动补偿/变换/逆变换。

因此,对lcu的每个区域中的具有分层结构的每个编码单元递归地执行编码来确定最优编码单元,从而可获得根据递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、分区模式信息、预测模式信息和变换单元尺寸信息。下面的表2示出可由根据实施例的视频编码设备100和视频解码设备200设置的编码信息。

[表2]

根据实施例的视频编码设备100的输出单元130可输出关于具有树结构的编码单元的编码信息,根据实施例的视频解码设备200的图像数据和编码信息提取器220可从接收到的比特流提取关于具有树结构的编码单元的编码信息。

划分信息指定是否将当前编码单元划分成更低深度的编码单元。如果当前深度d的划分信息是0,则当前编码单元不再被划分成更低深度的深度是最终深度,从而可针对所述最终深度来定义分区模式信息、预测模式信息和变换单元尺寸信息。如果当前编码单元根据划分信息被进一步划分,则对更低深度的四个划分编码单元中的每一个独立地执行编码。

预测模式可以是帧内模式、帧间模式和跳过模式中的一种。可在所有分区模式中定义帧内模式和帧间模式,仅在尺寸为2n×2n的分区模式中定义跳过模式。

分区模式信息可指示通过对称地划分预测单元的高度或宽度而获得的尺寸为2n×2n、2n×n、n×2n和n×n的对称分区模式,以及通过非对称地划分预测单元的高度或宽度而获得的尺寸为2n×nu、2n×nd、nl×2n和nr×2n的非对称分区模式。可通过按1:3和3:1来划分预测单元的高度来分别获得尺寸为2n×nu和2n×nd的非对称分区模式,可通过按1:3和3:1来划分预测单元的宽度来分别获得尺寸为nl×2n和nr×2n的非对称分区模式。

可将变换单元的尺寸设置成帧内模式下的两种类型和帧间模式下的两种类型。也就是说,如果变换单元的划分信息是0,则变换单元的尺寸可以是2n×2n,即当前编码单元的尺寸。如果变换单元的划分信息是1,则可通过对当前编码单元进行划分来获得变换单元。另外,如果尺寸为2n×2n的当前编码单元的分区模式是对称分区模式,则变换单元的尺寸可以是n×n,如果当前编码单元的分区模式是非对称分区模式,则变换单元的尺寸可以是n/2×n/2。

关于具有树结构的编码单元的编码信息可被分配给深度的编码单元、预测单元和最小单元中的至少一个。深度的编码单元可包括包含相同编码信息的预测单元和最小单元中的至少一个。

因此,通过比较邻近数据单元的编码信息来确定邻近数据单元是否被包括在与深度相应的同一编码单元中。另外,通过使用数据单元的编码信息来确定与深度相应的相应编码单元,并因此可推断出lcu中的深度的分布。

因此,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则可直接参考并使用与当前编码单元邻近的较深层编码单元中的数据单元的编码信息。

在另一实施例中,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则通过使用数据单元的编码信息来搜索与当前编码单元邻近的数据单元,并可参考搜索到的邻近编码单元以对当前编码单元进行预测。

图19示出根据表2的编码模式信息的编码单元、预测单元和变换单元之间的关系。

lcu1300包括多个深度的编码单元1302、1304、1306、1312、1314、1316和1318。这里,由于编码单元1318是深度的编码单元,因此划分信息可被设置成0。可将尺寸为2n×2n的编码单元1318的分区模式信息设置成多个分区模式中的一种,其中,所述多个分区模式包括2n×2n1322、2n×n1324、n×2n1326、n×n1328、2n×nu1332、2n×nd1334、nl×2n1336和nr×2n1338。

变换单元划分信息(tu尺寸标志)是一种类型的变换索引,与变换索引相应的变换单元的尺寸可根据编码单元的预测单元类型或分区模式而改变。

例如,当分区模式信息被设置为对称分区模式2n×2n1322、2n×n1324、n×2n1326和n×n1328中的一种时,如果变换单元划分信息是0,则设置尺寸为2n×2n的变换单元1342,如果变换单元划分信息是1,则设置尺寸为n×n的变换单元1344。

当分区模式信息被设置成非对称分区模式2n×nu1332、2n×nd1334、nl×2n1336和nr×2n1338中的一种时,如果变换单元划分信息(tu尺寸标志)是0,则设置尺寸为2n×2n的变换单元1352,如果变换单元划分信息是1,则设置尺寸为n/2×n/2的变换单元1354。

以上参照图12描述的变换单元划分信息(tu尺寸标志)是具有值0或1的标志,但是根据实施例的变换单元划分信息不限于具有1比特的标志,并且变换单元可在变换单元划分信息根据设置按照0、2、3…等的方式增加时被分层划分。变换单元划分信息可以是变换索引的示例。

在这种情况下,可通过使用根据实施例的变换单元划分信息以及变换单元的最大尺寸和变换单元的最小尺寸来表示实际上已使用的变换单元的尺寸。根据实施例的视频编码设备100可对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元划分信息进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元划分信息进行编码的结果可被插入sps。根据实施例的视频解码设备200可通过使用最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元划分信息来对视频进行解码。

例如,(a)如果当前编码单元的尺寸是64×64并且最大变换单元尺寸是32×32,则(a-1)当tu尺寸标志为0时,变换单元的尺寸可以是32×32,(a-2)当tu尺寸标志为1时,变换单元的尺寸可以是16×16,(a-3)当tu尺寸标志为2时,变换单元的尺寸可以是8×8。

作为另一示例,(b)如果当前编码单元的尺寸是32×32并且最小变换单元尺寸是32×32,则(b-1)当tu尺寸标志为0时,变换单元的尺寸可以是32×32。这里,由于变换单元的尺寸不能够小于32×32,因此tu尺寸标志不能够被设置为除了0以外的值。

作为另一示例,(c)如果当前编码单元的尺寸是64×64并且最大tu尺寸标志为1,则tu尺寸标志可以是0或1。这里,tu尺寸标志不能够被设置为除了0或1以外的值。

因此,如果定义最大tu尺寸标志为“maxtransformsizeindex”,最小变换单元尺寸为“mintransformsize”,当tu尺寸标志为0时的变换单元尺寸为“roottusize”,则可通过等式(1)来定义可在当前编码单元中确定的当前最小变换单元尺寸“currmintusize”:

currmintusize=max(mintransformsize,roottusize/(2^maxtransformsizeindex))

…(1)

与可在当前编码单元中确定的当前最小变换单元尺寸“currmintusize”相比,当tu尺寸标志为0时的变换单元尺寸“roottusize”可指示可在系统中选择的最大变换单元尺寸。也就是说,在等式(1)中,“roottusize/(2^maxtransformsizeindex)”指示当tu尺寸标志为0时,变换单元尺寸“roottusize”被划分了与最大tu尺寸标志相应的次数时的变换单元尺寸,“mintransformsize”指示最小变换尺寸。因此,“roottusize/(2^maxtransformsizeindex)”和“mintransformsize”中较小的值可以是可在当前编码单元中确定的当前最小变换单元尺寸“currmintusize”。

根据实施例,最大变换单元尺寸roottusize可根据预测模式的类型而改变。

例如,如果当前预测模式是帧间模式,则可通过使用以下的等式(2)来确定“roottusize”。在等式(2)中,“maxtransformsize”指示最大变换单元尺寸,“pusize”指示当前预测单元尺寸。

roottusize=min(maxtransformsize,pusize)……(2)

也就是说,如果当前预测模式是帧间模式,则当tu尺寸标志为0时的变换单元尺寸“roottusize”可以是最大变换单元尺寸和当前预测单元尺寸中较小的值。

如果当前分区单元的预测模式是帧内模式,则可通过使用以下的等式(3)来确定“roottusize”。在等式(3)中,“partitionsize”指示当前分区单元的尺寸:

roottusize=min(maxtransformsize,partitionsize)……(3)

也就是说,如果当前预测模式是帧内模式,则当tu尺寸标志为0时的变换单元尺寸“roottusize”可以是最大变换单元尺寸和当前分区单元的尺寸之中较小的值。

然而,根据分区单元中的预测模式的类型而改变的当前最大变换单元尺寸“roottusize”仅是实施例,并且用于确定当前最大变换单元的因素不限于此。

根据基于以上参照图7至图19描述的树结构的视频编码方法,空间域的图像数据可在树结构的每个编码单元中被编码,根据基于树结构的编码单元的视频解码方法,按照对每个lcu执行解码的方式来重建空间域的图像数据,使得由画面形成的视频和视频序列可被重建。重建的视频可由再现设备来再现,可存储在存储介质中,或可通过网络来发送。

此外,可针对每个画面、每个条带、每个lcu、具有树结构的编码单元中的每个编码单元、编码单元的每个预测单元或编码单元的每个变换单元用信号传送sao参数。例如,可通过使用基于接收到的sao参数而重建的偏移值来调整每个lcu的重建像素的像素值,并因此可重建在原始块与lcu之间具有最小误差的lcu。

为了便于描述,以上参照图1a至图18描述的根据对样点偏移进行调整的视频编码方法将被统称为“本公开的视频编码方法”。另外,以上参照图1a至图18描述的根据对样点偏移进行调整的视频解码方法将被统称为“本公开的视频解码方法”。

此外,以上参照图1a至图18描述的包括sao编码设备10、视频编码设备100或图像编码器400的视频编码设备将被统称为“本公开的视频编码设备”。另外,以上参照图2a至图19描述的包括sao解码设备20、视频解码设备200或图像解码器500的视频解码设备将被统称为“本公开的视频解码设备”。

现在将详细描述根据实施例的存储程序的计算机可读记录介质(诸如,盘26000)。

图20示出根据实施例的存储程序的盘26000的物理结构。作为存储介质被描述的盘26000可以是硬盘驱动器、致密盘只读存储器(cd-rom)盘、蓝光盘或数字多功能盘(dvd)。盘26000包括多个同心磁道tr,每个同心磁道tr沿盘26000的圆周方向被划分成特定数量的扇区se。在盘26000的特定区域中,可分配并存储执行以上所描述的量化参数确定方法、视频编码方法和视频解码方法的程序。

现在将参照图14来描述使用存储用于执行如上所述的视频编码方法和视频解码方法的程序的存储介质来实现的计算机系统。

图21示出通过使用盘2600来记录和读取程序的盘驱动器26800。计算机系统26700可经由盘驱动器26800将执行本公开的视频编码方法和视频解码方法中的至少一个的程序存储在盘26000中。为了在计算机系统26700中运行存储在盘26000中的程序,可通过使用盘驱动器26800从盘26000读取程序并将程序发送到计算机系统26700。

执行本公开的视频编码方法和视频解码方法中的至少一个的程序不仅可被存储在图20或图21中示出的盘26000中,还可被存储在存储卡、rom卡带或固态驱动器(ssd)中。

以下将描述应用根据以上所描述的实施例的视频编码方法和视频解码方法的系统。

图22示出用于提供内容分发服务的内容供应系统11000的整体结构。将通信系统的服务区域划分成预定尺寸的小区,并将无线基站11700、11800、11900和12000分别安装在这些小区中。

内容供应系统11000包括多个独立装置。例如,诸如计算机12100、个人数字助理(pda)12200、视频相机12300和移动电话12500的多个独立装置经由互联网服务提供器11200、通信网络11400和无线基站11700、11800、11900和12000连接到互联网11100。

然而,内容供应系统11000不限于如图22中所示,并且装置可选择性地被连接到内容供应系统11000。多个独立装置可不经由无线基站11700、11800、11900和12000而直接连接到通信网络11400。

视频相机12300是能够捕捉视频图像的成像装置,例如,数字视频相机。移动电话12500可利用各种协议(例如,个人数字通信(pdc)、码分多址(cdma)、宽带码分多址(w-cdma)、全球移动通信系统(gsm)和个人手持电话系统(phs))中的至少一种通信方法。

视频相机12300可经由无线基站11900和通信网络11400连接到流服务器11300。流服务器11300允许经由视频相机12300从用户接收到的内容经由实时广播被流传输。可通过视频相机12300或流服务器11300来对从视频相机12300接收到的内容进行编码。通过视频相机12300捕捉到的视频数据可经由计算机12100被发送到流服务器11300。

通过相机12600捕捉到的视频数据也可经由计算机12100被发送到流服务器11300。与数字相机类似,相机12600是能够捕捉静止图像和视频图像两者的成像装置。可使用相机12600或计算机12100对通过相机12600捕捉到的视频数据进行编码。可将对视频执行编码和解码的软件存储在可由计算机12100访问的计算机可读记录介质(例如,cd-rom盘、软盘、硬盘驱动器、ssd或存储卡)中。

如果视频通过内置在移动电话12500中的相机被捕捉到,则可从移动电话12500接收视频数据。

还可通过安装在视频相机12300、移动电话12500或相机12600中的大规模集成电路(lsi)系统来对视频数据进行编码。

内容供应系统11000可对由用户使用视频相机12300、相机12600、移动电话12500或另一成像装置所记录的内容数据(例如,在音乐会期间记录的内容)进行编码,并将编码后的内容数据发送到流服务器11300。流服务器11300可将编码后的内容数据以流传输内容的类型发送到请求内容数据的其它客户端。

客户端是能够对编码后的内容数据进行解码的装置,例如,计算机12100、pda12200、视频相机12300或移动电话12500。因此,内容供应系统11000允许客户端接收并再现编码后的内容数据。此外,内容供应系统11000允许客户端实时接收编码后的内容数据并对编码后的内容数据进行解码和再现,从而能够进行个人广播。

可将本公开的视频编码设备和视频解码设备应用于包括在内容供应系统11000中的多个独立装置的编码和解码操作。

现在将参照图23和图24详细地描述包括在根据实施例的内容供应系统11000中的移动电话12500。

图23示出根据实施例的应用本公开的视频编码方法和视频解码方法的移动电话12500的外部结构。移动电话12500可以是智能电话,所述智能电话的功能不受限,并且所述智能电话的大多数功能可被改变或扩展。

移动电话12500包括可与无线基站12000交换射频(rf)信号的内部天线12510,并包括用于显示由相机12530捕捉到的图像或经由天线12510接收到的并被解码的图像的显示屏12520(例如,液晶显示器(lcd)或有机发光二极管(oled)屏幕)。移动电话12500包括包含有控制按钮和触摸面板的操作面板12540。如果显示屏12520是触摸屏,则操作面板12540还包括显示屏12520的触摸感测面板。移动电话12500包括用于输出语音和声音的扬声器12580或另一类型声音输出单元、以及用于输入语音和声音的麦克风12550或另一类型声音输入单元。移动电话12500还包括用于捕捉视频和静止图像的相机12530,诸如电荷耦合器件(ccd)相机。移动电话12500还可包括:存储介质12570,用于存储通过相机12530捕捉到的、经由电子邮件接收到的、或根据各种方式获取的编码/解码数据(例如,视频或静止图像);插槽12560,存储介质12570经由插槽12560被装入移动电话12500中。存储介质12570可以是闪存,例如,包括在塑料壳中的安全数字(sd)卡或电可擦和可编程只读存储器(eeprom)。

图24示出移动电话12500的内部结构。为了系统地控制包括显示屏12520和操作面板12540的移动电话12500的部件中的每一个部件,供电电路12700、操作输入控制器12640、图像编码器12720、相机接口12630、lcd控制器12620、图像解码器12690、复用器/解复用器12680、记录器/读取器12670、调制器/解调器12660和声音处理器12650经由同步总线12730被连接到中央控制器12710。

如果用户操作电源按钮,并从“电源关闭”状态设置为“电源开启”状态,则供电电路12700从电池组向移动电话12500的所有部件供电,从而将移动电话12500设置为操作模式。

中央控制器12710包括cpu、只读存储器(rom)和随机存取存储器(ram)。

在移动电话12500将通信数据发送到外部的同时,在中央控制器12710的控制下,由移动电话12500产生数字信号。例如,声音处理器12650可产生数字声音信号,图像编码器12720可产生数字图像信号,并且消息的文本数据可经由操作面板12540和操作输入控制器12640被产生。当数字信号在中央控制器12710的控制下被传送到调制器/解调器12660时,调制器/解调器12660对数字信号的频带进行调制,并且通信电路12610对频带调制后的数字声音信号执行数模转换(dac)和频率转换。从通信电路12610输出的发送信号可经由天线12510被发送到语音通信基站或无线基站12000。

例如,当移动电话12500处于通话模式时,在中央控制器12710的控制下,经由麦克风12550获取的声音信号通过声音处理器12650被变换成数字声音信号。数字声音信号可经由调制器/解调器12660和通信电路12610被变换成变换信号,并可经由天线12510被发送。

当文本消息(例如,电子邮件)在数据通信模式下被发送时,文本消息的文本数据经由操作面板12540被输入,并经由操作输入控制器12640被发送到中央控制器12610。通过中央控制器12610的控制,文本数据经由调制器/解调器12660和通信电路12610被变换成发送信号,并经由天线12510被发送到无线基站12000。

为了在数据通信模式期间发送图像数据,由相机12530捕捉到的图像数据经由相机接口12630被提供给图像编码器12720。捕捉到的图像数据可经由相机接口12630和lcd控制器12620被直接显示在显示屏12520上。

图像编码器12720的结构可与以上描述的视频编码设备的结构相应。图像编码器12720可根据前述视频编码方法,将从相机12530接收到的图像数据变换为压缩和编码后的图像数据,并随后将编码后的图像数据输出到复用器/解复用器12680。在相机12530的记录操作期间,由移动电话12500的麦克风12550获取的声音信号可经由声音处理器12650被变换成数字声音数据,并且数字声音数据可被发送到复用器/解复用器12680。

复用器/解复用器12680将从图像编码器12720接收到的编码后的图像数据与从声音处理器12650接收到的声音数据复用在一起。对数据进行复用的结果可经由调制器/解调器12660和通信电路12610被变换成发送信号,然后可经由天线12510被发送。

当移动电话12500从外部接收通信数据时,可对经由天线12510接收到的信号执行频率恢复和模数(a/d)转换以将信号变换成数字信号。调制器/解调器12660对数字信号的频带进行调制。根据经过频带调制的数字信号的类型,将经过频带调制的数字信号发送到视频解码器12690、声音处理器12650或lcd控制器12620。

在通话模式期间,移动电话12500对经由天线12510接收到的信号进行放大,并通过对放大后的信号执行频率转换和a/d转换来获得数字声音信号。通过中央控制器12710的控制,接收到的数字声音信号经由调制器/解调器12660和声音处理器12650被变换成模拟声音信号,并且模拟声音信号经由扬声器12580被输出。

当在数据通信模式期间时,接收在互联网网站上访问的视频文件的数据,经由调制器/解调器12660将经由天线12510从无线基站12000接收到的信号输出为复用数据,并将复用数据发送到复用器/解复用器12680。

为了对经由天线12510接收到的复用数据进行解码,复用器/解复用器12680将复用数据解复用成编码后的视频数据流和编码后的音频数据流。经由同步总线12730,编码后的视频数据流和编码后的音频数据流分别被提供给视频解码器12690和声音处理器12650。

图像解码器12690的结构可与以上描述的视频解码设备的结构相应。图像解码器12690可通过使用本公开的前述视频解码方法,对编码后的视频数据进行解码来获得重建的视频数据,并经由lcd控制器12620将重建的视频数据提供给显示屏12520。

因此,可将在互联网网站上访问的视频文件的视频数据显示在显示屏12520上。同时,声音处理器12650可将音频数据变换成模拟声音信号,并将模拟声音信号提供给扬声器12580。因此,也可经由扬声器12580再现在互联网网站上访问的视频文件中包含的音频数据。

移动电话12500或另一类型的通信终端可以是包括本公开的视频编码设备和视频解码设备两者的收发终端,可以是仅包括本公开的视频编码设备的发送终端,或者可以是仅包括本公开的视频解码设备的接收终端。

本公开的通信系统不限于以上参照图22描述的通信系统。例如,图25示出根据本公开的实施例的采用通信系统的数字广播系统。图25的数字广播系统可通过使用本公开的视频编码设备和视频解码设备来接收经由卫星或地面网络发送的数字广播。

更详细地,广播站12890通过使用无线电波将视频数据流发送到通信卫星或广播卫星12900。广播卫星12900发送广播信号,广播信号经由家用天线12860被发送到卫星广播接收器。在每个房屋中,可通过tv接收器12810、机顶盒12870或另一装置对编码后的视频流进行解码并再现。

当本公开的视频解码设备被实现在再现设备12830中时,再现设备12830可对记录在存储介质12820(诸如盘或存储卡)上的编码后的视频流进行解析和解码,以重建数字信号。因此,可在例如监视器12840上再现重建的视频信号。

在被连接到用于卫星/地面广播的天线12860或用于接收有线电视(tv)广播的线缆天线12850的机顶盒12870中,可安装本公开的视频解码设备。从机顶盒12870输出的数据也可被再现在tv监视器12880上。

作为另一示例,可将本公开的视频解码设备安装在tv接收器12810中,而不是机顶盒12870中。

具有适当天线12910的汽车12920可接收从卫星12900或无线基站11700发送的信号。可在安装在汽车12920中的汽车导航系统12930的显示屏上再现解码后的视频。

视频信号可由本公开的视频编码设备来编码,然后可被记录并存储在存储介质中。更详细地,图像信号可通过dvd记录器被存储在dvd盘12960中,或图像信号可通过硬盘记录器12950被存储在硬盘中。作为另一示例,视频信号可被存储在sd卡12970中。如果硬盘记录器12950包括根据示例性实施例的视频解码设备,则记录在dvd盘12960、sd卡12970或另一存储介质上的视频信号可被再现在tv监视器12880上。

汽车导航系统12930可不包括图24的相机12530以及图24的相机接口12630和图像编码器12720。例如,计算机12100和tv接收器12810可不包括相机12530以及图24的相机接口12630和图像编码器12720。

图26示出根据本公开的实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构。

云计算系统可包括云计算服务器14000、用户数据库(db)14100、多个计算资源14200和用户终端。

响应于来自用户终端的请求,云计算系统经由数据通信网络(例如,互联网)提供多个计算资源14200的点播外包服务。在云计算环境下,服务提供商通过使用虚拟技术组合位于不同的物理位置的数据中心处的计算资源,来为用户提供想要的服务。服务用户不必将计算资源(例如,应用、存储器、操作系统(os)和安全软件)安装在他/她自己的终端中以使用它们,但可在想要的时间点在通过虚拟技术产生的虚拟空间中从服务中选择和使用想要的服务。

被指定的服务用户的用户终端经由包括互联网和移动电信网络的数据通信网络被连接到云计算服务器14000。可从云计算服务器14100向用户终端提供云计算服务,特别是视频再现服务。用户终端可以是能够被连接到互联网的各种类型的电子装置,例如,桌上型pc14300、智能tv14400、智能电话14500、笔记本计算机14600、便携式多媒体播放器(pmp)14700、平板pc14800等。

云计算服务器14000可组合分布在云网络中的多个计算资源14200,并向用户终端提供组合的结果。所述多个计算资源14200可包括各种数据服务,并可包括从用户终端上载的数据。如上所描述的,云计算服务器14000可通过根据虚拟技术组合分布在不同区域中的视频数据库来向用户终端提供想要的服务。

将关于已经订购云计算服务的用户的用户信息存储在用户db14100中。用户信息可包括登陆信息和个人信用信息,诸如地址、姓名等。用户信息还可包括视频的索引。这里,所述索引可包括已经被再现的视频的列表、正在被再现的视频的列表、之前正在被再现的视频的暂停点等。

可在用户装置之间共享关于存储在用户db14100中的视频的信息。例如,当响应于来自笔记本计算机14600的请求将视频服务提供给笔记本计算机14600时,视频服务的再现历史被存储在用户db14100中。当从智能电话14500接收到用于再现此视频服务的请求时,云计算服务器14000基于用户db14100搜索并再现此视频服务。当智能电话14500从云计算服务器14000接收到视频数据流时,通过对视频数据流进行解码来再现视频的处理与以上参照图23描述的移动电话12500的操作类似。

云计算服务器14000可参考存储在用户db14100中的想要的视频服务的再现历史。例如,云计算服务器14000从用户终端接收用于再现存储在用户db14100中的视频的请求。如果此视频被再现过,则由云计算服务器14000执行的对此视频进行流传输的方法可根据来自用户终端的请求(即,根据是将从视频的起点还是视频的暂停点开始再现视频)而不同。例如,如果用户终端请求从视频的起点开始再现视频,则云计算服务器14000将从视频的第一帧开始的视频的流数据发送到用户终端。另一方面,如果用户终端请求从视频的暂停点开始再现视频,则云计算服务器14000将从与暂停点相应的帧开始的视频的流数据发送到用户终端。

这里,用户终端可包括如以上参照图1a至图26描述的视频解码设备。作为另一示例,用户终端可包括如以上参照图1a至图26描述的视频编码设备。可选地,用户终端可包括如以上参照图1a至图26描述的视频编码设备和视频解码设备两者。

以上参照图13至图19描述了以上参照图1a至图26描述的本公开的视频编码方法和视频解码方法以及本公开的视频编码设备和视频解码设备的各种应用。然而,以上参照图1a至图19中描述的将视频编码方法和视频解码方法存储在存储介质中的方法的各种实施例或将视频编码设备和视频解码设备实现在装置中的方法的各种实施例不限于图20至图26的实施例。

如这里所使用的,技术“a可包括a1、a2和a3中的一个”泛指元素a在广泛的意义上说可包括示例性元素是a1、a2或a3。

由于以上描述的技术,可包括在元素a中的元素不必限于a1、a2或a3。因此,所述技术不被专门解释为:除了a1、a2和a3之外的可包括在a中的元素不包括未被示例的其它元素。

此外,所述技术表示a可包括a1、a2或a3。所述技术不表示:在预定集合中不必选择性地确定a中包括的元素。例如,所述技术不限于被解释为:从包括a1、a2和a3的集合中选择的a1、a2或a3必需包括在组件a中。

此外,在本说明书中,技术“a1、a2或(和)a3中的至少一个”表示以下项中的一项:a1;a2;a3;a1和a2;a1和a3;a2和a3;以及a1、a2和a3。

因此,除非明确地描述为“a1中的至少一个,a2中的至少一个,或(和)a3中的至少一个”,否则技术“a1、a2或(和)a3中的至少一个”不被解释为“a1中的至少一个,a2中的至少一个,或(和)a3中的至少一个”。

实施例可被编写为计算机程序,并且可以以使用计算机可读记录介质执行程序的通用数字计算机来实现。计算机可读记录介质的示例包括磁存储介质(例如,rom、软盘、硬盘等)和光学记录介质(例如,cd-rom或dvd)。

虽然已经参照本公开的示例性实施例具体示出和描述了本公开,但是本领域的普通技术人员将理解,在不脱离权利要求的精神和范围的情况下,可作出形式和细节上的各种改变。公开的实施例仅被认为是说明性意义,而不是为了限制的目的。因此,本公开的范围不由本公开的详细说明来限定,而由权利要求来限定,该范围内的所有差异将被解释为被包括在本公开中。


技术特征:

1.一种视频编码方法,包括:

确定用于对视频中包括的当前块的像素样点值进行补偿的多个带群组;

确定关于确定的所述多个带群组中的每个带群组的位置的带群组位置信息;

确定针对确定的所述多个带群组中的每个带群组中所包括的带的偏移;以及

产生包括确定的带群组位置信息、确定的偏移以及编码的视频的比特流,

其中,确定的所述多个带群组中包括的多个带是所有带的一部分,

其中,确定的带群组位置信息仅包括关于确定的所述多个带群组中的每个带群组中所包括的起始带的位置的信息,而不包括关于其余带的位置的信息,其中,所述其余带包括确定的所述多个带群组中的每个带群组中的最后的带并且被包括在确定的所述多个带群组中的每个带群组中,

其中,确定的所述多个带群组仅为32个带中的两个带群组,

其中,所述两个带群组中的每个带群组仅具有所述32个带中的两个相邻带,

其中,所述两个带群组彼此分离,

其中,针对除了确定的所述多个带群组中的带之外的其余带的偏移被设置为0。

2.如权利要求1所述的视频编码方法,其中,当前块是视频中包括的最大编码单元lcu。

3.一种视频解码方法,包括:

从比特流获得与针对视频中包括的当前块的多个带群组中的每个带群组中所包括的带相关的偏移;

从比特流获得关于所述多个带群组中的每个带群组的位置信息;

基于关于所述多个带群组中的每个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组;以及

通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,

其中,确定的所述多个带群组中包括的多个带是所有带的一部分,

其中,所述位置信息仅包括关于确定的所述多个带群组中的每个带群组中所包括的起始带的位置的信息,而不包括关于其余带的位置的信息,其中,所述其余带包括确定的所述多个带群组中的每个带群组中的最后的带并且被包括在确定的所述多个带群组中的每个带群组中,

其中,确定的所述多个带群组仅为32个带中的两个带群组,

其中,所述两个带群组中的每个带群组仅具有所述32个带中的两个相邻带,

其中,所述两个带群组彼此分离,

其中,针对除了确定的所述多个带群组中的带之外的其余带的偏移被设置为0。

4.一种视频编码设备,包括:

至少一个处理器,被配置为确定用于对视频中包括的当前块的像素样点值进行补偿的多个带群组,确定关于确定的所述多个带群组中的每个带群组的位置的带群组位置信息,确定针对确定的所述多个带群组中的每个带群组中所包括的带的偏移,并产生包括确定的带群组位置信息、确定的偏移以及编码的视频的比特流,

其中,确定的所述多个带群组中包括的多个带是所有带的一部分,

其中,确定的带群组位置信息仅包括关于确定的所述多个带群组中的每个带群组中所包括的起始带的位置的信息,而不包括关于其余带的位置的信息,其中,所述其余带包括确定的所述多个带群组中的每个带群组中的最后的带并且被包括在确定的所述多个带群组中的每个带群组中,

其中,确定的所述多个带群组仅为32个带中的两个带群组,

其中,所述两个带群组中的每个带群组仅具有所述32个带中的两个相邻带,

其中,所述两个带群组彼此分离,

其中,针对除了确定的所述多个带群组中的带之外的其余带的偏移被设置为0。

5.如权利要求4所述的视频编码设备,其中,当前块是视频中包括的最大编码单元lcu。

6.一种视频解码设备,包括:

至少一个处理器,被配置为从比特流获得与针对视频中包括的当前块的多个带群组中的每个带群组中所包括的带相关的偏移,从比特流获得关于所述多个带群组中的每个带群组的位置信息,基于关于所述多个带群组中的每个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组,并通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,

其中,确定的所述多个带群组中包括的多个带是所有带的一部分,

其中,所述位置信息仅包括关于确定的所述多个带群组中的每个带群组中所包括的起始带的位置的信息,而不包括关于其余带的位置的信息,其中,所述其余带包括确定的所述多个带群组中的每个带群组中的最后的带并且被包括在确定的所述多个带群组中的每个带群组中,

其中,确定的所述多个带群组仅为32个带中的两个带群组,

其中,所述两个带群组中的每个带群组仅具有所述32个带中的两个相邻带,

其中,所述两个带群组彼此分离,

其中,针对除了确定的所述多个带群组中的带之外的其余带的偏移被设置为0。

7.一种非暂时性计算机可读记录介质,其上记录有程序,其特征在于,所述程序被处理器执行时实现权利要求1至3中的任意一项的方法。

技术总结
公开了一种视频编码方法和设备以及视频解码方法和设备。一种用于用信号传送样点自适应偏移(SAO)参数的视频解码方法,所述方法包括以下步骤:从比特流获得针对视频中包括的当前块多个带群组中的位置信息;从比特流获得针对每个带群组中包括的带的偏移;基于所述多个带群组的位置信息来确定用于对当前块的像素样点值进行补偿的所述多个带群组;通过使用获得的偏移来对当前块中包括的重建像素的样点值进行补偿,其中,确定的所述多个带群组中的每个带群组包括至少一个带。

技术研发人员:李善一;艾琳娜·阿尔西纳;朴银姬
受保护的技术使用者:三星电子株式会社
技术研发日:2014.12.12
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-16458.html

最新回复(0)