掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明的领域涉及对图像或图像序列且明确地说对视频流进行编码和解码。

更具体地说,本发明涉及使用图像的通过块的表示对图像或图像序列进行压缩。

明确地说,本发明可应用于在当前或即将出现的编码器中实施的图像或视频编码(JPEG、MPEG、H.264、HEVC等以及VVC和其修正)且应用于对应解码器。

背景技术

数字图像和图像序列占据巨大量的存储器空间,当传输这些图像时,需要压缩它们以便避免用于此传输的网络上的拥塞问题。实际上,此网络上的可用速率一般受到限制。

众多视频数据压缩技术已经是已知的。其中,HEVC(“高效率视频译码、译码工具及规范(High Efficiency Video Coding,Coding Tools and Specification)”,MatthiasWien,信号和通信技术(Signals and Communication Technology),2015)压缩标准提出相对于属于相同图像(帧内预测)或前一或下一图像(帧间预测)的其它像素实施当前图像的像素的预测。

更具体地说,帧内预测利用图像内的空间冗余。为此目的,图像分裂成元素或像素块。接着根据图像中的块的扫描次序使用对应于当前图像中的先前编码/解码的块的已经重建的信息来预测像素块。

此外,常规上,对当前块进行编码使用对当前块的预测来进行,其被称为预测块,且预测残差或“残余块”对应于当前块与预测块之间的差。接着例如通过使用DCT(离散余弦变换)型变换来变换所获得的残余块。随后,量化变换的残余块的系数,且接着通过熵编码进行编码且将其传输到解码器,所述解码器可通过将此残余块相加到预测块来重建当前图像。

解码是逐图像进行的,且对于每个图像,解码是逐块进行的。对于每个块,读取流的对应元素。对残余块的系数执行反量化和反变换。接着,计算块的预测以获得预测块且通过将预测(预测块)加入解码的残余块来重建当前块。

还已知用于预测块的元素的技术,称作DPCM(代表“差分脉码调制”),其在于从其邻近者中的一个或若干个的像素预测图像的像素的值。举例来说,将此技术应用于JPEG-LS(代表“无损联合摄影专家组”)标准,且描述于文献ISO/OEC 14495-1:1999ITU-T Rec.T.87(1998)中。

参考图1,考虑图像I的元素或像素X。将此元素放在图像I的行lin和列col上。根据图像的所谓的“词典”扫描次序,也就是说,在一行上从左到右,且接着从顶部到底部逐行处理此块的元素。像素X由三个已经解码的相邻像素包围,所述三个像素为同一行上位于其左边的像素XA、同一列上位于其上方的像素XB和对角线中位于其左上方的像素XC。

X的值的预测被称作P(X)。根据JPEG-LS标准,P(X)如下计算:

P(X)=f(XA,XB,XC),其中f为预定函数,所述预定函数稍后将被称作相邻函数。

函数f的实例在下文中指示:

-f(A,B,C)=min(A,B)如果C≥max(A,B)

max(A,B)如果C≤min(A,B)

A+B-C否则

此函数f为JPEG-LS标准中使用的函数。

一旦计算出此预测P(X),就通过从X的原始值减去像素X的预测而确定原始预测残差R(X):

R(X)=X-P(X)。

在无由JPEG-LS指定的图像损失的图像损失的情况下进行编码的情况下,此残差R(X)由熵编码器利用其统计性质进行编码,且接着传输到解码器。

在具有图像损失的情况下进行编码的情况下,通常例如使用具有由用户设定的量化步长δ的均匀标量量化器来量化残差R(X):

RQ(X)=NI(R(X)/d)

其中NI(代表“最接近整数”)为确定最接近整数的函数。其在相等的情况下选择最小一者。

经量化残差RQ(X)使用所属领域的技术人员已知的熵编码技术(例如霍夫曼编码或算术编码)预先压缩,且接着传输到解码器。在编码器侧上,重建当前像素X的经解码值D(X),以使得当前像素可充当对随后处理的像素的预测物。当前像素D(X)的经解码版本可表达如下:

D(X)=P(X)+RQ(X).d

解码器应用相同公式来重建携载由编码器传输的经编码数据的信号的样本。

应注意,不同于通过不同于JPEG-LS函数的预测函数所确定的像素X的相邻像素XA、XB和XC的像素可用于预测像素X,只要这些像素可以其解码形式使用即可。类似地,有可能使用所属领域的技术人员已知的任何量化器。

应注意,当DPCM型预测应用于图像时,一些像素X不具有由函数f界定的预测物。在先前实例中,图像的像素的第一行和第一列的像素就是这种情况。已知解决方案在于将默认值指派给XA、XB或XC,例如信号的动态的中值,如对于可在0与255之间的范围内的信号的128。

从2016年2月以编号US9253508公布的文献,此DPCM预测技术适应基于块的译码方案也是已知的。因此,在图像的块B(例如,大小为8×8像素)内部,按词典次序扫描像素,且应用如先前所描述的DPCM预测。通常,当用于计算像素X的预测的像素XA、XB或XC在当前块外部时,使用源自相邻块的经解码像素的值,例如如图1B中所说明的XC'、XB'或XC”、XB”。

由发明人实施的块层级处的DPCM技术的实验已展现对视频的压缩增益,明确地说,对例如合成内容的一些类型的内容的压缩增益。

然而,DPCM技术具有外加像素的串行处理的缺点。这引起用于处理一个DPCM块的机器循环的数目增加的消耗。然而,与如JPEG-LS等固定图像编码器-解码器相比,视频编码器和解码器经受更严格的速度约束。

因此,需要不具有现有技术的缺点且允许明确地减少处理一个块所需的机器循环的数目的像素预测技术。

发明内容

根据至少一个实施例,本发明涉及一种用于对至少一个图像进行编码或解码的方法,图像分裂成元素块,所述方法包括对于至少一个块:

-将所述块分裂成至少两个区域;

-处理至少一个所述区域,包括根据预定扫描次序扫描所述区域的所述元素,且对于称为当前元素的至少一个被扫描元素:

