用于通过选择待预测像素来对至少一个图像进行编码和解码的方法和装置,以及对应的...的利记博彩app

文档序号:7977569阅读:147来源:国知局
用于通过选择待预测像素来对至少一个图像进行编码和解码的方法和装置,以及对应的 ...的利记博彩app
【专利摘要】本发明涉及一种用于对表示至少一个图像的信号进行解码的方法。根据本发明,针对所述图像的至少一个待解码块,这种方法实施以下步骤的至少一次迭代:根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征,确定(61)至少一个选择参数,所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少一个像素;根据所述至少一个选择参数,选择(62)所述待解码块中的至少一个待预测像素;针对称作锚像素的至少一个选定的待预测像素,根据至少一个参考像素来预测(63)所述锚像素,从而输出预测像素。
【专利说明】用于通过选择待预测像素来对至少一个图像进行编码和解码的方法和装置,以及对应的计算机程序
【技术领域】
[0001]本发明的领域涉及对图像或图像序列进行编码和解码,尤其涉及对视频流进行编码和解码。
[0002]确切地说,本发明涉及使用块式图像表示来压缩图像或图像序列。
[0003]本发明尤其可以应用到在当前或者未来编码器中实施的图像或视频编码(JPEG、MPEG、H.264、HEVC等及其修正),并且可以应用到对应的解码。
【背景技术】
[0004]就内存而言,数字图像和图像序列占据了大量的空间。因此,在传输这些图像时,需要对它们进行压缩,以防止在用于该传输的网络出现拥塞问题。实际上,此网络上可用的比特率通常受到限制。
[0005]目前已知多种视频数据压缩技术。在这些技术中,H.264技术建议对当前图像的像素实施预测,而这涉及属于同一图像(帧内预测)或者属于前一或后一图像(帧间预测)的其他像素。
[0006]具体而言,帧内预测利用了图像内的空间冗余。为此,图像细分为宏块,而宏块可以细分为由像素组成的块。随后,借助于已重建的信息来对(宏)块进行预测,所述已重建的信息对应于当前图像中先前编码/解码的(宏)块,依据的是图像中的(宏)块被扫描的顺序。因此,针对根据传统“光栅扫描”型扫描顺序(逐行)进行编码的(宏)块,已重建的图像包括位于被编码的(宏)块上方的成行像素,以及位于被编码的(宏)块左侧的成列像素。
[0007]此外,传统上,借助于对以下项的预测来完成对当前块的编码:称作预测块的当前块,以及对应于当前块与预测块之间的差异的预测残余或“残余块”。随后,(例如)使用DCT(离散余弦变换)型变换来对获得的残余块进行变换。变换过的残余块的系数随后进行量化,之后通过熵编码进行编码,并且传输到解码器,所述解码器可以通过将此残余块添加到预测中来重建当前块。
[0008]解码会逐个图像完成,而且对于每个图像而言,解码会逐个(宏)块完成。针对每个(宏)块,读取流中的对应元素。对与(宏)块相关联的残余块的系数进行逆量化和逆变换。随后,计算(宏)块的预测,并通过将预测添加到已解码的残余块中来重建(宏)块。
[0009]根据H.264技术的帧内预测技术的一个缺点在于,传统上,(宏)块的预测依据是位于被编码的(宏)块上方以及位于被编码的此宏块左侧的先前重建像素。
[0010]在传输预测残余方面,可以证实以下情况比较困难且昂贵:对远离这些先前重建块的区域中的当前(宏)块的像素进行预测,尤其是对位于当前(宏)块右下方的像素进行预测。
[0011]此外,根据H.264的帧内预测技术限于对特定(宏)块进行预测,所述(宏)块被分区成大小为16xl6、8x8或4x4的块。现在这些分区并不总是适当,尤其是在块的不连续性比较复杂的情况下。
[0012]因此,这些传统的帧内预测方案在对具有不连续性的块进行编码时会遇到困难,从而(例如)无法通过正方形或矩形分区进行建模。
[0013]为了克服这些缺点,J.荣(J.Jung)等人在2009年I月美国圣何塞市(SanJose USA) VCIP的“用于图像和视频编码的巾贞内预测ID宏块分区(Intra prediction IDmacroblock partitioning for image and video coding),,中提出了一种角军决方案。
[0014]该解决方案也称作ID帧内解决方案,主要在于将(宏)块的块分区为“线性”分区,例如,可以成直线或断开的行或列,以及随后逐个对这些行或列进行预测。编码之后,行或列便可以用于对将要编码的行或列进行预测。
[0015]通过这种方式,在执行操作时,先前重建的像素量会增加,并且对剩余像素的预测会具有最高质量,因此,就传输预测残余而言成本较低。
[0016]不幸的是,如同根据H.264的帧内预测技术的情况一样,所提出的线性分区并非总是适合于块的内容。
[0017]因此,需要一种帧内预测的新颖技术,这种技术可以用于提高预测质量,从而改进对图像或视频数据的压缩。

【发明内容】

