视频信号处理方法及装置与流程

文档序号:17120976发布日期:2019-03-15 23:47阅读:213来源:国知局
视频信号处理方法及装置与流程

本发明涉及一种视频信号处理方法及装置。



背景技术:

最近,各个应用领域对如hd(highdefinition,高清晰度)影像以及uhd(ultrahighdefinition,超高清晰度)影像等高分辨率、高品质影像的需求日益增加。因为当影像数据的分辨率、品质提高时与传统的影像数据相比其数据量也会呈现出大幅度的增加,因此在利用传统的有线无线宽带回路等媒介对影像数据进行传送或利用传统的存储媒介进行储藏时,其传送成本与储存成本也会随之增加。为了解决伴随影像数据的高分辨率、高品质化而出现的如上所述的问题,能够使用高效率的影像压缩技术。

作为影像压缩技术,包括如根据当前图像的之前或之后图像对当前图像中所包含的像素值进行预测的帧间预测技术、利用当前图像内的像素信息对当前图像中所包含的像素值进行预测的帧内预测技术、为出现频率较高的值分配较短编码并为出现频率较低的值分配较长编码的熵编码技术等多种技术,利用如上所述的影像压缩技术,能够在有效地对影像数据进行压缩之后进行传送或存储。

此外,伴随着对高分辨率影像的需求的增加,作为全新的影像服务的与立体影像内容相关的需求也在随之增加。为此,人们也正在积极讨论用于有效地提供高分辨率以及超高分辨率立体影像内容的视频压缩技术。



技术实现要素:

技术问题

本发明的目的在于提供一种能够对影像进行编码/解码的方法及装置。

此外,本发明的目的在于提供一种能够以输入影像的自适应分割为基础对输入影像进行编码/解码的方法及装置。

此外,本发明的目的在于提供一种能够对输入影像的自适应分割进行信令的方法及装置。

此外,本发明的目的在于提供一种能够对输入图像被自适应分割的区块执行变换和/或滤波的方法及装置。

此外,本发明的目的在于提供一种能够有效地对在以区块单位解码的视频信号中所包含的区块的角点上产生的噪声进行检测,并有效地对所检测到的噪声进行补偿(滤波)的视频信号处理方法及装置。

技术方案

适用本发明的以区块单位对输入影像执行分割以及编码的视频信号处理方法,能够包括:确定是否对当前区块执行分割的分割与否确定步骤;根据上述确定结果将上述当前区块分割成多个子区块的区块分割步骤;生成与上述当前区块的分割相关的区块分割信息的步骤;以及,对上述区块分割信息、上述当前区块或上述子区块执行编码的编码步骤。

在适用本发明的视频信号处理方法中,上述区块分割步骤能够利用两个以上的树结构对上述当前区块执行分割。

在适用本发明的视频信号处理方法中,上述区块分割步骤能够利用上述两个以上的树结构中的一个以上作为主分割结构并利用剩余的作为副分割结构对区块执行分割。

在适用本发明的视频信号处理方法中,上述区块分割信息包括用于表示是否利用上述主分割结构对区块执行分割的主分割信息,而当上述主分割信息表示利用上述主分割结构对区块执行分割且上述主分割结构为多个时,上述区块分割信息还能够包括用于指定上述多个主分割结构中的一个的信息。

在适用本发明的视频信号处理方法中,上述区块分割信息包括用于表示是否利用上述主分割结构对区块执行分割的主分割信息,而当上述主分割信息表示不利用上述主分割结构对区块执行分割时,上述区块分割信息还能够包括用于表示是否利用副分割结构对区块执行分割的副分割信息。

在适用本发明的视频信号处理方法中,当上述副分割信息表示利用上述副分割结构对区块执行分割且上述副分割结构为多个时,上述区块分割信息还能够包括用于指定上述多个副分割结构中的一个的信息。

在适用本发明的视频信号处理方法中,当上述主分割信息表示不利用上述主分割结构对区块执行分割且上述副分割信息表示不利用上述副分割结构对区块执行分割时,能够将上述当前区块设定为编码单位。

在适用本发明的视频信号处理方法中,上述区块分割信息包括用于表示是否对上述区块执行分割的第1信息,而当上述第1信息表示对区块执行分割且为了对上述区块执行分割而使用多个分割结构时,上述区块分割信息还能够包括用于指定上述多个分割结构中的一个的第2信息。

在适用本发明的视频信号处理方法中,与上述主分割结构或上述副分割结构相关的信息,能够在序列级别、图像级别、条带级别、并行区块级别以及区块级别中的至少一个级别进行编码。

在适用本发明的视频信号处理方法中,对于特定大小以下的区块不执行上述区块的分割,与上述特定大小相关的信息,能够在序列级别、图像级别、条带级别、并行区块级别以及区块级别中的至少一个级别进行编码。

在适用本发明的视频信号处理方法中,对上述当前区块或上述子区块执行编码的编码步骤包括预测、变换以及量化中的至少一个,上述变换包括非正方形变换,上述变换能够通过y=axbt(其中,x为m×n大小的残差信号区块,a为水平方向一维n点变换,bt为垂直方向一维m点变换,y为对x进行变换而得的变换区块)执行。

在适用本发明的视频信号处理方法中,a与b能够是相互不同的变换。

适用本发明的以区块单位对输入影像执行分割以及解码的视频信号处理方法,能够包括:对当前区块的区块分割信息进行解码的步骤;以上述区块分割信息为基础将上述当前区块分割成多个子区块的区块分割步骤;以及,对上述当前区块或上述子区块执行解码的步骤。

适用本发明的以区块单位对输入影像执行分割以及编码的视频信号处理装置,能够包括:分割与否确定部,确定是否对当前区块执行分割;区块分割部,以上述确定结果为基础将上述当前区块分割成多个子区块;区块分割信息生成部,生成与上述当前区块的分割相关的区块分割信息;以及,编码部,对上述区块分割信息、上述当前区块或上述子区块执行编码。

适用本发明的以区块单位对输入影像执行分割以及解码的视频信号处理方法,能够包括:区块分割信息解码部,对当前区块的区块分割信息进行解码;区块分割部,以上述区块分割信息为基础将上述当前区块分割成多个子区块;以及,解码部,对上述当前区块或上述子区块执行解码。

此外,适用本发明的以区块单位对输入影像执行分割以及编码的视频信号处理方法的特征在于:生成与当前区块相关的残差区块,对上述残差区块执行编码,对上述编码的残差区块执行解码,利用上述解码的残差区块对上述当前区块执行重建,对包含上述重建的当前区块的重建影像执行滤波,上述滤波是以与区块边界相邻的两个区块的形态或大小为基础执行。

适用本发明的视频信号处理方法的特征在于:以与区块边界相邻的两个区块的形态或大小为基础确定滤波像素数量或滤波强度。

适用本发明的视频信号处理方法的特征在于:当与区块边界相邻的两个区块中的至少一个区块为非正方形时,对两个区块中大小较大的区块中的更多像素执行滤波。

适用本发明的视频信号处理方法的特征在于:当与区块边界相邻的两个区块中的至少一个区块为非正方形时,对两个区块中大小较大的区块适用更强的滤波。

适用本发明的视频信号处理方法的特征在于:当与区块边界相邻的两个区块的大小不同时,对两个区块中大小较大的区块中的更多像素执行滤波。

适用本发明的视频信号处理方法的特征在于:当与区块边界相邻的两个区块的大小不同时,对两个区块中大小较大的区块适用更强的滤波。

适用本发明的以区块单位对输入影像执行分割以及解码的视频信号处理方法的特征在于:从比特流解码出与当前区块相关的残差区块,利用上述解码的残差区块对上述当前区块执行重建,对包含上述重建的当前区块的重建影像执行滤波,上述滤波是以与区块边界相邻的两个区块的形态或大小为基础执行。

适用本发明的以区块单位对输入影像执行分割以及编码的视频信号处理装置的特征在于,包括:残差区块生成部,生成与当前区块相关的残差区块;残差区块解码部,对上述残差区块执行编码;残差区块解码部,对上述编码的残差区块执行解码;当前区块重建部,利用上述解码的残差区块对上述当前区块执行重建;以及,滤波部,对包含上述重建的当前区块的重建影像执行滤波;其中,上述滤波部是以与区块边界相邻的两个区块的形态或大小为基础对上述区块边界执行滤波。

适用本发明的以区块单位对输入影像执行分割以及解码的视频信号处理装置的特征在于,包括:残差区块解码部,从比特流解码出与当前区块相关的残差区块;当前区块重建部,利用上述解码的残差区块对上述当前区块执行重建;以及,滤波部,对包含上述重建的当前区块的重建影像执行滤波;其中,上述滤波部是以与区块边界相邻的两个区块的形态或大小为基础对上述区块边界执行滤波。

此外,适用本发明的视频信号处理方法的特征在于:当以区块单位解码的视频信号中所包含的4个区块的角点在一个交叉点上相互邻接时,从与上述交叉点邻接的4个角点像素中选择一个角点像素作为角点离群点(corneroutlier)并对上述角点离群点执行滤波,上述角点离群点的选择使用与上述交叉点邻接的4个角点像素的像素值之间的差异值以及第1阈值。

适用本发明的视频信号处理方法的特征在于:上述第1阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理方法的特征在于:进一步对与上述所选择的角点离群点包含于相同的区块内并与上述角点离群点邻接的像素和上述角点离群点之间的类似度进行判断,上述滤波是以上述类似度判断结果为基础执行。

适用本发明的视频信号处理方法的特征在于:上述类似度的判断使用与上述角点离群点包含于相同的区块内并与上述角点离群点邻接的像素和上述角点离群点的像素值之间的差异值以及第2阈值。

适用本发明的视频信号处理方法的特征在于:上述第2阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理方法的特征在于:进一步对与上述所选择的角点离群点邻接的区块边界是否为图像区域的边缘进行判断,上述滤波是以上述区块边界是否为图像区域的边缘的判断结果为基础执行。

适用本发明的视频信号处理方法的特征在于:判断上述区块边界是否为图像区域的边缘的过程,包括作为与上述角点离群点邻接的区块内的像素,使用与上述区块边界邻接的像素的像素值之间的变化量以及第3阈值的第1边缘判断。

适用本发明的视频信号处理方法的特征在于:上述第3阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理方法的特征在于:判断上述区块边界是否为图像区域的边缘的过程,包括使用与上述角点离群点水平或垂直邻接的角点像素与上述角点离群点的像素值之间的差异值以及第4阈值的第2边缘判断。

适用本发明的视频信号处理方法的特征在于:上述第4阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理方法的特征在于:上述滤波是将与上述交叉点邻接的4个角点像素的加权平均值设定为上述角点离群点的滤波的像素值。

适用本发明的视频信号处理方法的特征在于:上述滤波包括对与上述角点离群点包含于相同的区块内并与上述角点离群点邻接的像素进行的滤波。

适用本发明的视频信号处理装置的特征在于:包括:角点离群点滤波器,当以区块单位解码的视频信号中所包含的4个区块的角点在一个交叉点上相互邻接时,从与上述交叉点邻接的4个角点像素中选择一个角点像素作为角点离群点(corneroutlier)并对上述角点离群点执行滤波;其中,上述角点离群点的选择使用与上述交叉点邻接的4个角点像素的像素值之间的差异值以及第1阈值。

适用本发明的视频信号处理装置的特征在于:上述第1阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理装置的特征在于:上述角点离群点滤波器,进一步对与上述所选择的角点离群点包含于相同的区块内并与上述角点离群点邻接的像素和上述角点离群点之间的类似度进行判断,上述滤波是以上述类似度判断结果为基础执行。

适用本发明的视频信号处理装置的特征在于:上述类似度的判断使用与上述角点离群点包含于相同的区块内并与上述角点离群点邻接的像素和上述角点离群点的像素值之间的差异值以及第2阈值。

适用本发明的视频信号处理装置的特征在于:上述第2阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理装置的特征在于:上述角点离群点滤波器,进一步对与上述所选择的角点离群点邻接的区块边界是否为图像区域的边缘进行判断,上述滤波是以上述区块边界是否为图像区域的边缘的判断结果为基础执行。

适用本发明的视频信号处理装置的特征在于:判断上述区块边界是否为图像区域的边缘的过程,包括作为与上述角点离群点邻接的区块内的像素,使用与上述区块边界邻接的像素的像素值之间的变化量以及第3阈值的第1边缘判断。

适用本发明的视频信号处理装置的特征在于:上述第3阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理装置的特征在于:判断上述区块边界是否为图像区域的边缘的过程,包括使用与上述角点离群点水平或垂直邻接的角点像素与上述角点离群点的像素值之间的差异值以及第4阈值的第2边缘判断。

适用本发明的视频信号处理装置的特征在于:上述第4阈值是以上述4个区块的量化参数为基础进行确定。

适用本发明的视频信号处理装置的特征在于:上述滤波是将与上述交叉点邻接的4个角点像素的加权平均值设定为上述角点离群点的滤波的像素值。

适用本发明的视频信号处理装置的特征在于:上述滤波包括对与上述角点离群点包含于相同的区块内并与上述角点离群点邻接的像素进行的滤波。

有益效果

本发明能够提供一种对影像进行编码/解码的方法及装置。

此外,通过本发明,能够以包含四叉树结构、二叉树结构和/或三叉树结构在内的多种形态的树结构为基础对区块执行自适应分割并借此提升编码效率。

此外,通过本发明,能够有效地对输入影像被适应性分割时的区块的分割信息进行信令并借此提升编码效率。

此外,通过本发明,能够借助于输入影像的适应性分割有效地对具有任意形态的区块执行变换和/或滤波并借此提升编码效率。

此外,通过本发明,能够有效地对在以区块单位解码的视频信号中所包含的区块的角点上产生的噪声进行检测。

此外,通过本发明,能够有效地对在以区块单位解码的视频信号的区块的角点上产生的噪声进行补偿。

此外,通过本发明,能够通过有效地对在编码/解码处理的单位即区块的角点上产生的噪声进行检测以及补偿而将相应的区块作为帧间预测和/或帧内预测的参考使用,从而防止噪声被传播到其他区块或其他图像。

附图说明

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

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

图3(a)是对利用四叉树结构(quadtreestructure)分割输入影像的基本区块的结构进行示例性图示的示意图。

图3(b)是对利用四叉树和/或二叉树结构分割输入影像的基本区块的结构进行示例性图示的示意图。

图4是对利用四叉树结构(quadtreestructure)分割输入影像中所包含的区块的结构进行示例性图示的示意图。

图5是对利用二叉树结构(binarytreestructure)分割输入影像中所包含的区块的结构进行示例性图示的示意图。

图6是对利用三叉树结构(tripletreestructure)分割输入影像中所包含的区块的结构进行示例性图示的示意图。