○根据预测函数选择先前编码或解码的至少一个预测物元素;

○依据以下项预测所述当前元素:

■如果所述至少一个预测物元素属于所述区域,则依据所述至少一个预测物元素;

■否则,依据独立于至少一个其它区域而获得的至少一个替换值。

本发明是基于非常新的方法,其在于将当前块分裂成独立于彼此预测的至少两个区域。当在一个区域的处理期间,预测物属于另一区域时,其被替换值替换。以此方式,两个区域可独立地编码或解码。因此,与现有技术相比,其可并行地处理,这允许减少对当前块进行编码所需的机器循环的数目。

根据本发明的第一实施例,当前元素X位于行lin和列col上,预测函数选择位于同一列和前一行上的先前编码或解码的元素XB,且所述至少两个区域之间的边界是水平的。

此垂直预测的一个优点是其实现实施起来简单的水平分裂,同时实现对每一区域的一行的所有元素的同时处理。

根据本发明的此第一实施例的一方面,对于包括H行的块,所述当前块分裂成第一区域和第二区域,使得所述第一区域的所述元素符合条件lin

一个优点在于形成两个区域需要相同数目的处理迭代或机器循环,这与现有技术相比减小一半。

根据本发明的第二实施例,当前元素X位于行lin和列col上,预测函数选择位于同一行和前一列上的先前编码或解码的元素XB,且所述至少两个区域之间的边界是垂直线。

此水平预测的一个优点是其实现实施起来简单的垂直块分裂,同时实现对每一区域的一列的所有元素的同时处理。

根据本发明的此第二实施例的一方面,对于包括W列的块,所述当前块分裂成第一区域和第二区域,使得所述第一区域的所述元素符合条件col

一个优点在于形成相同尺寸的两个区域需要相同数目的处理迭代或机器循环,这与现有技术相比减小一半。

根据本发明的第三实施例,当前元素位于行lin和列col上,预测函数选择同一行和前一列上的先前经处理的第一元素、前一行和相同前一列上的先前经处理的第二元素以及前一行和列上的先前经处理的第三元素,且边界是对角的。

可同时处理所述区域的相同对角线的所有元素。一个优点在于实现依赖于所谓的JPEG-LS预测,这允许恰当考虑相邻者用于预测当前元素,同时最大化准备好在相同迭代期间预测的元素的数目。

根据此第三实施例的一方面,对于包括H行和W列的块,将当前块分裂成两个区域,使得第一区域的元素满足条件lin+col<(H+W)/2+1。

一个优点是形成两个区域的处理需要几乎相同数目的迭代。

根据本发明的另一实施例,当所述预测物元素属于另一区域时,所述替换值是在存储器中读取的预定值。

此解决方案的一个优点是实施起来简单。

根据本发明的另一实施例,所述至少一个替换值是从在所述当前块附近的先前编码或解码的块中选择的至少一个其它预测物元素获得的。

不管预测物处于相邻块内还是当前块的另一区域内,替换预测物元素都是在当前块附近的块中选择,例如在毗邻相邻块与当前块的边界的所谓参考元素中。选择当前块附近的替换值的一个优点在于保证优质的预测。

根据本发明的此实施例的一方面,所述其它预测物元素是在与所述预测物元素相同的行或相同的列上在所述相邻块中选择。

此实施例的一个优点在于其保持预测函数的方向。

根据本发明的此实施例的另一方面,所述其它所选预测物元素为所述相邻块的最接近于同一行或同一列上的所述预测物元素的元素。

一个优点在于选择最接近的替换预测物。以此方式,保证良好的预测质量。

根据本发明的另一实施例,所述方法包括获得可用预测函数列表中的预测函数,且至少所述当前块到区域的所述分裂或至少一个区域的所述处理取决于所获得的所述预测函数。

一个优点在于例如根据速率-失真准则使用当前块的最佳预测函数,且在于使所述块的分裂适于所选预测函数。

根据本发明的再一实施例,所述至少一个替换值是对于所述当前块确定的值,例如所述当前块的所述元素的强度的平均值。

一个优点为由编码器确定且使用适合于当前块的替换值。此值经编码且接着传输到解码器或提供到编码器内部的解码器。

根据本发明的此实施例的一方面,所述编码方法包括对所获得的所述预测函数的指示符进行编码。

有利地,在编码器侧上,所选预测函数的此指示符经编码以传输到解码器,使得其可考虑处理当前块。

举例来说,经编码信息可呈解码器已知的预定列表中预测函数的等级的形式。

根据本发明的另一实施例,所述方法包括对于经扫描的当前元素:

-通过从所述当前元素减去所述经预测元素而获得残差元素;

-对所述残差元素进行编码并且在表示所述图像的经编码数据中插入所述经编码残差元素。

在编码器侧上,可因此独立于对其它区域的编码而执行对根据本发明的当前块中分裂的区域进行编码的所有步骤。

根据根据本发明的用于对至少一个图像进行编码或解码的方法的实施例,对当前块的至少一个替换值在经编码数据中进行编码且传输或通过读取经编码数据而获得。

一个优点是解码器获得由编码器选择的用于当前块的替换值。

根据根据本发明的解码方法的另一实施例,所述方法包括对表示所述预测函数的指示符的经编码数据进行解码,所述预测函数是从所述指示符获得。

解码器利用经编码信息获得待用于当前块的预测函数。有利地,其例如根据存储器中的预定规则或信息而推断与此预测函数相关联的最合适的分裂。有利地,经解码信息可呈解码器已知的预定列表中预测函数的等级的形式。

根据根据本发明的解码方法的再一实施例,所述方法包括对于当前元素,

-通过读取表示所述图像的经编码数据来获得所述当前元素的残差;以及

-从所述所获得的残差和经预测当前元素重建经解码当前元素。

在解码器侧上,可因此独立于对其它区域的解码而进行对根据本发明的当前块中分裂的区域进行解码的所有步骤。