[0018]本发明提出一种并不具有现有技术的所有这些缺点的新颖解决方案,该解决方案的形式为一种用于对表示至少一个图像的信号进行解码的解码方法。
[0019]根据本发明,针对待解码图像的至少一个块,这种方法实施以下步骤的至少一次迭代:
[0020]-根据与图像的参考区域的至少一个参考像素相关联的至少一个特征,确定至少一个选择参数,
[0021]所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少
一个像素,
[0022]-根据所述至少一个选择参数,选择待解码块中的至少一个待预测像素;
[0023]-针对称作锚像素(anchorpixel)的至少一个选定的待预测像素,根据参考区域的至少一个参考像素来预测所述锚像素,从而传递预测像素。
[0024]因此,本发明依赖于对图像进行解码的新颖方法,该方法依赖于每次迭代时具体选择待解码块中的待预测像素。
[0025]具体而言,这种具体选择待预测像素的依据是至少一个选择参数,而在确定所述至少一个选择参数时考虑到参考区域的像素特征(参考像素的位置、与这些像素相关联的预测方向、与这些像素相关联的预测残余等)。
[0026]因此,按照特定顺序对待解码块的不同像素进行扫描,该顺序适于所述块的内容,从而提高帧内预测的效率,即使是在出现复杂的不连续性的情况下也是如此。
[0027]此外,所述参考区域包括至少一个先前编码/解码的块和/或先前迭代中预测的至少一个像素。因此,所述迭代包括以下步骤:根据预测步骤期间所预测的像素,对参考区域进行更新。
[0028]因此,先前预测像素的数目以及参考区域的大小将在所述方法执行时增加,并且在解码期间发生改变。因此,可以根据更加接近所述待预测像素的参考像素来完成所述预测,从而提高预测质量。
[0029]具体而言,所述选择参数属于包括以下项的组:
[0030]-预测起点,其对应于将用于预测锚像素的参考区域的像素;
[0031]-用于预测所述锚像素的预测方向;
[0032]-用于预测所述锚像素的预测距离。
[0033]应注意,在用于选择待预测像素的步骤中,可以单独或结合使用这些选择参数。例如,选择步骤考虑到以下参数:预测起点以及预测距离和/或预测方向。因此,选择了相对于所述预测起点位于特定预测距离和/或预测方向的所有待预测像素。根据另一实例,所述选择步骤仅考虑参数预测距离。因此,选择了距所述参考像素一定距离的所有待预测像素。
[0034]具体而言,所述确定步骤考虑到至少在先前迭代中预测的像素的位置。
[0035]因此,本发明考虑到在先前迭代期间选定的锚像素,以确定选择参数并且选择新的待预测像素。
[0036]根据第一实施例,所述确定步骤确定至少一个预测起点,以便用于预测锚像素。
[0037]使用预测起点类型的选择参数确保了用于在当前迭代中预测所述锚像素的参考像素是良好的预测值,从而能够给出较低的预测残余。
[0038]为此,根据第一实例,所述确定步骤实施以下步骤:
[0039]-确定至少一对参考像素的像素之间的相关性;
[0040]-选择相关性高于预定阈值的一对或多对;
[0041]-对应于预测起点,从选定对的每一者中提取参考像素。
[0042]根据第二实例,所述确定步骤实施以下步骤:
[0043]-确定与至少一个参考像素相关联的预测残余;
[0044]-对应于预测起点,选择预测残余小于或等于预定阈值的所述参考像素。
[0045]具体而言,所述确定步骤还考虑到预测起点之间的距离和/或预测起点在待解码块的不同区域中的分布。
[0046]这样,预测起点便可以与待解码块的各个不同区域或区相关联。
[0047]根据第二实施例,考虑到用于预测所述锚像素的预测起点,所述确定步骤确定至少一个预测方向,以便用于预测所述锚像素。
[0048]使用预测方向类型的选择参数确保图案或其轮廓方面的良好预测,从而能够在当前迭代中使用相关参考像素来预测锚像素。
[0049]为此,在第一实例中,所述确定步骤实施以下步骤:
[0050]-确定至少一对参考像素的像素之间的相关性,一对包括用于预测所述锚像素的预测起点,以及邻近所述预测起点的参考像素;
[0051]-选择相关性高于预定阈值的一对;
[0052]-确定与选定对相关联的预测方向。
[0053]根据第二实例,所述确定步骤考虑到预测起点的方向:
[0054]-如果用于预测所述锚像素的预测起点属于先前编码/解码的块,那么将用于预测所述先前编码/解码的块的预测模式的方向分配到所述预测方向;[0055]-如果用于预测所述锚像素的预测起点是在先前迭代中预测的像素,那么将用于选择在先前迭代中预测的像素的方向分配到所述预测方向。
[0056]在第三实例中,所述确定步骤考虑到预测起点的位置。因此,当待解码块包括至少两个不同的区域时,所述确定步骤根据所述预测起点所属的区域来确定至少一个预测方向,以便用于预测所述锚像素。
[0057]根据第三实施例,所述确定步骤确定至少一个预测距离,以便用于预测所述锚像素。
[0058]使用选择预测距离类型的参数使得能够将锚像素有效分布在待解码块中,从而能够有助于预测,尤其是在随后的迭代期间。
[0059]为此,根据第一实例,具体依据与先前迭代中根据预测起点和/或预测方向来预测的至少一个像素相关联的至少一个预测残余,所述确定步骤根据预测起点和/或预测方向来确定至少一个预测距离。
[0060]根据第二实例,根据与预测起点相关联的预测残余,所述确定步骤依据预测起点来确定至少一个预测距离。
[0061]根据本发明的另一方面,所述选择步骤实施以下子步骤:
[0062]-根据所述选择参数,预选待解码块中的至少一个待预测像素,
[0063]-向所述预选的待预测像素分配权数(weight),其中考虑到预选期间使用的选择参数;
[0064]-选择权数大于预定阈值的预选的待预测像素。
[0065]这样,有可能只选择具有较大权数的待预测像素作为锚像素,这些像素被视作在当前迭代期间最容易预测,并且被视作随后迭代的最佳预测值。
[0066]在另一项实施例中,本发明涉及一种用于对表示至少一个图像的信号进行解码的
>J-U ρ?α装直。
[0067]根据本发明,这种装置包括以下构件,所述构件的启用形式是针对图像的至少一个待解码块的至少一次迭代:
[0068]-确定构件,其用于根据与图像的参考区域的至少一个参考像素相关联的至少一个特征,确定至少一个选择参数,
[0069]所述参考区域包括至少一个先前编码/解码的块和在先前迭代中预测的至少一个像素,
[0070]-选择构件,其用于根据所述至少一个选择参数来选择待解码块中的至少一个待预测像素;
[0071]-预测构件,针对称作锚像素的至少一个选定的待预测像素,所述预测构件用于根据参考区域的至少一个参考像素来预测所述锚像素,从而传递预测像素。
[0072]这种解码装置尤其适于实施上文所述的解码方法。例如,所述装置可以是MPEG、HEVC或H.264型视频解码器,或者是根据任何未来压缩标准的视频解码器。
[0073]当然,此装置可以包括根据本发明的解码方法的不同特征。因此,这种解码器的特征和优点与实施解码方法的那些解码器相同,并且将不作更详细的描述。
[0074]本发明的另一方面涉及一种用于对至少一个图像进行编码的方法。
[0075]根据本发明,这种方法针对图像的至少一个待编码块执行以下步骤的至少一次迭代:
[0076]-根据与图像的参考区域的至少一个参考像素相关联的至少一个特征,确定至少一个选择参数,
[0077]所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少
一个像素,
[0078]-根据所述至少一个选择参数来选择待编码块中的至少一个待预测像素;
[0079]-针对称作锚像素的至少一个选定的待预测像素,根据参考区域的至少一个参考像素来预测所述锚像素,从而传递预测像素。
[0080]因此,本发明提出了对图像进行编码的新颖方法,该方法依赖于在每次迭代时具体选择待编码块中的待预测像素。
[0081]具体而言,这种方法提高了帧内编码的效率,尤其是对于难以进行预测的块而言。由于像素的预测质量较高,因此这种编码技术在预测残余的传输方面成本较低。
[0082]这种编码方法尤其适用于对计划根据上文所述的解码方法进行解码的图像序列进行编码。这样,用于确定、选择和预测的步骤类似于参考解码方法描述的那些步骤,以便采用相同的扫描顺序对待编码块(在编码时)和待解码块(在解码时)进行扫描。
[0083]此编码方法的特征和优点与上文中描述的解码方法的那些特征和优点相同。因此将不作更详细的描述。
[0084]在另一项实施例中,本发明涉及一种用于对至少一个图像进行编码的装置。
[0085]根据本发明,这种装置包括以下构件,所述构件的启用形式是针对图像的至少一个待编码块的至少一次迭代:
[0086]-确定构件,其用于根据与图像的参考区域的至少一个参考像素相关联的至少一个特征,确定至少一个选择参数,
[0087]所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少
一个像素,
[0088]-选择构件,其用于根据所述至少一个选择参数来选择待编码块中的至少一个待预测像素;
[0089]-预测构件,针对称作锚像素的至少一个选定的待预测像素,所述预测构件用于根据参考区域的至少一个参考像素来预测所述锚像素,从而传递预测像素。
[0090]这种编码装置尤其适用于实施上文所述的编码方法。例如,所述装置可以是MPEG、HEVC或H.264型视频编码器,或者是根据未来压缩标准的视频编码器。
[0091]当然,这种装置可以包括涉及本发明的编码方法的不同特征。因此,此编码器的特征和优点与实施编码方法的那些装置相同,且不作更详细的描述。
[0092]本发明还涉及一种计算机程序,其包括用于在处理器执行此程序时实施上文中描述的编码方法和/或解码方法的指令。这种程序可使用任何编程语言。这种程序可以从通信网络下载和/或记录在计算机可读媒体上。
【专利附图】

