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

影像编码/解码方法

文献发布时间:2024-04-18 19:52:40


影像编码/解码方法

本申请是向国家知识产权局提交的申请日为2018年01月16日、标题为“影像编码/解码方法及装置”、申请号为201880007055.1的申请的分案申请。

技术领域

本发明涉及一种影像信号编码/解码方法及装置,尤其涉及一种利用帧间预测的影像编码/解码装置及方法。

背景技术

近年来,互联网中对如视频等多媒体数据的需求正在急剧增加。但是,目前信道(Channel)带宽(Bandwidth)的发展速度却难以充分满足急剧增加的多媒体数据量。考虑到如上所述的情况,国际标准化机构即国际电联电信标准化部门(ITU-T)的视频编码专家组(VCEG,Video Coding Expert Group)和国际标准化组织/国际电工委员会(ISO/IEC)的动态图像专家组(MPEG,Moving Picture Expert Group)于2014年02月制定了视频压缩标准即高效率视频编码(HEVC,High Efficiency Video Coding)第1版。

高效率视频编码(HEVC)使用如帧内预测、帧间预测、变换、量化、熵编码以及环路滤波等多种技术。其中,在高效率视频编码(HEVC)的帧间预测中,能够通过适用如区块合并(Block merging)、高级运动向量预测(AMVP,Advanced Motion Vector Prediction)等新技术而提升帧间预测的效率。但是当区块中有多个运动存在时,可能会因为区块被进一步分割而导致开销的急剧增加以及编码效率的下降。

发明内容

技术问题

为了解决如上所述的问题,本发明的主要目的在于通过提供一种改良的帧间预测而提升帧间预测的效率。

此外,本发明的主要目的在于提供一种不需要由影像编码装置将运动向量信息传送到解码装置的利用影像解码装置的运动向量推导方法。

此外,本发明的主要目的在于提供一种不需要在仿射帧间预测过程中由影像编码装置将控制点运动向量传送到解码装置的利用影像解码装置的控制点运动向量推导方法。

此外,本发明的主要目的在于提供一种当一个区块中有多个运动存在时也能够有效地执行编码或解码的帧间预测。

此外,本发明的主要目的在于减少可能会在将一个区块分割成多个区域并分别利用不同的帧间预测执行编码或解码时发生的区块效应。

此外,本发明的主要目的在于通过以周边的已重建的区块的分割结构为基础对需要进行编码或解码的当前区块进行分割而提升帧间预测的效率。

此外,本发明的主要目的在于通过以周边的已重建的区块的分割结构为基础对在当前区块的编码或解码过程中所使用的已重建的周边的影像区域进行分割而提升帧间预测的效率。

此外,本发明的主要目的在于通过利用以如上所述的方式进行分割的当前区块或周边影像执行编码或解码而提升影像的编码或解码效率。

技术方案

适用本发明之一实施例的影像解码方法及装置,在选择需要进行解码的当前区块所属的影像内的已重建的像素区域之后以上述已重建的像素区域以及上述当前区块的参考影像为基础推导出上述已重建的像素区域的运动向量并选择上述所推导出的运动向量作为上述当前区块的运动向量。

上述已重建的像素区域,能够包括与上述当前区块的上侧相邻的区域或与上述当前区块的左侧相邻的区域中的至少一个。

上述已重建的像素区域的运动向量,能够在上述参考影像内决定与上述已重建的像素区域对应的区域之后以上述所决定的与上述已重建的像素区域对应的区域的位置为基础进行推导。

适用本发明之一实施例的影像编码方法及装置,在选择需要进行编码的当前区块所属的影像内的已重建的像素区域之后以上述已重建的像素区域以及上述当前区块的参考影像为基础推导出上述已重建的像素区域的运动向量并选择上述所推导出的运动向量作为上述当前区块的运动向量。

此外,适用本发明之一实施例的影像编码方法及装置,能够在生成解码器侧运动向量推导指示信息之后对其进行编码。

上述解码器侧运动向量推导指示信息,能够指示是否选择在上述已重建的像素区域中推导出的运动向量作为上述当前区块的运动向量。

适用本发明之另一实施例的影像解码方法及装置,在需要利用仿射帧间预测进行解码的当前区块所属的影像内选择至少一个已重建的像素区域之后以上述至少一个已重建的像素区域以及上述当前区块的参考影像为基础分别推导出上述至少一个已重建的像素区域的运动向量并分别选择上述所推导出的上述至少一个已重建的像素区域的运动向量作为上述当前区块的至少一个控制点的运动向量。

上述至少一个已重建的像素区域,能够分别是与上述当前区块的至少一个控制点分别相邻的区域。

此外,上述至少一个控制点,能够位于上述当前区块的左上侧、右上侧或左下侧。

此外,位于上述当前区块的右下侧的控制点的运动向量,能够以包含于比特流中的运动信息为基础进行解码。

此外,适用本发明之另一实施例的影像解码方法及装置,能够对解码器侧控制点运动向量推导指示信息进行解码。

适用本发明之另一实施例的影像解码方法及装置,能够以上述解码器侧控制点运动向量推导指示信息为基础分别推导出上述至少一个已重建的像素区域的运动向量分别。

适用本发明之又一实施例的影像编码方法及装置,在需要利用仿射帧间预测进行编码的当前区块所属的影像内选择至少一个已重建的像素区域之后以上述至少一个已重建的像素区域以及上述当前区块的参考影像为基础分别推导出上述至少一个已重建的像素区域的运动向量并分别选择上述所推导出的上述至少一个已重建的像素区域的运动向量作为上述当前区块的至少一个控制点的运动向量。

适用本发明之又一实施例的影像解码方法及装置,能够将需要进行解码的当前区块分割成包括第1区域以及第2区域的多个区域并获得上述第1区域的预测区块以及上述第2区域的预测区块,且上述第1区域的预测区块以及上述第2区域的预测区块能够通过不同的帧间预测方法获得。

上述第1区域能够是与上述当前区块所属的影像内的已重建的影像区域相邻的区域,上述第2区域能够是不与上述当前区块所属的影像内的已重建的影像区域相邻的区域。

适用本发明之又一实施例的影像解码方法及装置,能够以上述当前区块所属的影像内的已重建的影像区域以及上述当前区块的参考影像为基础对上述第1区域的运动向量进行推测。

适用本发明之又一实施例的影像解码方法及装置,能够作为上述第1区域的预测区块内的区域将位于边界的区域分割成多个子区块或作为上述第2区域的预测区块内的区域将位于边界的区域分割成多个子区块,并在利用上述多个子区块中的一个即第1子区块的周边的子区块所具有的运动信息生成上述第1子区块的预测区块之后通过对上述第1子区块以及上述第1子区块的上述预测区块进行加权求和而获得适用加权求和的上述第1子区块的预测区块。

适用本发明之又一实施例的影像编码方法及装置,能够将需要进行编码的当前区块分割成包括第1区域以及第2区域的多个区域并获得上述第1区域的预测区块以及上述第2区域的预测区块,且上述第1区域的预测区块以及上述第2区域的预测区块能够通过不同的帧间预测方法获得。

上述第1区域能够是与上述当前区块所属的影像内的经过编码的已重建的影像区域相邻的区域,上述第2区域能够是不与上述当前区块所属的影像内的经过编码的已重建的影像区域相邻的区域。

适用本发明之又一实施例的影像编码方法及装置,能够以上述当前区块所属的影像内的经过编码的已重建的影像区域以及上述当前区块的参考影像为基础对上述第1区域的运动向量进行推测。

适用本发明之又一实施例的影像编码方法及装置,能够作为上述第1区域的预测区块内的区域将位于边界的区域分割成多个子区块或作为上述第2区域的预测区块内的区域将位于边界的区域分割成多个子区块,并在利用上述多个子区块中的一个即第1子区块的周边的子区块所具有的运动信息生成上述第1子区块的预测区块之后通过对上述第1子区块以及上述第1子区块的上述预测区块进行加权求和而获得适用加权求和的上述第1子区块的预测区块。

适用本发明之又一实施例的影像解码方法及装置,能够以需要进行解码的当前区块的周边的区块为基础将上述当前区块分割成多个子区块并对上述当前区块的多个子区块进行解码。

适用本发明之又一实施例的影像解码方法及装置,能够以上述当前区块的周边区块的分割结构为基础将上述当前区块分割成多个子区块。

适用本发明之又一实施例的影像解码方法及装置,能够以上述周边区块的数量、周边区块的大小、周边区块的形状以及周边区块之间的边界中的至少一个为基础将上述当前区块分割成多个子区块。

适用本发明之又一实施例的影像解码方法及装置,能够作为位于上述当前区块的周边的区域将已重建的像素区域以子区块单位进行分割,并利用包含于上述已重建的像素区域中的至少一个子区块对上述当前区块的多个子区块中的至少一个进行解码。

适用本发明之又一实施例的影像解码方法及装置,能够以上述当前区块的周边区块的分割结构为基础将上述已重建的像素区域以子区块单位进行分割。

适用本发明之又一实施例的影像解码方法及装置,能够以上述周边区块的数量、周边区块的大小、周边区块的形状以及周边区块之间的边界中的至少一个为基础将上述已重建的像素区域以子区块单位进行分割。

适用本发明之又一实施例的影像编码方法及装置,的当前区块的周边的区块为基础将上述当前区块分割成多个子区块并对上述当前区块的多个子区块进行编码。

适用本发明之又一实施例的影像编码方法及装置,能够以上述当前区块的周边区块的分割结构为基础将上述当前区块分割成多个子区块。

适用本发明之又一实施例的影像编码方法及装置,能够以上述周边区块的数量、周边区块的大小、周边区块的形状以及周边区块之间的边界中的至少一个为基础将上述当前区块分割成多个子区块。

适用本发明之又一实施例的影像编码方法及装置,能够作为位于上述当前区块的周边的区域将已重建的像素区域以子区块单位进行分割,并利用包含于上述已重建的像素区域中的至少一个子区块对上述当前区块的多个子区块中的至少一个进行编码。

适用本发明之又一实施例的影像编码方法及装置,能够以上述当前区块的周边区块的分割结构为基础将上述已重建的像素区域以子区块单位进行分割。

适用本发明之又一实施例的影像编码方法及装置,能够以上述周边区块的数量、周边区块的大小、周边区块的形状以及周边区块之间的边界中的至少一个为基础将上述已重建的像素区域以子区块单位进行分割。

有益效果

通过本发明,能够减少对视频进行编码时所生成的编码信息的量并借此提升其编码效率。此外,能够通过对已编码的影像进行自适应解码而提升影像的重建效率并改善所播放的影像的画质。

此外,适用本发明的帧间预测不需要由影像编码装置将运动向量信息传送到解码装置,因此能够减少编码信息的量并借此提升其编码效率。

此外,通过本发明,能够减少可能会在将一个区块分割成多个区域并分别利用不同的帧间预测执行编码或解码时发生的区块效应。

附图说明

图1是对适用本发明之一实施例的影像编码装置进行图示的块图。

图2是用于对基于现有技术的利用运动推测生成运动信息的方法进行说明的示意图。

图3是对能够在当前区块的运动信息生成过程中使用的周边区块的一实例进行图示的示意图。

图4是对适用本发明之一实施例的影像解码装置进行图示的块图。

图5a以及图5b是用于对适用本发明之第1实施例的利用已重建的像素区域的帧间预测进行说明的示意图。

图6是用于对适用本发明之第1实施例的帧间预测方法进行说明的顺序图。

图7a至图7c是对重建像素区域的实施例进行图示的示意图。

图8是用于对适用本发明之一实施例的帧间预测方法的决定过程进行说明的顺序图。

图9是对用于指示帧间预测方式的信息的编码过程进行说明的示意图。

图10是用于对按照如图9所图示的方式编码的解码器侧运动向量推导(DMVD)指示信息的解码过程进行说明的示意图。

图11是用于对仿射帧间预测进行说明的示意图。