本发明还涉及一种用于对至少一个图像进行编码或解码的装置,其适于实施根据上文所界定的特定实施例中的任一者的编码或解码方法。当然,此装置可包含关于根据本发明的编码、分别解码方法的不同特征。因此,此装置的特征和优点与相应编码、解码方法的特征和优点相同,且不进一步详述。

根据本发明的实施例,所述当前块分裂成至少一个第一区域和一个第二区域,所述编码或解码装置包括专用于或被配置成处理所述第一区域的至少一个第一计算机器和专用于或被配置成处理所述第二区域的一个第二计算机器。

以此方式,这两个区域的处理可并行地进行。

根据本发明的此实施例的一方面,装置的所述第一计算机器和所述第二计算机器专用于且被配置成在一个机器循环中处理所述块的一个行、一个列或一个对角线的所述元素。

一个优点在于甚至更进一步减少处理块的每个区域所需的机器循环的数目。

根据一个实施例,本发明还涉及一种携载表示至少一个图像的经编码数据的信号,图像分裂成块,所述经编码数据已通过根据本发明的编码方法获得,称为当前块的块分裂成至少两个区域,所述经编码数据对于一个块包括至少一个替换值,所述至少一个替换值是通过所述编码方法确定且既定由根据本发明的解码方法使用以根据所述替换值预测所述块的至少一个所述区域的当前元素。

根据另一实施例,本发明进一步涉及一种携载表示至少一个图像的经编码数据的信号,图像分裂成块,所述经编码数据已通过根据本发明的编码方法获得,至少一个块分裂成至少两个区域,所述经编码数据对于所述块包括预测函数的至少一个指示符,所述至少一个指示符是通过所述编码方法选择且既定由根据本发明的解码方法使用以将当前元素分裂成至少两个区域且根据所述预测函数预测一个所述区域的当前元素。

根据特定实施例,本发明还涉及一种或数种计算机程序,其包含用于在所述程序由处理器执行时用于实施根据先前所描述的特定实施例中的任一者的用于对至少一个图像进行编码或解码的方法的指令。此程序可以使用任何编程语言且可以呈源代码、目标代码或在源代码与目标代码之间的中间代码的形式,如部分编译形式或任何其它合乎需要的形式。所述任何编程语言可从通信网络下载和/或记录在计算机可读介质上。

本发明亦涵盖包含如上文所提及的计算机程序的指令的计算机可读记录介质或信息介质。前述记录介质可以由能够存储程序的任何实体或装置组成。举例来说,介质可包含存储构件,例如ROM,例如CD ROM或微电子电路的ROM,或磁性记录构件,例如USB闪存盘或硬盘。

此外,记录介质可对应于可传输介质(例如,电或光学信号),其可经由电缆或光缆、通过无线电或通过其它方式输送。明确地说,根据本发明的程序可在因特网型网络上下载。

或者,记录介质可对应于程序嵌入其中的集成电路,所述电路经调适以执行或待用于执行所考虑的方法。

附图说明

通过参考各图阅读以下仅作为说明性和非限制性实例提供的描述,本发明的其它目标、特征和优点将变得更加清楚,其中:

-图1A和1B说明根据现有技术应用于图像且应用于图像的块的DPCM预测技术;

-图2示意性地描述根据本发明的处理图像的块的主要步骤;

-图3A到3C说明根据本发明的实施例的使用垂直预测函数分裂和预测块的元素的实例;

-图3D到图3F说明根据本发明的另一实施例的使用水平预测函数分裂和预测块的元素的实例;

-图4A到4D说明根据本发明实施的用于不同分裂和预测函数的块的元素的处理顺序;

-图5A到5C说明实施JPEG-LS预测函数和对角线分裂的本发明的变型;

-图6A到6E说明用以利用JPEG-LS预测函数来预测图5A到5C的对角线区域的替换值的不同实例;

-图7A和7B说明根据本发明的将块分裂成多于两个区域的实例;

-图8A到图8G呈现处理块的元素或块的区域所需的机器循环数;

-图9以串行模式描述根据本发明的编码或解码方法的步骤;

-图10以并联模式描述根据本发明的编码或解码方法的步骤;

-图11详述根据本发明的实施例的对块中分裂的区域进行编码的步骤;

-图12详述根据本发明的实施例的对块中分裂的区域进行解码的步骤;

-图13描述根据本发明的变型的呈串行模式的编码或解码方法的步骤;

-图14描述根据本发明的变型的呈并行模式的编码或解码方法的步骤;

-图15和16分别描述根据本发明的另一实施例的用于对至少一个图像进行编码、解码的方法的步骤;

-图17A、17B和18示意性地说明适于实施根据本发明的变型中的任一者的编码或解码方法的编码或解码装置的硬件结构的实例。

具体实施方式

5.1一般原理

本发明涉及待编码或解码的图像的块的预测,明确地说,根据先前所描述的DPCM技术的预测。根据此技术,从此块的其它元素预测当前块的元素。

本发明旨在通过允许通过编码器或解码器增加块的预测的执行速度来改进此技术。

本发明的一个原理是基于将待编码或解码的图像的当前块分裂成若干可独立解码的区域。当一个区域的当前元素需要位于另一区域中的元素来预测当前元素时,其使用替换值。举例来说,此值是预定的且在存储器中读取,或由用于当前块的编码器确定,且由解码器在表示当前块的经编码数据中读取,或仍然是先前编码或解码块(优选地在最靠近当前块的块当中)的元素的值。

首先,呈现将块分裂成若干区域且预测根据本发明的所获得的区域的实施方案的实施例,接着为使用此区域的预测的根据本发明的编码方法和解码方法。

5.2将当前块分裂成区域和对所获得区域的预测

下文中参考图2到8呈现用于将当前块分裂成区域并独立于彼此预测所获得区域的实施方案的变型。

参看图2,描述由根据本发明的用于对待编码或解码的图像的块B进行编码或解码的方法实施的步骤。