【附图说明】
[0093]通过下文对一项特定实施例的描述,并借助于简单的说明性而非详尽的实例,本发明的其他特征及优点将更加清楚,在这些附图中:[0094]-图1描绘根据本发明的编码方法的一般原理;
[0095]-图2示出根据本发明的一项特定实施例的编码方法的主要步骤;
[0096]-图3示出根据本发明考虑的三种类型的选择参数;
[0097]-图4A到图4C示出根据一项实施例的第一实例在不同迭代结束时获得的待编码块Bk ;
[0098]-图5A和图5B示出根据一项实施例的第二实例在不同迭代结束时获得的待编码块Bk ;
[0099]-图6描绘根据本发明的解码方法的一般原理;
[0100]-图7和图8示出根据本发明的一项特定实施例的编码器和解码器的简化结构。
【具体实施方式】
[0101]5.1 一般原理
[0102]本发明的一般原理依赖于对图像的至少一个待编码或解码(宏)块进行迭代预测,所述迭代预测依赖于在每次迭代时审慎地选择待预测像素,该像素被称作锚像素。
[0103]具体而言,这些锚像素可以用于对下一次迭代期间的其他待预测像素进行预测。因此,在当前迭代期间尝试选择一些待预测像素,而这些像素将成为下一次迭代的良好预测值。因此,在以下情况下要对整个(宏)块进行扫描:当前迭代时预测一些像素(锚像素),并且传输相关联的预测残余,以及下一次迭代时使用这些锚像素来预测其他像素并传输相关联的预测残余。
[0104]这样,每次迭代时可以对包括先前编码/解码的块和/或在先前迭代中预测的至少一个像素的参考区域进行更新,方法是添加当前迭代时预测的一个或多个像素。下一次迭代时对像素进行的预测从而得到改进,这是因为一个或多个锚像素使参考区域更加充实。
[0105]这种技术提高了帧内编码的效率,尤其是对难以使用传统编码技术(例如,参考现有技术来描述的H.264或者帧内ID技术)进行预测的块以及含有不同纹理的区域的块而H。
[0106]5.2编码器的工作
[0107]图1描绘了根据本发明的对至少一个图像进行编码的一般原理。
[0108]根据该一般原理,针对图像的至少一个待编码块Bk,执行以下步骤的至少一次迭代:
[0109]-根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征(例如,以下类型:参考像素的位置、与这些像素相关联的预测方向、与这些像素相关联的预测残余等),确定11至少一个选择参数(O、direct、dist等),
[0110]所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少
一个像素,
[0111]-根据所述至少一个选择参数,选择12待编码块Bk中的至少一个待预测像素;
[0112]-针对称作锚像素A的至少一个选定的待预测像素,根据参考区域的至少一个参考像素来预测13所述锚像素,从而传递预测像素Ap。
[0113]这些步骤进行迭代,直到待编码块Bk中的每个像素都经过处理为止。[0114]应注意,对于第一次迭代而言,参考区域仅包括属于至少一个先前编码/解码块的像素。对于随后的迭代而言,参考区域还包括在先前迭代中获得的锚像素。
[0115]下文中参考图2描述了根据本发明的一项特定实施例的用于对至少一个图像进行编码的主要步骤。
[0116]根据此项实施例,考虑将图像分为(宏)块,每个(宏)块自身被分为像素块。
[0117]只要并非当前(宏)块MBc中的所有像素都被预测,随后的步骤20便要进行迭代。对于第一次迭代而言,参考区域Rref 21仅包括先前编码的像素,例如,所述先前编码的像素对应于待编码(宏)块上方的行以及待编码(宏)块左侧的列。
[0118]在第一步骤22期间,编码器首先考虑参考区域Rref 21的至少一个像素的特征以及选择规则来确定至少一个选择参数,如下文所述,并且选择(宏)块MBc中的η个待预测像素,其中η是大于或等于I的整数。
[0119]随后,编码器对η个待预测像素进行预测23,所述像素被称作锚像素。
[0120]必要时,与这η个锚像素相关联的预测残余在步骤24期间进行变换和量化,从而传输27到解码器。
[0121]所述η个锚像素还用于更新参考区域Rref。具体而言,在步骤25期间,编码器对与所述η个锚像素相关联的预测残余执行逆量化和逆变换。因而编码/解码的锚像素在步骤26期间添加到参考区域中。因此,参考区域此后便包括先前编码的像素以及当前迭代时编码/解码的锚像素,其中所述先前编码的像素对应于待编码(宏)块上方的行以及待编码(宏)块左侧的列。
[0122]只要并非(宏)块MBc中的所有像素都被预测,步骤22到26便要进行再次迭代。
[0123]5.3确定选择参数并且选择锚像素
[0124]Α)选择参数
[0125]下文详细描述了用于确定选择参数以及用于选择η个锚像素的步骤(图1和图2中标记为11、12、22的步骤)。
[0126]具体而言,可以根据以下选择参数的组合而将待预测像素选作锚点:
[0127]-预测起点,其对应于将用于预测锚像素的参考区域的像素;
[0128]-用于预测所述锚像素的预测方向;
[0129]-用于预测所述锚像素的预测距离。
[0130]针对待编码块Bk,图3更加具体地描绘了这三个选择参数。例如,图3中用阴影表示的参考区域被认为是由先前编码的像素和先前迭代时选择的五个锚像素形成的,其中所述先前编码的像素对应于待编码块上方的行以及待编码块左侧的列。
[0131]预测起点31由圆表示,并且对应于参考区域(阴影部分)的一个像素,所述像素用于在当前迭代时预测锚像素。
[0132]预测方向32由单向箭头表示。
[0133]预测距离33由双向箭头表示。
[0134]下文描述用于确定这些参数的不同技术,从而能够确保高质量地预测块Bk的像素。
[0135]B)预测起点
[0136]可以实施若干种技术来确定预测起点,这些技术使得能够选择不同的锚点。[0137]因此,在第一实例中,确定步骤借助于以下步骤来确定至少一个预测起点,以便预测一个或多个锚像素:
[0138]-确定参考区域的至少一对像素的像素之间的相关性;
[0139]-选择相关性比预定阈值高的一对或多对;
[0140]-对应于预测起点,从选定对的每一者中提取参考像素。
[0141]根据此第一实例,因而在确定预测起点时考虑到了参考区域的像素子集的像素之间的相关性。例如,将参考区域的像素进行两两比较,并且对于每一对而言,此对的两个像素之间的差值绝对值便得以确定。从而选择出差值绝对值最小的一对或多对,即,相关性最高且因此预测最佳。因此,对于这些选出的对中的每一者而言,获得了预测起点。
[0142]在第二实例中,确定步骤基于以下步骤来确定至少一个预测起点,以便用于预测一个或多个锚像素:
[0143]-确定与至少一个参考像素相关联的预测残余;
[0144]-对应于预测起点,选择预测残余小于或等于预定阈值的参考像素。
[0145]因此,通过研究与参考区域的像素相关联的预测残余,可以确定当前迭代的预测起点。此预测残余可以在先前迭代时确定,或者在对当前块Bk的邻近块进行编码的过程中确定。
[0146]除了这两个实例之外,确定预测起点时也可以考虑一个或多个约束条件,例如,取决于预测起点之间的距离,和/或预测起点在块Bk的不同区域中的分布。
[0147]因此,每次迭代时界定的预测起点必须(例如)彼此间隔开来,以确保块Bk中的锚像素均匀分布。
[0148]根据另一实例,如果块Bk所属的宏块包括由轮廓标定的若干区域,那么便需要确保预测起点在不同区域中合理分布。例如,每次新迭代时,要针对每个区域确定不同的预测起点。
[0149]C)预测方向
[0150]同样,可以实施若干种技术来确定预测方向,这些技术使得能够选择不同的锚点。因此,根据第一实例,确定步骤借助于以下步骤来确定至少一个预测方向,以便用于预测一个或多个锚像素:
[0151]-至少一对参考像素的像素之间的相关性,一对包括用于预测所述锚像素的预测起点,以及邻近所述预测起点的参考像素;
[0152]-选择相关性高于预定阈值的一对;
[0153]-确定与选定对相关联的预测方向。
[0154]根据此第一实例,因而在确定预测方向时考虑到了预测起点与邻近此预测起点的参考像素之间的相关性。例如,如果像素存在的话,则将预测起点与邻近此预测起点的每个参考像素(即,属于所述参考区域的每个像素)进行比较,并且针对每一对,确定此对的两个像素之间的差值。选择出差值最小(即,相关性最高,且因此预测最佳)的一对。因此,用于预测一个或多个锚像素的预测方向对应于与选择出的那对相关联的预测方向。
[0155]确定预测方向的步骤还可以考虑到用于预测所述锚像素的预测起点。
[0156]因此,根据第二实例,确定步骤考虑到预测起点的方向:
[0157]-如果预测起点属于先前编码/解码的块,那么锚像素的预测方向由用于预测此先前编码/解码块的预测模式的方向(水平、垂直等)界定;
[0158]-如果预测起点是先前迭代时预测的像素,那么锚像素的预测方向由用于选择先前迭代时预测的此像素的方向界定。
[0159]根据第三实例,确定步骤考虑到预测起点的位置。因此,如果待编码块包括由轮廓标定的若干区域,那么确定步骤便会考虑到用于预测所述锚像素的预测起点所属的区域。因此,界定了预测方向,使得预测起点和对应的锚像素属于所述块的相同区域。为此,将所述方向选为(例如)平行于所述轮廓。
[0160]除了这三个实例以外,确定预测方向时也可以考虑一个或多个约束条件,例如,取决于先前迭代期间获得的锚像素的位置。
[0161]例如,必须避免导向已经预测的锚像素的方向,以确保锚像素有效分布。
[0162]D)预测距离
[0163]同样,可以实施若干种技术来确定预测距离。
[0164]因此,根据第一实例,依赖于与先前迭代时根据预测起点和/或预测方向预测的至少一个像素相关联的至少一个预测残余,确定步骤根据预测起点和/或预测方向来确定至少一个预测距离。
[0165]换言之,预测距离可以根据先前迭代的结果来确定,其中尤其要考虑到在先前迭代时根据相同的预测起点和/或预测方向获得的锚像素的预测效率。此预测效率或质量是根据预测之后获得的预测残余界定的。块Bk中的像素扫描顺序可以通过以下方式决定:预测残余越小(即,预测质量较好),预测距离可以越大。
[0166]在第二实例中,根据与预测起点相关联的预测残余,确定步骤依据预测起点来确定至少一个预测距离,以预测一个或多个锚像素。
[0167]换言之,确定预测距离时可以考虑预测起点的质量:如果预测起点的质量较好,即,如果预测残余较低,那么预测距离可以较大。相反,如果预测起点的质量较差(预测残余较高),则界定较小的预测距离,以限制风险(存在这样的风险,即,就预测残余的大小而言,对该新锚像素进行预测可能比较困难,因此成本较高)。
[0168]根据第三实例,在考虑到参考像素与待预测像素的接近度的情况下,确定步骤确定至少一个预测距离。
[0169]换言之,界定预测距离,以便使锚像素在块Bk中最佳分布。例如,界定预测距离,以使得在迭代期间所有锚点之间的距离相同。因此,每次迭代便可获得“完美栅格”。
[0170]E)根据选择参数来选择锚像素
[0171]随后便有可能根据一个选择参数或者若干选择参数的组合(可能是相同类型,但根据不同的技术确定)来选择块Bk中的一个或多个待预测像素。
[0172]例如,如果仅使用预测距离类型的选择参数,那么就可能选择距参考像素的距离为Distl的所有待预测像素。如果仅使用预测方向类型的选择参数,那么就可能选择相对于参考像素而言位于方向Directl上的所有待预测像素。如果使用预测起点和预测距离类型的选择参数,那么就可能选择距起点O的距离为Dist2的所有待预测像素。如果使用预测起点和预测方向类型的选择参数,那么就可能选择相对于起点O而言位于方向Direct2上的所有待预测像素。
[0173]当待预测像素的数目过大时,使用选择参数的组合尤其能够针对迭代选择数目受限的锚像素(例如,单个锚像素)。
[0174]具体而言,当针对迭代界定了若干选择参数时,有可能向待预测像素分配权数,所述待预测像素是根据选择相关性而基于这些参数选择的。
[0175]例如,将较高的信任度,且因此,较大的权数分配给根据与选择标准最相关的一个或多个选择参数获得的像素,而将较低的信任度,且因此,较小的权数分配给根据与选择标准次相关的一个或多个选择参数获得的像素。那么,锚像素便对应于权数最大的待预测像素。
[0176]例如,考虑预选步骤,在该步骤中预选出待预测像素的两个子集:
[0177]-根据预测起点01以及预测方向Dl获得的第一子集;
[0178]-根据预测起点02以及预测方向D2获得的第二子集。
[0179]例如,起点01和02是通过确定参考像素之间的相关性而获得的,如上文所述。例如,预测起点01是根据相关性最高的一对获得的,而预测起点02是根据相关性第二高的一对获得的。
[0180]随后将等于2的权数分配给第一子集的待预测像素(根据“最佳”预测起点获得),并且将等于I的权数分配给第二子集的待预测像素(根据“次佳”预测起点获得)。因此,属于这两个子集的待预测像素具有等于3权数。
[0181]随后,仅将权数最大的待预测像素(即,权数等于3的待预测像素)选作锚像素。
[0182]参照图4A到图4C以及图5A和图5B,现在介绍根据本发明实施方案的两个实例在编码方法的若干次迭代结束时获得的块Bk。
[0183]在这些图中,倾斜的阴影表示参考区域,而水平的阴影表在当前迭代时预测的锚像素。
[0184]具体而言,图4A描绘了根据第一实例的编码方法的第一次迭代,从而尤其能够根据三个选择参数(即,起点、方向和距离)来选择锚像素41。
[0185]具体而言,在此第一次迭代期间,根据参考像素之间的相关性来确定预测起点。有可能将位于右上方的标记为O的像素确定为预测起点(对应于参考像素之间的最大相关性)。预测方向是根据起点O与邻近起点O的参考像素之间的相关性确定的。垂直方向是对应于起点O与其邻近参考像素之间的最大相关性的一个方向。预测距离被设置为2。根据这三个参数(起点O、垂直参考以及等于2的距离),待预测像素41被选作锚像素。在此迭代期间获得的锚像素被整合到参考区域中,以用于未来的迭代。
[0186]在图4B中描绘的第二次迭代中,尝试通过确定新的选择参数来选择新的待预测像素。
[0187]例如,先前编码的锚像素41被确定为预测起点。再次使用垂直方向,这是因为它对应于锚像素41与邻近参考像素之间的最大相关性。预测距离被再次设置为2。根据这三个参数,将待预测像素42选作新的锚像素。为了未来的迭代,将锚像素42整合到参考区域中。
[0188]最终,在图4C所示的最后一次迭代中,对所有剩余的待预测像素进行预测。应注意,这些剩余像素都紧邻至少一个先前编码的参考像素,从而确保了预测效率。
[0189]图5A和图5B描绘了一项实施例的第二实例,其中基于用于预测先前编码/解码块的预测模式的方向(水平、垂直等),确定预测方向类型的选择参数。[0190]因此,在描绘了第一次迭代的图5A中,首先确定预测起点01和02类型的两个选择参数。实际上,在此实例中,参考像素之间的相关性函数针对这两个起点返回相同的值。
[0191]随后,将与这些预测起点01和02所属的块相关联的预测模式的方向用来确定预测方向类型的选择参数。例如,预测起点01所属的子块SBl被视作已使用界定了水平第一预测方向的水平方向进行预测,而预测起点02所属的子块SB2被视作已使用界定了垂直第二预测方向的垂直方向进行预测。
[0192]最终,考虑将预测距离类型的选择参数设置为2。
[0193]根据前三个参数(起点01、水平方向以及等于2的距离),将待预测的第一像素51选作锚像素。根据三个其他参数(起点02、垂直方向以及等于2的距离),将待预测的第二像素52选作锚像素。在此迭代期间获得的锚像素被整合到参考区域中,以用于未来的迭代。
[0194]在图5B所示的第二次迭代期间,参考像素之间的相关性函数用于确定单个起点像素03。
[0195]随后,与预测起点03所属的子块SB3相关联的预测模式的方向用于确定预测方向类型的选择参数,本文中对应于对角线方向。
[0196]最终,再次考虑将预测距离类型的选择参数设置为2。
[0197]根据三个参数(起点03、对角线方向以及等于2的距离),将待预测的新像素53选作锚像素。
[0198]根据其他实例(未图示),有可能在每次迭代时选择预定数目的待预测像素(例如,η个像素)。还有可能通过函数来选择为其确定选择参数的所有像素,其中所述函数返回高于(或低于)预定阈值的一个值。例如,将预测残余低于预定阈值的所有参考像素确定为预测起点。
[0199]根据本发明,对块的像素进行扫描的顺序因而适于所述块的内容。因此,有可能在最初几次迭代期间预测出“最简单的”像素,而在最后几次迭代期间预测出“最复杂的”像素(例如,包括轮廓)。由于在执行迭代时用锚像素来更新参考区域,因此,根据覆盖大部分块Bk且因此更接近最后待预测像素的参考区域,可在最后几次迭代期间对最复杂的像素实施预测。因此,对这些像素的预测质量更好。
[0200]传统上,可能是在变换和量化之后,只有预测残余随后被传输到解码器。由于根据本发明的预测质量更好,所以这些预测残余的成本较低。因此,获得了压缩增益。
[0201]5.4解码器的工作
[0202]为了对根据图1和图2所示的编码方法加以编码的至少一个图像进行解码,解码器实施与编码时实施的那些类似的步骤。通过这种方式,它将重选锚像素,如编码时那样。
[0203]具体而言,如图6所示,针对图像的至少一个待解码块Bk,解码器执行以下步骤的至少一次迭代:
[0204]-根据与图像的参考区域的至少一个参考像素相关联的至少一个特征,确定61至少一个选择参数(O、方向、距离等),
[0205]所述参考区域包括至少一个先前编码/解码的块和在先前迭代中预测的至少一个像素,
[0206]-根据所述至少一个选择参数,选择62待解码块Bk中的至少一个待预测像素;[0207]-针对称作锚像素A的至少一个选定的待预测像素,根据所述至少一个参考像素来预测63所述锚像素,从而传递预测像素Ap。
[0208]这些步骤进行迭代,直到待解码块Bk中的每个像素都经过处理为止。
[0209]如同在编码的情况下,应注意,对于第一次迭代而言,参考区域仅包括属于至少一个先前编码/解码块的像素。对于随后的迭代而言,参考区域还包括在先前迭代中获得的锚像素。
[0210]这些步骤类似于针对编码所述的那些步骤,因此,本文中将不作详细描述。
[0211]5.5编码器和解码器的结构
[0212]最后,参考图7和图8,示出了分别实施根据上述一项实施例的编码技术和解码技术的编码器和解码器的简化结构。
[0213]例如,编码器包括:存储器71,其包括缓冲存储器;处理单元72,其配备有(例如)微处理器μ P且受计算机程序73驱动,所述编码器实施根据本发明的编码方法。
[0214]例如,初始化时,计算机程序73的代码指令加载到RAM中,并随后由处理单元72的处理器执行。处理单元72输入至少一个待编码图像。处理单元72的微处理器根据计算机程序73的指令实施上文所述的编码方法的步骤,以对所述图像的至少一个块进行编码。为此,除了缓冲存储器71之外,编码器还包括用于确定至少一个选择参数的构件、用于选择待编码块中的至少一个待预测像素的构件,以及用于预测至少一个锚像素的构件。这些构件由处理单元72的微处理器驱动。
[0215]解码器本身包括:存储器81,其包括缓冲存储器;处理单元82,其配备有(例如)微处理器μ P且受计算机程序83驱动,所述解码器实施根据本发明的解码方法。
[0216]例如,初始化时,计算机程序83的代码指令加载到RAM中,并随后由处理单元82的处理器执行。处理单元82输入表示至少一个图像的信号。处理单元82的微处理器根据计算机程序83的指令实施上文所述的解码方法的步骤,以对所述图像的至少一个块进行解码。为此,除了缓冲存储器81之外,解码器还包括用于确定至少一个选择参数的构件、用于选择待解码块中的至少一个待预测像素的构件,以及用于预测至少一个锚像素的构件。这些构件由处理单元82的微处理器驱动。
【权利要求】
1.一种用于对表示至少一个图像的信号进行解码的解码方法, 其特征在于,针对所述图像的至少一个待解码块,所述解码方法实施以下步骤的至少一次迭代: 根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征,确定(61)至少一个选择参数, 所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少一个像素, 根据所述至少一个选择参数,选择¢2)所述待解码块中的至少一个待预测像素; 针对称作锚像素的至少一个选定的待预测像素,根据所述参考区域的至少一个参考像素来预测¢3)所述锚像素,从而传递预测像素。
2.根据权利要求1所述的解码方法,其特征在于,所述至少一个选择参数属于包括以下项的组: 预测起点,其对应于将用于预测所述锚像素的所述参考区域的像素; 用于预测所述锚像素的预测方向; 用于预测所述锚像素的预测距离。
3.根据权利要求1所述的解码方法,其特征在于,所述确定¢1)步骤考虑到在至少一次先前迭代中预测的像素的位置。`
4.根据权利要求1所述的解码方法,其特征在于,所述确定(61)步骤借助于以下步骤来确定至少一个预测起点,以便用于预测所述锚像素: 确定至少一对参考像素的像素之间的相关性; 选择相关性高于预定阈值的一对或多对; 对应于所述至少一个预测起始点,从选定对的每一者中提取参考像素。
5.根据权利要求1所述的解码方法,其特征在于,所述确定(61)步骤借助于以下步骤来确定至少一个预测起点,以便用于预测所述锚像素: 确定与至少一个参考像素相关联的预测残余; 对应于所述至少一个预测起始点,选择预测残余小于或等于预定阈值的所述参考像素。
6.根据权利要求1所述的解码方法,其特征在于,考虑到用于预测所述锚像素的至少一个预测起点,所述确定¢1)步骤确定至少一个预测方向,以便用于预测所述锚像素。
7.根据权利要求6所述的解码方法,其特征在于,所述确定¢1)步骤实施以下步骤: 确定至少一对参考像素的像素之间的相关性,一对包括用于预测所述锚像素的所 述预测起点,以及邻近所述预测起点的参考像素; 选择相关性高于预定阈值的一对; 确定与选定对相关联的预测方向。
8.根据权利要求1所述的解码方法,其特征在于,具体依据与先前迭代中根据至少一个预测起点和/或至少一个预测方向预测的至少一个像素相关联的至少一个预测残余,所述确定¢1)步骤根据所述至少一个预测起点和/或所述至少一个预测方向来确定至少一个预测距离,以便用于预测所述锚像素。
9.根据权利要求1所述的解码方法,其特征在于,具体依据与至少一个预测起点相关联的预测残余,所述确定¢1)步骤根据所述至少一个预测起点来确定至少一个预测距离,以便用于预测所述锚像素。
10.根据权利要求1所述的解码方法,其特征在于,所述选择步骤实施以下子步骤: 根据所述选择参数,预选所述待解码块中的至少一个待预测像素, 考虑到在所述预选期间使用的所述选择参数,向预选的待预测像素分配权数, 选择权数大于预定阈值的预选的待预测像素。
11.根据权利要求1所述的解码方法,其特征在于,所述至少一次迭代包括以下步骤:根据在所述预测步骤期间预测的像素来更新所述参考区域。
12.一种用于对至少一个图像进行编码的编码方法, 其特征在于,针对所述图像的至少一个待编码块,所述编码方法实施以下步骤的至少一次迭代: 根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征,确定(11)至少一个选择参数, 所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少一个像素, 根据所述至少一个选择参数,选择(12)所述待编码块中的至少一个待预测像素; 针对称作锚像素的至少一个选定的待预测像素,根据所述参考区域的至少一个参考像素来预测(13)所述锚像素,从而传递预测像素。
13.一种用于对表示至少一个图像的信号进行解码的装置, 其特征在于,所述装置包括以下构件,所述构件在针对所述图像的至少一个待解码块的至少一次迭代中启用: 确定构件(61),其用于根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征,确定至少一个选择参数, 所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少一个像素, 选择构件,其用于根据所述至少一个选择参数,选择(62)所述待解码块中的至少一个待预测像素; 预测构件,针对称作锚像素的至少一个选定的待预测像素,所述预测构件用于根据所述参考区域的至少一个参考像素来预测¢3)所述锚像素,从而传递预测像素。
14.一种用于对至少一个图像进行编码的装置, 其特征在于,所述装置包括以下构件,所述构件在针对所述图像的至少一个待编码块的至少一次迭代中启用: 确定构件,其用于根据与所述图像的参考区域的至少一个参考像素相关联的至少一个特征,确定(11)至少一个选择参数, 所述参考区域包括至少一个先前编码/解码的块和/或在先前迭代中预测的至少一个像素, 选择构件,其用于根据所述至少一个选择参数来选择(12)所述待编码块中的至少一个待预测像素; 预测构件,针对称作锚像素的至少一个选定的待预测像素,所述预测构件用于根据所述参考区域的至少一个参考像素来预测(13)所述锚像素,从而传递预测像素。
15.一种计算机程序,所述计算机程序包括指令,所述指令用于在处理器执行此程序时,实施根据权利要求1或·根据权利要求12所述的方法。
【文档编号】H04N7/34GK103444171SQ201180060061
【公开日】2013年12月11日 申请日期:2011年12月9日 优先权日:2010年12月15日
【发明者】乔尔·荣, 让-马克·提亚斯, 史蒂芬·巴特克斯 申请人:法国电信
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1