图12a以及图12b是用于对适用本发明之第2实施例的利用已重建的像素区域的控制键的运动向量推导进行说明的示意图。

图13是用于对适用本发明之第2实施例的帧间预测方法进行说明的顺序图。

图14是用于对适用本发明之第2实施例的帧间预测方法的决定过程进行说明的顺序图。

图15是对用于指示通过图14所图示的过程决定的帧间预测方式的信息的编码过程进行说明的示意图。

图16是用于对按照如图15所图示的方式编码的解码器侧控制点运动向量推导(DCMVD)指示信息的解码过程进行说明的示意图。

图17是对利用已重建的像素区域推导出3个控制点的运动向量并生成当前区块的预测区块的影像解码方法的一实施例进行图示的顺序图。

图18是对适用本发明之第3实施例的为了帧间预测而被分割成多个区域的当前区块进行图示的示意图。

图19是用于对适用本发明之第3实施例的帧间预测方法进行说明的顺序图。

图20是用于对利用已重建的像素区域的运动推测以及运动补偿的一实施例进行说明的示意图。

图21是用于对适用本发明之一实施例的帧间预测方法的决定过程进行说明的顺序图。

图22是对将用于指示帧间预测方式的信息传送到影像解码装置的过程进行说明的示意图。

图23是对用于指示使用了哪一种方式的帧间预测的信息的解码过程进行说明的示意图。

图24是对利用用于指示使用了哪一种方式的帧间预测的信息生成帧间预测区块的方法进行示意的顺序图。

图25是用于对适用本发明之第4实施例的减少区块效应的方式进行说明的顺序图。

图26是用于对预测区块内的子区块以及与上侧相邻的子区块的加权求和的适用方式进行说明的示意图。

图27是用于对预测区块内的子区块以及与左侧相邻的子区块的加权求和的适用方式进行说明的示意图。

图28是对子区块之间的加权求和适用与否的决定过程进行图示的顺序图。

图29是对用于指示子区块之间的加权求和适用与否的信息的编码过程进行图示的顺序图。

图30是对用于指示子区块之间的加权求和适用与否的信息的解码过程进行图示的顺序图。

图31a以及图31b是用于对适用本发明之第5实施例的利用已重建的像素区域的帧间预测进行说明的示意图。

图32是对针对当前区块以子区块单位执行追加运动推测的情况进行例示的示意图。

图33是对将重建像素区域以及当前区块以子区块单位分割的一实例进行图示的示意图。

图34是对利用重建像素区域的帧间预测方法的一实例进行说明的顺序图。

图35是对适用本发明的利用存在于当前区块周边的重建区块将重建像素区域分割成子区块的一实例进行图示的示意图。

图36是对适用本发明的利用存在于当前区块周边的重建区块将当前区块分割成多个子区块的一实例进行图示的示意图。

图37是对适用本发明之一实施例的将当前区块分割成多个子区块的方法进行图示的顺序图。

图38是对适用本发明之一实施例的将在当前区块的编码或解码过程中所使用的重建区域分割成多个子区块的方法进行图示的顺序图。

图39是对利用按照如图36所图示的方式分割的当前区块的子区块的帧间预测方法的一实施例进行图示的顺序图。

图40是对按照图39所图示的帧间预测决定的信息的编码方法进行说明的示意图。

图41是对按照图40所图示的编码方法编码的信息的解码方法的一实例进行说明的顺序图。

图42a以及42b是用于对适用本发明的第6实施例进行说明的示意图。

图43是对参考图42a以及图42b进行说明的适用本发明之第6实施例的帧间预测模式的决定方法的一实例进行说明的顺序图。

图44是对按照图43所图示的方法决定的信息的编码过程进行图示的示意图。

图45是对按照图44所图示的方法编码的信息的解码过程进行说明的示意图。

具体实施方式

本发明能够进行各种变更并具有多种不同的实施例,接下来将在附图中对特定的实施例进行图示并进行详细的说明。但是,下述内容并不是为了将本发明限定于特定的实施形态,而是应该理解为包括本发明的思想以及技术范围内的所有变更、均等物乃至替代物。在对各个附图进行说明的过程中,对于类似的构成要素使用了类似的参考符号。

在对不同的构成要素进行说明的过程中能够使用如第1、第2等术语,但是上述构成要素并不因为上述术语而受到限定。上述术语只是用于对一个构成元素与其他构成元素进行区别。例如,在不脱离本发明的权利要求范围的前提下,第1构成元素也能够被命名为第2构成元素,同理,第2构成元素也能够被命名为第1构成元素。术语“和/或”包括多个相关记载项目的组合或多个相关记载项目中的某一个项目。

当记载为某个构成要素与其他构成要素“连接”或“接触”时,应理解为不仅能够与上述其他构成要素直接连接或接触,还能够在两者之间有其他构成要素存在。与此相反,当记载为某个构成元素与其他构成元素“直接连接”或“直接接触”时,应理解为在两者之间没有其他构成元素存在。

在本申请中所使用的术语只是为了对特定的实施例进行说明,并不是为了对本发明进行限定。除非上下文中有明确的相反含义,否则单数型语句还包含复数型含义。在本申请中,“包括”或“具有”等术语只是为了表明说明书中所记载的特征、数字、步骤、动作、构成元素、部件或上述之组合存在,并不应该理解为事先排除一个或多个其他特征、数字、步骤、动作、构成元素、部件或上述之组合存在或被附加的可能性。

接下来,将结合附图对适用本发明的实施例进行详细的说明。在下述内容中,对于附图中相同的构成要素将使用相同的参考符号且对相同构成要素的重复说明将被省略。

图1是对适用本发明之一实施例的影像编码装置进行图示的块图。

参阅图1,影像编码装置100能够包括影像分割部101、帧内预测部102、帧间预测部103、减法运算部104、变换部105、量化部106、熵编码部107、逆量化部108、逆变换部109、加法运算部110、滤波部111以及存储器112。

在图1中为了表示影像编码装置中不同的特殊功能而对各个构成部单独进行了图示,但这并不代表各个构成部由相互分离的硬件或一个软件单位构成。即,虽然为了说明的便利而对各个构成部进行了罗列说明,但是既能够将各个构成部中的至少两个构成部合并成一个构成部,也能够将一个构成部分割成多个构成部并使其执行对应的功能,而如上所述的各个构成部被整合的实施例以及被分离的实施例在不脱离本发明之本质的前提下包含于本发明的权利要求范围之内。

此外,一部分构成要素可能并不是在本发明中执行本质功能所必要的构成要素,而只是用于提升性能的可选构成要素。本发明能够仅包括除只是用于提升性能的构成元素之外的实现本发明之本质所必要的构成部,而仅包括除只是用于提升性能的可选构成元素之外的必要构成元素的结构同样包含于本发明的权利要求范围之内。

影像分割部100能够将输入影像分割成至少一个区块。此时,输入影像能够是如图像、条带、并行区块或片段等多种不同的形态和大小。区块能够是指编码单位(CU)、预测单位(PU)或变换单位(TU)。上述分割能够基于四叉树(Quad tree)或二叉树(Biniary tree)中的至少一种执行。四叉树是将上级区块分割成宽度和高度均为上级区块的一半的四个下级区块的方式。二叉树是将上级区块分割成宽度或高度中的某一个为上级区块的一半的两个下级区块的方式。通过基于上述二叉树的分割,不仅能够将区块分割成正方形,还能够分割成非正方形形态。

接下来,在适用本发明的实施例中,编码单位不仅能够作为编码执行单位的含义使用,也能够作为解码执行单位的含义使用。

预测部102、103能够包括用于执行帧间预测的帧间预测部103以及用于执行帧内预测的帧内预测部102。能够在决定对预测单位执行帧间预测还是帧内预测之后,再根据不同的预测方法决定具体信息(例如帧内预测模式、运动向量、参考图像等)。此时,用于执行预测的处理单位与用于确定预测方法以及具体内容的处理单位能够不同。例如,预测方法以及预测模式等能够以预测单位进行确定,而预测执行能够以变换单位执行。

所生成的预测区块与原始区块之间的残差值(残差区块)能够被输入到变换部105。此外,执行预测时使用的如预测模式信息、运动向量信息等能够在与残差值一起被熵编码部107编码之后传送到解码器。在使用特定编码模式的情况下,也能够不通过预测部102、103生成预测区块,而是在直接对原始区块进行编码之后传送到解码部。

帧内预测部102能够基于当前图像内的像素信息即当前区块周边的参考像素信息生成预测区块。当执行帧内预测的当前区块之周边区块的预测模式为帧间预测时,能够将已适用帧间预测的周边区块中包含的参考像素替代成已适用帧内预测的周边其他区块内的参考像素。即,在参考像素不可用的情况下,能够在将不可用参考像素信息替代成可用参考像素中的至少一个参考像素之后使用。

在帧内预测中,预测模式能够包括根据预测方向使用参考像素信息的定向预测模式以及在执行预测时不使用方向信息的非定向模式。用于预测亮度信息的模式与用于预测色差信息的模式能够不同,在对色差信息进行预测时能够使用在预测亮度信息的过程中使用的帧内预测模式信息或所预测到的亮度信号信息。

帧内预测部102能够包括AIS(Adaptive Intra Smoothing,自适应帧内平滑)滤波器、参考像素插值部以及DC滤波器。AIS滤波器是用于对当前区块的参考像素执行滤波的滤波器,能够根据当前预测单位的预测模式自适应地决定滤波器的适用与否。在当前区块的预测模式为不执行AIS滤波的模式时,能够不适用AIS滤波器。

当预测单位的帧内预测模式为基于对参考像素进行插值的像素值执行帧内预测的预测单位时,帧内预测部102的参考像素插值部能够通过对参考像素进行插值而生成分数单位位置的参考像素。在当前预测单位的预测模式为不对参考像素进行插值而生成预测区块的预测模式时,能够不对参考像素进行插值。在当前区块的预测模式为DC模式时,DC滤波器能够通过滤波生成预测区块。

帧间预测部103利用保存在存储器112中的已重建的参考影像以及运动信息生成预测区块。运动信息能够包括如运动向量、参考图像索引、列表1预测标志以及列表0预测标志等。

在影像编码装置中生成运动信息的代表性的方法包括2种。

第一种方法,是利用运动推测过程生成运动信息(运动向量、参考影像索引、帧间预测方法等)的方法。图2是用于对基于现有技术的利用运动推测生成运动信息的方法进行说明的示意图。运动推测,是利用编码之后重新解码的参考影像生成需要进行编码的当前影像区域的运动向量、参考影像索引以及帧间预测方向等运动信息的方法。此时,既能够在参考影像整体上执行运动推测,也能够为了减少复杂度而在对探索范围进行设定之后仅在探索范围内执行运动推测。

用于生成运动信息的第二种方法,是利用需要进行编码的当前影像区块的周边区块的运动信息的方式。

图3是对能够在当前区块的运动信息生成过程中使用的周边区块的一实例进行图示的示意图。图3是能够在生成当前区块的运动信息的过程中使用的周边区块,对空间候选区块A~E以及时间候选区块COL进行了例示。空间候选区块A~E存在于与当前区块相同的影像内,而时间候选区块COL存在于与当前区块所属的影像不同的影像内。

能够选择存在于当前区块的周边的空间候选区块A~E以及时间候选区块COL的运动信息中的某一个运动信息作为当前区块的运动信息。此时,能够对用于指示将哪一个区块的运动信息作为当前区块的运动信息使用的索引进行定义。如上所述的索引信息也属于运动信息。在影像编码装置中能够使用如上所述的方法生成运动信息并通过运动补偿生成预测区块。

进而,能够生成包含在预测部102、103中生成的预测单位与预测单位的原始区块之间的差异值即残差值(Residual)信息的残差区块。所生成的残差区块能够被输入到变换部130中进行变换。

帧间预测部103能够以当前图像的前一个图像或后一个图像中的至少一个图像的信息为基础推导出预测区块。此外,也能够以当前图像内的已完成编码的一部分区域的信息为基础推导出当前区块的预测区块。适用本发明之一实施例的帧间预测部103能够包括参考图像插值部、运动预测部以及运动补偿部。