图7(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1和/或bt水平1:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

图7(b)是按照适用本发明的一实施例,利用树结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。

图7(c)是按照适用本发明的另一实施例,利用树结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。

图8是对在利用qt交叉分割作为主分割结构并将bt垂直1:1和/或bt水平1:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的情况下所分割出来的子区块能够采用的各种区块的大小以及形态进行示例性图示的示意图。

图9(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt水平1:2:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

图9(b)是按照适用本发明的一实施例,利用树结构对与图9(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。

图10(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

图10(b)是按照适用本发明的一实施例,利用树结构对与图10(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。

图11是对在利用qt交叉分割作为主分割结构并将bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的情况下所分割出来的子区块能够采用的多种区块的大小以及形态进行示例性图示的示意图。

图12是对能够在变换中使用的dct-ii的实数基底以及实数基底乘以特定的值而得到的整数基底进行示例性图示的示意图。

图13是对能够在变换中使用的dst-vii的实数基底以及实数基底乘以特定的值而得到的整数基底进行示例性图示的示意图。

图14是用于对适用本发明之一实施例的滤波进行说明的流程图。

图15是对为了执行图14中所图示的滤波而使用的与区块边界邻接的两个区块及其内部的像素进行图示的示意图。

图16是对适用本发明的利用四叉树结构和/或二叉树结构分割的区块的结构以及此时适用滤波的区块边界进行图示的示意图。

图17是用于对适用本发明之另一实施例的滤波进行说明的流程图。

图18是对适用本发明之实施例的适用强滤波的像素进行示例说明的示意图。

图19是对适用本发明之实施例的适用弱滤波的像素进行示例说明的示意图。

图20是对适用本发明的在执行弱滤波的情况下适用滤波的像素范围进行示例性图示的示意图。

图21(a)是用于对适用本发明之一实施例的作为角点离群点滤波器的滤波对象的角点离群点进行说明的示意图。

图21(b)是对以图21(a)的交叉点作为中心的2×2区域的像素的像素值进行示例性图示的示意图。

图21(c)是对用于指示在对角点离群点进行检测以及过滤时所使用的像素的位置的索引进行图示的示意图。

图22是用于对适用本发明之一实施例的角点离群点滤波器的工作进行说明的示意图。

具体实施方式

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

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

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

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

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

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

如图1所示,影像编码装置100,能够包括:图像分割部110;预测部120、125;变换部130;量化部135;重排序部160;熵编码部165;逆量化部140;逆变换部145;滤波部150;以及,内存155。

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

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

图像分割部110能够将所输入的图像分割成至少一个处理单位。此时,处理单位能够是预测单位(predictionunit:pu),也能够是变换单位(transformunit:tu),还能够是编码单位(codingunit:cu)。在图像分割部110中,能够将一个图像分割成多个编码单位、预测单位以及变换单位的组合并按照特定的标准(例如成本函数)选择一个编码单位、预测单位以及变换单位的组合对图像进行编码。

例如,一个图像能够被分割成多个编码单位。为了在图像中分割编码单位,能够使用如四叉树结构(quadtreestructure)等递归树结构,将一个影像或最大编码单位(largestcodingunit)作为根分割成其他编码单位的编码单元,能够具有与所分割的编码单位的数量对应的子节点。而在一定的限制条件下不再次分割的编码单位将成为叶节点。即,在假定只能对一个编码单元进行正方形分割的情况下,一个编码单位最多能够分割成4个其他编码单位。

为了在图像中分割编码单位,能够使用树结构。树结构能够包括四叉树结构、二叉树结构(binarytreestructure)和/或三叉树结构(tripletreestructure)中的至少一个以上。能够将一个影像或最大编码单位作为根按照树结构执行分割。对于分割所得的区块,能够再次以递归或分级方式适用树结构。作为对分割的区块再次执行分割的树结构,能够使用与之前使用的树结构不同的树结构。不再次执行分割的区块为叶节点,能够作为预测、变换和/或量化的单位。在利用树结构对区块执行分割时,叶节点不仅能够是正方形,还能够是非正方形。

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

预测单位能够是在一个编码单位内以相同大小的至少一个正方形或长方形等形态分割而成,也能够是在一个编码单位内以所分割的预测单位中的一个预测单位与另一个预测单位的形态和/或大小不同的方式分割而成。

在生成以编码单位作为基础执行帧内预测的预测单位时,如果不是最小编码单位,则能够在不分割成多个预测单位n×n的情况下执行帧内预测。

预测部120、125能够包括用于执行帧间预测的帧间预测部120以及用于执行帧内预测的帧内预测部125。能够确定对于预测单位使用帧间预测还是执行帧内预测,并确定与各个预测方法相关的具体信息(例如帧内预测模式、运动向量、参考图像等)。此时,用于执行预测的处理单位与用于确定预测方法以及具体内容的处理单位能够不同。例如,预测方法以及预测模式等能够以预测单位进行确定,而预测执行能够以变换单位执行。所生成的预测区块与原始区块之间的残差值(残差区块)能够被输入到变换部130。此外,执行预测时所使用的预测模式信息、运动向量信息等,能够在与残差值一起在熵编码部165中进行编码之后传递到解码器。在使用特定的编码模式时,也能够在不通过预测部120、125生成预测区块的情况下直接对原始区块执行编码之后传送到解码部。

帧间预测部120能够以当前图像的之前图像或之后图像中的至少一个图像的信息为基础对预测单位进行预测,在部分情况下也能够以当前图像内已完成编码的一部分区域的信息为基础对预测单位进行预测。帧间预测部120能够包括参考图像插值部、运动预测部以及运动补偿部。

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

运动预测部能够以通过参考图像插值部进行插值的参考图像为基础执行运动预测。作为计算出运动向量的方法,能够使用如fbma(fullsearch-basedblockmatchingalgorithm,全搜索区块匹配算法)、tss(threestepsearch,三步搜索算法)、nts(newthree-stepsearchalgorithm,新三步搜索算法)等多种方法。运动向量能够以插值的像素为基础具有1/2或1/4像素单位的运动向量值。运动预测部能够以不同的运动预测方法对当前的预测单位进行预测。作为运动预测方法,能够使用如跳过(skip)法、合并(merge)法、amvp(advancedmotionvectorprediction,高级运动向量预测)法、帧内区块复制(intrablockcopy)法等多种方法。

帧内预测部125能够以当前图像内的像素信息即当前区块周边的参考像素信息为基础生成预测单位。如果当前预测单位的周边区块为已经执行帧间预测的区块,因此其参考像素为已执行帧间预测的像素时,能够利用周边的已执行帧内预测的区块的参考像素信息替代已执行帧间预测的区块中所包含的参考像素之后使用。即,当参考像素不可用时,能够利用可用的参考像素中的至少一个参考像素替代不可用的参考像素信息之后使用。

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

如果执行帧内预测时的预测单位的大小与变换单位的大小相同,则能够以位于预测单位的左侧的像素、位于左侧上端的像素、位于上端的像素为基础对预测单位执行帧内预测。但是,如果执行帧内预测时的预测单位的大小与变换单位的大小不同,则能利用以变换单位为基础的参考像素执行帧内预测。此外,能够仅对最小编码单位执行使用n×n分割的帧内预测。

帧内预测方法,能够根据预测模式在对参考像素适用ais(adaptiveintrasmoothing,自适应帧内平滑)滤波器之后生成预测区块。适用于参考像素的ais滤波器的类型能够不同。为了执行帧内预测方法,当前预测单位的帧内预测模式能够通过在当前预测单位的周边存在的预测单位的帧内预测模式进行预测。在利用通过周边预测单位预测出的模式信息对当前预测单位的预测模式进行预测的情况下,如果当前预测单位与周边预测单位的帧内预测模式相同,则能够利用特定的标记信息传送用于表明当前预测单位与周边预测单位的预测模式相同的信息,而如果当前预测单位与周边预测单位的预测模式不同,则能够通过执行熵编码而对当前区块的预测模式信息进行编码。

此外,还能够生成包含以预测部120、125中所生成的预测单位为基础执行预测的预测单位与预测单位的原始区块之间的差异值即残差值(residual)信息的残差区块。所生成的残差区块能够被输入到变换部130。

变换部130能够利用如dct(discretecosinetransform,离散余弦变换)、dst(discretesinetransform,离散正弦变换)、klt(卡洛南-洛伊变换)等的变换方法,对原始区块以及包含通过预测部120、125生成的预测单位的残差值(residual)信息的残差区块执行变换。对于在对残差区块执行变换时适用dct或适用dst还是适用klt,能够以在生成残差区块时所使用的预测单位的帧内预测模式信息为基础进行确定。

量化部135能够对在变换部130中变换成频域的值进行量化。量化系数能够根据区块或影像的重要程度而改变。量化部135所计算出的值能够被提供到逆量化部140以及重排序部160。

重排序部160能够对量化后的残差值执行系数值的重排序。

重排序部160能通过系数扫描(coefficientscanning)方法将二维的区块形态的系数转换成一维的向量形态。例如,重排序部160能够利用z字形扫描(zig-zagscan)方法从dc系数扫描到高频域系数并将其转换成一维的向量形态。根据变换单位的大小以及帧内预测模式,也能够使用沿着列方向对二维的区块形态的系数进行扫描的垂直扫描、沿着行方向对二维的区块形态的系数进行扫描的水平扫描替代z字形扫描。即,能够根据变换单位的大小及帧内预测模式,对使用z字形扫描、垂直方向扫描及水平方向扫描中的哪一种扫描方法进行确定。

熵编码部165能够以重排序部160所计算出的值为基础执行熵编码。熵编码能够使用如指数哥伦布码(exponentialgolomb)、cavlc(context-adaptivevariablelengthcoding,基于上下文自适应的可变长编码)、cabac(context-adaptivebinaryarithmeticcoding,基于上下文自适应的二进制算术编码)等多种编码方法。

熵编码部165能够对来自重排序部160以及预测部120、125的如编码单位的残差值系数信息以及区块类型信息、预测模式信息、分割单位信息、预测单位信息及传输单位信息、运动向量信息、参考帧信息、区块插值信息、滤波信息等多种信息进行编码。

熵编码部165能够对从重排序部160输入的编码单位的系数值进行熵编码。

逆量化部140以及逆变换部145对量化部135所量化的值进行逆量化并对变换部130所变换的值进行逆变换。在逆量化部140以及逆变换部145中生成的残差值(residual)能够与通过预测部120、125中所包含的运动推测部、运动补偿部以及帧内预测部预测出的预测单位合并,从而生成重建区块(reconstructedblock)。

滤波部150能够包括去块滤波器、偏移补正部、alf(adaptiveloopfilter,自适应环路滤波器)中的至少一个。

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

在执行区块滤波时,能够根据与区块边界邻接的两个区块p、q的形态、大小和/或特性执行自适应滤波。例如,当两个区块p、q的大小不同时,相对于大小较小的区块,能够对大小较大的区块中的更多像素执行滤波。此外,能够根据两个区块p、q中的至少一个是否为非正方形区块为基础执行自适应滤波。例如,在区块p为8×8的区块而区块q为8×16的区块的情况下,在对p、q相互邻接的区块边界执行滤波时,相对于区块p,能够对区块q中的更多像素执行滤波。

而在与区块边界邻接的两个区块p、q的大小不同或其中至少一个为非正方形区块的情况下,能够使两个区块p、q的滤波像素数量相同但对p、q分别进行不同强度的滤波。或者,也能够对两个区块p、q适用不同的滤波像素数量以及不同的滤波强度。

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

此时,alf(adaptiveloopfiltering,自适应环路滤波)能够以对已滤波的重建影像与原始影像进行比较的值为基础执行。能够在将影像中所包含的像素划分成特定的组之后对需要适用到相应组中的一个滤波器进行确定,然后对不同的组分别执行不同的滤波。对于与alf的适用与否相关的信息,亮度信号能够按照各个编码单位(codingunit,cu)进行传送,并且根据各个区块,所适用的alf滤波器的形状以及滤波系数能够不同。此外,还能够在不考虑适用对象区块之特性的前提下适用相同形态(固定形态)的alf滤波器。

内存155能保存通过滤波部150计算出的重建区块或图像,所保存的重建区块或图像能够在执行帧间预测时提供到预测部120、125。

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

如图2所示,影像解码器200能够包括熵解码部210、重排序部215、逆量化部220、逆变换部225、预测部230、235、滤波部240以及内存245。

当从影像编码器输入影像比特流时,能够按照与影像编码器相反的步骤对所输入的比特流进行解码。

熵解码部210能够按照在影像编码器的熵编码部中执行熵编码的过程相反的步骤执行熵解码。例如,能够根据在熵编码器中所采用的方法,适用如指数哥伦布码(exponentialgolomb)、cavlc(context-adaptivevariablelengthcoding,基于上下文自适应的可变长编码)、cabac(context-adaptivebinaryarithmeticcoding,基于上下文自适应的二进制算术编码)等多种方法。

熵解码部210能够对在编码器中执行的帧内预测以及帧间预测相关的信息进行解码。

重排序部215能够以在编码部中进行重排序的方法为基础,对在解码部210中进行熵解码的比特流进行重排序。即,能够将一维向量形态的系数重建为二维区块形态的系数并对其进行重排序。重排序部215能够通过在接收与编码部中所执行的系数扫描相关的信息之后以在相应的编码部中执行的扫描顺序为基础进行反向扫描的方法而执行重排序。

逆量化部220能够以编码器所提供的量化参数以及重排序的区块的系数值为基础执行逆量化。

逆变换部225能够对影像编码器中执行的量化结果,执行变换部所执行的变换即dct、dst以及klt的逆变换即逆dct、逆dst以及逆klt。逆变换能够以影像编码器中所确定的传送单位为基础执行。影像解码器的逆变换部225能根据预测方法、当前区块的大小以及预测方向等多种信息选择性地执行变换方法(例如dct、dst、klt)。

预测部230、235能够以熵解码部210所提供的预测区块生成相关信息以及内存245所提供的之前已解码的区块或图像信息为基础生成预测区块。

如上所述,如果在按照与影像编码器中的动作相同的方式执行帧内预测时预测单位的大小与变换单位的大小相同,能够以位于预测单位的左侧的像素、位于左侧上端的像素、位于上端的像素为基础对预测单位执行帧内预测,但是如果在执行帧内预测时预测单位的大小与变换单位的大小不同,则能够利用以变换单位为基础的参考像素执行帧内预测。此外,也能够仅对最小编码单位执行使用n×n分割的帧内预测。

预测部230、235能够包括预测单位判定部、帧间预测部以及帧内预测部。预测单位判定部能够接收从熵解码部210输入的预测单位信息、帧内预测方法的预测模式信息、帧间预测方法的运动预测相关信息等的各种信息,从当前解码单位区对预测单位进行区分并判定预测单位执行帧间预测还是帧内预测。帧间预测部230能够利用影像编码器所提供的当前预测单位的帧间预测所需要的信息,以包含当前预测单位的当前图像的之前图像或之后图像中的至少一个图像中所包含的信息为基础,执行对当前预测单位的帧间预测。或者,也能够在包含当前预测单位的当前图像内以已重建的一部分区域的信息为基础执行帧间预测。

为了执行帧间预测,能够以编码单位为基准判定相应编码单位中所包含的预测单位的运动预测方法为跳过模式(skipmode)、合并模式(mergemode)、高级运动向量预测模式(amvpmode)、帧内区块复制模式中的哪一种。

帧内预测部235能够以当前图像内的像素信息为基础生成预测区块。在预测单位为已执行帧内预测的预测单位的情况下,能够以影像编码器所提供的预测单位的帧内预测模式信息为基础执行帧内预测。帧内预测部235能够包括ais(adaptiveintrasmoothing,自适应帧内平滑)滤波器、参考像素插值部、dc滤波器。ais滤波器是用于对当前区块的参考像素执行滤波的部分,能够根据当前预测单位的预测模式对滤波器的适用与否进行确定之后适用。能够利用影像编码器所提供的预测单位的预测模式以及ais滤波器信息,对当前区块的参考像素执行ais滤波。在当前区块的预测模式为不执行ais滤波的模式的情况下,也能够不适用ais滤波器。

在预测单位的预测模式为以对参考像素进行插值的像素值为基础执行帧内预测的预测单位的情况下,参考像素插值部能够通过对参考像素进行插值而生成整数值以下的像素单位的参考像素。在当前预测单位的预测模式为不对参考像素进行插值而生成预测区块的预测模式的情况下,能够不对参考像素进行插值。在当前区块的预测模式为dc模式的情况下,dc滤波器能够通过滤波生成预测区块。

重建的区块或图像能够被提供到滤波部240。滤波部240能够包括去块滤波器、偏移补正部、alf。

从影像编码器能够接收到相应区块或图像的去块滤波器适用与否相关信息、在适用去块滤波器时的强滤波适用或弱滤波适用相关信息。影像解码器的去块滤波器能够接收影像编码器所提供的去块滤波器相关信息,并在影像解码器中对相应的区块执行去块滤波。

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

alf能够以编码器所提供的alf适用与否信息、alf系数信息等为基础适用于编码单位。上述alf信息能够以包含于特定参数组的方式提供。

内存245能够对重建的图像或区块执行保存并将其作为参考图像或参考区块使用,还能够将重建的图像提供到输出部。

如上所述,在下述的适用本发明的实施例中为了说明的便利而使用术语编码单位表示编码单元(codingunit),但这既能够是执行编码的单位也能够是执行解码的单位。

图3(a)是对适用本发明之一实施例的利用四叉树结构将输入影像的基本区块分割成多个子区块的结构进行示例性图示的示意图。

图3(b)是对利用四叉树和/或二叉树结构将输入影像的基本区块分割成多个子区块的结构进行示例性图示的示意图。

为了能够有效地进行编码,能够以基本区块单位对需要编码的输入影像执行分割后再进行编码。本发明的基本区块能够通过最大编码单元(largestcodingunit,lcu)或编码树单元(codingtreeunit,ctu)进行定义。基本区块能够采用m×n大小的一定的长方形或正方形形态。m和n能够是值为2n(n为大于1的整数)的整数,m表示区块的横向长度,而n表示区块的纵向长度。lcu或ctu也能够是64×64、128×128大小的正方形。为了更有效地对影像进行压缩,还能够对如上所述的基本区块执行追加分割。

为了能够有效地执行影像压缩,按照影像的同质性分割成同质区域为宜。同质区域是指对应区域内所包含的样本的亮度和/或色差值之间没有变化或上述变化在特定临界值以下的情况。即,同质区域是由具有同质样本值的样本构成,而同质度能够按照特定的判断标准进行确定。通过在考虑到影像同质性的前提下将基本区块分割成多个同质区域的子区块,能够更加有效地集中子区块的预测残差信号(residual信号)能量并借此提升变换(transform)以及量化(quantization)时的压缩效率。

为了将输入影像内的基本区块按照同质度分割成多个子区块,能够使用如二叉树结构、四叉树结构、三叉树结构、八叉树结构(octreestructure)和/或一般的n叉树结构(n-arytreestructure)等。利用上述多个树结构中的至少一种以上,能够将基本区块分割成多个子区块。

图3(a)是仅利用四叉树结构将基本区块分割成多个子区块的实例。四叉树结构能够将作为分割对象的区块分割成具有相同区块大小的4个区块,而对于所分割出的4个区块,还能够再次按照四叉树结构对区块执行分割。

图3(b)是利用四叉树结构和/或二叉树结构将基本区块分割成多个子区块的实例。在所分割出的各个子区块内标记的字母,是用于表示同质度的索引。例如,标记有字母a的子区块均表示具有相同同质度的区域。此外,在图3(b)中,在区块的内部标记的附图编号表示对应的区块,而标记在区块边界上的附图编号表示被相应的边界分割的区块。

如图3(a)、图3(b)所示,基本区块能够被分割成多个子区块。不被进一步分割的子区块能够设定为编码单位(编码单元)。在图3(a)、图3(b)中,编码单位能够是预测、变换和/或量化等编码单位。或者,还能够为了执行预测、变换和/或量化而再次对编码单位执行分割。例如,为了对编码单位进行预测,能够执行利用四叉树结构的分割、利用二叉树结构的分割或非对称形分割,还能够考虑以非正方形或长方形形态的多种形态执行分割。此外,为了对编码单位进行变换和/或量化,能够同样适用在上述预测中所使用的分割方法。

在对输入影像的基本区块执行分割时,能够通过比特流对四叉树结构和/或二叉树结构的使用与否相关信息进行信令。与输入影像的基本区块的分割结构相关的信息,能够以如序列单位、图像单位、条带单位、并行区块单位和/或基本区块单位进行信令。例如,当上述信息以图像单位进行信令时,能够指示对相应图像中所包含的所有基本区块或部分基本区块同时使用四叉树结构以及二叉树结构或仅使用四叉树结构。在确定仅使用四叉树结构的情况下,基本区块的区块分割信息中能够仅包括利用四叉树结构的分割信息而不包括利用二叉树结构的分割信息。

如上所述,四叉树结构能够将作为分割对象的区块分割成具有相同区块大小的4个区块。此外,二叉树结构能够将作为分割对象的区块分割成具有相同大小的2个区块。在利用二叉树结构对区块执行分割时,还需要同时对用于表示水平方向分割或垂直方向分割的分割方向相关信息一起进行编码/解码。对区块的分割信息进行编码/解码的方法将在后续的内容中进行说明。

如图3(b)所示,例如能够利用四叉树结构将基本区块300分割成4个子区块。在利用树结构对区块执行分割时,能够基于树结构上的深度而确定各个区块的深度。基本区块300在树结构上对应于深度为0的区块。对基本区块300执行分割而得到的子区块对应于深度为1的区块。通过分割而得到的4个子区块(深度=1)能够具有相同的大小。能够不对4个子区块中位于左上侧的子区块(深度=1)301再次执行分割。例如,当判定位于左上侧的子区块(深度=1)301为同质区域时,能够不对子区块301再次执行分割。不再执行分割的子区块(深度=1)301能够设定为编码单位。

例如,在利用四叉树结构对基本区块(深度=0)300执行分割而得到的4个子区块中,位于右上侧的子区块(深度=1)302能够再次利用四叉树结构以递归或分级方式分割成4个子区块(深度=2)。再次执行分割而得到的子区块(深度=2)能够分别设定为编码单位。或者,如基本区块(深度=0)300的右上侧子区块(深度=1)302的左上侧子区块(深度=2)302-1,能够利用二叉树结构再次执行分割。当无法再次对所分割出的区块执行分割或判定其属于不需要执行分割的同质区域时,能够设定为编码单位。

如图3(b)所示,在利用四叉树结构和/或二叉树结构对基本区块执行分割时,与仅利用四叉树结构执行分割的图3(a)所示的情况相比,能够更加自适应地将区块分割成具有不同大小的同质区域。

如上所述,还能够为预测、变换和/或量化而再次对编码单位执行分割。但是,在以如图3(b)所示的方法执行分割时,能够将具有极高准确度的同质区域设定为编码单位。借此,不需要为预测、变换和/或量化而再次对编码单位执行分割。即,编码单位本身能够成为预测的单位即预测单元(predictionunit)和/或变换的单位即变换单元(transformunit)。因为能够将编码单位直接作为预测单元和/或变换单元使用,因此能够节省将编码单位再次分割成预测单元和/或变换单元时所需要的费用。尤其是,因为不需要将与编码单位被分割成预测单元和/或变换单元的形态相关的分割信息编码成语法元素(syntaxelement),因此能够达成提升压缩效率的效果。此外,在如上所述的结合图3(b)进行说明的区块分割方法中,因为设定为编码单位的各个子区块是具有极高准确度的同质区域,因此残差信号的能量集中非常高效,从而能够提升变换和/或量化时的压缩效率。

在本发明中,能够使用四叉树结构和/或二叉树结构将基本区块分割成多个编码单位。四叉树结构与二叉树结构能够按照任意顺序根据需要适当地选择使用。或者,能够利用四叉树结构作为主分割结构并利用二叉树结构作为副分割结构。或者,能够利用二叉树结构作为主分割结构并利用四叉树结构作为副分割结构。在将一个作为主分割结构并将另一个作为副分割结构的情况下,能够首先利用主分割结构执行分割。在达到主分割结构的末端节点(leadnode)时,末端节点将成为副分割结构的根节点(rootnode)并利用副分割结构执行分割。

当在编码过程中利用特定的树结构的组合对基本区块执行分割以及编码时,有必要对在分割基本区块时所使用的树结构、分割形态、方向和/或比例等相关信息(以下简称为“区块分割信息”)进行信令。解码器能够以包含于比特流中传送过来的信息或在对比特流解码时所诱导出的信息为基础对基本区块的区块分割信息进行解码,然后再以区块分割信息为基础对基本区块执行解码。

在以树结构为基础对基本区块执行分割并达到不再执行分割的节点时,不再执行分割的节点相当于末端节点(leafnode)。末端节点能够成为预测、变换和/或量化的执行单位,例如能够相当于在本说明书中所定义的编码单元(codingunit,cu)。相当于末端节点的编码单元的大小能够是2n×2n、2n×2m或2n×2m(n、m为大于1的整数)。

接下来,将对利用四叉树、二叉树和/或三叉树中的至少一种以上的组合对基本区块执行分割并构成与其对应的区块分割信息而执行编码/解码的方法进行说明。但是,在本发明中用于对区块执行分割的树结构并不限定于上述四叉树、二叉树和/或三叉树,还能够如上所述地将n叉树结构广泛地适用于区块的分割。

图4是对适用本发明之一实施例的利用四叉树结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

在利用四叉树结构对当前区块执行分割时,当前区块能够被分割成4个子区块。

例如,如图4(a)所示,能够通过利用交叉的2条线对当前区块执行分割而生成4个子区块。在本说明书中,能够将如上所述的分割形态定义为“qt交叉”。此时,“qt”能够代表四叉树(quadtree)的含义。在上述情况下,所分割出的子区块的横向以及纵向长度能够对应于分割前区块的一半。

或者,如图4(b)所示,能够通过利用3条水平线对当前区块执行分割而生成4个子区块。在本说明书中,能够将如上所述的分割形态定义为“qt水平”。在上述情况下,所分割出的子区块的横向长度与分割前区块相同,而纵向长度能够对应于分割前区块的1/4。

或者,如图4(c)所示,能够通过利用3条垂直线对当前区块执行分割而生成4个子区块。在本说明书中,能够将如上所述的分割形态定义为“qt垂直”。在上述情况下,所分割出的子区块的纵向长度与分割前区块相同,而横向长度能够对应于分割前区块的1/4。

利用四叉树结构的区块分割并不限定于图4(a)至图4(c),还能够定义各种不同的比例使用。例如,也能够以如1:1:1:2、1:2:2:4等比例对区块执行分割。即,利用四叉树结构的区块分割,能够包括按照任意的比例将对象区块分割成4个子区块的所有形态。

图5是对适用本发明之一实施例的利用二叉树结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

在利用二叉树结构对当前区块执行分割时,当前区块能够被分割成2个子区块。

例如,如图5(a)所示,能够通过利用垂直线以1:3的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt垂直1:3”。此时,“qt”能够代表二叉树(binarytree)的含义。所分割出的2个子区块的纵向长度与分割前区块相同,而所分割出的2个子区块的横向长度的比例为1:3。

或者,如图5(b)所示,能够通过利用垂直线以1:1的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt垂直1:1”。所分割出的2个子区块的纵向长度与分割前区块相同,而所分割出的2个子区块的横向长度的比例为1:1。

或者,如图5(c)所示,能够通过利用垂直线以3:1的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt垂直3:1”。所分割出的2个子区块的纵向长度与分割前区块相同,而所分割出的2个子区块的横向长度的比例为3:1。

或者,如图5(d)所示,能够通过利用水平线以1:3的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt水平1:3”。所分割出的2个子区块的横向长度与分割前区块相同,而所分割出的2个子区块的纵向长度的比例为1:3。

或者,如图5(e)所示,能够通过利用水平线以1:1的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt水平1:1”。所分割出的2个子区块的横向长度与分割前区块相同,而所分割出的2个子区块的纵向长度的比例为1:1。

或者,如图5(f)所示,能够通过利用水平线以3:1的比例对当前区块执行分割而生成2个子区块。在本说明书中,能够将如上所述的分割形态定义为“bt水平3:1”。所分割出的2个子区块的横向长度与分割前区块相同,而所分割出的2个子区块的纵向长度的比例为3:1。

利用二叉树结构的区块分割并不限定于图5(a)至图5(f),还能够定义各种不同的比例使用。例如,也能够以如1:2、1:4、1:5等比例对区块执行分割。即,利用二叉树结构的区块分割,能够包括按照任意的比例将对象区块分割成2个子区块的所有形态。

图6是对适用本发明之一实施例的利用三叉树结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。

在利用三叉树结构对当前区块执行分割时,当前区块能够被分割成3个子区块。

例如,如图6(a)所示,能够通过利用2条垂直线以1:1:2的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt垂直1:1:2”。此时,“tt”能够代表三叉树(tripletree)的含义。所分割出的3个子区块的纵向长度与分割前区块相同,而所分割出的3个子区块的横向长度的比例为1:1:2。

或者,如图6(b)所示,能够通过利用2条垂直线以1:2:1的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt垂直1:2:1”。所分割出的3个子区块的纵向长度与分割前区块相同,而所分割出的3个子区块的横向长度的比例为1:2:1。

或者,如图6(c)所示,能够通过利用2条垂直线以2:1:1的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt垂直2:1:1”。所分割出的3个子区块的纵向长度与分割前区块相同,而所分割出的3个子区块的横向长度的比例为2:1:1。

或者,如图6(d)所示,能够通过利用2条水平线以1:1:2的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt水平1:1:2”。所分割出的3个子区块的横向长度与分割前区块相同,而所分割出的3个子区块的纵向长度的比例为1:1:2。

或者,如图6(e)所示,能够通过利用2条水平线以1:2:1的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt水平1:2:1”。所分割出的3个子区块的横向长度与分割前区块相同,而所分割出的3个子区块的纵向长度的比例为1:2:1。

或者,如图6(f)所示,能够通过利用2条水平线以2:1:1的比例对当前区块执行分割而生成3个子区块。在本说明书中,能够将如上所述的分割形态定义为“tt水平2:1:1”。所分割出的3个子区块的横向长度与分割前区块相同,而所分割出的3个子区块的纵向长度的比例为2:1:1。

利用三叉树结构的区块分割并不限定于图6(a)至图6(f),还能够定义各种不同的比例使用。例如,也能够以如1:2:2、1:2:4、1:2:5等比例对区块执行分割。即,利用三叉树结构的区块分割,能够包括按照任意的比例将对象区块分割成3个子区块的所有形态。

如上述结合图3至图6进行的说明,能够利用四叉树结构、二叉树结构和/或三叉树结构将一个区块分割成多个子区块。进而,还能够利用四叉树结构、二叉树结构和/或三叉树结构再次以递归或分级方式分别对通过分割而得到的多个子区块执行分割。

如图4所图示的实施例,利用qt的区块分割能够具有3种分割形态。

此外,如图5以及图6所图示的实施例,利用bt或tt的区块分割能够分别具有6种分割形态。因此,区块分割信息中需要包含用于表示在对当前区块执行分割时所使用的树结构的信息(树结构信息)。此外,区块分割信息中还需要包含用于表示所选树结构的多个分割形态中的一个分割形态的信息(分割形态信息)。

以可在区块的分割中使用的树结构的数量为基础,能够确定对树结构信息进行编码时所需要的比特数。此外,以一个树结构中所包含的分割形态的数量为基础,能够确定对分割形态信息进行编码时所需要的比特数。

可在区块的分割中利用的树结构的类型,能够事先在编码器以及解码器中进行确定。或者,可在区块的分割中利用的树结构的类型,还能够在编码器中进行编码之后通过比特流传送到解码器。与树结构的类型相关的信息,能够在序列级别、图像级别、条带级别、并行区块级别、基本区块级别中的至少一个级别进行编码之后传送。例如,当在某个条带中仅使用qt对区块执行了分割时,能够通过条带的报头等对用于表示在对区块执行分割时使用了qt的信息进行信令。例如,当在某个条带中使用qt、bt、tt对区块执行了分割时,能够通过条带的报头等对用于表示在对区块执行分割时使用了qt、bt、tt的信息进行信令。在编码器与解码器事先对默认使用的分割结构进行确定的情况下,即使是不传送相应的信息也能够对在相应的级别中所使用的树结构进行信令。或者,可在下级级别中使用的树结构的类型,能够被限定为可在上级级别中使用的树结构的类型中的一部分或全部。例如,当通过序列的报头对使用qt、bt的信息进行信令时,能够规定为在对应的序列所包含的图像中只能够使用qt、bt或qt与bt的组合而不能使用tt的情况。例如,在没有传送与可在区块的分割中使用的树结构相关的信息时,能够直接继承在上级级别中信令信息。

在本说明书中,信令信息不仅能够包括通过比特流传送的显式(explicitly)的信令信息,还能够包括隐式(implicitly)的信令信息。

如上所述,当选择可在当前级别使用的树结构或多个树结构的组合时,能够对与其对应的信息进行信令。当前级别中所包含的区块,能够利用上述可使用的树结构中的一个执行分割。当可在当前级别中使用的树结构为3种时,对树结构信息的编码需要至少2比特。例如,当树结构信息表示利用qt的分割时,能够以1比特进行表达。例如,当树结构信息表示利用bt、tt中的一个的分割时,能够以2比特进行表达。

在指定区块的分割中所使用的树结构之后,还需要进一步指定上述所指定树结构的分割形态中的某一种。例如,如图6所示,因为tt的分割形态为6种,因此在利用tt对当前区块执行分割的情况下,还需要用于指定6种分割形态中的某一种的分割形态信息。此时,对分割形态信息进行编码时所需要的比特数,能够在考虑到可用分割形态为6种的前提下进行确定。例如,能够通过ceil(log2(6))的计算结果将所需要的比特数设定为3比特。此时,ceil()表示向上取整函数。

即使是在区块的分割中所使用的树结构被确定的情况下,也不需要使用相应树结构的分割中所包含的所有分割形态。例如,能够仅使用图6中所图示的6种分割形态中的一部分,借此,能够减少对分割形态信息进行编码时所需要的比特数。用于表示相应树结构的分割中所包含的分割形态中需要使用的分割形态的信息,能够在序列级别、图像级别、条带级别、并行区块级别、基本区块级别中的至少一个级别进行编码之后传送。

如图4至图6所示,一部分分割形态也能够从其他分割形态诱导得出。例如,图5(d)的分割形态能够通过对图4(b)的分割形态中的下面3个区块执行合并(merge)而得出。因此,并不需要使用图4至图6中所图示的所有分割形态。例如,能够通过树结构信息以及分割形态信息,对相应的序列、图像、条带、并行区块、基本区块中的至少一种所使用的树结构和/或多个分割形态中的需要使用的分割形态进行编码或解码。

当利用两种以上的树结构对区块执行分割时,能够事先对树结构之间的适用顺序进行确定。树结构之间的顺序,能够事先在编码器/解码器中进行确定,或在序列级别、图像级别、条带级别、并行区块级别、基本区块级别中的至少一个级别进行编码之后传送。

例如,能够将利用qt的分割作为主分割并将利用bt/tt的分割作为副分割。在这种情况下,将优先执行利用qt的分割,然后对不再执行利用qt的分割的qt叶节点执行利用bt/tt的分割。在利用主分割以及副分割结构对区块执行分割时,能够进一步减少对如上所述的树结构信息和/或分割形态信息进行编码时所需要的比特数。此时,如果能够作为副分割结构使用的树结构为两种以上,则能够在不指定顺序的情况下利用一个副分割结构执行分割。或者,能够在多个副分割结构之间再次确定顺序之后对区块执行分割。例如,还能够采取利用qt作为主分割结构,利用bt对qt的叶节点执行分割,再利用tt对bt的叶节点执行分割的分级结构。

在不同的情况下,在表达树结构信息和/或分割形态信息时所需要的比特数能够不同。

与多个树结构中需要作为主分割结构使用的树结构、多个副分割结构中特定的适用顺序的存在与否等相关的信息,能够事先在编码器/解码器中进行确定,或在序列级别、图像级别、条带级别、并行区块级别、基本区块级别中的至少一个级别进行编码之后传送。

图7(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1和/或bt水平1:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。在图7(a)中,在区块的内部标记的附图编号表示对应的区块,而标记在区块边界上的附图编号表示被相应的边界分割的区块。

图7(b)是按照适用本发明的一实施例,利用树结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。在区块分割信息中能够包括树结构信息和/或分割形态信息。

图7(c)是按照适用本发明的另一实施例,利用树结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。在区块分割信息中能够包括树结构信息和/或分割形态信息。

在图7(a)、(b)以及(c)中,利用qt交叉分割的区块分割利用实线进行表示,而利用bt垂直1:1和/或bt水平1:1分割的区块分割利用虚线进行表示。

如图7(a)所示,利用qt交叉分割将基本区块(深度=0)700分割成具有相同大小的4个子区块(深度=1)。此时,各个区块的深度能够代表在利用树结构执行分割时的各个区块在树结构上的深度。4个子区块(深度=1)能够分别利用qt交叉分割再次执行分割。不再利用qt交叉分割执行分割的子区块,相当于四叉树结构的末端节点。四叉树的末端节点能够成为二叉树的根节点(rootnode)。对于二叉树的根节点,能够利用二叉树结构执行分割(bt垂直1:1和/或bt水平1:1分割)。或者,能够不执行利用二叉树结构的分割。当不对四叉树的末端节点执行利用二叉树结构的分割时,能够将对应的末端节点设定为编码单位。

如上所述,能够利用二叉树结构对四叉树的末端节点再次执行分割。即,四叉树的末端节点能够成为二叉树的根节点。例如,在图7(a)中对基本区块(深度=0)700执行分割而得到的4个子区块中,对位于右下侧的子区块(深度=1)701不再执行利用四叉树结构的分割。上述右下侧子区块(深度=1)701作为二叉树的根节点,能够执行利用二叉树结构的分割。如图7(a)所示,能够通过对上述右下侧子区块(深度=1)701执行bt垂直1:1分割而将其分割成两个子区块(深度=2)。此外,能够通过对两个子区块中位于左侧的子区块(深度=2)701-1再次执行bt垂直1:1分割而将其分割成两个子区块(深度=3)701-1a、701-1b。两个子区块(深度=3)701-1a、701-1b能够分别对应于二叉树的末端节点。不再执行分割的两个子区块(深度=3)701-1a、701-1b能够分别设定为编码单位。

如上所述,本发明能够利用四叉树结构(qt交叉分割)作为主分割结构并利用二叉树结构(bt垂直1:1分割和/或bt水平1:1分割)作为副分割结构对基本区块700执行分割。此时,基本区块700能够设定为四叉树的根节点。四叉树的根节点能够在达到四叉树的末端节点之前利用四叉树结构以递归或分级方式再次进行分解。四叉树的末端节点能够成为二叉树的根节点。二叉树的根节点能够在达到二叉树的末端节点之前利用二叉树结构以递归或分级方式再次进行分解。当不再对当前区块执行包括利用四叉树结构的分割和/或利用二叉树结构的分割在内分割时,当前区块能够设定为编码单位。

图7(b)是按照适用本发明的一实施例,对用于对图7(a)中所图示的区块分割结构进行编码/解码的区块分割信息进行图示的示意图。区块分割信息能够由树结构信息和/或分割形态信息的组合构成。

在图7(b)、图7(c)的树结构中,括号内部的附图编号为图7(a)中所图示的区块的附图编号,而利用0和/或1表示的信息是与相应区块相关的区块分割信息的一实例。

接下来,将用于表示是否利用四叉树结构对区块执行分割的信息称之为“四叉分割信息”。四叉分割信息能够以第1比特长度进行编码。第1比特长度能够是1比特。在利用四叉树结构对当前区块执行分割的情况下,能够将当前区块的四叉分割信息编码为“1”。在不利用四叉树结构对当前区块执行分割的情况下,能够将四叉分割信息编码为“0”。即,是否利用四叉树结构对当前区块执行分割的信息,能够利用1比特的四叉分割信息进行编码。

接下来,将用于表示利用二叉树结构的区块分割信息称之为“二叉分割信息”。二叉分割信息能够包括用于表示是否利用二叉树结构对区块执行分割的信息以及与利用二叉树结构的分割方向相关的信息中的至少一种。二叉分割信息能够以第2比特长度进行编码。第2比特长度能够是1比特或2比特。在当前区块为利用二叉树结构的分割对象的情况下,能够使用如后所述的2比特的二叉分割信息。在利用二叉树结构对当前区块执行分割的情况下,能够将上述2比特的二叉分割信息中的第一个比特编码为“1”。在不利用二叉树结构对当前区块执行分割的情况下,能够将上述2比特的二叉分割信息中的第一个比特编码为“0”。在图7所示的区块分割实施例中,利用二叉树结构的区块分割形态包括bt垂直1:1分割以及bt水平1:1分割。借此,能够对与分割方向(或分割形态)相关的信息进行追加编码。即,在利用二叉树结构进行的分割为bt水平1:1分割的情况下,能够将上述2比特的二叉分割信息中的第二个比特编码为“0”。在利用二叉树结构进行的分割为bt垂直1:1分割的情况下,能够将上述2比特的二叉分割信息中的第二个比特编码为“1”。在不利用二叉树结构对当前区块执行分割的情况下,能够不使用上述2比特的二叉分割信息中的第二个比特。

上述第1比特长度与第2比特长度也能够相同,并不限定于如上所述的实施例。此外,在上述实施例中,还能够对四叉分割信息与二叉分割信息中的各个比特值的含义做出相反定义。例如,能够通过在四叉分割信息和/或二叉分割信息的第一个比特中使用“0”表示执行利用相应结构的分割,并使用“1”表示不执行分割。或者,能够分别将二叉分割信息的第二个比特为“0”的情况定义为垂直方向分割并将“1”的情况定义为水平方向分割。

当前区块的区块分割信息能够利用上述第1比特长度的四叉分割信息以及上述第2比特长度的二叉分割信息按照如下表1所示的方式进行编码。

【表1】

在上述表1中,四叉分割信息能够是“0”或“1”,且能够将二叉分割信息编码为“0”、“10”或“11”。区块分割信息是用于表示区块的分割与否、分割类型(或树结构信息)以及分割方向(或分割形态信息)的信息,能够是对四叉分割信息以及二叉分割信息进行结合的信息或表示四叉分割信息与二叉分割信息之组合的信息。在上述表1中,四叉分割信息和/或二叉分割信息的第一个比特能够与上述的树结构信息对应。在上述表1中,二叉分割信息的第二个比特能够与上述的分割形态信息对应。在图7所图示的实施例中,因为利用四叉树分割的形态只包含qt交叉分割,因此不需要独立的分割形态信息。在图7所图示的实施例中,因为利用二叉树分割的形态中包含bt垂直1:1以及bt水平1:1分割,因此需要用于对其进行区分的分割形态信息。此时,分割形态信息的长度能够是如1比特。

在上述表1中,区块分割信息“00”表示不对当前区块执行利用四叉树结构的分割以及利用二叉树结构的分割。区块分割信息“010”表示不对当前区块执行利用四叉树结构的分割(第一个比特=0)但执行利用二叉树结构的分割(第二个比特=1),且利用二叉树结构的分割为bt水平1:1分割(第三个比特=0)。区块分割信息“011”表示不对当前区块执行利用四叉树结构的分割(第一个比特=0)但执行利用二叉树结构的分割(第二个比特=1),且利用二叉树结构的分割为bt垂直1:1分割(第三个比特=1)。区块分割信息“1”表示对当前区块执行利用四叉树结构的分割。

在上述表1中,当利用四叉树结构作为主分割结构并利用二叉树结构作为副分割结构时,一旦对利用四叉树结构分割的区块执行了利用二叉树结构的分割,则将不再执行利用四叉树结构的分割。因此,对于利用二叉树结构执行分割而得到的区块,能够不再对用于表示利用四叉树结构的分割执行与否的四叉分割信息进行编码/解码。在上述情况下,利用二叉树结构执行分割而得到的区块的区块分割信息中能够仅包含二叉分割信息。即,能够不包含四叉分割信息而直接将二叉分割信息作为区块分割信息使用,区块分割信息“10”表示对当前区块执行利用二叉树结构的分割(第一个比特=1),且利用二叉树结构的分割为bt水平1:1分割(第二个比特=0)。区块分割信息“11”表示对当前区块执行利用二叉树结构的分割(第一个比特=1),且利用二叉树结构的分割为bt垂直1:1分割(第二个比特=1)。区块分割信息“0”表示对利用二叉树结构执行分割而得到的当前区块不再执行利用二叉树结构的分割。

图7(b)是利用上述表1所示的区块分割信息编码方法,以树形结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行图示的示意图。树形结构的深度与图7(a)中的区块分割结构的深度对应。在图7(b)的各个节点中所标记的信息,表示与上述节点对应的区块的区块分割信息。例如,在图7(b)的根节点中标记的“1”是与上述节点对应的区块即图7(a)中的基本区块700的区块分割信息,表示利用四叉树结构的qt交叉分割方式将基本区块700分割成4个子区块。当一个节点具有多个子节点时,图7(b)中的子节点排序顺序应遵守在图7(a)中所图示的区块分割结构的光栅扫描顺序(或z形扫描顺序)。即,在利用四叉树结构将基本区块(深度=0)700分割成4个子区块(深度=1)的情况下,例如,右下侧子区块(深度=1)700的光栅扫描顺序位于4个子区块(深度=1)中的最后一个。因此,在图7(b)的树结构上深度为1的子节点中排序于最后一个的节点位置上所标记的“011”与图7(a)的右下侧子区块(深度=1)701的区块分割信息对应。

区块分割信息如表1所示,能够以对四叉分割信息以及二叉分割信息进行结合或组合的形态进行编码。或者,也能够分别以独立的语法元素对四叉分割信息以及二叉分割信息进行编码。此外,还能够分别以独立的语法元素对二叉分割信息中所包含的用于表示是否利用二叉树结构对区块执行分割的信息以及与利用二叉树结构的分割方向相关的信息进行编码。或者,能够以一个语法元素对用于表示利用四叉树结构的分割或利用二叉树结构的分割的信息进行编码,并在属于利用二叉树结构的分割时以另一个语法元素对分割形态信息进行编码。

图7(c)是按照适用本发明的一实施例,对用于对图7(a)中所图示的区块分割结构进行编码的区块分割信息进行图示的示意图。

在适用本发明的一实施例中,四叉分割信息需要1比特而二叉分割信息需要2比特。即,因为在对二叉分割信息进行信令时还额外需要与分割形态相关的信息,因此二叉分割信息与四叉分割信息相比需要更多的比特数。在结合图7(c)进行说明的区块分割信息编码方法中,能够在考虑到区块分割信息的比特数的前提下按照如下述表2所示方式对用于表示适用于当前区块的分割方式为利用四叉树结构的分割还是利用二叉树结构的分割的信息进行编码。

【表2】

在上述表2中,区块分割信息“0”表示不对当前区块执行利用四叉树结构的分割以及利用二叉树结构的分割。即,代表当前区块为不需要执行分割的区块。区块分割信息“1”表示对当前区块执行利用四叉树结构的分割。区块分割信息“10”表示对当前区块执行的利用二叉树结构的分割为bt水平1:1分割。区块分割信息“11”表示对当前区块执行的利用二叉树结构的分割为bt垂直1:1分割。

在表2中所示的区块分割信息编码方法,是以区块分割信息的比特数为基础对树结构信息(在图7所示的实施例中用于表示利用四叉树结构或二叉树结构中的哪一种树结构的信息)进行信令。在比特数为1的情况下,表示对区块的分割与否和/或利用四叉树结构执行分割。在比特数为2的情况下,表示利用二叉树结构执行分割。因此,能够以与表1所示的区块分割信息编码方法相比更少的比特数对区块分割信息进行编码。

图7(c)是利用上述表2所示的区块分割信息编码方法,以树形结构对与图7(a)中所图示的区块分割结构相关的区块分割信息进行图示的示意图。在图7(b)以及图7(c)中,除了分别使用如表1以及表2所示的不同的区块分割信息编码方法之外,具有相同的树结构。因此,对图7(b)进行说明的一部分内容尤其是与子节点的排序顺序相关的说明内容能够同样适用于图7(c)。

区块分割信息的编码方法并不限定于如表1以及表2所示的方法,例如,还能够对表1和/或表2所示的方法进行混合使用或在对其中的一部分进行省略之后使用。区块分割信息是指如对当前区块的分割执行与否、用于表示适用于当前区块的分割为四叉树分割还是二叉树分割的信息和/或在适用二叉树分割时用于表示bt垂直1:1分割还是bt水平1:1分割的分割形态相关信息等所有形态的信息。

图8是对在利用四叉树结构和/或二叉树结构(bt垂直1:1分割和/或bt水平1:1分割)将基本区块分割成多个子区块的情况下所分割出的子区块可采用的多种区块的大小以及形态进行示例性图示的示意图。

当编码单位的大小过小时,可能反而会导致编码(预测、变换和/或量化)效率下降的问题。此外,在对区块分割信息进行编码时需要传送的数据量也可能会增加。因此,需要对可分割成更小区块的区块大小进行限制。例如,能够在所分割出的区块长度(横向和/或纵向)为特定值以下时不再对其执行分割。上述特定值能够设定为如4、8、16等任意大小。上述特定值能够通过比特流进行信令。上述特定值能够以序列单位、图像单位、条带单位、并行区块单位或基本区块单位自适应信令。或者,上述特定值能够设定为编码器以及解码器事先约定的值。

或者,能够在区块的纵向或横向中的仅一侧长度为上述特定值以下时仅在一侧方向上利用二叉树结构执行分割。例如,当区块的横向长度为特定值以下的不能再次执行分割的长度但区块的纵向长度超出特定值时,能够仅在水平方向上进行二叉树分割。具体来讲,当对区块执行分割的最小长度为4时,对于如图6所示的4×32、4×16、4×8的区块,利用二叉树结构的分割只能执行bt水平1:1分割。此时,因为通过4×32、4×16、4×8的区块大小可以预先得知利用二叉树结构的分割只能执行bt水平1:1分割,因此能够将区块分割信息编码为“10”或“1”,而在不再执行分割的情况下能够将区块分割信息编码为“0”。同理,对于32×4、16×4、8×4的区块,利用二叉树结构的分割只能执行bt垂直1:1分割。此时,因为通过32×4、16×4、8×4的区块大小可以预先得知利用二叉树结构的分割只能执行bt垂直1:1分割,因此能够将区块分割信息编码为“11”或“1”,而在不再执行分割的情况下能够将区块分割信息编码为“0”。

或者,也能够对可执行区块分割的最大深度进行限制。例如,能够在以递归或分级方式对区块执行分割而达到特定深度时不再执行分割。对于上述特定深度的设定以及编码方法,能够适用上述可执行区块分割的区块最小大小的设定以及编码方法。

图9(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt水平1:2:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。在图9(a)中,在区块的内部标记的附图编号表示对应的区块,而标记在区块边界上的附图编号表示被相应的边界分割的区块。

图9(b)是按照适用本发明的一实施例,利用树结构对与图9(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。在区块分割信息中能够包括树结构信息和/或分割形态信息。

在图9(a)以及(b)中,利用qt交叉分割的区块分割利用实线进行表示,而利用bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt垂直1:2:1分割的区块分割利用虚线进行表示。

如图9(a)所示,能够利用qt交叉分割将基本区块(深度=0)900分割成具有相同大小的4个子区块(深度=1)。此时,各个区块的深度能够代表在利用树结构执行分割时的各个区块在树结构上的深度。4个子区块(深度=1)能够分别利用qt交叉分割再次执行分割。例如,基本区块(深度=0)900的右上侧子区块(深度=1)901以及左下侧子区块(深度=1)902,能够通过qt交叉分割执行分割。不再利用qt交叉分割执行分割的子区块,相当于四叉树的末端节点。四叉树的末端节点能够成为二叉树和/或三叉树的根节点(rootnode)。对于二叉树和/或三叉树的根节点,能够利用二叉树结构执行分割(bt垂直1:1和/或bt水平1:1分割)和/或利用三叉树结构执行分割(tt水平1:2:1和/或tt垂直1:2:1分割)。或者,能够不执行利用二叉树结构和/或三叉树结构的分割。当不对四叉树的末端节点执行利用二叉树结构以及三叉树结构的分割时,能够将对应的末端节点设定为编码单位。

如上所述,能够利用二叉树结构和/或三叉树结构对四叉树结构的末端节点再次执行分割。即,四叉树的末端节点能够成为二叉树和/或三叉树的根节点。例如,在图9(a)中对基本区块(深度=0)900执行分割而得到的4个子区块中,能够以递归或分级方式对位于右上侧的子区块(深度=1)901再次执行qt交叉分割。对于通过对子区块(深度=1)901进行qt交叉分割而得到的4个子区块(深度=2)901-1至901-4,能够不再执行qt交叉分割。不执行qt交叉分割的4个子区块(深度=2)901-1至901-4能够分别对应于各个四叉树的末端节点。此外,4个子区块(深度=2)901-1至901-4能够分别对应于各个二叉树和/或三叉树的根节点。对于上述4个子区块中的区块901-1、901-2以及901-4,能够不执行bt分割和/或tt分割。在上述情况下,子区块(深度=2)901-1、901-2、901-4能够分别设定为编码单位。

对于上述4个子区块中的区块901-3,能够执行bt分割和/或tt分割。在图9(a)中,子区块(深度=2)901-3能够通过bt垂直1:1分割而分割成两个子区块(深度=3)。对于通过bt垂直1:1分割而得到的两个子区块(深度=3),能够再次以分级和/或递归方式执行bt分割和/或tt分割。例如,如图9(a)所示,在通过对子区块(深度=2)901-3执行bt垂直1:1分割而得到的两个子区块(深度=3)中,能够对左侧的区块执行tt水平1:2:1分割。

能够通过如上所述的方法以分级和/或递归方式对区块执行分割,而与不再执行分割的叶节点对应的子区块能够设定为编码单位。

区块的分割与否能够在解码器中确定。解码器能够在考虑到如影像的特性、同质区域、编码器和/或解码器的复杂度和/或对区块分割信息进行信令所需要的比特量等的前提下对区块的分割与否进行确定。此外如上所述,能够对不再执行分割的最小区块大小进行事先确定或信令。

如上所述,本发明能够利用四叉树结构(qt交叉分割)作为主分割结构并利用二叉树结构和/或三叉树结构(bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt垂直1:2:1分割)作为副分割结构对基本区块900执行分割。此时,基本区块900能够设定为四叉树的根节点。四叉树的根节点能够在达到四叉树的末端节点之前利用四叉树以递归或分级方式再次进行分解。四叉树的末端节点能够成为二叉树和/或三叉树的根节点。二叉树和/或三叉树的根节点能够在达到末端节点之前利用二叉树结构和/或三叉树结构以递归或分级方式再次进行分解。当不再对当前区块执行包括利用四叉树结构、二叉树结构和/或三叉树结构的分割在内分割时,当前区块能够设定为编码单位。

图9(b)是按照适用本发明的一实施例,对用于对图9(a)中所图示的区块分割结构进行编码/解码的区块分割信息进行图示的示意图。区块分割信息能够由树结构信息和/或分割形态信息的组合构成。

在图9(b)的树结构中,括号内部的附图编号为图9(a)中所图示的区块的附图编号,而利用0和/或1表示的信息是与相应区块相关的区块分割信息的一实例。

在与图9中所图示的实施例相关的下述说明中,将用于表示是否利用四叉树结构对区块执行分割的信息称之为“主分割信息”。主分割信息能够以第3比特长度进行编码。第3比特长度能够是1比特。在利用四叉树结构对当前区块执行分割的情况下,能够将当前区块的主分割信息编码为“1”。在不利用四叉树结构对当前区块执行分割的情况下,能够将主分割信息编码为“0”。即,是否利用四叉树结构对当前区块执行分割的信息,能够利用1比特的主分割信息进行编码。

接下来,将用于表示利用二叉树结构和/或三叉树结构的区块分割信息称之为“副分割信息”。副分割信息能够包括用于表示利用双叉树结构和/或三叉树结构的副分割的执行与否的信息、用于表示利用双叉树结构以及三叉树结构中的哪一种树结构的信息(树结构信息)以及用于表示各个树结构的一个以上的区块分割形态中的一种区块分割形态的分割形态信息中的至少一种。副分割信息能够以第4比特长度进行编码。第4比特长度能够是1比特、2比特或3比特。在当前区块为利用副分割结构的分割对象的情况下,能够使用如后所述的3比特的二叉分割信息。当利用基于二叉树结构和/或三叉树结构的副分割结构(bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt垂直1:2:1分割)对当前区块执行分割时,副分割信息能够包括用于表示执行副分割的信息以及用于表示执行副分割时所使用的树结构的信息(二叉树或三叉树)和/或用于表示分割形态的信息,各个信息能够以1比特表达。当不利用副分割结构对当前区块执行分割时,上述副分割信息能够仅用1比特表达,不需要对与执行副分割时所使用的树结构以及分割形态相关的信息进行传送。或者,能够对用于指定在执行副分割时所使用的所有分割形态(例如,bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt垂直1:2:1分割)中的某一个的信息进行编码,从而利用一个语法元素对与树结构以及分割形态相关的信息进行编码。

当前区块的区块分割信息能够利用上述第3比特长度的主分割信息以及上述第4比特长度的副分割信息按照如下表3以及表4所示的方式进行编码。表3为主分割结构中所包含的区块可具有的区块分割信息。表4为副分割结构中所包含的区块可具有的区块分割信息。可同时包含于主分割结构以及副分割结构中的区块,能够具有如表3所示的区块分割信息。

【表3】

如上述表3所示,当对当前区块执行主分割(qt交叉分割)时,不需要对与副分割相关的信息进行传送。因此,执行主分割的区块的区块分割信息能够表达为“1”。

在不执行主分割的区块的区块分割信息中,能够将用于表示主分割的执行与否的信息表达为“0”。用于表示主分割的执行与否的信息,能够利用如区块分割信息中的第一个比特进行表达。但是,这仅为一实施例,区块分割信息中包含用于表示主分割的执行与否的信息的所有实施例都应包含在本发明的范围之内。

在不执行主分割的区块的区块分割信息中,还能够包括用于表示副分割的执行与否的信息。例如,在如表3所示的实施例中,利用区块分割信息中的第二个比特对副分割的执行与否进行表达。但是,表3中所示的实施例仅为包含于本发明的一实施例,本发明并不限定于此。

在表3所示的实施例中,当区块的区块分割信息为“00”时,表示相应的区块为不再执行分割的区块。

在不执行主分割但执行副分割的区块的区块分割信息中,能够包括用于表示主分割的执行与否的信息以及用于表示副分割的执行与否的信息。例如,在如表3所示的实施例中,利用区块分割信息中的前二个比特对其进行表达。即,能够通过将区块分割信息中的前两个比特设置为“01”,表示对于对相应的区块不执行主分割但执行副分割。但是,表3中所示的实施例仅为包含于本发明的一实施例,本发明并不限定于此。

对于执行副分割的区块,需要用于指定水平分割还是垂直分割的信息,在表3所示的实施例中,能够利用第三个比特进行表达。例如,在水平分割时能够将区块分割信息中的第三个比特设置为“0”,而在垂直分割时能够将区块分割信息中的第三个比特设置为“1”。但是,表3中所示的实施例仅为包含于本发明的一实施例,本发明并不限定于此。

对于执行副分割的区块,需要用于指定bt分割还是tt分割的信息,在表3所示的实施例中,能够利用第四个比特进行表达。例如,在bt分割时能够将区块分割信息中的第四个比特设置为“0”,而在tt分割时能够将区块分割信息中的第四个比特设置为“1”。

或者,例如在图9所图示的实施例中,因为在副分割中使用的分割形态包括bt垂直1:1、bt水平1:1、tt水平1:2:1和/或tt垂直1:2:1分割等4种,因此能够利用ceil(log2(4))所计算出的2比特指定树结构以及分割形态。即,可以得知在如上所述的情况下需要利用2比特指定一个树结构以及分割形态,为不同的区块分割形态分配的信息能够对应于表3中所示的区块分割信息中的第三以及第四个比特。

结合表3进行说明的实施例仅为包含于本发明的多个实施例中的一个,本发明并不限定于此。例如,适用本发明的区块分割信息只需要包含用于表示主分割的执行与否的信息、用于表示副分割的执行与否的信息、用于指定多个副分割结构中的一个的信息和/或用于指定多个分割形态中的一个的信息。因此,上述信息在比特流中的编码顺序或在比特流中的出现顺序或从比特流的诱导顺序,并不限定于结合表3进行说明的实施例。例如,用于指定多个副分割结构中的一个的信息与用于指定多个分割形态中的一个信息的位置也能够被互换。

此外,本发明并不限定于将执行分割的情况表达为“1”并将不执行分割的情况表达为“0”的情况,也能够以相反的方式分配比特值使用。

此外,本发明并不限定于将垂直分割的情况表达为“1”并将水平分割的情况表达为“0”的情况,也能够以相反的方式分配比特值使用。

此外,在图9以及表3的实施例中将bt以及tt的分割形态分别限定为两种,但是bt和/或tt的分割形态也能够包括结合图5和/或图6进行说明的多种分割形态中的一部分或全部。例如,当包含三种以上的分割形态时,能够利用2比特以上对分割形态信息进行表达。

【表4】

在上述表4中,对副分割结构中所包含的区块可具有的区块分割信息的一实施例进行了记载。因为不会对包含于副分割结构中的区块执行主分割(qt交叉分割),因此在区块分割信息中不需要包含用于表示利用主分割结构的分割的执行与否的信息。借此,在主分割结构中所包含的区块可具有的区块分割信息(表3的区块分割信息)中除第一个比特位“0”的比特之外的其他比特能够构成副分割结构中所包含的区块可具有的区块分割信息(表4的区块分割信息)。

表4中所示的区块分割信息仅为适用本发明的区块分割信息的一实施例,在结合表3进行说明的各种实施例也能够同样适用于表4。

在利用结合图9、表3以及表4进行说明的区块的分割方法将基本区块分割成多个子区块时,不再执行分割的子区块能够分别设定为编码单位。设定为编码单位的各个子区块的大小以及形态如图8所示,能够是2n×2m大小的正方形或长方形。

图10(a)是对利用qt交叉分割作为主分割结构并将bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割作为副分割结构将输入影像中所包含的区块分割成多个子区块的结构进行示例性图示的示意图。在图10(a)中,在区块的内部标记的附图编号表示对应的区块,而标记在区块边界上的附图编号表示被相应的边界分割的区块。

图10(b)是按照适用本发明的一实施例,利用树结构对与图10(a)中所图示的区块分割结构相关的区块分割信息进行示例性图示的示意图。在区块分割信息中能够包括树结构信息和/或分割形态信息。

在图10(a)以及(b)中,利用qt交叉分割的区块分割利用实线进行表示,而利用bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割的区块分割利用虚线进行表示。

除在图7的基础上追加了bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1之外,在图10中所图示的实施例与在图7中图示的实施例相同。此外,除在图9的基础上追加了bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1取代tt分割之外,在图10中所图示的实施例与在图9中图示的实施例相同。因此,在对图10进行说明的过程中,对于能够通过结合图7以及图9进行的说明内容而轻易理解的部分将被省略。

在图10所图示的实施例中,主分割信息能够以第5比特长度进行编码。第5比特长度能够是1比特。在利用四叉树结构对当前区块执行分割的情况下,能够将当前区块的主分割信息编码为“1”。在不利用四叉树结构对当前区块执行分割的情况下,能够将主分割信息编码为“0”。即,是否利用四叉树结构对当前区块执行分割的信息,能够利用1比特的主分割信息进行编码。

在图10所图示的实施例中,将利用bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割的区块分割信息称之为“副分割信息”。在副分割信息中,能够包括用于表示副分割的执行与否的信息、用于表示利用bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割中的哪一种分割形态的信息中的至少一种。副分割信息能够以第6比特长度进行编码。第6比特长度能够是1比特至4比特中的一种比特长度。在当前区块为利用副分割结构的分割对象的情况下,能够使用如后所述的4比特的副分割信息。在作为副分割结构利用bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割中的一种对区块执行分割时,副分割信息能够包括用于表示执行副分割的信息和/或分割形态信息。分割形态信息能够包括用于表示副分割的方向(垂直或水平)的信息、用于表示副分割的比例的信息(1:1或1:3)和/或在副分割的比例为1:3时用于表示1:3还是3:1的信息,各个信息能够利用1比特进行表达。

当前区块的区块分割信息能够利用上述第5比特长度的主分割信息以及上述第6比特长度的副分割信息按照如下表5以及表6所示的方式进行编码。表5为主分割结构中所包含的区块可具有的区块分割信息。表6为副分割结构中所包含的区块可具有的区块分割信息。可同时包含于主分割结构以及副分割结构中的区块,能够具有如表5所示的区块分割信息。

【表5】

如上述表5所示,当对当前区块执行主分割(qt交叉分割)时,不需要对与副分割相关的信息进行传送。因此,执行主分割的区块的区块分割信息能够表达为“1”。

在不执行主分割的区块的区块分割信息中,能够将用于表示主分割的执行与否的信息表达为“0”。用于表示主分割的执行与否的信息,能够利用如区块分割信息中的第一个比特进行表达。

在不执行主分割的区块的区块分割信息中,还能够包括用于表示副分割的执行与否的信息。例如,在如表5所示的实施例中,利用区块分割信息中的第二个比特对副分割的执行与否进行表达。因此,当区块的区块分割信息为“00”时,表示相应的区块为不再执行分割的区块。

在不执行主分割但执行副分割的区块的区块分割信息中,能够包括用于表示主分割的执行与否的信息以及用于表示副分割的执行与否的信息。例如,在如表5所示的实施例中,利用区块分割信息中的前二个比特对其进行表达。即,能够通过将区块分割信息中的前两个比特设置为“01”,表示对于对相应的区块不执行主分割但执行副分割。

对于执行副分割的区块,还需要用于表示水平分割还是垂直分割的信息。在表5所示的实施例中,能够利用第三个比特进行表达。例如,在垂直分割时能够将区块分割信息中的第三个比特设置为“1”,而在水平分割时能够将区块分割信息中的第三个比特设置为“0”。

接下来,还需要用于指定水平分割或垂直分割的比例为1:1还是1:3的信息。例如,在表5所示的实施例中,在1:1分割时能够将区块分割信息中的第四个比特设置为“0”,而在1:3分割时能够将区块分割信息中的第四个比特设置为“1”。

当分割的比例为1:3时,还需要用于表示1:3分割还是3:1分割的信息。例如,在表5所示的实施例中,在1:3分割时能够将区块分割信息中的第五个比特设置为“0”,而在3:1分割时能够将区块分割信息中的第五个比特设置为“1”。

或者,例如在图10所图示的实施例中,因为在副分割中使用的分割形态包括bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割等6种,因此能够利用ceil(log2(6))所计算出的3比特指定树结构以及分割形态。即,可以得知在如上所述的情况下需要利用3比特指定一个树结构以及分割形态,为不同的区块分割形态分配的信息能够对应于表5中所示的区块分割信息中的第三、第四以及第五个比特。

结合表5进行说明的实施例仅为包含于本发明的多个实施例中的一个,本发明并不限定于此。例如,适用本发明的区块分割信息只需要包含用于表示主分割的执行与否的信息、用于表示副分割的执行与否的信息和/或用于指定多个副分割结构中的一个的信息。因此,上述信息在比特流中的编码顺序或在比特流中的出现顺序或从比特流的诱导顺序,并不限定于结合表5进行说明的实施例。例如,用于指定副分割的方向的信息与用于指定副分割的比例的信息的位置也能够被互换。

此外,本发明并不限定于将执行分割的情况表达为“1”并将不执行分割的情况表达为“0”的情况,也能够以相反的方式分配比特值使用。

此外,本发明并不限定于将垂直分割的情况表达为“1”并将水平分割的情况表达为“0”的情况,也能够以相反的方式分配比特值使用。

此外,本发明并不限定于将1:1比例表达为“0”并将1:3比例表达为“1”的情况,也能够以相反的方式分配比特值使用。

此外,本发明并不限定于将1:3比例表达为“0”并将3:1比例表达为“1”的情况,也能够以相反的方式分配比特值使用。

【表6】

在上述表6中,对图10所图示的实施例的副分割结构中所包含的区块可具有的区块分割信息的一实施例进行了记载。因为不会对包含于副分割结构中的区块执行主分割(qt交叉分割),因此在区块分割信息中不需要包含用于表示利用主分割结构的分割的执行与否的信息。借此,在主分割结构中所包含的区块可具有的区块分割信息(表5的区块分割信息)中除第一个比特位“0”的比特之外的其他比特能够构成副分割结构中所包含的区块可具有的区块分割信息(表6的区块分割信息)。

表6中所示的区块分割信息仅为适用本发明的区块分割信息的一实施例,在结合表5进行说明的各种实施例也能够同样适用于表6。

在利用结合图10、表5以及表6进行说明的区块的分割方法将基本区块分割成多个子区块时,不再执行分割的子区块能够分别设定为编码单位。按照结合图10进行说明的实施例确定的编码单位,能够是2n×2m(n、m为大于1的整数)大小的正方形或长方形。当假定可执行分割的最小分割大小为4×3时,如图11所示,能够生成如4×4、8×4、4×8、12×4等横向或纵向长度不为2n的编码单位。

在结合图7进行说明的分割方法中,作为主分割结构使用qt交叉分割,作为副分割结构使用bt垂直1:1和/或bt水平1:1分割。在结合图9进行说明的分割方法中,作为主分割结构使用qt交叉分割,作为副分割结构使用bt垂直1:1、bt水平1:1、tt垂直1:2:1和/或tt水平1:2:1分割。在结合图11进行说明的分割方法中,作为主分割结构使用qt交叉分割,作为副分割结构使用bt垂直1:1、bt水平1:1、bt水平1:3、bt水平3:1、bt垂直1:3和/或bt垂直3:1分割。接下来,将对利用基于qt、bt和/或tt的主分割结构以及副分割结构对区块执行分割的方法进行进一步说明,并对区块分割信息中需要包含的信息以及比特数进行说明。

如图4至图6所示,利用qt的分割能够包括三种分割形态。利用bt的分割能够包括六种分割形态。利用ttt的分割同样能够包括六种分割形态。但是,这只是以图4至图6中所图示的内容为基础的分割形态,其分割形态的数量并不限定于此。例如,在设定更多的比列时,qt、bt、tt的分割形态的数量也将随之增加。例如,能够设定如bt1:4、bt1:5、bt2:5、tt1:3:1、tt1:4:1、tt1:2:2等多种比例的分割形态。

在图4至图6中所图示的分割形态共计15种,能够将其中的一种分割形态作为主分割结构使用。例如,能够将qt交叉分割作为主分割结构使用,但是主分割结构并不限定为qt交叉分割。

当将qt交叉分割作为主分割结构使用时,能够将剩余的14个分割形态中的全部或一部分作为副分割结构使用。

与作为主分割结构使用哪种分割形态和/或作为副分割结构使用哪种分割形态等相关的信息,能够通过如上所述的序列、图像、条带、并行区块、基本区块中的至少一种以上进行传送。或者,能够事先在编码器以及解码器中进行确定。或者,能够以编码参数和/或在编码/解码的过程中诱导出的内部变量等为基础诱导得出。

如上所述,为了表示利用主分割结构的分割的执行与否而需要使用1比特。

如上所述,为了表示利用副分割结构的分割的执行与否而需要使用1比特。

在假定能够作为副分割结构使用的分割形态的数量为n时,用于表示在n个可用的分割形态中使用哪一个分割形态的信息,能够利用ceil(log2(n))进行表达。其中,ceil()表示向上取整函数。

借此,属于主分割结构的区块的区块分割信息,能够包括用于表示主分割的执行与否的信息(例如1比特的信息)、在不执行主分割时用于表示副分割的执行与否的信息(例如1比特的信息)和/或在执行副分割时用于表示n个可用的分割形态中的一个的信息(例如ceil(log2(n))比特的信息)。其信息如下表7所示。

【表7】

此外,属于副分割结构的区块的区块分割信息,能够包括用于表示副分割的执行与否的信息(例如1比特的信息)和/或在执行副分割时用于表示n个可用的分割形态中的一个的信息(例如ceil(log2(n))比特的信息)。其信息如下表8所示。

【表8】

上述结合图7至图11进行说明的各个实施例,同样能够适用于一般的利用主分割结构和/或副分割结构的分割方法。此外,作为利用主分割结构和/或副分割结构的分割方法的其他实施例,还能够对可适用主分割的次数、深度和/或区块的大小(最大大小和/或最小大小)进行限制。此外,也能够对可适用副分割的次数、深度和/或区块的大小(最大大小和/或最小大小)进行限制。例如,能够限制为只能在最初适用1次主分割并在接下来的过程中只能执行副分割的方式。或者,能够限制为能够适用多次主分割但只能适用1次副分割的方式。或者,能够限制为只能适用n次主分割且只能适用m次副分割的方式。此时,n、m能够是1以上的整数。与主分割以及副分割的上述附加限制事项相关的信息,能够通过序列、图像、条带、并行区块、基本区块中的至少一种以上的单位进行传送。或者,与上述附加限制事项相关的信息能够事先在编码器以及解码器中进行确定。或者,与上述附加限制事项相关的信息能够通过编码参数和/或在编码/解码过程中使用的内部参数进行确定。

编码参数和/或内部参数能够包括与区块的大小相关的信息、与区块的分割深度相关的信息、与亮度成分和/或色度成分相关的信息、与帧间模式相关的信息、与帧内模式相关的信息、编码区块标记、量化变量、运动向量、与参考影像相关的信息和/或与利用pcm模式的编码与否相关的信息等。此外,上述编码参数和/或内部变量不仅能够包含与当前区块相关的信息,还能够包括与相邻区块相关的信息。

利用树结构对区块进行分级分割的分割方法,能够包括对主分割/副分割进行区分的分割方法以及部队主分割/副分割进行区分的分割方法。

对主分割/副分割进行区分的分割方法,能够定义为多重分割分级方式。例如,能够以结合图7至图11进行说明的各种分割方法为例。在多重分割分级方式中,作为主分割结构能够确定一个分割结构,且作为副分割结构能够确定1个以上的分割结构。作为副分割结构能够包括多个分割结构,也能够利用不同的树结构执行副分割。例如,能够采用利用bt和/或tt的副分割结构。此时,bt以及tt能够按照任意顺序作为副分割结构使用。即,能够在执行利用bt的分割之后执行利用tt的分割,接下来再执行利用bt的分割。或者,也能够在bt与tt之间规定适用顺序。例如,能够优先地对主分割结构的叶节点适用bt,接下来再对利用bt的副分割结构的叶节点适用tt。此时,如果不对主分割结构的叶节点执行利用bt的副分割,则能够适用利用tt的副分割。

不对主分割/副分割进行区分的分割方法,能够定义为单一分割分级方式。例如,能够将结合图4至图6进行说明的各种分割形态中的一部分或全部按照任意顺序作为区块的分割结构使用。在使用n个分割形态的单一分割分级方式中,为了对树结构的各个节点的区块分割信息进行表达而需要1至ceil(log2(n))+1比特。因此,通常在使用单一分割分级方式时与使用多重分割分级方式的情况相比,对区块分割信息进行编码时所需要的比特数量可能会增加。

对区块执行分割的各种方法以及对区块分割信息进行编码的各种实施例,已经在上述内容中进行了说明。在上述实施例中,需要从编码器传送到解码器的信息,能够通过序列级别、图像级别、条带级别、并行区块级别、基本区块级别中的至少一个级别进行传送。在编码信息中,能够包括与适用单一分割分级方式还是适用多重分割分级方式相关的信息。此外,在编码信息中,能够包括与可作为主分割结构使用的分割形态和/或可作为副分割结构使用的分割形态相关的信息。此外,在编码信息中,能够包括与可执行主分割和/或副分割的次数/深度/区块大小等相关的信息。上述编码信息,也能够事先在编码器以及解码器中进行设定。或者,上述信息也能够通过其他编码参数或内部变量诱导得出。

如上所述,通过利用包含四叉树结构、二叉树结构和/或三叉树结构的分割结构对基本区块执行分割,能够对不再执行分割的多个子区块进行确定。能够通过将不再次执行分割的子区块设定为编码单位而将其作为预测、变换和/或量化的单位。在编码步骤中,能够通过对各个编码单位进行帧间预测或帧内预测而求出预测信号。通过所求出的预测信号与编码单位的原始信号之间的差异,能够计算出残差信号。对于所计算出的残差信号,能够为了能量的集中而执行变换。

因为适用本发明的编码单位为如4×4、4×8、8×4、8×8、16×4、4×16等多种大小的正方形或长方形形态,因此为了对适用本发明的编码单位的残差信号进行变换,需要对正方形变换以及非正方形变换做出定义。在变换的过程中所使用的公式如下所示。

【公式1】

y=axbt

x为m×n大小的二维残差信号去快,a代表水平方向一维n点变换,bt代表垂直方向一维m点变换。bt代表b的转置矩阵。上述m和n能够具有不同的大小,也能够具有相同的大小。此外,a和b能够是相同的变换基底,也能够是不同的变换基底。y代表通过对残差信号区块x进行变换而得到的变换区块。

在对变换区块y进行逆变换的过程中所使用的公式如下所示。

【公式2】

x=atyb

在上述公式1以及公式2中,垂直方向变换与水平方向变换无论其执行顺序如何都能够得到类似的结果。但是,当变换系数的表达范围具有如16比特等有限的比特准确度(bitprecision)时,在编码器以及解码器中执行垂直方向变换以及水平方向变换时应使用相同的执行顺序。这是因为,有限的比特准确度会在演算过程中造成数据的丢失。为了防止可能在编码器/解码器中发生的失配(mismatch)现象,在编码器/解码器中应按照相同的顺序执行垂直方向变换以及水平方向变换。

为了使上述公式1的变换公式以及公式2的逆变换公式成立,变换基底需要满足分离特性(separability)以及正交性(orthogonality)。之所以需要上述制约,是因为计算量会从o(n4)减少至o(n3)且满足at=a-1

能够作为变换基底(transformbasisvectors)使用的基底(basisvectors,kernel)的类型,包括如dct-ii(discretecosinetransformtype-ii)、dct-v、dct-viii、dst-i(discretesinetransformtype-i)、dst-vii等。在实际的编码器/解码器中,为了提升计算速度以及计算的准确性,能够对变换基底进行近似取整使用。

当编码单位的大小为m×n时,需要根据分离特性(separability)执行一维n点变换以及一维m点变换。下述公式3,是能够在4<=m,n<=64的情况下对所有编码单位的大小进行适用的一维dct-ii变换基底的实例。

【公式3】

为了在编码器/解码器的变换过程中使用,能够通过在实数值变换基底的各个元素上乘以之后以整数为单位进行四舍五入而生成整数变换基底。图12是对能够在变换中使用的dct-ii的实数基底以及实数基底乘以特定的值而得到的整数基底进行示例性图示的示意图。在图12中,对作为k值适用64而获得的整数变换基底进行了图示。虽然在k值增加时变换的准确度也能够得到提升,但是因为会同时导致在编码器/解码器中的内存消耗的提升,因此应具体根据情况选择k值。在逆变换时与其相反,不要除以为了能够利用移位操作减少计算量,能够使用k=2k(k为大于1的整数)。

图13是对能够在变换中使用的dst-vii的实数变换基底以及实数变换基底乘以特定的值而得到的整数基底进行示例性图示的示意图。如结合图12进行的说明,当编码单位的大小为m×n时,需要执行一维n点变换以及一维m点变换。如图13所示,在4<=m,n<=64的情况下,也能够对所有大小的编码单位适用一维dst变换。

图14是用于对适用本发明之一实施例的环内滤波进行说明的流程图。环内滤波器能够包括去块滤波器、偏移补正部、alf(adaptiveloopfilter,自适应环路滤波器)中的至少一个。或者,环内滤波能够包括适用于重建样本和/或预测样本的滤波。

图15是对为了执行图14中所图示的环内滤波而使用的与区块边界邻接的两个区块及其内部的像素进行图示的示意图。

环内滤波是用于减少在以区块单位执行的变换以及量化过程中在区块的边界发生的块状效应(blockingartifacts)的方法。在环内滤波过程中,能够在对任意大小以上的垂直(vertical)区块边界执行水平方向滤波(horizontalfiltering)之后再对水平(horizontal)区块边界执行垂直方向滤波(verticalfiltering)。或者,也能够在执行垂直方向滤波之后再执行水平方向滤波。因为首先执行的滤波结果会成为接下来执行的滤波的输入,因此在编码器/解码器中的滤波顺序应相同。当滤波顺序不同时,在编码/解码过程中可能发生滤波像素之间的失配(mismatch)现象。

适用环内滤波的任意大小能够事先在编码器/解码器中进行设定,也能够利用通过比特流信令的信息进行确定。例如,任意大小能够是如4×4、8×8、16×16等大小,横向与纵向长度也能够互不相同。

环内滤波能够选择性地执行,因此能够首先决定是否需要执行环内滤波。例如,在对滤波的执行与否进行确定时,能够以用于指示滤波的执行与否的信息、bs(boundarystrength,边界强度)值、与区块边界邻接像素的变化量相关的至少一个变量值中的至少一个为基础进行确定。用于指示滤波的执行与否的信息,能够通过序列、图像、条带、并行区块以及区块级别中的至少一种以上进行信令。

在如图14所示的方法中,为了对滤波的执行与否进行确定,能够使用与滤波的区块边界邻接的至少一个区块的编码信息。其中,编码信息能够包括区块的预测模式、运动信息和/或变换系数等。

在步骤s1401中,能够对预测单元(predictionunit,pu)和/或变换单元(transformunit,tu)的边界计算出表示区块边界的强度的bs(boundarystrength,边界强度)值(s1401)。预测单元和/或变换单元表示与区块边界邻接的两种区块的类型,用于计算bs值的区块类型并不限定于此。例如,还能够按照如后所述的方式对编码单元(codingunit,cu)的边界计算出bs值。

例如,当与区块边界邻接的两个区块中的至少一个区块是以帧内预测模式进行编码时,能够将bs值设定为第1值。第1值能够是例如2或大于2的常数。当与区块边界邻接的两个区块都是以帧间预测模式进行编码时,能够根据两个区块的运动(motionvector)值、运动向量的数量、参考图像(referencepicture)的相同与否和/或两个区块中的至少一个区块是否具有不为0的量化的残差信号系数(quantizedresidualcoefficient)等信息,将bs值设定为第2值。第2值能够是小于第1值的常数(例如0、1等)。bs值并不限定于第1值以及第2值,例如,能够通过对bs值的设定标准进行细分而使其具有如第3值、第4值等多个级别的值。接下来,将以bs值为0、1以及2中的某个值的实施例为基准进行说明。但是如上所述,因为bs值也能够大于上述值,因此并不限定于下述的实施例。

在步骤s1402中,能够判定bs值是否为0。在bs值为0的情况下,能够不执行滤波(s1403)。

当bs值不为0时,能够执行步骤s1404。在步骤s1404中,能够计算出用于对与区块边界邻接的像素的像素变化量进行测定的delta值。delta值能够以特定的区块单位进行计算。此时,能够使用属于特定的区块单位的全部或一部分线(行或列)。上述一部分线的位置和/或数量能够是事先在编码器/解码器中约定的固定值,也能够是根据区块的大小/形态变化的值。此外,能够使用位于线上的一个或多个像素,此时的多个像素能够是连续排列的像素,也能够是相隔一定间距的非连续的像素。例如,delta值能够在每4×4的区块单位中利用图15的区块内部中以亮灰色表示的区域的像素变化量进行计算。

在图15中,中央的较粗垂直线代表左右两侧的区块p与区块q之间的边界。而区块p以及区块p内部的每个栅格代表一个像素。标记在各个栅格内部的符号则是用于对与相应栅格对应的像素进行指示的索引。

在计算delta值时,能够以区块边界周边像素的亮度值的变化量为基础进行计算。区块边界周边像素的亮度值的变化量,能够以将区块边界作为中心且位于其左侧和/或右侧(或上侧和/或下侧)的像素亮度值的变化量为基础进行计算。例如,在计算delta值时,能够利用图15中所图示的区块p与区块q的像素,按照下述公式4进行计算。公式4是用于对相应区块边界上的边界(edge)强度进行计算的公式。

【公式4】

dp0=abs(p2.0-2*p1.0+p0.0)

dp3=abs(p2.3-2*p1.3+p0.3)

dp0=abs(q2.0-2*q1.0+q0.0)

dq3=abs(q2.3-2*q1.3+q0.3)

dp=dp0+dp3

dq=dq0+dq3

dpq0=dp0+dq0

dpq3=qp3+dq3

delta=dpq0+dpq3

此外,在步骤s1404中,能够诱导得出2种临界值即β值以及tc值。β值以及tc值能够以量化参数(quantizationparameter,qp)以及下述表3为基础诱导得出。上述量化参数,能够从与区块边界邻接的两个区块或两个区块中的至少一个区块的量化相关参数诱导得出。表9中的q是从量化参数诱导得出的值。在从量化参数得出q值之后,能够参考表9决定β′以及tc′值。β值以及tc值能够根据所设定的β′以及tc′值为基础决定。

【表9】

β值和/或tc值能够用于对滤波的执行与否进行确定。或者,β值和/或tc值也能够在确定执行滤波的情况下用于对滤波类型进行选择。滤波类型能够根据适用滤波的像素的范围、滤波强度等而发生变化。例如,滤波类型中能够包括强滤波(strongfiltering)以及弱滤波(weakfiltering)。但是,滤波类型并不限定于此,也能够使用例如滤波强度各不相同的3种以上的滤波类型。或者,如后所述,当根据与区块边界邻接的两个区块的形态、大小和/或特性分别适用不同的滤波时,能够分别设定独立的滤波类型。或者,β值和/或tc值能够在执行滤波时用于对滤波后的像素进行裁切(clipping)。

在步骤s1405中,能够对delta值以及β值进行比较。根据在步骤s1405中的比较结果,能够对滤波的执行与否进行确定。在delta值不小于β值的情况下,能够不执行滤波(s1403)。在delta值小于β值的情况下,能够确定执行滤波并确定在相应的区块边界中适用的滤波类型。或者,在delta值小于β值的情况下能够确定为不执行滤波,而在delta值不小于β值的情况下能够确定为执行滤波。在图14所图示的实施例中,滤波类型包括强滤波以及弱滤波等两种类型,在步骤s1406中,能够确定执行强滤波以及弱滤波中的哪一种滤波。执行强滤波以及弱滤波中的哪一种滤波,能够通过对与区块边界邻接的两个区块内部的像素值的变化量与特定的临界值进行比较而确定。此时所使用的区块内部的像素值的变化量,能够是在delta值的计算中使用的变化量。或者,也能够对与区块边界邻接的各个区块内部的像素之间的变化量与特定的临界值进行比较。或者,也能够对以区块边界为中心邻接的两个以上的像素值之间之间的变化量与特定的临界值进行比较。上述特定的临界值,能够是事先定义的常数值、通过比特流信令的值、根据区块的形态以及大小等特性确定的值、上述β值以及tc值中的至少一种以上的值。或者,也能够使用对β值和/h或tc值进行缩放的值。或者,上述像素值之间的变化量,能够在利用上述临界值进行缩放之后再与上述临界值进行比较。例如,执行强滤波或弱滤波中的哪一种滤波,能够根据是否满足下述公式5和/或公式6的条件而进行确定。

【公式5】

条件a:2*dpq0<β/4

条件b:abs(p3.0-p0.0)+abs(q3.0-q0.0<β/8

条件c:abs(p0.0-q0.0)<(5*tc+1)/2

【公式6】

条件a:2*dpq3<β/4

条件b:abs(p3.3-p0.3)+abs(q3.3-q0.3)<β/8

条件c:abs(p0.3-q0.3)<(5*tc+1)/2

上述公式5为与图15中的第一个列相关的公式,上述公式6为与图15中的第四个列相关的公式。在步骤s1407中,在同时满足上述公式5和/或公式6的条件时,能够对相应的区块边界执行强滤波。否则,在步骤s1408中,能够执行弱滤波。如对delta值的计算进行的上述说明,在确定滤波类型时能够使用属于与区块边界邻接的特定区块单位中的全部或一部分线(行或列)。上述一部分线的位置和/或数量能够是事先在编码器/解码器中约定的固定值,也能够是根据区块的大小/形态变化的值。此外,能够使用位于线上的一个或多个像素,此时的多个像素能够是连续排列的像素,也能够是相隔一定间距的非连续的像素。当与区块边界邻接的两个区块的形态和/或大小不同时,本说明书中为了指定像素的位置而使用的索引(例如p0,0、p1,0、p2,0等)能够自适应变化。

在执行强滤波时(s1407),能够同时使用与区块边界邻接的两个区块并对每个区块中的m个(其中,m为3或大于3的常数)像素执行滤波。在执行弱滤波时(s1408),能够同时使用与区块边界邻接的两个区块或使用一个区块对每个区块中的n个(其中,n为小于m的常数)像素执行滤波。在图14的步骤s1407以及s1408的下端图示的滤波适用范围只是对m为3而n为2的情况进行的示例性图示,m、n并不限定于此。此外,图14中所图示的滤波方法并不限定于此。即,能够根据需要跳过各个步骤,或将2个以上的步骤合并成一个步骤,或将一个步骤分割成2个以上的步骤。此外,还能够对一部分步骤的执行顺序进行变更。

在按照本发明利用四叉树结构和/或二叉树结构对基本区块进行分割时,如图3(b)、图7(a)等所示,作为编码单位的区块的形状以及大小能够随意进行变更,能够分割成包含长方形形态的编码单位。

在按照本发明利用四叉树结构和/或二叉树结构对区块进行分割时,不再执行分割的区块能够作为编码单位成为执行预测、变换和/或量化的单位。即,基本区块能够被分隔成具有正方形或长方形形态的多种大小的编码单位,各个编码单位不需要为了执行预测或变换而再次进行分割,能够直接将其本身作为预测单元和/或变换单元使用。

因为能够直接将编码单位作为变换单元,因此在编码单位的大小发生变化时变换单元能够具有各种不同的大小。借此,在变换单元的边界上发生的块状效应也会根据区块的形态、大小和/或特性呈现出更多种变化。因此,需要根据与区块边界邻接的区块的形态、大小和/或特性,对环内滤波的强度和/或适用范围进行调整。

图16是对适用本发明的利用四叉树结构和/或二叉树结构分割的区块的结构以及此时适用环内滤波的区块边界进行图示的示意图。在图16中以粗线标记的区块边界,是对可适用环内滤波的区块边界的示例性图示。

在考虑到编码器与解码器的复杂程度的前提下,对于区块的宽度(width)或高度(height)为4的区块(例如4×8、8×4、4×4等)能够不执行滤波。即,对于在图16中以黑线标记的区块边界能够不执行滤波。

图17是用于对适用本发明之另一实施例的滤波进行说明的流程图。接下来将结合图17,对按照如图16所示的方式适用于包含非均质区块的影像中的修改的环路滤波方法进行说明。其中,非均质区块是指区块的宽度以及高度不同的区块。

在对图17的各个步骤进行说明的过程中,与对图14的各个步骤进行的说明相同的部分将被省略,接下来将对图17中的方法与图14中的方法之间的差异进行集中说明。在图14的步骤s1401中是以pu以及tu为基准对bs值进行了计算,但是在图17的步骤s1701中能够以与区块边界邻接的两个编码单位(codingunit,cu)为基准对bs进行计算。

bs值如上所述,能够是第1值和/或第2值或更大的值。在步骤s1702中,能够根据bs是否为0的判断结果不执行滤波(s1703)或按照步骤s1704执行滤波。

在步骤s1704中,能够计算/诱导出delta值、β值以及tc值。在步骤s1405中,能够对delta值以及β值进行比较。当在步骤s1705中判定delta值小于β值时,能够确认与区块边界邻接的区块中的至少一个区块是否为非均质区块(s1706)。当与区块边界邻接的两个区块均为正方形区块时,能够按照图14中的步骤s1406至s1408执行滤波(s1707)。当与区块边界邻接的两个区块中的至少一个区块为非均质区块时,能够按照适用本发明的另一实施例执行s1708之后的过程。或者,当与区块边界邻接的两个区块的形态和/或大小互不相同时,也能够按照适用本发明的另一实施例执行s1708之后的过程。在步骤s1708中,能够按照特定的基准选择滤波类型。滤波类型能够包括如强滤波或弱滤波,但是如上所述,并不限定于此。当选择强滤波时将执在步骤s1709中执行强滤波,而当选择弱滤波时将在步骤s1710中执行弱滤波。如在步骤s1709、s1710中进行的示例性图示,对与区块边界邻接的两个区块适用滤波的范围能够互不相同。关于滤波适用范围,将在后续的内容中进行详细的说明说明。图17中所图示的滤波方法并不限定于此。即,能够根据需要跳过各个步骤,或将2个以上的步骤合并成一个步骤,或将一个步骤分割成2个以上的步骤。此外,还能够对一部分步骤的执行顺序进行变更。此外,在不与结合图17进行说明的实施例冲突的范围内,同样能够适用结合图14进行的说明。

图18是对按照图17中的步骤s1709适用强滤波的像素进行示例说明的示意图。如图18所示,与区块边界(利用红线标记)邻接的两个区块能够分别是8×8以及16×8。大小为16×8的区块为非均质区块。如结合图14进行的说明,能够以两个区块或两个区块中的至少一个区块的量化参数为基础确定对区块边界适用强滤波还是适用弱滤波。当与区块边界邻接的两个区块中的至少一个区块为非均质区块时,能够同时考虑与区块边界邻接的两个区块的宽度和/或高度。具体来讲,能够在考虑到与区块边界邻接的两个区块即区块p以及区块q的宽度以及高度的前提下,在区块大小较大的区块上对更多的区块边界周边像素执行滤波。这是因为,因为变换以及量化而出现的块状效应不仅与量化参数有关,同时还会受到与区块边界邻接的两个区块的大小的影响。例如,与区块边界邻接的两个区块中对相对较大的区块中的区块的dc成分进行排除的ac成分会因为量化步长(quantizationstep,qstep)而被量化以及删除,此时在相对较大的区块内部删除ac部分的相应位置可能会与所邻接区块的dc部分邻接。在这种情况下,可能会导致严重的块状效应。适用本发明之另一实施例的滤波方法,能够为了减少如上所述的失配现象而在考虑到区块的形态、大小和/或特性的前提下执行滤波。

诱导出区块边界的边界强度(bs)、确定滤波的执行与否、选择强滤波或弱滤波等过程能够以与区块边界邻接的两个区块的大小为基础执行,也能够按照结合图14进行说明的方法执行。

如图18所示,当与区块边界邻接的两个区块的大小分别为8×8以及16×8且对相应的区块边界执行强滤波时,能够对区块的大小较大的区块中的更多像素执行滤波。例如,能够对8×8区块中的3个像素(b、c、d)执行滤波,并对大小相对较大的16×8区块中的4个像素(e、f、g、h)执行滤波。执行滤波的像素数量并不限定于此,在大小相对较大的区块中,能够对比大小相对较小的区块更多的像素执行滤波。在图18中所图示的对滤波对象像素的滤波,能够使用与区块边界邻接的两个区块内部的像素值的平均和/或加权平均,或以此为基准计算出中间值而执行。例如,能够利用下述公式7执行滤波。

【公式7】

b′=(2a+2b+c+d+c+f)/8

c′=(b+c+d+e+f)/5

d′=(b+3c+5d+3e+f+8)/16

e′=(c+3d+5e+3f+g+8)/16

f′=(c+d+e+f+g)/5

g′=(c+d+e+f+g+2g+2h)/8

h′=(2d+2e+f+g+h+i+4)/8

在上述公式7中,利用字母a、b、c、d、e、f、g、h、i标记的部分代表加上预测信号以及解码的残差信号而得到的重建像素值,而利用b′、c′、d′、e′、f′、g′、h′标记的字母代表利用滤波系数执行滤波之后的修改的像素值。

图19是对按照图17中的步骤s1710适用强滤波的像素进行示例说明的示意图。如图19所示,当与区块边界邻接的两个区块的大小分别为8×8以及16×8且对相应的区块边界执行弱滤波时,例如,能够对8×8区块中的2个像素(c、d)执行滤波,并对大小相对较大的16×8区块中的3个像素(e、f、g)执行滤波。

滤波的执行过程能够通过以与区块边界邻接的两个区块内部的像素值的差异值为基础计算出δ值而执行。此时,能够利用与区块边界邻接的两个像素值之间的差异值更大的加权值计算出δ值。此时,与区块边界邻接的两个像素值之间的差异值能够与δ值呈正比关系。此外,也能够利用不直接与区块边界邻接的像素值之间的差异值计算出δ值。此时,不直接与区块边界邻接的像素值之间的差异值能够与δ值呈反比关系。δ值能够利用上述像素值之间的差异值中的一个进行计算,所计算出的值能够利用事先定义的常数、根据区块的形态或大小等特性确定的值和/或通过比特流进行信令的值进行缩放。例如,能够利用下述公式8计算出δ值。能够通过所计算出的δ值与作为滤波对象的像素值的加法或减法运算计算出滤波的像素值。

【公式8】

δ=(9*(q0-p0)-3*(q1-p1)+8)>>4

弱滤波能够仅对一个区块执行,也能够同时对两个区块执行。在对与区块边界邻接的两个区块中的至少一个区块为非均质区块的区块边界适用弱滤波时,区块边界的像素即d和e能够通过对各自的像素值与通过公式8计算出的差异值δ进行加法或减法运算而进行滤波。对于位于非均质区块内部的像素(f、g),能够使用与区块边界邻接的两个区块内部的像素值的平均和/或加权平均,或以此为基准计算出中间值而执行。例如,能够通过下述公式9,利用区块边界的周边像素值执行滤波。

【公式9】

f′=(e+5f+2g)>>3

g′=(2f+4g+2h)>>3

在图19中,当区块边界的左侧围16×8区块时,能够同时对两个像素b以及c适用上述公式9。

适用本发明之另一实施例的滤波,能够在位于区块边界的两个区块中的至少一个区块为非均质区块的情况下执行。此外,适用本发明之另一实施例的滤波,能够在位于区块边界的两个区块的大小不同的情况下执行。当与区块边界邻接的两个区块的大小相同的情况或两个区块均为正方形的情况下,能够执行结合图14进行说明的滤波。

图20是对适用本发明的在执行弱滤波的情况下适用滤波的像素范围进行示例性图示的示意图。在图20中,粗线代表区块的区块边界。粗线内部的栅格代表各个区块内部的像素。在图20中,例如,执行滤波的最小区块大小为8×8。因此,对于横向和/或纵向大小为4的区块的边界,能够不执行滤波。在图20中,利用深灰色标记的部分,代表适用结合图14进行说明的滤波的像素范围。在图20中,利用浅灰色标记的部分为非均质区块(16×8)的内部区域,代表适用结合图17进行说明的滤波的像素范围。

适用本发明的视频编码装置的滤波部150以及视频解码装置的滤波部240,还能够包括用于对适用本发明的滤波对象即角点离群点(corneroutlier)进行滤波的角点离群点滤波器。角点离群点滤波器能够位于去块滤波器的前方或后方、偏移补正部的前方或后方、alf(adaptiveloopfilter,自适应环路滤波器)的前方或后方。或者,适用本发明的滤波能够作为环内(in-loop)滤波的一部分执行,还能够对作为帧内预测或帧间预测的参考使用的像素执行。

图21(a)是用于对适用本发明之一实施例的作为角点离群点滤波器的滤波对象的角点离群点进行说明的示意图。图21(b)是对以图21(a)的交叉点作为中心的2×2区域的像素的像素值进行示例性图示的示意图。图21(c)是对用于指示在对角点离群点进行检测以及过滤时所使用的像素的位置的索引进行图示的示意图。在图21(a)、图21(b)以及图21(c)中,利用粗线标记的部分代表区块与区块之间的边界,各个栅格对应于一个像素。

如图21(a)所示,在以区块单位解码的影像中,4个区块2101、2102、2103、2104的角点能够以1个交叉点2100为中心相交。4个区块2101、2102、2103、2104的大小能够互不相同,也能够部分或全部相同。上述4个区块2101、2102、2103、2104能够分别是预测、量化或变换的单位区块。在上述4个区块2101、2102、2103、2104的量化(或逆量化)中使用的量化参数能够互不相同,也能够部分或全部相同,

在上述解码的影像中能够包含多种形态的图像区域,图像区域的边界(边缘)能够不与编码/解码单位即区块的边界一致。例如,在图21(a)中,斜线部分的图像区域2105能够同时存在于多个区块2101、2102、2103、2104,而其中的一个区块2101能够仅在角点部分存在。此时,因为以交叉点2100为中心邻接的4个角点像素是包含于相同图像区域2105中的邻接像素,因此能够预测期具有类似的像素值。

但是,因为预测、量化、变换等编码/解码处理是以区块单位执行等原因,因此解码影像的相同图像区域2105中所包含的上述四个邻接角点像素之间也可能会出现较大的像素值差异。例如,在图21(a)中,以交叉点2100为中心邻接的4个角点像素中属于左上侧区块2101的角点像素的像素值可能明显小于或大于剩余3个角点像素的像素值。

适用本发明的角点离群点滤波器,在包含于解码影像中的4个区块2101、2102、2103、2104以一个交叉点2100为中心相交时,能够将以上述交叉点2100为中心邻接的4个角点像素中与其他角点像素的像素值呈现出较大差异的角点像素检测为角点离群点并对其进行滤波。即,角点离群点是指,当因为量化误差(quantizationerror)或预测误差(predictionerror)等原因而导致重建影像内一个区块的角点像素值和与其邻接的其他区块的角点像素值之间呈现出较大差异时的包含上述噪声(noise)的角点像素。此外,适用本发明的角点离群点,能够包括与周边邻接像素的像素值呈现出较大差异的像素以及上述周边像素。

图21(b)是对以图21(a)中的交叉点2100为中心的2×2区域进行放大的放大图。在图21(b)中,各个栅格中包含的数字示例性地表示区块中所包含的像素的像素值。

如图21(b)所示,与交叉点2100邻接的4个角点像素的像素值能够分别为120、61、44、29。如上所述,可以发现在邻接的4个角点像素中,像素值为120的角点像素(斜线部分)呈现出与其他3个角点像素的像素值(61、44、29)的较大差异。因此,像素值为120的角点像素能够成为适用本发明的滤波器的对象即角点离群点。

图21(c)是对用于指示在对角点离群点进行检测以及过滤时所使用的上述2×2区域的像素的位置的索引进行图示的示意图。如图21(c)所示,以交叉点2100为中心邻接的角点像素的位置分别以大写字母a、b、c以及d进行标记,而与各个角点像素邻接的像素的位置则以小写字母与数字的组合a1、a2、b1、b2、c1、c2、d1、d2进行标记。为了对角点离群点进行检测以及滤波而使用的角点离群点滤波器的输入并不限定于如图21(c)所示区域的像素,能够使用以区块与区块之间的边界为中心,垂直、水平和/或对角线邻接的区域内的像素。例如,能够使用如3×3、4×4等正方形区域的像素,也能够使用如1×2、2×1、1×3、3×1、1×4、4×1、2×3、3×2、2×4、4×2、3×4、4×3等长方形区域的像素。作为角点离群点滤波器的输入使用的像素,能够是编码器/解码器已知位置上的像素。或者,也能够通过将与上述像素的位置相关的信息包含到比特流中进行信令。

接下来,将结合图21(c)所图示的与像素位置相关的索引信息,对角点离群点滤波器的工作进行说明。此外,在图21(c)所图示的与像素位置相关的索引信息中,假定角点像素b的像素值与其他邻接角点像素a、c以及d的像素值呈现出较大差异。

图22是用于对适用本发明之一实施例的角点离群点滤波器的工作进行说明的示意图。

作为角点离群点滤波器的输入,能够使用以一个交叉点2100为中心邻接的4个区块2101、2102、2103、2104中包含的像素的像素值。例如,能够将图21(c)图示的2×2区域内的像素的像素值作为角点离群点滤波器的输入使用。

在角点离群点选择步骤(s2201)中,当4个区块2101、2102、2103、2104以一个交叉点2100为中心邻接时,选择上述与交叉点邻接的4个角点像素a、b、c、d中呈现出与其他邻接角点像素的像素值呈现出较大差异的角点像素作为角点离群点。

角点像素的选择,能够利用与上述交叉点邻接的角点像素的像素值之间的差异值以及第1阈值(threshold)执行。上述像素值之间的差异值,能够是水平、垂直、和/或对角线邻接的像素的像素值之间的差异值。上述第1阈值能够以量化参数为基础进行设定。例如,上述第1阈值能够是上述邻接的4个区块2101、2102、2103、2104的量化参数中的一个,或者,能够将上述邻接的4个区块2101、2102、2103、2104的量化参数中的最大值、最小值、最频值、众数值、中间值、平均值、加权平均值和/或利用特定的常数值对上述值进行缩放而诱导出的值作为第1阈值使用。上述特定的常数值能够使用固定值或变化的值,也能够以包含于比特流中进行信令的信息为基础获取。但是,第1阈值并不限定于此,也能够使用预先定义的值、根据影像的特点等设定的不同值或通过比特流进行信令的值。

在适用本发明的一实施例中,能够通过下述公式10,选择与上述交叉点邻接的4个角点像素a、b、c、d中与其他邻接角点像素的像素值呈现出较大差异的角点像素作为角点离群点。

【公式10】

通过上述公式10,能够首先以4个角点像素的像素值之间的差异值为基础,选择4个角点像素中呈现出与其他邻接角点像素的像素值呈现出较大差异的角点像素。

具体来讲,能够通过对角点像素a与角点像素c的像素值之间的差异值和角点像素b与角点像素d的像素值之间的差异值进行比较而判断出角点像素a或角点像素c中包含角点离群点还是角点像素b或角点像素d中包含角点离群点。例如,当角点像素a与角点像素c的像素值之间的差异值小于角点像素b与角点像素d的像素值之间的差异值时,能够判断出角点像素b或角点像素d中包含角点离群点。

在判断出角点像素b或角点像素d中包含角点离群点之后,能够再次对角点像素b与角点像素c的像素值之间的差异值和角点像素a与角点像素d的像素值之间的差异值进行比较。如果角点像素b与角点像素c的像素值之间的差异值大于角点像素a与角点像素d的像素值之间的差异值,则能够判断出角点像素b或角点像素c中包含角点离群点。

在上述实例中,在通过第一次比较过程(如果(|a-c|>|b-d|)判断出角点像素b或角点像素d中包含角点离群点,并通过第二次比较过程(如果(|b-c|>|a-d|)判断出角点像素b或角点像素c中包含角点离群点时,能够通过上述两次比较过程确认角点像素b的像素值呈现出与其他角点像素a、c、d的像素值的较大的差异值。借此,能够判断出角点像素b为角点离群点。

如上所述,通过对邻接的角点像素的像素值之间的差异进行比较的步骤,能够从4个邻接的角点像素a、b、c、d中选择出与其他3个邻接角点像素的像素值呈现出较大差异的角点像素。但是,从邻接的4个角点像素中选择出与其他角点像素的像素值呈现出较大差异的角点像素时除了利用上述公式10的方法之外,也能够使用其他多种方法执行。

在上述公式10中,当通过两次比较过程从4个邻接的角点像素a、b、c、d中选择出与其他3个邻接角点像素的像素值呈现出较大差异的角点像素即角点像素b之后,能够对所选择的角点像素b与其他3个相邻角点像素a、c、d之间的像素值的差异值和第1阈值进行比较。上述第1阈值,能够设定为例上述邻接的4个区块的量化参数平均值的1/3即qp/3使用。但是,第1阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。

如果在上述公式10中选择的角点像素b与其他3个邻接角点像素a、c、d的像素值之间的差异值均大于第1阈值,则能够选择上述所选择的角点像素b作为角点离群点。如果在上述公式10中选择的角点像素b与其他3个邻接角点像素a、c、d中的一个以上的角点像素的像素值之间的差异值小于第1阈值,则能够不选择角点离群点。在这种情况下,能够结束与对应角点离群点滤波器输入相关的角点离群点滤波动作。

在步骤s2201中选择出角点离群点之后,能够对包含于与所选择的角点离群点相同的区块内且与所选择的角点离群点邻接的像素与上述角点离群点之间的类似性进行判断(s2202)。在部分情况下也能够不执行步骤s2202,例如,能够以影像的特性为基础或以信令的信息为基础决定是否省略步骤s2202。

例如,在通过公式10选择图21(c)中的角点像素b作为角点离群点时,能够对包含于与角点像素b相同的区块2101内且水平邻接的像素b1和/或垂直邻接的像素b2与角点像素b之间的类似性进行判断。

上述类似性判断,能够以相同区块内的像素与角点像素b的像素值之间的差异值为基础执行。其中,相同区块内的像素,能够是与角点像素b位于相同的水平线和/或垂直线上的像素。相同区块内的像素,能够是与角点像素b连续邻接的一个或多个像素,也能够是与其相隔特定距离的位置上的一个或多个像素。例如,能够通过对相同区块内水平和/或垂直邻接的邻接像素b1、b2与角点像素b的像素值之间的差异值和第2阈值进行比较而执行。上述第2阈值能够以量化参数为基础进行设定。例如,能够是上述邻接的4个区块2101、2102、2103、2104的量化参数中的一个,或者,能够将上述邻接的4个区块2101、2102、2103、2104的量化参数中的最大值、最小值、最频值、众数值、中间值、平均值、加权平均值和/或利用特定的常数值对上述值进行缩放而诱导出的值作为第2阈值使用。上述特定的常数值能够使用固定值或变化的值,也能够以包含于比特流中进行信令的信息为基础获取。在适用本发明的一实施例中,上述第2阈值,能够设定为例上述邻接的4个区块的量化参数平均值的1/6即qp/6使用。但是,第2阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。

在适用本发明的一实施例中,能够利用下述公式11对相同区块内的邻接像素b1、并与角点像素b之间的类似性进行判断。

【公式11】

如果

在上述公式11中,对角点像素b和与其水平邻接的像素b1的像素值之间的差异值和第2阈值即qp/6进行比较。如果角点像素b与像素b1的像素值之间的差异值小于qp/6,则能够判定角点像素b与像素b1类似。角点像素b与像素b2的类似性判断,也能够通过相同的方法执行。

根据上述类似性判断的结构,当判定相同区块内的邻接像素b1、b2与角点像素b不类似时,能够结束对选择为角点离群点的上述角点像素b的角点离群点滤波动作。

根据上述类似性判断的结构,当判定相同区块内的邻接像素b1、b2与角点像素b类似时,能够移动到步骤s2203继续执行对所选择的角点离群点的处理。

在步骤s2202中,对与角点离群点邻接的水平区块边界以及垂直区块边界是否为影像中所包含的图像区域的边缘(edge)进行判断。在部分情况下也能够不执行步骤s2203,例如,能够以影像的特性为基础或以信令的信息为基础决定是否省略步骤s2203。

步骤s2203,是为了判断选择作为角点离群点的角点像素b是否因为与其他邻接角点像素a、c、d包含于不同的图像区域而不适合于执行滤波。例如,当角点像素b所属的图像区域与角点像素a、c以及d所属的图像区域互不相同时,角点像素b的像素值能够呈现出与其他邻接角点像素a、c以及d的像素值的较大差异。在如上所述的情况下,可能无法将像素值的差异认定为是因为如区块单位的量化等而导致的噪声。所以,在这种情况下不对角点像素b执行角点离群点滤波为宜。

在步骤s2203中,对与角点离群点即角点像素b邻接的水平区块边界以及垂直区块边界是否为图像区域的边缘进行判断。如果判定与角点像素b邻接的水平区块边界以及垂直区块边界为图像区域的边缘,则能够判定角点像素b与其他邻接角点像素a、c以及d属于互不相同的图像区域。

在适用本发明的一实施例中,上述边缘与否的判断,能够使用与角点离群点即角点像素b邻接的区块2102、2103、2104所包含的像素即与上述水平区块边界以及垂直区块边界邻接的至少一个像素与第3阈值执行。上述第3阈值能够以量化参数为基础进行设定。例如,能够是上述邻接的4个区块2101、2102、2103、2104的量化参数中的一个,或者,也能够将上述邻接的4个区块2101、2102、2103、2104的量化参数中的最大值、最小值、最频值、众数值、中间值、平均值、加权平均值和/或利用特定的常数值对上述值进行缩放而诱导出的值作为第3阈值使用。上述特定的常数值能够使用固定值或变化的值,也能够以包含于比特流中进行信令的信息为基础获取。但是,第3阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。在适用本发明的一实施例中,上述第3阈值,能够设定为例上述邻接的4个区块的量化参数平均值的1/6即qp/6使用。但是,第3阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。

在适用本发明的一实施例中,上述边缘与否的判断,能够将与角点离群点邻接的区块所包含的像素中与上述水平区块边界以及垂直区块边界邻接的像素的变化量与第3阈值进行比较。例如,在选择角点像素b作为角点离群点时,能够利用下述公式12对与角点像素b邻接的水平区块边界以及垂直区块边界是否为图像区域的边缘进行判断。

【公式12】

在上述公式12中,为了对与角点离群点即角点像素b邻接的水平区块边界是否为边缘进行判断,能够使用与角点像素b邻接的区块所包含的像素即与上述水平区块边界邻接的像素c1、c、d以及d1。作为上述像素c1、c、d以及d1的变化量,能够使用如上述像素c1、c、d以及d1的像素值的平均值与像素c1的像素值之间的差异值和/或上述像素c1、c、d以及d1的像素值的平均值与像素d1的像素值之间的差异值。或者,也能够使用对与上述水平区块边界邻接的像素中的两个以上的像素值之间的差异值与特定的标准值进行比较的过程。上述特定的标准值,能够以影像的特性为基础确定或信令。当上述像素c1、c、d以及d1的变化量小于第3阈值即qp/6时,判定上述像素c1、c、d以及d1的变化量较小,从而进一步判定上述像素c1、c、d以及d1邻接的水平区块边界为图像区域的边缘。

同理,为了对与角点离群点即角点像素b邻接的垂直区块边界是否为边缘进行判断,能够使用与角点像素b邻接的区块所包含的像素即与上述垂直区块边界邻接的像素a2、a、d以及d2。作为上述像素a2、a、d以及d2的变化量,能够使用如上述像素a2、a、d以及d2的像素值的平均值与像素a2的像素值之间的差异值和/或上述像素a2、a、d以及d2的像素值的平均值与像素d2的像素值之间的差异值。或者,也能够使用对与上述垂直区块边界邻接的像素中的两个以上的像素值之间的差异值与特定的标准值进行比较的过程。上述特定的标准值,能够以影像的特性为基础确定或信令。当上述像素a2、a、d以及d2的变化量小于第3阈值即qp/6时,判定上述像素a2、a、d以及d2的变化量较小,从而进一步判定上述像素a2、a、d以及d2邻接的垂直区块边界为图像区域的边缘。

虽然在适用本发明的一实施例中为了对区块的边界是否为图像区域的边缘而使用了上述公式12,但是图像区域的边缘与否判定方法并不限定于此,也能够适用其他多种方法。

在步骤s2203中,根据上述公式12的判断结果,当判定与角点离群点即角点像素b邻接的水平区块边界或垂直区块边界不是图像的边缘时,能够执行步骤s2204的角点离群点滤波。

在步骤s2203中,根据上述公式12的判断结果,当判定与角点离群点即角点像素b邻接的水平区块边界以及垂直区块边界都是图像的边缘时,能够结束对角点像素b的角点离群点滤波动作,或利用下述公式13追加执行边缘判断。在部分情况下也能够不追加执行利用下述公式13的边缘判断,例如,能够以影像的特性为基础或以信令的信息为基础决定是否省略利用下述公式13的边缘判断。

【公式13】

如果

在上述公式13中,判断角点离群点即角点像素b和与其邻接的角点像素a的像素值之间的差异值是否小于第4阈值。上述第4阈值能够以量化参数为基础进行设定。例如,能够是上述邻接的4个区块2101、2102、2103、2104的量化参数中的一个,或者,也能够将上述邻接的4个区块2101、2102、2103、2104的量化参数中的最大值、最小值、最频值、众数值、中间值、平均值、加权平均值和/或利用特定的常数值对上述值进行缩放而诱导出的值作为第4阈值使用。上述特定的常数值能够使用固定值或变化的值,也能够以包含于比特流中进行信令的信息为基础获取。但是,第4阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。在适用本发明的一实施例中,上述第4阈值,能够设定为例上述邻接的4个区块的量化参数平均值的1/2即qp/2使用。但是,第4阈值并不限定于此,也能够使用根据影像的特点等设定的不同值或通过比特流进行信令的值。在如上所述的适用本发明的一实施例中使用的第1至第4阈值能够全部相同或不同,也能够一部分相同或不同。

在上述公式13中,判断角点离群点即角点像素b和与其邻接的角点像素a的像素值之间的差异值是否小于qp/2。当角点像素b和与其邻接的角点像素a的像素值之间的差异小于qp/2时,能够最终判定与角点像素b邻接的垂直区块边界为图像区域的边缘。

同理,在上述公式13中,判断角点离群点即角点像素b和与其邻接的角点像素c的像素值之间的差异值是否小于qp/2。当角点像素b和与其邻接的角点像素c的像素值之间的差异小于qp/2时,能够最终判定与角点像素b邻接的水平区块边界为图像区域的边缘。

在步骤s2203中,根据公式12和/或公式13的判断结果,当判定与角点像素b邻接的水平区块边界以及垂直区块边界都是图像的边缘时,能够不执行步骤s2204的滤波而直接结束。

在步骤s2203中,根据公式12和/或公式13的判断结果,当判定与角点像素b邻接的水平区块边界或垂直区块边界不是图像的边缘时,能够执行步骤s2204的对角点像素b的角点离群点滤波。如上所述,通过依次执行步骤s2201至步骤s2203,能够对滤波对象即角点离群点进行确定。但是,步骤s2201至步骤2203并不是对判断顺序的限定,在能够维持本发明之本质的范围内能够对判断顺序进行自适应变更。此外,滤波对象即角点离群点能够选择性地通过步骤s2201至步骤s2203中的至少一个进行确定。

对角点离群点以及与其邻接的像素的滤波,能够以减少与邻接像素的差异的方向直行,例如,能够以减少与属于其他区块的邻接角点像素之间的像素值的差异的方向直行。在适用本发明的一实施例中,例如,能够利用下述公式14执行滤波。

【公式14】

b′=((4×b)+a+c+(2×d)+4)<<3

b1′=(b′+(3×b1)+2)<<2

b2′=(b′+(3×b2)+2)<<2

在上述公式14中,a、b、c、d、b1、b2分别代表图21(c)中所图示的位置上的像素的像素值,b'、b1'、b2'分别代表对图21(c)中位于b、b1、b2位置上的像素值进行滤波的值。上述滤波的像素能够包括角点离群点以及与其水平、垂直和/或对角线邻接的像素。作为在滤波过程中使用的滤波系数,能够使用编码器/解码器已知的特定值,也能够以影像的特性为基础又到处滤波系数,也能够对于滤波系数相关的信息进行信令。滤波并不是仅对预测、量化和/或变换区块的边界执行,例如,能够仅对8×8、16×16、32×32、64×63区块的边界等具有特定大小的区块的边界执行。与执行滤波的区块的类型和/或大小相关的信息,能够使用编码器/解码器已知的信息,或以影像的特性为基础确定,或对与其相关的信息进行信令。

适用本发明之实施例的方法由一个以上的步骤构成,并按照特定的顺序进行了说明。但是本发明并不限定于如上所述的特定顺序。例如,能够对各个步骤的执行顺序进行变更。或者,能够同时执行一个以上的步骤。或者,能够在任意的位置上追加一个以上的步骤。

适用本发明的实施例能够以可通过各种计算机构成要素执行的应用程序指令的形态实现并被存储到计算机可读取的存储媒介中。上述计算机可读取的存储媒介能够单独或组合包括应用程序指令、数据文件、数据结构。适用本发明的实施例能够通过配备有一个以上的处理器的硬件装置实现。一个以上的处理器能够分别以软件模块的形式工作。

本发明的思想并不限定于在上述内容中进行说明的实施例,包含在后续的权利要求范围及其均等范围内的所有变更均包含于本发明的思想范畴之内。

产业可用性

本发明能够用于对影像进行编码/解码。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1