在E1处,将块B分裂成若干区域Z1、Z2、ZN,其中N为大于或等于2的整数。应注意,根据本发明,根据编码/解码上下文选择在E1处应用于块B的分裂或分裂模式,也就是说,根据编码器/解码器的操作约束,例如扫描块中的块和元素的次序,或用于预测块的元素的模式,以便保证在扫描此元素时,块的元素的预测物元素可用。所述分裂模式可为预定的且对于编码器和解码器是已知的,或根据本发明的实施例,可根据在压缩流或文件中传输的经编码信息而确定。下文将描述变型。

下文将参考图3A到图3F和图5A到图5C呈现分裂的实例。

在E2处,如下预测区域Zi,其中i为包括在1与N之间的整数:

在E21处,选择区域Zi中的至少一个元素或像素X,且考虑此元素的至少一个分量的值。举例来说,这由颜色空间的YCbCr表示模型中的其亮度值Y组成,在视频处理中常见。当然,本发明不限于此实例,且适用于色彩空间的另一表示模型的任何分量。

在以下描述中,考虑以词典顺序扫描块B的元素。当然,本发明不限于此扫描次序,且适用于任何其它扫描次序,例如所属领域的技术人员已知的Z形扫描。

在任选的步骤E22期间,获得待应用于当前块B的预测函数f。

对于此元素X,随后在E23处通过应用所获得的预测函数f或预定预测函数来选择预测物元素。此预测函数f从已经处理(也就是说,经编码或解码)的相邻元素中的至少一者预测元素X的值。

在以下描述中,通过相邻元素应理解,在广义上,块B的元素接近于当前元素,而不一定邻近于当前元素。

已参考图1描述了所谓的JPEG-LS或f(A,B,C)预测函数的实例,其从其左边A、右边B和对角线左上方C相邻者中的一者预测当前元素X的值。

指示预测函数的其它实例:

-f(A,B,C)=XA

-f(A,B,C)=XB

-f(A,B,C)=XA+XB-XC

-f(A,B,C)=0.33XA+0.33XB+0.34XC

下文将参考图3A到图3F描述这些实例中的一些。因此,此预测函数可使用一或若干预测物元素。

在E24处,对于由所使用的预测函数f指定的预测物元素中的每一者,我们检查其是否属于当前区域Zi。

如果情况是这样,则在E25处应用预测函数以从预测物元素的值获得当前元素X的预测值P(X)。

否则,在E26处,获得落入当前区域Zi外部的预测物元素的替换值VR。可考虑实施方案的若干变型,其中可详尽地提及以下各者:

-在存储器中读取预定值,例如,等于元素X的可能值的动态的平均值。在其中元素X可在范围[0,255]内呈现其亮度值的情况下,则将替换值VR设定为128;

-获得特定针对于当前块B的替换值,例如所述块的元素的强度的平均值。在此情况下,此值在编码器侧上计算,在经编码数据中编码且传输到解码器,所述解码器通过读取经编码数据而获得所述值;

-用位于先前经编码或经解码的相邻块中的另一预测物元素替换所述预测物元素。下文将参考图3B、3E和6A到6D描述此选项的实施方案的实例。

一旦针对位于当前区域Zi外部的预测物元素中的每一者获得替换值,就在E25处预测当前元素X的值P(X)。

在E27处,我们检查是否仍存在待预测的块的元素。如果是,则我们返回到选择至少一个元素X的步骤E21。否则,处理在E28处结束。

5.2.1实施方案的第一实例:垂直预测

参考图3A到图3C,现在考虑使用称为垂直预测的预测函数的本发明的实施方案的第一实例。此函数利用仅一个单个预测物元素,即位于当前元素X正上方的元素B。当考虑到元素X或X(lin,col)位于行lin和列col上时,预测物元素B位于行lin-1上且位于同一列col上。在图3A到3C中,将块B作为实例表示为具有高度H=8个元素且具有宽度W=4,且将块B分裂成具有相同尺寸的两个区域Z1和Z2,也就是说具有高度W/2=4且具有宽度W=4。区域Z1位于区域Z2上方,且其由呈水平线段形式的边界Fr分离。在数学方面,区域1包括位于边界Fr上方的块B的所有元素,其行号lin符合关系lin<5。反过来,区域Z2包括位于此水平线下方的所有元素,也就是说,其行号符合关系lin≥5。

首先,考虑区域Z1。关于来自块B的左上角的第一行lin=1的元素,如图3B中所说明,垂直预测函数指定不属于Z1,但属于位于块B上方的块的最后一行的预测物元素B'。

在此情况下,根据先前列出的选项中的一者完成步骤E25以获得替换值。明确地说,其可以已知方式使用由垂直预测函数指向的前一块的元素XB'的值。实际上,在已经处理此块的情况下,元素XB'的经解码值是可用的。

对于其它行,垂直预测指定属于21的预测物元素。因此,根据常规DPCM技术进行对区域Z1的元素的预测。

现在考虑第二区域Z2。如图3C中所说明,其第一行的元素利用位于第一区域Z1中的垂直预测物。然而,本发明阻止使用这些预测物元素以便保证两个区域之间的处理独立性。

在此情况下,根据先前列出的选项中的一者完成步骤E25以获得替换值。明确地说,本发明提出查找位于当前块上方的相邻块B

关于区域2的下一行的元素,步骤E22指定属于Z2的预测物元素。因此,在E24处以常规方式进行预测。

通过防止在两个区域Z1和Z2之间的预测中的每一相依性,本发明允许其处理的并行化。参考图4A,当预测实施垂直预测函数时,为词典扫描次序指派用于处理当前块B的元素的次序。此外,展示对于两个区域Z1和Z2中的每一者,可在第一处理时间或第一迭代期间预测第一行的元素、在第二迭代期间预测第二行的元素等。以此方式,对于具有尺寸H=8且W=4的块,因此4次迭代或所述另外4个机器循环足以预测整个块,而非在不实施本发明的情况下对于整个块的8个迭代。