参考图像插值部能够从内存112接收参考图像信息并在参考图像中生成整数像素以下的像素信息。对于亮度像素,为了以1/4像素单位生成整数像素以下的像素信息,能够使用滤波系数不同的基于DCT的8抽头插值滤波器(DCT-based Interpolation Filter)。对于色差信号,为了以1/8像素单位生成整数像素以下的像素信息,能够使用滤波系数不同的基于DCT的4抽头插值滤波器(DCT-based Interpolation Filter)。

运动预测部能够基于通过参考图像插值部插值的参考图像执行运动预测。作为计算出运动向量的方法,能够使用如FBMA(Full search-based Block Matching Algorithm,全搜索区块匹配算法)、TSS(Three Step Search,三步搜索算法)、NTS(New Three-StepSearch Algorithm,新三步搜索算法)等多种不同的方法。运动向量能够以插值的像素为基础具有1/2或1/4像素单位的运动向量值。在运动预测部中能够通过不同的运动预测方法对当前预测单位的预测区块进行预测。作为运动预测方法,能够使用如跳过(Skip)法、合并(Merge)法、AMVP(Advanced Motion Vector Prediction,高级运动向量预测)法等多种方法。

减法运算部104通过对当前拟编码的区块与在帧内预测部102或帧间预测部103中生成的预测区块进行减法运算而生成当前区块的残差区块。

变换部105能够利用如DCT、DST、KLT(Karhunen Loeve Transform,卡洛南-洛伊变换)等变换方法对包含残差数据的残差区块进行变换。此时,能够基于在生成残差区块时所使用的预测单位的帧内预测模式决定变换方法。例如,能够根据帧内预测模式在水平方向上使用DCT而在垂直方向上使用DST。

量化部106能够对在变换部105中变换成频率区域的值进行量化。量化系数能够根据区块或影像的重要程度而改变。在量化部106中计算出的值能够被提供到逆量化部108以及熵编码部107。

上述变换部105和/或量化部106能够被选择性地包含到影像编码装置100。即,影像编码装置100能够对残差区块的残差数据执行变换或量化中的至少一种,也能够同时跳过变换以及量化而对残差区块进行编码。即使是在影像编码装置100没有执行变换或量化中的某一种或变换以及量化均没有被执行的情况下,被输入到熵编码部107中的区块通常都会被称之为变换区块。熵编码部107对输入数据进行熵编码。在执行熵编码时能够使用如指数哥伦布码(Exponential Golomb)、CAVLC(Context-Adaptive Variable LengthCoding,基于上下文自适应的可变长编码)、CABAC(Context-Adaptive Binary ArithmeticCoding,基于上下文自适应的二进制算术编码)等多种不同的编码方法。

熵编码部107能够对来自预测部102、103的如编码单位的残差值系数信息以及区块类型信息、预测模式信息、分割单位信息、预测单位信息以及传送单位信息、运动向量信息、参考帧信息、区块的插值信息、滤波信息等多种不同的信息进行编码。在熵编码部107中,变换区块的系数能够以变换区块内的部分区块单位基于用于指示非0的系数、绝对值大于1或2的系数以及系数的符号等的多种类型的标志进行编码。对于无法仅基于上述标志进行编码的系数,能够基于通过标志进行编码的系数与实际变换区块的系数之间的差异的绝对值进行编码。在逆量化部108以及逆变换部109中,对在量化部106中量化的值进行逆量化并对在变换部105中变换的值进行逆变换。能够通过将在逆量化部108以及逆变换部109中生成的残差值(Residual)与通过预测部102、103中包含的运动推测部、运动补偿部以及帧内预测部102预测出的预测单位进行合并而生成重建区块(Reconstructed Block)。加法运算器110能够通过对在预测部102、103中生成的预测区块与通过逆变换部109生成的残差区块进行加法运算而生成重建区块。

滤波部111能够包括去块滤波器、偏移补正部、ALF(Adaptive Loop Filter,自适应环路滤波器)中的至少一个。

去块滤波器能够消除在重建图像中因为区块之间的边界而出现的区块失真。为了判断是否需要执行去块,能够基于包含于区块的若干个列或行中的像素判断是否需要对当前区块适用去块滤波器。在对区块适用去块滤波器时,能够根据所需要的去块滤波强度适用强滤波器(Strong Filter)或弱滤波器(Weak Filter)。此外,在适用去块滤波器的过程中,能够在执行垂直滤波以及水平滤波的同时并行执行水平方向滤波以及垂直方向滤波。

偏移补正部能够对已执行去块的影像以像素单位执行与原始影像之间的偏移补正。为了对特定图像执行偏移补正,能够使用在将影像中包含的像素划分成一定数量的区域之后决定需要执行偏移的区域并对相应区域适用偏移的方法或在考虑各个像素的边缘信息的情况下适用偏移的方法。

ALF(Adaptive Loop Filtering,自适应环路滤波)能够基于对已滤波的重建影像与原始影像进行比较的值执行。也能够在将影像中包含的像素划分成特定的组之后决定需要适用到相应组中的一个滤波器并对不同的组分别执行不同的滤波。对于与是否适用ALF相关的信息,亮度信号能够以编码单位(Coding Unit,CU)进行传送,而且在各个区块中适用的ALF滤波器的形状以及滤波系数能够不同。此外,还能够适用相同形态(固定形态)的ALF滤波器而不考虑适用对象区块的特性。

存储器112能够对通过滤波部111计算出的重建区块或图像进行保存,所保存的重建区块或图像能够在执行帧间预测时提供到预测部102、103。

接下来,将结合附图对适用本发明之一实施例的影像解码装置进行说明。图4是对适用本发明之一实施例的影像解码装置400进行图示的块图。

参阅图4,影像解码装置400能够包括熵解码部401、逆量化部402、逆变换部403、加法运算部404、滤波部405、存储器406以及预测部407、408。

当通过影像编码装置100生成的影像比特流被输入到影像解码装置400时,能够按照与影像编码装置100执行的过程相反的过程对所输入的比特流进行解码。

熵解码部401能够按照与影像编码装置100的熵编码部107中执行的熵编码相反的步骤进行熵解码。例如,能够对应于在影像编码器中执行的方法,适用如指数哥伦布码(Exponential Golomb)、CAVLC(Context-Adaptive Variable Length Coding,基于上下文自适应的可变长编码)、CABAC(Context-Adaptive Binary Arithmetic Coding,基于上下文自适应的二进制算术编码)等多种不同的方法。在熵解码部401中,变换区块的系数能够以变换区块内的部分区块单位基于用于指示非0的系数、绝对值大于1或2的系数以及系数的符号等的多种类型的标志进行解码。对于无法仅基于上述标志表现的系数,能够基于通过标志表现的系数与信令系数的和进行解码。

在熵解码部401中,能够对与在编码器中执行的帧内预测以及帧间预测相关的信息进行解码。逆量化部402通过对已量化的变换区块执行逆量化而生成变换区块。按照与图1中的逆量化部108实质相同的方式工作。

逆量化部403通过对变换区块执行逆变换而生成残差区块。此时,能够基于与预测方法(帧间或帧内预测)、区块的大小和/或形态、帧内预测模式等相关的信息决定变换方法。按照与图1中的逆变换部109实质相同的方式工作。

加法运算部404通过对在帧内预测部407或帧间预测部408中生成的预测区块与通过逆变换部403生成的残差区块进行加法运算而生成重建区块。按照与图1中的加法运算部110实质相同的方式工作。

滤波部405用于减少在重建的区块中出现的多种类型的噪声。

滤波部405能够包括去块滤波器、偏移补正部以及ALF。

从影像编码装置100,能够接收到是否对相应区块或图像适用去块滤波器以及在适用去块滤波器的情况下适用了强滤波还是弱滤波的相关信息。影像解码装置400的去块滤波器能够在接收到从影像编码装置100提供的去块滤波器相关信息之后在影像解码装置400中对相应区块执行去块滤波。

偏移补正部能够基于在进行编码时适用于影像的偏移补正类型以及偏移值信息等对已重建的影像执行偏移补正。

ALF能够基于从影像编码装置100提供的ALF适用与否信息、ALF系数信息等适用到编码单位。如上所述的ALF信息能够被包含到特定的参数集中提供。滤波部405按照与图1中的滤波部111实质相同的方式工作。

存储器406用于对通过加法运算部404生成的重建区块进行保存。按照与图1中的存储器112实质相同的方式工作。

预测部407、408能够基于从熵解码部401提供的预测区块生成相关信息以及从存储器406提供的之前已解码的区块或图像信息生成预测区块。

预测部407、408能够包括帧内预测部407以及帧间预测部408。虽然没有单独进行图示,但是预测部407、408还能够包括预测单位判定部。预测单位判定部能够接收从熵解码部401输入的预测单位信息、帧内预测方法的预测模式信息、帧间预测方法的运动预测相关信息等的多种不同的信息并从当前解码单位区分预测单位,从而判定预测单位执行帧间预测还是执行帧内预测。帧间预测部408能够利用从影像编码装置100提供的当前预测单位的帧间预测所需要的信息,基于包含当前预测单位的当前图像的上一个图像或下一个图像中的至少一个图像中包含的信息对当前预测单位执行帧间预测。或者,也能够在包含当前预测单位的当前图像内,基于已重建的一部分区域的信息执行帧间预测。

为了执行帧间预测,能够以编码单位作为基准判断包含于相应编码单位中的预测单位的运动预测方法是跳过模式(Skip Mode)、合并模式(Merge Mode)、高级运动向量预测模式(AMVP Mode)中的哪一种方法。

帧内预测部407利用位于当期拟编码的区块周边的以及已重建的像素生成预测区块。

帧内预测部407能够包括AIS(Adaptive Intra Smoothing,自适应帧内平滑)滤波器、参考像素插值部以及DC滤波器。AIS滤波器是用于对当前区块的参考像素执行滤波的滤波器,能够根据当前预测单位的预测模式自适应地决定滤波器的适用与否。能够利用从影像编码装置100提供的预测单位的预测模式以及AIS滤波器信息对当前区块的参考像素执行AIS滤波。在当前区块的预测模式为不执行AIS滤波的模式时,能够不适用AIS滤波器。

当预测单位的预测模式为基于对参考像素进行插值的像素值执行帧内预测的预测单位时,帧内预测部407的参考像素插值部能够通过对参考像素进行插值而生成分数单位位置的参考像素。所生成的分数单位位置上的参考像素能够作为当前区块内的像素的预测像素使用。在当前预测单位的预测模式为不对参考像素进行插值而生成预测区块的预测模式时,能够不对参考像素进行插值。在当前区块的预测模式为DC模式时,DC滤波器能够通过滤波生成预测区块。

帧内预测部407按照与图1中的帧内预测部102实质相同的方式工作。

帧间预测部408利用保存在存储器406中的参考图像以及运动信息生成帧间预测区块。帧间预测部408按照与图1中的帧间预测部103实质相同的方式工作。

接下来,将结合附图对适用本发明的多种实施例进行更为详细的说明。

(第1实施例)

图5a以及图5b是用于对适用本发明之第1实施例的利用已重建的像素区域的帧间预测进行说明的示意图。适用本实施例的利用已重建的像素区域的帧间预测尤其是能够利用已重建的像素区域推导出当前区块的运动向量。

在图5a中,作为需要进行编码或解码的当前区块51以及与当前区块51相邻的区域,对已重建的像素区域C 52进行了图示。当前区块51以及已重建的像素区域C 52包含于当前影像50内。当前影像50能够是图像、条带、并行区块、编码树区块、编码区块或其他影像区域。已重建的像素区域C 52,从编码的角度来看能够是在对当前区块51进行编码之前已经被编码之后再重建的像素区域,而从解码的角度来看能够是在对当前区块51进行解码之前已经重建的区域。

在对当前区块进行编码或解码之前,因为在当前区块51的周边有已重建的像素区域C 52存在,因此影像编码装置100以及解码装置400能够利用相同的重建像素区域C 52。因此,编码装置100不需要对当前区块51的运动信息进行编码,而是利用重建像素区域C 52由影像编码装置100以及解码装置400以相同的方法生成当前区块51的运动信息并生成预测区块。

在图5b中,对利用已重建的像素区域的运动推测以及运动补偿的一实施例进行了图示。在图5b所图示的参考影像53内,将对与图5a所图示的已重建的像素区域C 52匹配的区域进行探索。在决定与重建像素区域C 52最类似的重建像素区域D之后,将位于与重建像素区域C 52相同位置上的区域56以及重建像素区域D 54之间的位移决定为重建像素区域C52的运动向量57。在选择按照如上所述的方式决定的运动向量57作为当前区块51的运动向量之后,能够利用上述运动向量57推导出当前区块51的预测区块58。

图6是用于对适用本发明之第1实施例的帧间预测方法进行说明的顺序图。

适用本实施例的帧间预测,能够通过影像编码装置100的帧间预测部103或影像解码装置400的帧间预测部408分别执行。在帧间预测过程中使用的参考影像将被保存到影像编码装置100的存储器112或影像解码装置400的存储器406中。帧间预测部103或帧间预测部408能够通过参考保存在存储器112或存储器406中的参考影像而生成当前区块51的预测区块。

参阅图6,在步骤S61,首先选择将在需要进行编码或解码的当前区块的运动向量推导过程中使用的已重建的像素区域52。接下来,在步骤S63,将以已重建的像素区域52以及当前区块的参考影像为基础推导出已重建的像素区域52的运动向量。如结合图5b在上述内容中进行的说明,将在图5b所图示的参考影像53内对与已重建的像素区域C 52匹配的区域进行探索。在决定与重建像素区域C 52最类似的重建像素区域D 54之后,将位于与重建像素区域C 52相同位置上的区域56以及重建像素区域D 54之间的位移决定为重建像素区域C 52的运动向量57。

在步骤S65,影像编码装置100或影像解码装置400将选择通过如上所述的方式决定的重建像素区域C 52的运动向量57作为当前区块51的运动向量。利用上述运动向量57,能够生成当前区块51的预测区块58。

此外,重建像素区域C 52能够具有不同的形状和/或大小。图7a至图7c是对重建像素区域的实施例进行图示的示意图。图7a至图7c中表示的M、N、O以及P分别代表像素间隔,当假定O以及P的绝对值分别小于当前区块的水平长度或垂直长度时,O以及P也能够是负数。

此外,还能够将当前区块的上侧以及左侧的重建像素区域分别作为重建像素区域C 52使用,或在对上述两个区域进行合并之后作为一个重建像素区域C 52使用。此外,还能够在对重建像素区域C 52进行二次采样之后使用。因为如上所述的方式仅利用当前区块周边的已解码的信息推导出运动信息,因此不需要从编码装置100向解码装置400传送运动信息。

在适用本发明的实施例中,因为解码装置400也执行运动推测,因此当在参考影像整体上执行运动推测时可能会导致其复杂度的极度增加。因此,能够通过在区块单位或上级报头中对探索范围进行传送或在编码装置100以及解码装置400中固定相同的探索范围而降低解码装置400的计算复杂度。

图8是用于对适用本发明之一实施例的帧间预测方法的决定过程进行说明的顺序图。在适用本发明的利用重建像素区域的帧间预测以及现有的帧间预测方式中,能够通过率失真优化(RDO,Rate-Distortion Optimazation)决定最佳的方式。图8所图示的过程能够通过影像编码装置100执行。

参阅图9,在步骤S81,首先通过按照现有方式执行帧间预测而计算出cost_A,并在步骤S82,通过按照如上所述的方式执行适用本发明的利用重建像素区域的帧间预测而计算出cost_B。

接下来,在步骤S83,通过对cost_A以及cost_B进行比较而判断出使用哪一种方式更加有利。当cost_A较少时,设定为在步骤S84中执行利用现有方式的帧间预测,否则,设定为在步骤S85中执行利用重建像素区域的帧间预测。

图9是对用于指示通过图8所图示的过程决定的帧间预测方式的信息的编码过程进行说明的示意图。接下来,将按照图8所图示的过程决定的用于指示帧间预测方式的信息称之为解码器侧运动向量推导(DMVD,Decoder-side Motion Vector Derivation)指示信息。解码器侧运动向量推导(DMVD)指示信息或解码器侧运动向量推导指示信息能够是用于指示执行利用现有方式的帧间预测还是执行利用重建像素区域的帧间预测的信息。

参阅图9,在步骤S901,将对用于指示通过图8所图示的过程决定的帧间预测方式的解码器侧运动向量推导(DMVD)指示信息进行编码。解码器侧运动向量推导(DMVD)指示信息能够是如1比特标志,也能够是多个索引中的一个。接下来,在步骤S902,将对运动信息进行编码,然后结束相应的算法。

或者,也能够在上级报头中首先生成用于指示适用本发明之实施例的利用重建像素区域的帧间预测的使用与否的信息之后再对其进行编码。即,当用于指示利用重建像素区域的帧间预测的使用与否的信息为真(true)时,对解码器侧运动向量推导(DMVD)指示信息进行编码。而当用于指示利用重建像素区域的帧间预测的使用与否的信息为假(false)时,比特流中不包含解码器侧运动向量推导(DMVD)指示信息,此时将利用现有的帧间预测对当前区块进行预测。

此外,上级报头中用于指示利用重建像素区域的帧间预测的使用与否的信息能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

图10是用于对按照如图9所图示的方式编码的解码器侧运动向量推导(DMVD)指示信息的解码过程进行说明的示意图。

在步骤S1001,解码装置400将对解码器侧运动向量推导(DMVD)指示信息进行解码,接下来,在步骤S1002,将对运动信息进行解码,然后结束相应的算法。

如果比特流的上级报头中包含用于指示利用重建像素区域的帧间预测的使用与否的信息且用于指示利用重建像素区域的帧间预测的使用与否的信息为真(true)时,比特流中将包含解码器侧运动向量推导(DMVD)指示信息。而当用于指示利用重建像素区域的帧间预测的使用与否的信息为假(false)时,比特流中不包含解码器侧运动向量推导(DMVD)指示信息,此时将利用现有的帧间预测对当前区块进行预测。

包含用于指示利用重建像素区域的帧间预测的使用与否的信息的上级报头能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

(第2实施例)

接下来,将结合附图对适用本发明的第2实施例进行说明。

在第2实施例中,将如上所述的适用第1实施例的利用重建像素区域的帧间预测适用于利用仿射变换(Affine Transformation)的帧间预测。具体来讲,为了推导出在利用仿射变换的帧间预测过程中使用的控制点(control point)的运动向量,适用如上所述的利用重建像素区域的运动向量推导方法。接下来为了说明的便利,将适用本发明之第2实施例的利用仿射变换的帧间预测简称为仿射帧间预测。

图11是用于对仿射帧间预测进行说明的示意图。

仿射帧间预测在从需要进行编码或解码的当前区块的4个角落获取运动向量之后利用上述运动向量生成预测区块。其中,当前区块的4个角落能够相当于控制点。

参阅图11,通过当前影像内的当前区块(未图示)的4个角落(即,控制点)上的运动向量11-2、11-3、11-4以及11-5识别出的区块能够是当前区块的预测区块11-6。

通过如上所述的仿射帧间预测,能够对旋转、扩大/缩小、移动、反射以及剪切变形的区块或影像区域进行预测。

下述公式1是仿射变换的一般行列式。

[公式1]

公式1是表达二维坐标变换的公式,其中(x,y)为原始坐标,(x',y')为目的坐标,a、b、c、d、e、f为变换参数。

为了将如上所述的仿射变换适用于视频编解码器,需要将变换参数传送到影像解码装置,而这会导致严重的开销增加。因此,在现有的视频编解码器中是利用周边的已重建的N个控制点简单地适用仿射变换。

下述公式2是利用当前区块周边的左上端以及右上端的2个控制点推导出当前区块内的任意子区块的运动向量的方法。

[公式2]