参看图4B,呈现本发明的实施方案的另一实例,其中4×4块分裂成具有相等尺寸的两个区域Z1和Z2,由水平边界Fr分离。对于处理整个块,需要4个机器循环,而每一区域需要2个机器循环。

5.2.2实施方案的第二实例:水平预测

参考图3D到图3F,现在考虑使用被称作水平预测的预测函数的本发明的实施方案的第二实例。此函数利用同一行上的仅一个单个预测物元素,即位于当前元素X的正左边的元素XA。

当考虑到元素X或X(lin,col)位于行lin和列col上时,预测物元素XA位于行lin上且位于列col-1上。

在图3D到图3F中,作为实例将块B表示为具有高度H=4个元素且具有宽度W=8,且将块B分裂成具有相同尺寸的两个区域Z1和Z2,每一区域具有高度H=4且宽度W/2=4。区域Z1紧邻区域Z2定位,且其由呈垂直线段形式的边界Fr分离。在数学方面,区域1包括位于边界Fr左侧的块B的所有元素,其行号col符合关系col<5。反过来,区域Z2包括位于此对角线右侧的所有元素,也就是说,其行号符合关系col≥5。

首先,考虑区域Z1。关于来自块B的左上角的第一行col=1的元素,如图3D中所说明,水平预测函数表示不属于Z1,但属于位于块B的左侧的块的最后一列的预测物元素XA。

在此情况下,根据先前列出的选项中的一者完成步骤E25以获得替换值。明确地说,其可以已知方式使用由水平预测函数指向的前一块的元素X

对于块B的下一列,从col=2开始,水平预测指定属于21的预测物元素。因此,根据常规DPCM技术进行对区域Z1的元素的预测。

现在考虑第二区域Z2。如图3E中所说明,其第一列的元素利用位于第一区域Z1中的水平预测物。然而,本发明阻止使用这些预测物元素以便保证两个区域之间的处理独立性。

在此情况下,根据先前列出的选项中的一者完成步骤E25以获得替换值。明确地说,本发明提出查找位于当前块左侧的相邻块B

当然,本发明不限于此实例。已经处理的相邻块的任何其它元素可用于替换禁用预测物元素,即使最接近且根据相同方向定位的预测物元素的选择更可能提供优质预测也是如此。

关于区域2的下一行的元素,步骤E22指定属于Z2的预测物元素。因此,在E24处以常规方式进行预测。

通过防止在两个区域Z1和Z2之间的预测中的每一相依性,本发明允许其处理的并行化。参考图4C,当预测实施水平预测函数时,为词典扫描次序指派用于处理当前块B的元素的次序。展示对于两个区域Z1和Z2中的每一者,可在第一处理时间或第一迭代期间预测第一行的元素、在第二迭代期间预测第二行的元素等。以此方式,对于具有尺寸H=4且W=8的块,因此4次迭代或所述另外4个机器循环足以预测整个块,而非在不实施本发明的情况下对于整个块的8个迭代。

参看图4D,呈现本发明的实施方案的另一实例,其中4×4块分裂成具有相等尺寸的两个区域Z1和Z2,由垂直边界Fr分离。对于处理整个块,需要4个机器循环,而每一区域需要2个机器循环。

5.2.3实施方案的第三实例:JPEG-LS预测

现在考虑已经参考图1A和1B描述的所谓的JPEG-LS预测函数,以及具有高度H=8和宽度W=8的块B。根据通过图5A说明的本发明的实施方案的实例,块B分裂成通过对角线边界Fr分离的两个区域Z1和Z2。设X(lin,col)为位于从零开始编号的行lin和列col上的像素。在数学方面,区域Z1包括位于对角线Fr上方的块B的所有元素,其对应于座标满足不等式lin+col<5的元素。区域Z2包括位于此对角线边界下方的所有元素,对于其对应的元素,lin+col≥5。

以常规方式预测区域Z1的元素。如果由用于当前元素X的JPEG-LS预测函数指定的预测物元素XA、XB或XC处于先前处理的相邻块内,则其值用于元素X的预测。

现在考虑区域Z2。如图6A到6E中所说明,邻接边界Fr的元素利用位于第一区域Z1中的预测物。然而,本发明阻止使用这些预测物元素以便保证两个区域之间的处理独立性。在此情况下,根据先前列出的选项中的一者完成步骤E25以获得替换值。明确地说,本发明提出查找位于在同一行上在当前块左侧的相邻块B

当然,本发明不限于此实例。已经处理的相邻块的任何其它元素可用于替换禁用预测物元素,即使最接近且根据相同方向定位的预测物元素的选择更可能提供优质预测也是如此。

然而,以常规方式预测区域Z2的不具有在所述区域外部的预测物元素的像素。

参看图5B,我们看到,在此情况下,有可能并行地处理区域Z1和区域Z2,且在每一区域内部,仍有可能在相同迭代期间处理相同对角线的所有元素。对于将需要11个机器循环的4×8块,本发明允许仅使用6个机器循环进行。类似地,如图5C所说明,对于将需要7个机器循环的4×4块,本发明允许仅使用4个机器循环进行。

5.2.4将当前块分裂成N个区域,其中N为大于2的整数。