在公式2中,(x,y)为当前区块内的任意子区块的位置,W为当前区块的水平长度,(MV

接下来,下述公式3是利用当前区块周边的左上端、右上端以及左下端的3个控制点推导出当前区块内的任意子区块的运动向量的方法。

[公式3]

在公式3中,(x,y)为任意子区块的位置,W以及H分别为当前区块的水平长度以及垂直长度,(MV

在适用本发明的第2实施例中,为了推导出在仿射帧间预测过程中使用的控制点(control point)的运动向量,适用如上所述的第1实施例的利用重建像素区域的运动向量推导方法。因此,不需要由影像编码装置100将多个控制点(control point)的运动向量信息传送到影像解码装置400。

图12a以及图12b是用于对适用本发明之第2实施例的利用已重建的像素区域的控制键的运动向量推导进行说明的示意图。

参阅图12a,需要进行编码或解码的当前区块12a-2包含于当前影像12a-1中。用于执行仿射帧间预测的4个控制点在当前区块12a-2的4个角落上以圆形标记在图12a中。此外,在上述附图中作为与左上端、右上端以及左下端的3个控制点相邻的区域,对已重建的像素区域a 12a-3、b 12a-4以及c 12a-5进行了图示。

在本实施例中,利用已重建的像素区域a 12a-3、b 12a-4以及c 12a-5按照如图12b所图示的方式推导出左上端、右上端以及左下端的3个控制点的运动向量。但是,对于当前区块的右下端的控制点,其周边可能没有已重建的像素区域存在。在如上所述的情况下,能够利用具有任意大小的子区块d12a-6,将通过现有的帧间预测方式获得的子区块d 12a-6的运动向量设定为当前区块的右下端控制点的运动向量。

参阅图12b,在图12b所图示的参考影像12b-1内,将对与图12a所图示的已重建的像素区域a 12a-3、b 12a-4以及c 12a-5分别匹配的区域d 12b-10、e 12b-11以及f 12b-12进行探索。与已重建的像素区域a 12a-3、b 12a-4以及c 12a-5位于相同位置上的各个区域12b-6、12b-7、12b-8之间的位移将分别决定为已重建的像素区域a 12a-3、b 12a-4以及c12a-5的运动向量12b-2、12b-3、12b-4。选择按照如上所述的方式决定的运动向量12b-2、12b-3、12b-4作为当前区块12a-2的左上端、右上端以及左下端的3个控制点的运动向量。此外,作为右下端控制点的运动向量,能够使用利用现有的帧间预测方式获得的子区块d12a-6的运动向量。

根据下述公式4,能够利用按照如上所述的方式推导出的4个控制点的运动向量推导出当前区块内的任意子区块的运动向量。

[公式4]

在公式4中,(x,y)为当前区块内的任意子区块的位置,W以及H分别为当前区块的水平长度以及垂直长度,(MV

此外,已重建的像素区域a 12a-3、b 12a-4以及c 12a-5的大小和/或形状能够具有参考图7a至图7c在上述内容中进行说明的多种形状和/或大小。子区块d 12a-6的大小和/或形状也能够使用在编码装置100以及解码装置400中预先设定的相同的大小和/或形状。此外,还能够通过区块单位或上级报头对子区块d 12a-6的水平和/或垂直信息进行传送或以2的指数幂单位对大小信息进行传送。

如上所述,在推导出4个控制点上的运动向量之后,能够利用上述向量推导出当前区块12a-2的运动向量或当前区块12a-2内的任意子区块的运动向量,而利用上述所推导出的运动向量,能够推导出当前区块12a-2的预测区块或当前区块12a-2内的任意子区块的预测区块。具体来讲,参考上述公式4,因为当前区块12a-2的位置为(0,0),因此当前区块12a-2的运动向量将为左上端控制点的运动向量(MV

接下来,将结合图13对适用本发明之第2实施例的帧间预测方法进行说明。图13是用于对适用本发明之第2实施例的帧间预测方法进行说明的顺序图。

适用本实施例的帧间预测,能够通过影像编码装置100的帧间预测部103或影像解码装置400的帧间预测部408分别执行。在帧间预测过程中使用的参考影像将被保存到影像编码装置100的存储器112或影像解码装置400的存储器406中。帧间预测部103或帧间预测部408能够通过参考保存在存储器112或存储器406中的参考影像而生成当前区块51的预测区块。

参阅图13,在步骤S131,首先选择将在需要进行编码或解码的当前区块的至少一个控制点的运动向量推导过程中使用的至少一个已重建的像素区域。在图12a以及图12b所图示的实施例中,为了推导出当前区块12a-2的左上端、右上端以及左下端的3个控制点的运动向量,选择了3个已重建的像素区域a 12a-3、b 12a-4以及c 12a-5。但是,并不限定于此,也能够为了推导出3个控制点中的一个或两个控制点的运动向量而选择1个或2个已重建的像素区域。

接下来,在步骤S133,将以在步骤S131中选择的至少一个已重建的像素区域以及当前区块的参考影像为基础,推导出至少一个已重建的像素区域的运动向量分别。在步骤S135,影像编码装置100或影像解码装置400将选择通过如上所述的方式决定的重建像素区域C 52的各个运动向量作为当前区块的至少一个控制点的运动向量。利用通过如上所述的方式选择的至少一个运动向量,能够生成当前区块的预测区块。

图14是用于对适用本发明之第2实施例的帧间预测方法的决定过程进行说明的顺序图。在适用本发明之第2实施例的仿射帧间预测以及现有的帧间预测方式中,能够通过率失真优化(RDO,Rate-Distortion Optimazation)决定最佳的方式。图14所图示的过程能够通过影像编码装置100执行。

参阅图14,在步骤S14中,通过按照现有方式执行帧间预测而计算出cost_A,并在步骤S142,通过按照如上所述的方式执行适用本发明之第2实施例的仿射帧间预测而计算出cost_B。

接下来,在步骤S143,通过对cost_A以及cost_B进行比较而判断出使用哪一种方式更加有利。当cost_A较少时,设定为在步骤S144中执行利用现有方式的帧间预测,否则,设定为在步骤S145中执行适用本发明之第2实施例的仿射帧间预测。

图15是对用于指示通过图14所图示的过程决定的帧间预测方式的信息的编码过程进行说明的示意图。接下来,将按照图14所图示的过程决定的用于指示帧间预测方式的信息称之为解码器侧控制点运动向量推导(DCMVD,Decoder-side Control point MotionVector Derivation)指示信息。解码器侧控制点运动向量推导(DCMVD)指示信息或解码器侧控制点运动向量推导指示信息能够是用于指示执行利用现有方式的帧间预测还是执行适用本发明之第2实施例的仿射帧间预测的信息。

参阅图15,在步骤S151,将对用于指示通过图14所图示的过程决定的帧间预测方式的解码器侧控制点运动向量推导(DCMVD)指示信息进行编码。解码器侧控制点运动向量推导(DCMVD)指示信息能够是如1比特标志,也能够是多个索引中的一个。接下来,在步骤S152,将对运动信息进行编码,然后结束相应的算法。

此外,也能够在上级报头中首先生成用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息之后再对其进行编码。即,当用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息为真(true)时,对解码器侧控制点运动向量推导(DCMVD)指示信息进行编码。而当用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息为假(false)时,比特流中不包含解码器侧控制点运动向量推导(DCMVD)指示信息,此时将利用现有的帧间预测对当前区块进行预测。

此外,上级报头中用于指示适用本发明的仿射帧间预测的使用与否的信息能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

图16是用于对按照如图15所图示的方式编码的解码器侧控制点运动向量推导(DCMVD)指示信息的解码过程进行说明的示意图。

在步骤S161,解码装置400将对解码器侧控制点运动向量推导(DCMVD)指示信息进行解码,接下来,在步骤S162,将对运动信息进行解码,然后结束相应的算法。

如果比特流的上级报头中包含用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息且用于指示利用重建像素区域的帧间预测的使用与否的信息为真(true)时,比特流中将包含解码器侧控制点运动向量推导(DCMVD)指示信息。而当用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息为假(false)时,比特流中不包含解码器侧控制点运动向量推导(DCMVD)指示信息,此时将利用现有的帧间预测对当前区块进行预测。

上级报头中用于指示适用本发明之第2实施例的仿射帧间预测的使用与否的信息能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

图17是对利用已重建的像素区域推导出3个控制点的运动向量并生成当前区块的预测区块的影像解码方法的一实施例进行图示的顺序图。图17所图示的过程,与图12a以及图12b所图示的实施例相关。

为了推导出当前区块12a-2的左上端、右上端以及左下端的3个控制点的运动向量,选择了3个已重建的像素区域a 12a-3、b 12a-4以及c 12a-5。但是,并不限定于此,也能够为了推导出3个控制点中的一个或两个控制点的运动向量而选择1个或2个已重建的像素区域。

影像解码装置400能够以解码器侧控制点运动向量推导(DCMVD)指示信息为基础判断执行哪一种帧间预测。在步骤S171,当解码器侧控制点运动向量推导(DCMVD)指示信息指示使用适用本发明的仿射帧间预测时,在步骤S172,将利用重建像素区域分别推测并选择当前区块的左上端、右上端以及左下端的控制点的运动向量。

接下来,在步骤S173,将通过对包含于比特流中传送过来的运动信息进行解码而获得的运动向量设定为右下端的控制点的运动向量。在步骤S174,将通过利用在步骤S172以及步骤S173中推导出的4个控制点的各个运动向量的仿射变换生成当前区块的帧间预测区块。当不使用仿射帧间预测时,在步骤S175,将按照现有的帧间预测对运动信息进行解码并利用已解码的运动信息生成当前区块的预测区块。

(第3实施例)

图18是对适用本发明之第3实施例的为了帧间预测而被分割成多个区域的当前区块进行图示的示意图。

在图18中,作为需要进行编码或解码的当前区块500以及与当前区块500相邻的区域,对已重建的像素区域C 503进行了图示。当前区块500被分割成A区域500-a以及B区域500-b。

根据像素之间的关联性,已重建的像素区域C 503内的像素与包含于A区域500-a中的像素类似的可能性较高,但是与包含于B区域500-b内的像素则有不类似的可能性存在。因此在A区域500-a的帧间预测过程中执行利用重建像素区域C 503的运动推测以及运动补偿,从而在防止开销增加的同时找到正确的运动。而作为B区域500-b的帧间预测方法,能够适用现有的帧间预测。

图19是用于对适用本发明之第3实施例的帧间预测方法进行说明的顺序图。

适用本实施例的帧间预测,能够通过影像编码装置100的帧间预测部103或影像解码装置400的帧间预测部408分别执行。在帧间预测过程中使用的参考影像将被保存到影像编码装置100的存储器112或影像解码装置400的存储器406中。帧间预测部103或帧间预测部408能够通过参考保存在存储器112或存储器406中的参考影像而分别生成当前区块内的A区域500-a的预测区块以及B区域500-b的预测区块。

首先,如图18所示,在步骤S51,需要进行编码或解码的当前区块将被分割成包含第1区域以及第2区域的多个区域。其中,第1区域以及第2区域能够分别对应于图5所图示的A区域500-a以及B区域500-b。图18所图示的当前区块500被分割成A区域500-a以及B区域500b等两个区域,但是还能够被分割成三个以上的区域,也能够被分割成不同的大小和/或形状的区域。

接下来,在步骤S53,利用不同的帧间预测方法分别获得上述第1区域的预测区块以及上述第2区块的预测区块。其中,A区域500-a的帧间预测方法,能够是如上所述的利用重建像素区域C 503执行运动推测以及运动补偿的方法。而作为B区域500-b的帧间预测方法,能够适用现有的帧间预测。

如本实施例所述的将当前区块分割成多个区域并利用不同的帧间预测方法推导出各个区域的预测区块的方式被称之为混合方式的帧间预测(Mixed Inter-prediction)。

图20是用于对利用已重建的像素区域的运动推测以及运动补偿的一实施例进行说明的示意图。

参阅图20,在参考影像600内,将对与图18所图示的已重建的像素区域C 503匹配的区域进行探索。如图20所示,在决定与重建像素区域C 503最类似的重建像素区域D 603之后,将位于与重建像素区域C 503相同位置上的区域601以及重建像素区域D 603之间的位移决定为A区域500-a的运动向量605。

即,选择利用重建像素区域C 503推测出的运动向量605作为当前区块的A区域500-a的运动向量。进而,利用运动向量605生成A区域500-a的预测区块。

此外,如图7a至图7c所示,重建像素区域C 503能够具有不同的形状和/或大小。此外,还能够对上侧以及左侧的重建像素区域进行分离使用。此外,还能够在对重建像素区域进行二次采样之后使用。因为如上所述的方式仅利用当前区块周边的已解码的信息推导出运动信息,因此不需要从编码装置100向解码装置400传送运动信息。

在适用本发明的实施例中,因为解码装置400也执行运动推测,因此当在参考影像整体上执行运动推测时可能会导致其复杂度的极度增加。因此,能够通过在区块单位或上级报头中对探索范围进行传送或在编码装置100以及解码装置400中固定相同的探索范围而降低解码装置400的计算复杂度。

此外,在对图18所图示的区域B 500-b的运动向量进行推测以及编码时,能够在利用重建像素区域C 503内的已解码的区块的运动信息对区域B 500-b的运动向量进行预测之后再对与区域B 500-b的运动向量及其预测运动向量之间的差异对应的残差向量进行编码。

或者,还能够在利用作为A区域500-a的运动向量推导出的运动向量605对区域B500-b的运动向量进行预测之后再对残差向量进行编码。

或者,也能够在利用重建像素区域C 503内的已解码的区块的运动向量以及区域A500-a的所推测出的运动向量605构成运动向量预测组(Motion vector prediction set)之后再对区域B 500-b的运动向量进行预测并对残差向量进行编码。

或者,也能够在从与当前区块相邻的区块中的预先设定的位置获取运动信息之后执行区块合并(Block merging)。其中,区块合并是指将周边的运动信息直接适用于需要进行编码的区块中的方式。此时,还能够在设定多个预先设定的位置之后利用索引指示在哪一个位置上执行区块合并。

此外,B区域500-b的大小能够在编码装置100中进行编码之后通过区块单位或上级报头传送到解码器,或者也能够使用在编码装置100以及解码装置400中预先设定的相同的值或比率。

图21是用于对适用本发明之一实施例的帧间预测方法的决定过程进行说明的顺序图。在适用本发明的混合方式的帧间预测以及现有的帧间预测方式中,能够通过率失真优化(RDO,Rate-Distortion Optimazation)决定最佳的方式。图21所图示的过程能够通过影像编码装置100执行。

参阅图21,在步骤S801,通过按照现有方式执行帧间预测而计算出cost_A,并在步骤S802,通过按照如上所述的方式执行在将当前区块分割成至少2个区域并分别执行帧间预测的适用本发明的混合方式的帧间预测而计算出cost_B。

接下来,在步骤S803,通过对cost_A以及cost_B进行计算而判断出使用哪一种方式更加有利。当cost_A较少时,设定为在步骤S804中执行利用现有方式的帧间预测,否则,设定为在步骤S805中执行利用混合方式的帧间预测。

图22是对将用于指示通过图21所图示的过程决定的帧间预测方式的信息传送到解码装置400的过程进行说明的示意图。

在步骤S901,将对用于指示当前需要进行编码的区块使用了哪一种方式的帧间预测的信息进行编码。上述信息能够是如1比特标志,也能够是多个索引中的一个。接下来,在步骤S902,将对运动信息进行编码,然后结束相应的算法。

或者,也能够在上级报头中首先生成用于指示适用本发明之实施例的混合方式的帧间预测的使用与否的信息之后再对其进行编码。即,当上级报头中用于指示混合方式的帧间预测的使用与否的信息为真(true)时,将对用于指示在当前需要进行编码的区块中使用了哪一种方式的帧间预测的信息进行编码。而当用于指示混合方式的帧间预测的使用与否的信息为假(false)时,比特流中不包含用于指示使用了哪一种方式的帧间预测的信息,此时不需要将当前区块分割成多个区域,而是使用现有的帧间预测对当前区块进行预测。

此外,上级报头中用于指示混合方式的帧间预测的使用与否的信息能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

图23是对通过图21所图示的方式编码的信息即用于指示当前需要进行编码的区块使用了哪一种方式的帧间预测的信息的解码过程进行说明的示意图。

在步骤S1001,解码装置400将用于指示当前需要进行编码的区块使用了哪一种方式的帧间预测的信息进行解码,接下来,在步骤S1002,将对运动信息进行解码,然后结束相应的算法。

如果比特流的上级报头中包含用于指示混合方式的帧间预测的使用与否的信息且用于指示混合方式的帧间预测的使用与否的信息为真(true)时,比特流中将包含用于指示当前需要进行编码的区块使用了哪一种方式的帧间预测的信息。而当用于指示混合方式的帧间预测的使用与否的信息为假(false)时,比特流中不包含用于指示使用了哪一种方式的帧间预测的信息,此时不需要将当前区块分割成多个区域,而是使用现有的帧间预测对当前区块进行预测。

包含用于指示混合方式的帧间预测的使用与否的信息的上级报头能够是区块报头、条带报头、并行区块报头、图像报头或序列报头。上级报头中用于指示混合方式的帧间预测的使用与否的信息,能够被包含到区块报头、条带报头、并行区块报头、图像报头或序列报头中进行传送。

图24是对利用用于指示所使用的帧间预测方式的信息生成帧间预测区块的方法进行示意的顺序图。图24所图示的方法能够通过解码装置400执行。

首先,在步骤S1101,判定用于指示使用了哪一种方式的帧间预测的信息是否指示了使用混合方式的帧间预测,接下来,如果判定对需要进行解码的当前区块使用混合方式的帧间预测,在步骤S1102,将当前区块分割成多个区域。例如,能够将当前区块按照如图5所示的方式分割成A区域500-a以及B区域500-b。

此时,所分割的各个区域的大小能够通过区块单位或上级报头从编码装置100向解码装置400进行信令,也能够被设定为预先设定的值。

接下来,在步骤S1103,将按照图20所图示的方法对第一个区域例如A区域00-a的运动向量进行推测并生成预测区块。

接下来,在步骤S1104,将利用已解码的运动向量生成第二个区域例如B区域500-b的预测区块,然后结束算法。

如果,用于指示使用了哪一种方式的帧间预测的信息指示不使用混合方式的帧间预测或包含于上级报头中的用于指示混合方式的帧间预测的使用与否的信息为假(false)时,作为当前区块500的预测方法将适用现有的帧间预测。即,在步骤S1105,将利用已解码的运动信息生成当前区块500的预测区块,然后结束算法。预测区块的大小与需要进行解码的当前区块500的大小相同。

(第4实施例)

接下来,将结合附图对适用本发明的第4实施例进行说明。第4实施例与减少在执行如上所述的适用第3实施例的混合方式的帧间预测时可能在区块的边界发生的区块效应(Blocking artifacts)的方法相关。

图25是用于对减少在执行适用本发明的混合方式的帧间预测的时可能发生的区块效应(Blocking artifacts)的方式进行说明的示意图。图25所图示的预测区块1以及预测区块2能够分别对应于图18所图示的A区域500-a的预测区块以及B区域500-b的预测区块。

对适用本发明的第4实施例进行概括来讲,首先,将位于预测区块的边界的区域分割成具有特定大小的子区块(Sub-block)。接下来,通过将位于上述预测区块的子区块周边的子区块的运动信息适用于上述预测区块的子区块中而生成新的预测区块。接下来,通过对新的预测区块以及上述预测区块的子区块进行加权求和而生成最终的预测区块的子区块。这能够被称之为重叠区块运动补偿(OBMC:Overlapped Block Motion Compensation)。

参阅图25,对于存在于图25的预测区块1中的子区块P2,能够在通过将周边的子区块A2所具有的运动信息适用于P2中而生成子区块P2的新的预测区块之后,再按照如图26所图示的方式适用加权求和而生成最终的子预测区块。

为了说明的便利,假定图25所图示的各个子区块的大小为4×4,并假定有与预测区块1的上侧相邻的8个子区块A1~A8以及与左侧相邻的8个子区块B1~B8存在,同时假定有与预测区块2的上侧相邻的4个子区块C1~C4以及与左侧相邻的4个子区块D1至D8存在。

虽然为了说明的便利而假定各个子区块的水平以及垂直长度分别为4,但是除此之外也能够在将各种值通过区块单位或上级报头进行编码之后信令到解码装置400。因此,在编码装置100以及解码装置400中能够将子区块的大小设定为相同的值。或者,编码装置100以及解码装置400也能够使用具有预先设定的相同大小的子区块。

图26是用于对预测区块内的子区块以及与上侧相邻的子区块的加权求和的适用方式进行说明的示意图。

参阅图26,最终的预测像素c将通过如下所述的公式生成。

[公式5]

c=W1×a+(1-W1)×b

除了预测像素c之外,剩余的15个像素也能够通过与上述类似的方法计算得出。图13中的P2至P8将被替代成通过图26所图示的过程适用加权求和的新的预测像素。

图27是用于对预测区块内的子区块以及与左侧相邻的子区块的加权求和的适用方式进行说明的示意图。子区块P9至P15将通过如图27所图示的方式适用加权求和而替代成新的预测像素值。

参阅图26,将以行为单位在像素中适用相同的加权值,参阅图27,将以列为单位在像素中适用相同的加权值。

对于图25的子区块P1,还能够通过在按照图26所图示的方式执行与周边子区块A1内的像素值的加权求和之后再按照图27所图示的方式追加执行与子区块B1内的像素值的加权求和而获得最终的预测值。

对于存在于图25所图示的预测区块2中的子区块P16至P22,也能够通过使用图26或图27所图示的加权值合计算方式而获得最终的预测值。此时,在加权求和的过程中使用的周边子区块能够是C1~C4至D1~D4。

此外,也能够通过加权求和的方式将周边子区块C1至C4、D1至D4的像素值替代成新的值,而不仅仅是对子区块P16至P22的像素值进行替代。以子区块C2为例,能够在通过将子区块P17的运动信息适用于子区块C2中而生成预测子区块之后对上述预测子区块内的像素值与子区块C2的像素值进行加权求和而生成适用加权求和的C2的像素值。

图28是对执行适用本发明的混合方式的帧间预测时在区块边界的子区块之间的加权求和适用与否的决定过程进行图示的顺序图。

在步骤S1501,将用于保存最佳cost的变量BEST_COST初始化为最大值,将用于保存利用混合方式的帧间预测的使用与否的COMBINE_MODE初始化为false,将用于保存子区块之间的加权求和的使用与否的WEIGHTED_SUM初始化为false。接下来,在步骤S1502,在执行利用现有方式的帧间预测之后计算出cost_A,在步骤S1503,在执行利用混合方式的帧间预测之后计算出cost_B。在步骤S1504,对两个cost进行比较,当cost_A的值较小时,在步骤S1505,通过将COMBINE_MODE设定为假(false)而表示不使用利用混合方式的帧间预测并在BEST_COST中保存cost_A。

在步骤S1504,对两个cost进行比较,当cost_A的值较小时,在步骤S1505,通过将COMBINE_MODE设定为假(false)而表示不使用利用混合方式的帧间预测并在BEST_COST中保存cost_A。接下来,在步骤S1507,在子区块之间适用加权求和并计算出cost_C。在步骤S1508,对BEST_COST与cost_C进行比较,当BEST_COST小于cost_C时,在步骤S1509,通过将WEIGHTED_SUM变量设定为假(false)而表示在子区块之间不适用加权求和,否则,在步骤S1510,通过将WEIGHTED_SUM变量设定为true而表示在子区块之间适用加权求和,然后结束相应的算法。

图29是对通过图27所图示的方式决定的信息即用于指示子区块之间的加权求和适用与否的信息的编码过程进行图示的顺序图。图29所图示的过程能够通过影像编码装置100执行。首先,在步骤S1601,编码装置100对用于指示使用了哪一种方式的帧间预测的信息进行编码,接下来,在步骤S1602,对运动信息进行编码。接下来,在步骤S1603,对用于指示子区块之间的加权求和适用与否的信息进行编码。

如果比特流的上级报头中包含用于指示混合方式的帧间预测的使用与否的信息且用于指示混合方式的帧间预测的使用与否的信息为真(true),将在对用于指示上述子区块之间的加权求和的适用与否的信息进行编码之后包含到比特流中。但是,如果包含于上级包头中的用于指示混合方式的帧间预测的使用与否的信息为假(false),比特流中不包含用于指示子区块之间的加权求和的适用与否的信息。

图30是对用于指示子区块之间的加权求和适用与否的信息的解码过程进行图示的顺序图。图30所图示的过程能够通过影像解码装置400执行。首先,在步骤S1701,解码装置400对用于指示使用了哪一种方式的帧间预测的信息进行解码,接下来,在步骤S1702,对运动信息进行解码。接下来,在步骤S1703,对用于指示子区块之间的加权求和适用与否的信息进行解码。

如果比特流的上级报头中包含用于指示混合方式的帧间预测的使用与否的信息且用于指示混合方式的帧间预测的使用与否的信息为真(true),能够在对用于指示上述子区块之间的加权求和的适用与否的信息进行编码之后包含到比特流中。

但是,如果包含于上级包头中的用于指示混合方式的帧间预测的使用与否的信息为假(false),比特流中能够不包含用于指示子区块之间的加权求和的适用与否的信息。在如上所述的情况下,能够推断用于指示子区块之间的加权求和的适用与否的信息表示在子区块之间不适用加权求和。

(第5实施例)

图31a以及图31b是用于对适用本发明之第5实施例的利用已重建的像素区域的帧间预测进行说明的示意图。适用本实施例的利用已重建的像素区域的帧间预测尤其是能够利用已重建的像素区域推导出当前区块的运动向量。

在图31a中,作为需要进行编码或解码的当前区块252以及与当前区块252相邻的区域,对已重建的像素区域C 251进行了图示。已重建的像素区域C 251包括当前区块252的左侧区域以及上侧区域等两个区域。当前区块252以及已重建的像素区域C 251包含于当前影像250内。当前影像250能够是图像、条带、并行区块、编码树区块、编码区块或其他影像区域。已重建的像素区域C 251,从编码的角度来看能够是在对当前区块252进行编码之前已经被编码之后再重建的像素区域,而从解码的角度来看能够是在对当前区块252进行解码之前已经重建的区域。

在对当前区块进行编码或解码之前,因为在当前区块252的周边有已重建的像素区域C 251存在,因此影像编码装置100以及解码装置400能够利用相同的重建像素区域C251。因此,编码装置100不需要对当前区块252的运动信息进行编码,而是利用重建像素区域C 251由影像编码装置100以及解码装置400以相同的方法生成当前区块252的运动信息并生成预测区块。

在图31b中,对利用已重建的像素区域的运动推测以及运动补偿的一实施例进行了图示。在图31b所图示的参考影像253内,将对与图31a所图示的已重建的像素区域C 251匹配的区域进行探索。在决定与重建像素区域C 52最类似的重建像素区域D 256之后,将位于与重建像素区域C 251相同位置上的区域254以及重建像素区域D 256之间的位移决定为重建像素区域C 251的运动向量257。在选择按照如上所述的方式决定的运动向量257作为当前区块252的运动向量之后,能够利用上述运动向量257推导出当前区块252的预测区块。

图32是对在将按照图31b所图示的方式推测出的运动向量257设定为初始运动向量并将当前区块252分割成多个子区块A至D之后以子区块单位追加执行运动推测的情况进行例示的示意图。

子区块A至D能够具有任意大小。图32所图示的MV_A至MV_D分别为子区块A至D的初始运动向量,与图31b所图示的运动向量257相同。

各个子区块的大小能够在通过区块单位或上级报头进行编码之后传送到解码装置400,或者也能够使用在编码装置100以及解码装置400中预先设定的相同的子区块大小值。

此外,如图7a至图7c所示,重建像素区域C 251能够具有不同的形状和/或大小。此外,还能够将当前区块的上侧以及左侧的重建像素区域分别作为重建像素区域C使用,或在按照如图31a至图31b所图示的方式对上述两个区域进行合并之后作为一个重建像素区域C251使用。此外,还能够在对重建像素区域C 251进行二次采样之后使用。

在此为了说明的便利,在假定将如图31a以及图31b所图示的重建像素区域C 251作为重建像素区域使用的情况下进行说明。

图33是对将重建像素区域C 251以及当前区块以子区块单位分割的一实例进行图示的示意图。参阅图33,重建像素区域C 251被分割成子区块a 285、b 286、c 287以及d288,当前区块被分割成子区块A 281、B 282、C 283以及D 284。

作为子区块A 281的重建像素区域能够使用子区块a 285以及c 287,作为子区块B282的重建像素区域能够使用子区块b 286以及c 287,作为子区块C 283的重建像素区域能够使用子区块a 285以及d 288,最后作为子区块D 284的重建像素区域能够使用子区块b286以及d 288。

图34是对利用重建像素区域的帧间预测方法的一实例进行说明的顺序图。参阅图31a以及图31b,在步骤S291,对当前区块252的重建像素区域251进行设定,接下来,在步骤S292,利用重建像素区域251在参考影像253上执行运动推测。根据运动推测的结果,能够求出重建像素区域251的运动向量257。接下来,在步骤S293,按照如图33所图示的方式以子区块单位设定重建像素区域,接下来,在步骤S294,在将通过步骤S292推测出的运动向量257设定为起始点之后以当前区块的子区块单位分别执行运动推测。

图35是对适用本发明的利用存在于当前区块周边的重建区块将重建像素区域分割成子区块的一实例进行图示的示意图。

在适用本发明的一实施例中,能够以周边的已重建的区块的分割结构为基础对在当前区块的预测过程中使用的周边的已重建的像素区域进行分割。换言之,已重建的像素区域能够以周边的已重建的区块的数量、周边的已重建的区块的大小、周边的已重建的区块的形状或周边的已重建的区块之间的边界中的至少一个为基础进行分割。

参阅图35,在需要进行编码或解码的当前区块2100的周边有重建区块12101至重建区块5 2105存在。如果按照图5a所图示的方式设定重建像素区域,因为在重建区块12101至重建区块5 2105的各个边界上可能存在的像素值的急剧差异,可能会导致运动推测时的效率的下降。因此按照如图35所图示的方式,在将重建像素区域分割成a至e的子区块使用时可能有助于效率的提升。图35所图示的重建像素区域,也能够根据当前区块2100周边的已重建的区块的分割方法进行分割。

具体来讲,在对重建像素区域进行分割时能够考虑周边的已重建的区块的数量。参阅图35,在当前区块2100的上侧有重建区块1 2101以及重建区块2 2102等两个重建区块存在,而在当前区块2100的左侧有重建区块3 2103至重建区块5 2105的三个重建区块存在。考虑到上述情况,当前区块2100上侧的重建像素区域能够被分割成子区块a以及b等两个子区块,而当前区块2100左侧的重建像素区域能够被分割成子区块c至e等三个子区块。

或者,在对重建像素区域进行分割时能够考虑周边的已重建的区块的大小。例如,当前区块2100左侧的重建像素区域的子区块c的高度与重建区块3 2103相同,子区块d的高度与重建区块4 2104相同,子区块e的高度与从当前区块2100的高度减去子区块c的高度以及子区块d的高度之后的剩余值相同。

或者,在对重建像素区域进行分割时能够考虑周边的已重建的区块之间的边界。在考虑到当前区块2100上侧的重建区块1 2101以及重建区块2 2102之间的边界的前提下,能够将当前区块2100上侧的重建像素区域分割成子区块a以及b等两个子区块。在考虑到当前区块2100左侧的重建区块3 2103以及重建区块4 2104之间的边界以及重建区块4 2104以及重建区块5 2105之间的边界的前提下,能够将当前区块2100左侧的重建像素区域分割成子区块c至e等三个子区块。

此外,对于使用子区块a至e中的哪一个区域执行运动推测,可能有多种不同的条件存在。例如,能够仅使用面积最大的一个重建像素区域执行运动推测,也能够按照优先顺序从上端选择m个并从左侧选择n个用于执行运动推测。或者,也能够通过在子区块a至e之间适用如低通滤波器(low-pass filter)等滤波器而缓解急剧的像素值的差异之后使用如图5所图示的一个重建像素区域251。

图36是对适用本发明的利用存在于当前区块周边的重建区块将当前区块分割成多个子区块的一实例进行图示的示意图。

将图36所图示的当前区块分割成多个子区块的方法,与对图35所图示的重建像素区域进行分割的方法类似。即,需要进行编码或解码的当前区块能够以周边的已重建的区块的分割结构为基础进行分割。换言之,当前区块能够以周边的已重建的区块的数量、周边的已重建的区块的大小、周边的已重建的区块的形状或周边的已重建的区块之间的边界中的至少一个为基础进行分割。

图36所图示的当前区块被分割成多个子区块A至F。能够以通过如上所述的方式进行分割而获得的各个子区块单位执行帧间预测。此时,子区块A能够使用图10的重建区域a以及c、子区块B能够使用重建区域b以及c、子区块C能够使用重建区域a以及d、子区块D能够使用重建区域b以及d、子区块E能够使用重建区域a以及e、子区块F能够使用重建区域b以及e分别执行帧间预测。

或者,也能够根据子区块以及重建像素区域的大小设定优先顺序。例如因为图36所图示的子区块A的高度大于长度,因此能够相对于重建区域c为重建区域a设定更高的优先顺序,从而仅利用重建区域a执行帧间预测。或者与其相反,能够根据影像特性等情况为重建区域c设定更高的优先顺序。

图37是对适用本发明之一实施例的将当前区块分割成多个子区块的方法进行图示的顺序图。

参阅图37,在步骤S2201,首先以需要进行编码或解码的当前区块的周边的区块为基础将上述当前区块分割成多个子区块。当前区块的周边的区块是如图36所图示的已重建的区块。如结合图36在上述内容中进行的说明,需要进行编码或解码的当前区块能够以周边的已重建的区块的分割结构为基础进行分割。即,当前区块能够以周边的已重建的区块的数量、周边的已重建的区块的大小、周边的已重建的区块的形状或周边的已重建的区块之间的边界中的至少一个为基础进行分割。

接下来,在步骤S2203,对当前区块内的多个子区块进行编码或解码。在适用本发明的一实施例中,如上所述,能够利用帧间预测对图36所图示的当前区块的子区块A至F分别进行编码或解码。此时,子区块A能够使用图35的重建区域a以及c、子区块B能够使用重建区域b以及c、子区块C能够使用重建区域a以及d、子区块D能够使用重建区域b以及d、子区块E能够使用重建区域a以及e、子区块F能够使用重建区域b以及e分别执行帧间预测。进而,能够对如用于指示通过对子区块A至F分别执行帧间预测而获得的是否分割成子区块的sub_block信息或运动信息等帧间预测相关信息进行编码或解码。

图37所图示的方法,能够通过影像编码装置100的帧间预测部103或影像解码装置400的帧间预测部408分别执行。在帧间预测过程中使用的参考影像将被保存到影像编码装置100的存储器112或影像解码装置400的存储器406中。帧间预测部103或帧间预测部408能够通过参考保存在存储器112或存储器406中的参考影像而生成当前区块51的预测区块。

图38是对适用本发明之一实施例的将在当前区块的编码或解码过程中所使用的重建区域分割成多个子区块的方法进行图示的顺序图。

参阅图13,在步骤S2211,首先以需要进行编码或解码的当前区块的周边的区块为基础将已重建的像素区域分割成多个子区块。如结合图35和/或图36在上述内容中进行的说明,能够以周边的已重建的区块的分割结构为基础对在当前区块的预测过程中使用的周边的已重建的像素区域进行分割。换言之,已重建的像素区域能够以周边的已重建的区块的数量、周边的已重建的区块的大小、周边的已重建的区块的形状或周边的已重建的区块之间的边界中的至少一个为基础进行分割。

接下来,在步骤S2213,利用包含于上述已重建的像素区域中的至少一个子区块,对当前区块内的多个子区块中的至少一个进行编码或解码。例如,如结合图36在上述内容中进行的说明,子区块A能够使用图35的重建区域a以及c、子区块B能够使用重建区域b以及c、子区块C能够使用重建区域a以及d、子区块D能够使用重建区域b以及d、子区块E能够使用重建区域a以及e、子区块F能够使用重建区域b以及e分别执行帧间预测。进而,能够对如用于指示通过对子区块A至F分别执行帧间预测而获得的是否分割成子区块的sub_block信息或运动信息等帧间预测相关信息进行编码或解码。

图38所图示的方法,能够通过影像编码装置100的帧间预测部103或影像解码装置400的帧间预测部408分别执行。在帧间预测过程中使用的参考影像将被保存到影像编码装置100的存储器112或影像解码装置400的存储器406中。帧间预测部103或帧间预测部408能够通过参考保存在存储器112或存储器406中的参考影像而生成当前区块51的预测区块。

图39是对利用按照如图36所图示的方式分割的当前区块的子区块的帧间预测方法的一实施例进行图示的顺序图。图39所图示的方法,能够通过影像编码装置100的帧间预测部103执行。

首先,对在本方法中使用的两个变量即解码器侧运动向量推导(DMVD)指示信息以及SUB_BLOCK进行说明。解码器侧运动向量推导(DMVD,Decoder-side Motion VectorDerivation)指示信息或解码器侧运动向量推导指示信息是用于指示执行利用现有方式的帧间预测还是执行在上述内容中进行说明的适用本发明的利用重建像素区域的帧间预测的信息。当解码器侧运动向量推导(DMVD)指示信息为假时,表示执行利用现有方式的帧间预测。当解码器侧运动向量推导(DMVD)指示信息为真(true)时,表示执行适用本发明的利用重建像素区域的帧间预测。

变量SUB_BLOCK用于指示是否将当前区块分割成子区块。当SUB_CLOCK的值为假时,表示不将当前区块分割成子区块。与此相反,当SUB_BLOCK的值为真(true)时,表示将当前区块分割成子区块。

参阅图39,在步骤S2301,首先将用于指示利用重建像素区域的帧间预测的执行与否的变量解码器侧运动向量推导(DMVD)指示信息设定为假(false),将用于指示是否分割成子区块的变量SUB_BLOCK设定为假(false),并在执行对当前区块的帧间预测之后计算出cost_1。

接下来,在步骤S2302,将SUB_BLOCK设定为真(true),并在执行帧间预测之后计算出cost_2。接下来,在步骤S2303,将解码器侧运动向量推导(DMVD)指示信息设定为真(true)并将SUB_BLOCK设定为假(false),接下来执行帧间预测并计算出cost_3。接下来,在步骤S2304,将解码器侧运动向量推导(DMVD)指示信息以及SUB_BLOCK均设定为真(true),接下来执行帧间预测并计算出cost_4。在对所计算出的cost_1至cost_4进行比较之后决定最佳的帧间预测方法。对与所决定的最佳的帧间预测方法相关的解码器侧运动向量推导(DMVD)指示信息以及SUB_BLOCK信息进行保存,然后结束相应的算法。

图40是对按照图39所图示的帧间预测决定的信息的编码方法进行说明的示意图。图40所图示的编码方法,能够通过影像编码装置100执行。

在步骤S2401,因为图36所图示的当前区块的子区块的总数量被设定为6个,因此将用于指示需要进行编码的子区块的总数量的变量BLOCK_NUM初始化为6,并将用于指示需要进行编码的子区块的索引的变量BLOCK_INDEX初始化为0。其中,因为当前区块是以当前区块周边的已重建的区块为基础分割成子区块,因此不需要单独地对子区块的数量进行编码。因为影像解码装置400也是利用与影像编码装置100相同的方式将当前区块分割成子区块,因此影像解码装置400能够对当前区块内可能存在的子区块的数量进行确认。

在步骤S2401之后,在步骤S2402,对用于指示是否将当前区块分割成子区块的信息SUB_BLOCK进行编码。在步骤S2403,对是否将当前区块分割成子区块进行确认,当不分割成子区块时,在步骤S2404,将BLOCK_NUM变量的值变更为1。

接下来,在步骤S2405,对用于指示利用重建像素区域的帧间预测的使用与否的信息即解码器侧运动向量推导(DMVD)指示信息进行编码。在步骤S2406,对是否使用利用重建像素区域的帧间预测进行确认,当不使用利用重建像素区域的帧间预测时,在步骤S2407,对运动信息进行编码。与此相反,如果使用,在步骤S2408,增加BLOCK_INDEX的值,并在S2409,将其与BLOCK_NUM变量进行比较。当BLOCK_INDEX的值与BLOCK_NUM的值相同时,表示当前区块内已经没有需要进行编码的子区块,因此结束相应的算法。当上述两个值不同时,在移动到存在于当前区块内的下一个需要进行编码的子区块之后从步骤S2406开始重复执行。

图41是对按照图40所图示的编码方法编码的信息的解码方法的一实例进行说明的顺序图。在步骤S2501,因为图36所图示的当前区块的子区块的总数量被设定为6个,因此将用于指示需要进行解码的子区块的总数量的变量BLOCK_NUM初始化为6,并将用于指示需要进行编码的子区块的索引的变量BLOCK_INDEX初始化为0。如上所述,因为影像解码装置400以及影像编码装置100都是以当前区块周边的已重建的区块为基础利用相同的方式将当前区块分割成子区块,因此不需要将用于指示子区块的数量的信息单独地提供给影像解码装置400。影像解码装置400能够以当前区块周边的已重建的区块为基础,自行确认当前区块内可能存在的子区块的数量。

在步骤S2501之后,在步骤S2502,对用于指示是否将当前区块分割成子区块的信息SUB_BLOCK进行解码。在步骤S2403,对是否将当前区块分割成子区块进行确认,当不分割成子区块时,在步骤S2404,将BLOCK_NUM变量的值变更为1。

接下来,在步骤S2505,对用于指示利用重建像素区域的帧间预测的使用与否的信息即解码器侧运动向量推导(DMVD)指示信息进行解码。在步骤S2506,对是否使用利用重建像素区域的帧间预测进行确认,当不使用利用重建像素区域的帧间预测时,在步骤S2507,对运动信息进行解码。与此相反,如果使用,在步骤S2508,增加BLOCK_INDEX的值,并在S2509,将其与BLOCK_NUM变量进行比较。当BLOCK_INDEX的值与BLOCK_NUM的值相同时,表示当前区块内已经没有需要进行解码的子区块,因此结束相应的算法。当上述两个值不同时,在移动到存在于当前区块内的下一个需要进行解码的子区块之后从步骤S2506开始重复执行。

(第6实施例)

接下来,将结合附图对适用本发明的第6实施例进行说明。

图42a以及42b是用于对适用本发明的第6实施例进行说明的示意图。

如图42a以及图42b所示,在假定当前区块2600周边有重建区块1 2601至重建区块6 2606存在的情况下,能够按照如图36所图示的方式将重建像素区域分割成子区块a至f。按照如图37所图示的方式,能够将当前区块2600分割成子区块A至I。

其中,因为子区块F、G、H以及I处于与重建像素区域不相邻的分离位置,因此利用重建像素区域的帧间预测可能会不正确。因此,能够在子区块F、G、H以及I中执行现有的帧间预测,而仅在子区块A至E中使用利用重建像素区域的帧间预测。

在利用重建像素区域对子区块A至E执行帧间预测时,能够利用与各个子区块相邻的重建像素区域执行帧间预测。例如,子区块B能够利用重建像素区域b、子区块C能够利用重建像素区域c、子区块D能够利用重建像素区域e、子区块E能够利用重建像素区域f执行帧间预测。对于子区块A,能够按照预先设定的优先顺序利用重建像素区域a或d中的一个或同时利用重建像素区域a以及d执行帧间预测。

或者,在利用重建像素区域对子区块A至E执行帧间预测时,能够对用于指示各个子区块使用哪一个重建像素区域的索引进行编码。例如,也能够利用重建像素区域a至f中的重建像素区域b执行子区块A的帧间预测。子区块E也能够利用重建像素区域c执行帧间预测。在如上所述的情况下,能够根据重建像素区域a至f各自的水平或垂直大小、各个区域内的像素数量、位置等确定优先顺序并分配索引。

对于子区块F至I,能够通过执行现有的帧间预测而进行编码或解码。作为一种方案,如图42b所示,能够在将子区块F至I合并成一个之后利用现有的帧间预测进行编码或解码。

图43是对参考图42a以及图42b进行说明的适用本发明之第6实施例的帧间预测模式的决定方法的一实例进行说明的顺序图。为了说明的便利,在本示例中假定周边重建区块包括如图42所图示的重建区块1 2601至重建区块6 2606,并假定重建像素区域被分割成自重建像素区域a至f。此外,假定当前区块2600被分割成子区块A至F。此时,子区块F是图42a中的子区块F至I被合并成一个的结果。

此外,将以对用于指示在执行利用重建像素区域的帧间预测时利用哪一种子重建区域的索引进行编码的情况为例进行说明。子区块F将以通过执行现有的帧间预测而进行编码或解码的情况为例进行说明。接下来,假定当前区块内的子区块中的子区块F被最后一个编码或解码。

参阅图43,在步骤S2701,首先在不将当前区块分割成子区块的情况下执行帧间预测之后计算出cost_1。接下来,在步骤S2702,在对子区块A至F分别执行帧间预测之后计算出cost_A至cost_F,然后通过对其进行加法运算而计算出cost_2。在步骤S2703,对所计算出的cost_1以及cost_2进行比较,当cost_1较小时,在步骤S2704,决定不分割为子区块,否则,在S2705,决定分割为子区块之后执行帧间预测,然后结束算法。

图44是对按照图43所图示的方法决定的信息的编码过程进行图示的示意图。在步骤S2801,因为图42b所图示的当前区块的子区块的总数量被设定为6个,因此将用于指示需要进行编码的子区块的总数量的变量BLOCK_NUM初始化为6,并将用于指示需要进行编码的子区块的索引的变量BLOCK_INDEX初始化为0。其中,因为当前区块是以当前区块周边的已重建的区块为基础分割成子区块,因此不需要单独地对子区块的数量进行编码。因为影像解码装置400也是利用与影像编码装置100相同的方式将当前区块分割成子区块,因此影像解码装置400能够对当前区块内可能存在的子区块的数量进行确认。

在步骤S2801之后,在步骤S2802,对用于指示是否将当前区块分割成子区块的信息SUB_BLOCK进行编码。在步骤S2803,对是否将当前区块分割成子区块进行确认,当不分割成子区块时,在步骤S2804,将BLOCK_NUM变量的值变更为1。

在步骤S2805,比较BLOCK_INDEX以及BLOCK_NUM-1的值是否相同,这是用于确认当前区块是否是需要执行现有的帧间预测而非执行利用重建像素区域的帧间预测的区块的步骤。当两个值相同时表示是最后一个区块即使用现有的帧间预测的区块,因此在步骤S2806,对运动信息进行编码,否则,表示是使用利用重建像素区域的帧间预测的子区块,因此在步骤S2807,对用于指示使用哪一个子重建区域的索引进行编码。或者,也能够省略本步骤而使用在编码装置以及解码装置中约定的相同的重建区域。

接下来,在步骤S2808,增加子区块的索引,在步骤S2809,比较BLOCK_NUM以及BLOCK_INDEX是否相同,从而确认是否完成对存在于当前区块内的所有子区块的编码。否则,移动到步骤S2805并继续执行相应的算法。

图45是对按照图44所图示的方法编码的信息的解码过程进行说明的示意图。在步骤S2901,因为图42b所图示的当前区块的子区块的总数量被设定为6个,因此将用于指示需要进行编码的子区块的总数量的变量BLOCK_NUM初始化为6,并将用于指示需要进行编码的子区块的索引的变量BLOCK_INDEX初始化为0。其中,因为当前区块是以当前区块周边的已重建的区块为基础分割成子区块,因此不需要单独地对子区块的数量进行编码因为影像解码装置400也是利用与影像编码装置100相同的方式将当前区块分割成子区块,因此影像解码装置400能够对当前区块内可能存在的子区块的数量进行确认。

在步骤S2901之后,在步骤S2902,对用于指示是否将当前区块分割成子区块的信息SUB_BLOCK进行解码。在步骤S2903,对是否将当前区块分割成子区块进行确认,当不分割成子区块时,在步骤S2904,将BLOCK_NUM变量的值变更为1。

在步骤S2905,比较BLOCK_INDEX以及BLOCK_NUM-1的值是否相同,这是用于确认当前区块是否是需要执行现有的帧间预测而非执行利用重建像素区域的帧间预测的区块的步骤。当两个值相同时表示是最后一个区块即使用现有的帧间预测的区块,因此在步骤S2906,对运动信息进行编码,否则,表示是使用利用重建像素区域的帧间预测的子区块,因此在步骤S2907,对用于指示使用哪一个子重建区域的索引进行解码。或者,也能够省略本步骤而使用在编码装置以及解码装置中约定的相同的重建区域。接下来,在步骤S2908,增加子区块的索引,在步骤S2909,比较BLOCK_NUM以及BLOCK_INDEX是否相同,从而确认是否完成对存在于当前区块内的所有子区块的编码。否则,移动到步骤S2905并继续执行相应的算法。

本公开中的示例性方法为了说明的明确性而以动作序列的方式进行了描述,但这并不是为了对步骤的执行顺序进行限定,在必要时也能够同时或以不同的顺序执行各个步骤。为了实现本公开中的方法,也能够在示例的步骤基础上追加包含其他步骤,或只包含除一部分步骤之外的剩余步骤,或在排除一部分步骤之后追加包含其他步骤。

本公开的多种不同的实施例并不是对所有可能的组合进行罗列的结果,只是为了对本公开的代表性形态进行说明,在多种不同的实施例中进行说明的事项能够独立适用或以两种以上的组合方式适用。

此外,本公开中的多种不同的实施例能够通过硬件、固件(firmware)、软件或上述之结合等实现。当通过硬件实现时,能够通过一个或多个ACICs(Application SpecificIntegrated Circuits,专用集成电路)、DSPs(Digital Signal Processors,数字信号处理器)、DSPDs(Digital Signal Processing Devices,数字信号处理装置)、PLDs(Programmable Logic Devices,可编程逻辑器件)、FPGAs(Field Programmable GateArrays,现场可编程门阵列)、通用处理器(general processor)、控制器、微控制器、微处理器等实现。

本公开的范围包括可使多种不同实施例的方法中的动作在装置或计算机上执行的软件、设备可执行的指令(例如操作系统、应用程序、固件(firmware)、程序等)以及保存有上述软件或指令等的装置或计算机可执行的非暂时性计算机可读介质(non-transitorycomputer-readable medium)。

产业上的可利用性本发明可适用于影像信号的编码或解码领域。

相关技术
  • 图像解码装置、图像解码方法以及图像编码装置
  • 图像解码装置、图像解码方法以及图像编码装置
  • 影像编码装置、影像编码方法、影像编码程序、影像解码装置、影像解码方法和影像解码程序
  • 立体影像编码装置、立体影像解码装置、立体影像编码方法、立体影像解码方法、立体影像编码程序以及立体影像解码程序
技术分类

06120116330422