还有可能将块分裂成多于两个可独立解码的区域,例如,分裂成4个区域Z1以Z4以用于垂直预测(如图7A所说明和JPEG-LS预测(图7B)。假设编码器或解码器具有足够数目个处理器,则处理块B所需的循环数目进一步减少。在所呈现的实例中,区域具有相同尺寸或相同数量级的尺寸,这允许进一步减少所需循环的数目。

5.2.5待预测的块的尺寸

通常,用于通过块对图像或图像序列进行编码的技术将图像分裂成具有可变大小的块。举例来说,可用块尺寸为4×4、4×8、8×4、8×8和16×16。

诱发处理图像所需的最大数目的机器循环的块分裂为分裂为小大小的块。实际上,如由图8A到8C所说明,16×16块对于所述块需要每元素0.12个机器循环或31个循环,8×8块需要每元素0.23个循环且4×4块需要每元素0.44个循环。

再次考虑JPEG-LS预测函数和16×16像素大小的图像的实例。如果图像“分裂”成单个16×16像素大小的块,且如果未应用本发明中所提出的技术,则我们已发现所需循环的数目为31。相反,如果所述块划分成16个4×4大小的块,每一者需要7个循环,则整个图像的处理需要16×7=112个循环。

因此,减少处理较小块的循环数目是必要的。实际上,硬件解码器应被设计成实时地处理在经编码数据流中发生的“最坏情况”,也就是说,图像中的一者分裂成具有最小大小的块。

参看图8D到图8G,我们看到,具有将当前块分裂成2个区域的本发明的实施方案允许减少处理成本到低于每元素0.25个循环。

5.3用于对图像进行编码或解码的方法

图9到14呈现根据本发明的不同变型的用于对至少一个图像进行编码或解码的方法。这些变型实施刚刚参考图2到8描述的根据本发明的处理块的主要步骤。

5.3.1串行编码或解码方法

图9呈现用于根据串行或循序模式对图像进行编码或解码的方法的步骤。举例来说,此编码/解码方法由如参考图13所描述的编码/解码装置实施。在以下描述中,考虑在编码方法的输入处供应的待编码的图像I

以已知方式,根据预先建立且解码器已知的编码次序逐图像对图像I

在未表示的步骤处,待由图像I

在解码器侧上,读取经编码数据的步骤允许获得与所执行的分裂相关的一条信息。

在步骤C0处,根据编码器和解码器已知的图像I

在步骤C1期间,我们检查是否将根据本发明的DPCM技术或根据如例如在HEVC标准中所描述的例如常规帧内或帧间预测模式的另一预测模式处理当前块B。以已知方式,所述测试可在于根据所述模式中的每一者比较当前块的速率-失真成本以及选择获得最低成本模式。对所选预测模式上的一条信息(例如指示符(标志))进行编码。

在解码器侧上,在压缩文件或经编码数据流中读取信息以便确定是否将根据常规模式(如HEVC标准中所描述的帧内或帧间解码)或根据本发明的DPCM模式对当前块进行解码。

在所识别的模式为常规预测模式的情况下,下一步骤为按所属领域的技术人员已知的常规模式进行编码(以及解码)的步骤C2。将不再进一步描述。

否则,如果所获得的预测模式为根据本发明的DPCM模式,则下一步骤为获得当前块的分裂的步骤C3。在此步骤期间,根据在部分5.2中所描述的本发明的变型中的一者,将当前块划分成若干区域。根据部分5.2.3中所描述的第一实例,将当前块B分裂成如下界定的两个区域Z1和Z2:

如果lin+col

根据部分5.2.1中所描述的第二实例,将块B划分成两个区域Z1和Z2,以使得如果lin

在C4处,选择第一区域Z1作为当前区域。应注意,块B区域的处理次序在可独立于彼此编码/可解码的程度上是任意的。

下文将参考图11描述对区域Z1进行编码的步骤C5。将在下文中参考图12描述对区域Z1进行解码的步骤D5。

在C6处,我们检查是否仍存在待编码的区域Zi。在所考虑的实例中,仍存在Z2。因此,我们返回到步骤C4以选择区域Z2。随后,在C5/D5下对其进行编码或解码是适当的。在C6处,对最后一个区域的测试是令人满意的。

下一步骤C7检查是否仍存在待处理的块。如果情况如此,则我们返回到选择新当前块的步骤C0。否则,处理在C8处结束。

5.3.2并行编码或解码方法

图10呈现用于根据并行模式对图像进行编码或解码的方法的步骤。

选择块C0、检查预测模式C1、常规编码/解码C2以及分裂成区域C3的步骤保持不变。

选择待处理的区域的步骤C4被将区域分配在可用于编码器/解码器中的计算机器或处理单元之间的步骤C4'替换。在图10的实例中,我们具有N个处理单元以处理当前块的N个区域,使得一个区域Zi被指派到每一处理单元UTi。本发明可实现此并行化,其独立于当前块的其它区域执行对一个区域的预测。

当然,本发明不限于此实例,且适用于包括小于待处理的区域的数目的数个处理单元的编码器或解码器。在此情况下,我们在C6处检查是否仍存在待处理的块的区域。如果是,则所述方法返回到将区域分配在处理单元之间的步骤C4'。否则,下一步骤为检查最后一个块的步骤C7。如果仍存在待处理的块,则我们返回到步骤C0,否则,所述方法在C8处结束。

5.3.3对当前块的区域进行编码

现在参考图11详述根据本发明的实施例的对当前块的区域Zi进行编码的步骤C5。

在C51处,在区域Zi中选择至少一个元素或像素x。针对当前区域的像素界定扫描次序。此扫描次序本身是已知的,且是预定的。明确地说,其由用于当前像素的预测的像素确定,且其将以其经解码形式可用(且因此将在之前进行)。因此,常规扫描次序为词典次序,其针对先前描述的本地预测函数起作用。

对于被称作当前元素的此所选元素X,在C52处从已经通过应用预测函数f处理的至少一个相邻预测物元素预测值P(X),如先前在部分5.2中所描述。

在C53处,计算预测残余的值R(X)=X-P(X)。随后,使用例如本身已知的标量量化在C54处对值R(X)进行量化。获得量化值Q(R(X))。

在C55处,使用例如霍夫曼编码器或算术编码器等已知构件来对经量化残差Q(R(X))进行编码,且所获得的经编码数据插入在流或文件中。

在C56处,通过执行反向操作来计算当前元素X的经解码值D(X)。此值存储于存储器中以便可用于预测当前区域或图像的接下来的元素。

如果与在前一步骤处使用的量化器相关联的解量化器被称作QI,则X的经解码值D(X)为:D(X)=P(X)+QI(Q(R(X)))

在步骤C57期间,我们检查当前元素是否为将在区域Zi中处理的最后一个元素。如果是,则处理结束。否则,下一步骤为选择待编码的元素的步骤C51。

5.3.4对当前块的区域进行解码

现在参考图12详述根据本发明的实施例的对当前块的区域Zi进行解码的步骤D5。

在D51处,如先前在部分5.3.3中描述选择区域Zi中的至少一个元素或像素X以用于编码。

对于被称作当前元素的此所选元素X,在D52处从已经通过应用预测函数f处理的至少一个相邻预测物元素预测值P(X),如先前在部分5.2中针对编码所描述。

在D53处,经量化残差Q(R(X))在经编码数据中读取,且其在D54处使用已知方式(实施于编码器侧上的那些方式的反转)进行解码。

在D55处,计算预测残差的经解量化值R(X)。如果与在编码器处使用的量化器相关联的解量化器被称作QI,则R(X)的经解量化值是QI(Q(R(X))。

在D56处,通过将预测值相加到经解量化残差来计算当前元素X的经解码值D(X):D(X)=P(X)+QI(Q(R(X)))。

在步骤D57期间,我们检查当前元素是否为将在区域Zi中处理的最后一个元素。如果是,则处理在D58处结束。否则,下一步骤为选择待解码的下一元素的步骤D51。

5.3.5对当前块的编码或解码的变型

参考图13和14,现描述对当前块进行编码或解码的变型。图13呈现根据串行模式对实施此变型的用于对图像进行编码或解码的方法的步骤。图14呈现根据并行模式实施此变型的用于对图像进行编码或解码的方法的步骤。

当预测模式为DPCM模式时,我们在额外步骤C11期间获得可用函数列表中待应用于当前块的元素以预测其元素的预测函数f。举例来说,所述列表包括水平预测函数、垂直预测函数和JPEG-LS预测函数或这些函数中的仅两者。当然,本发明不限于此实例,且所述列表可含有不同于先前所描述的那些预测函数的预测函数。

在编码器侧上,例如通过针对每一预测函数计算所诱发的速率-失真成本来测试所列出的预测函数。所选预测函数f为与最低速率-失真成本相关联的预测函数。下一步骤C3和C5或C51到C5N利用此信息的知识。明确地说,将当前块分裂成区域的步骤C3考虑此预测函数指示来调适所执行的分裂。实际上,如上文所描述,每一所选预测函数调节块的特定分裂,所述特定分裂将允许最小化处理当前块所需的机器循环的数目。然而,选择待处理的区域的步骤C4或分配待在可用处理单元上处理的区域的相应步骤C4'独立于预测函数f的选择,因为根据本发明,在当前块中分裂的区域可独立于彼此编码或解码。还调适编码步骤C5,因为用所选预测函数进行对所述区域中的每一者的预测。

有利地,所选预测函数f以经编码且插入经编码数据流/文件中的特定指示符的形式传输到解码器。举例来说,此指示符呈列表中预测函数的等级的形式。当然,仅在以DPCM模式对当前块进行编码时才插入此指示符。

在解码器侧上,步骤D11包括读取经编码数据流中的预测函数指示符并对其进行解码。当然,仅在块将以DPCM模式进行解码的情况下才读取此指示符。从经解码的特定指示符获得预测函数f。

以与编码器类似的方式,接下来的步骤D3和D5或D51到D5N考虑所获得的预测函数f以调适其对当前块的处理,而步骤D4或D4'不受影响。

根据本发明的另一方面,提供一种用于使用差分脉码调制(DPCM)对分裂成元素块的至少一个图像进行编码的方法。

根据本发明的此另一方面的一般特征,所述编码方法包括在经编码数据流(位流)中插入表示所谓的预测函数的经编码信息,所述预测函数允许从另一元素获得元素块的至少一个元素,如果预测函数属于预测函数的预定列表,则插入所述经编码信息。

在预测函数不属于预测函数的预定列表的情况下,不插入所述经编码信息。

优选地,预测函数的预定列表包括以下预测函数中的至少一者:

-水平方向预测函数,

-垂直方向预测函数,或

-JPEG-LS预测函数。

优选地,所述元素为图像的所述块的经先前编码的元素。

通过图15说明此方法的实施例。考虑待编码的图像I。其分裂成块。在C150处,选择待编码的块B。在C151处,在可用函数列表中获得待应用于块B以预测其元素的预测函数。举例来说,所述列表包括水平预测函数、垂直预测函数和JPEG-LS预测函数或这些函数中的仅两者。当然,本发明不限于此实例,且所述列表可含有不同于之前所描述的那些预测函数的预测函数。举例来说,所列出的预测函数通过针对每一预测函数计算所诱发的速率-失真成本计算来测试。所选预测函数f为与最低速率-失真成本相关联的预测函数。

在C152处,对表示所获得的预测函数f的一条信息进行编码,且将其插入流或文件BS中。

在C153处,在块B中选择至少一个元素或像素x。针对当前区域的像素界定扫描次序。此扫描次序本身是已知的且是预定的。明确地说,其由用于当前像素的预测的像素确定,且其将以其经解码形式可用(且因此将在之前进行)。因此,常规扫描次序为词典次序,其针对先前描述的本地预测函数起作用。

对于被称作当前元素的此所选元素X,在C154处从已经通过应用预测函数f处理的至少一个相邻预测物元素来预测值P(X)。

在C155处,通过计算R(X)=X-P(X)来获得预测残差的值。随后,使用例如本身已知的标量量化在C156处对值R(X)进行量化。获得量化值Q(R(X))。

在C157处,使用例如霍夫曼编码器或算术编码器等已知构件来对经量化残差Q(R(X))进行编码,且所获得的经编码数据插入在流或文件BS中。

在C158处,通过进行反向操作来计算当前元素X的经解码值D(X)。此值存储于存储器M'中以便可用于预测块B或所述图像的接下来的元素。

如果与在前一步骤处使用的量化器相关联的解量化器被称作QI,则X的经解码值D(X)为:D(X)=P(X)+QI(Q(R(X)))

在步骤C159期间,我们检查当前元素X是否为将在区域Zi中处理的最后一个元素。如果是,则在C160处检查是否仍存在待处理的块。如果情况是这样,则处理结束。否则,重复先前步骤。

根据本发明的另一方面,提供一种用于使用差分脉码调制(DPCM)对经编码数据流中的至少一个经编码图像进行解码的方法。所述图像分裂成元素块。根据本发明的此另一方面的一般特征,所述解码方法包括从所述流获得表示所谓的预测函数的一条信息,所述预测函数允许从另一元素获得所述元素块的至少一个元素,所述预测函数属于预测函数的预定列表。

在预测函数不属于预测函数的预定列表的情况下,不获得所述信息。

优选地,预测函数的预定列表包括以下预测函数中的至少一者:

-水平方向预测函数,

-垂直方向预测函数,或

-JPEG-LS预测函数。

优选地,所述元素为图像的所述块的经先前解码的元素。

通过图16说明此方法的实施例。考虑经编码数据流或压缩文件BS。经编码数据表示待解码的图像I。在D160处,选择待在图像I中处理的块B,且在所述流中读取表示待应用于块B的预测函数的一件信息ICf。在D161处,对信息ICf进行解码,且在D162处获得预测函数f。在D163处,在块B中选择元素或像素X。

对于被称作当前元素的此所选元素X,在D164处根据DPCM技术从已经通过应用预测函数f处理的至少一个相邻预测物元素来预测值P(X)。

在D165处,经量化残差Q(R(X))在经编码数据中读取,且其在D166处使用已知方式(实施于编码器侧上的那些方式的反转)进行解码。

在D167处,计算预测残差的经解量化值R(X)。如果与在编码器处使用的量化器相关联的解量化器被称作QI,则R(X)的经解量化值是QI(Q(R(X))。

在D168处,通过将预测值相加到经解量化残差来计算当前元素X的经解码值D(X):D(X)=P(X)+QI(Q(R(X)))。

在步骤D169期间,我们检查当前元素X是否为将在块B中处理的最后一个元素。如果是,则在D170处检查图像I中是否仍存在待处理的块。如果情况是这样,则处理结束。否则,重复先前步骤。

本发明的这个方面的优点在于选择最佳地适于当前块的预测函数,这允许改进预测的质量且因此减小待编码的残差。

5.4编码和解码装置

根据由图17A说明的本发明的特定实施例,编码方法的步骤由计算机程序指令实施。为此目的,编码装置100或解码装置200具有计算机的常规架构,且明确地说包括存储器MEM 101、201、处理单元UT 102、202(例如配备有至少一个微处理器P1),且由存储于存储器MEM中的计算机程序Pg驱动。计算机程序Pg包括当程序由处理器执行时实施如上文所描述的编码或解码方法的步骤的指令。

在初始化后,计算机程序Pg的代码指令例如在RAM存储器中加载,随后由处理器执行。明确地说,处理单元UT的处理器根据计算机程序Pg的指令实施上文在这些不同变型中所描述的编码或解码方法的步骤。

根据由图17B说明的本发明的另一实施例,处理单元包括若干处理器P1到PN,其中N为大于或等于2的整数。当通过处理器P1到PN进行方法的执行时,程序Pg'包括实施如上文所描述的编码或解码方法的步骤的指令,如参考图10的部分5.3.2的所谓的“并行”实施例中所描述。根据此实施例,例如P1的“主控器”处理器执行编码方法,且在C'4处分配可用处理器上的区域的处理,以使得并行地执行编码/解码步骤C51/D51…C5N/D5N。有利地,装置100、200除了存储器M之外还包括若干存储器MEM2到MEMN,其适于暂时存储对当前区域的元素的预测、其(解)量化残差、其解码/编码值等。

根据图18所说明的本发明的另一特定实施例,根据本发明的编码或解码方法由功能模块实施。出于此目的,装置100、装置200进一步包括:

-用于将块分裂成至少两个区域的模块CUT;

-用于处理至少一个所述区域的模块PROC,包括根据预定扫描次序扫描所述区域的所述元素,且对于称为当前元素的至少一个被扫描元素:

○选择SEL先前根据预定相邻函数编码或解码的至少一个相邻预测物元素;

○依据以下项将所述当前元素预测PRED为经预测当前元素:

■如果所述至少一个相邻预测物元素属于所述区域,则依据所述至少一个相邻预测物元素;

■否则,依据至少一个替换值。

处理单元UT与上文所描述的不同功能模块和存储器MEM协作以便实施编码或解码方法的步骤。

上文所描述的不同功能模块可呈硬件和/或软件形式。当呈软件形式时,此类功能模块可以包括一个或几个处理器、存储器和程序代码指令,当代码指令被一个/所述处理器执行时,所述程序代码指令实施对应于模块的功能。当呈硬件形式时,此类功能模块可由任何类型的合适的编码电路实施,例如但不限于微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、接线逻辑单元。

这些模块由处理单元UT的处理器驱动。

有利地,功能模块PROC可包括若干处理器,其经布置以便并行地处理在根据本发明的当前块中分裂的区域。

有利地,装置100和/或装置200可嵌入于例如智能电话、平板计算机、电视机、个人计算机等终端设备ET 10中。装置100、装置200接着经布置以便至少与终端ET的以下模块协作:

-数据发射器/接收器模块E/R1,通过所述数据发射器/接收器模块在电信网络(例如,有线网络或无线电网络)中传输位流TB或压缩文件FC;以及

-模块M,其用于存储M待编码的图像或图像序列、所获得的经编码数据流/文件或经解码图像或图像序列。

理所当然,上文已经描述的实施例仅出于指示而非限制性目的而提供,且所属领域的技术人员可容易地作出许多修改,而不脱离本发明的范围。

相关技术
  • 用于通过块切割将图像译码和解码成区的方法和装置
  • 用于对实施不同大小的块的图像序列进行译码的方法和装置、信号、数据媒体、解码方法和装置以及对应于其的计算机程序
技术分类

06120113293436