具体实施方式
下面,参照附图而对本发明的实施形式进行具体说明。在说明本说明书的实施例时,在判断相关公知结构或功能的具体说明混淆本说明书的要旨的情况下,省略其具体说明。
对于称任一个构成要素与其它构成要素“连接”或“联接”时,直接与其它构成要素连接或联接,但也能够以在中间存在其它构成要素进行理解。而且,在本发明中记述“包含”特定结构的内容并非排除相应结构之外的结构,是指另外的结构能够包含于本发明的实施或本发明的技术思想的范围。
第一、第二等用语在说明各种构成要素时使用,但所述构成要素并非通过所述用语限定。所述用语仅将一个构成要素区别于其它构成要素的目的使用。例如,不脱离本发明的权利要求范围,第一构成要素可以命名为第二构成要素,同样地,第二构成要素也能够命名为第一构成要素。
并且,本发明的实施例显示的构成部用于显示相互不同特征的功能而独立显示,并非是指由分离各个构成部的硬件或一个软件构成单位构成。即各个构成部为便于说明,以按各个的构成部罗列包含,合并各个构成部中的至少两个构成部而构成为一个构成部,或一个构成部分为多个构成部而执行功能,该各个构成部的综合实施例及分离的实施例也包含于不脱离本发明的本质的本发明的权利要求范围。
并且,一部分的构成要素并非为执行本发明的本质功能的必要构成要素,仅为提高性能的有选择性的构成要素。本发明仅包含除了用于提高性能而使用的构成要素之外的实现本发明的本质时必要的构成要素实现,除了仅用于提高性能而使用的选择性构成要素之外,包含必要构成要素的结构也包含在本发明的权利要求范围。
图1为显示本发明的一实施例的影像编码装置的结构的框图,影像编码装置10包括:图片分割部110、转换部120、量子化部130、扫描部131、熵编码部140、帧内预测部150、帧间预测部160、逆量子化部135、逆转换部125、后期处理部170、图片存储部180、减算部190及加算部195。
参照图1,图片分割部110分析输入的视频信号而将图片分割成编码单元而确定预测模式,并按所述编码单元确定预测单元的尺寸。
并且,图片分割部110将要编码的预测单元根据预测模式(或预测方法)而发送至帧内预测部150或帧间预测部160。并且,图片分割部110将要编码的预测单元发送至减算部190。
在此,视频的图片(Picture)由多个瓦片或切片构成,瓦片或切片分割为分割图片的基本单位即多个编码树单元(Coding Tree Unit:CTU)。
并且,本发明的实施例的多个瓦片或切片构成一个以上瓦片或切片组,该组构成将图片分割为长方形区域的子图。并且,执行基于瓦片或切片组的子图的并行化处理程序,对此下面做另外说明。
并且,所述编码树单元被分割为执行帧间预测(inter prediction)或帧内预测(intra prediction)的基本单位即一个或两个以上编码单元(Coding Unit:CU)。
编码单元(CU)被分割为执行预测的基本单位即一个或一个以上预测单元(Prediction unit:PU)。
对于该情况,编码装置10对于各个所述分割的编码单元(CU)通过预测方法确定帧间预测和帧内预测中的任一个,但对于各个预测单元(PU)而可以不同地生成预测区块。
另外,编码单元(CU)被分割为执行对残差区块(residual block)的转换的基本单位即一个或两个以上转换单元(Transform Unit:TU)。
对于该情况,图片分割部110通过如上所述分割的区块单位(例如,预测单元(PU)或转换单元(TU))而将影像数据传输至减算部190。
参照图2,具有最大256x256像素尺寸的编码树单元(CTU)被分割为四叉树(quadtree)结构,被分割为具有正方形的形状的四个编码单元(CU)。
具有所述正方形的形状的四个编码单元(CU)分别再次分割为四叉树结构,如上所述,分割为四叉树结构的编码单元(CU)的深度(Depth)具有0至3中的任一个整数值。
编码单元(CU)根据预测模式而被分割为一个或两个以上预测单元(PU)。
对于帧内预测模式,在编码单元(CU)的尺寸为2Nx2N时,预测单元(PU)具有图3的(a)显示的2Nx2N或图3的(b)显示的NxN的尺寸。
另外,对于帧间预测模式,在编码单元(CU)的尺寸为2Nx2N时,预测单元(PU)具有图4的(a)显示的2Nx2N、图4的(b)显示的2NxN、图4的(c)显示的Nx2N、图4的(d)显示的NxN、图4的(e)显示的2NxnU、图4的(f)显示的2NxnD、图4的(g)显示的nLx2N及图4的(h)显示的nRx2N中的任一个尺寸。
参照图5,编码单元(CU)被分割为四叉树(quad tree)结构,被分割为具有正方形的形状的四个转换单元(TU)。
具有所述正方形的形状的四个转换单元(TU)分别被再次分割为四叉树结构,如上所述,被分割为四叉树结构的转换单元(TU)的深度(Depth)具有从0至3中的任一个整数值。
在此,对于编码单元(CU)为帧间预测模式的情况,从相应编码单元(CU)分割的预测单元(PU)和转换单元(TU)具有相互独立的分割结构。
对于编码单元(CU)为帧内预测模式的情况,从相应编码单元(CU)分割的转换单元(TU)不能比预测单元(PU)的尺寸大。
并且,如上所述分割的转换单元(TU)最大具有64x64像素尺寸。
转换部120转换所输入的预测单元(PU)的原始区块和在帧内预测部150或帧间预测部160中生成的预测区块之间的残差信号即残差区块,所述转换将转换单元(TU)作为基本单位执行。
在所述转换过程中,根据预测模式(intra or inter)而确定相互不同的转换矩阵,帧内预测的残差信号因根据帧内预测模式而具有方向性,根据帧内预测模式而适应性确定转换矩阵。
转换单位通过两个(水平、垂直)的一维转换矩阵而转换,例如,在帧间预测的情况下,确定提前确定的一个转换矩阵。
另外,对于帧内预测,在帧内预测模式为水平的情况下,因残差区块具有垂直方向的方向性的概率变高,按垂直方向适用基于DCT的整数矩阵,按水平方向适用基于DST(输出图像)或KLT(降维与图像压缩)的整数矩阵。在帧内预测模式为垂直的情况下,按垂直方向适用基于DST或基于KLT的整数矩阵,按水平方向适用基于DCT(离散余弦变换)的整数矩阵。
并且,在DC(双通道)模式的情况下,双向适用基于所有DCT的整数矩阵。
并且,对于帧内预测,基于转换单元(TU)的尺寸而转换矩阵也能够适应性确定。
量子化部130确定用于对通过所述转换矩阵而转换的残差区块的系数量子化的量子化步伐尺寸,量子化步伐尺寸可以按提前规定的尺寸以上的量子化单元确定。
量子化单元的尺寸为8x8或16x16,量子化部130利用根据量子化步伐尺寸及预测模式而确定的量子化矩阵而将转换区块的系数量子化。
并且,量子化部130利用与当前量子化单元邻接的量子化单元的量子化步伐尺寸作为当前量子化单元的量子化步伐尺寸预测标识符。
量子化部130按当前量子化单元的左侧量子化单元、上侧量子化单元、左上侧量子化单元顺序检索而利用一个或两个有效的量子化步伐尺寸而生成当前量子化单元的量子化步伐尺寸预测标识符。
例如,量子化部130确定将按所述顺序检索的有效的第一量子化步伐尺寸确定为量子化步伐尺寸预测标识符,或确定将按所述顺序检索的有效的两个量子化步伐尺寸的平均值作为量子化步伐尺寸预测标识符,或在仅一个量子化步伐尺寸有效的情况下,确定其作为量子化步伐尺寸预测标识符。
在确定所述量子化步伐尺寸预测标识符的情况下,量子化部130将当前量子化单元的量子化步伐尺寸和量子化步伐尺寸预测标识符之间的差分值传送至熵编码部140。
另外,当前编码单元的左侧编码单元、上侧编码单元、左上侧编码单元全部不存在,或按最大编码单元内的编码顺序上可能存在之前存在的编码单元。
因此,在与当前编码单元邻接的量子化单元和所述最大编码单元内,按编码顺序前一个量子化单元的量子化步伐尺寸可以作为候选标识符。
对于该情况,按1)当前编码单元的左侧量子化单元,2)当前编码单元的上侧量子化单元,3)当前编码单元的左上侧量子化单元,4)编码顺序上前一个量子化单元顺序设定优先顺序。所述顺序能够转换,所述左上侧量子化单元也能够省略。
另外,如上所述量子化的转换区块被传输至逆量子化部135和扫描部131。
扫描部131扫描量子化的转换区块的系数而转换为一维量子化系数,对于该情况,量子化后的转换区块的系数分布依赖帧内预测模式,由此,扫描方式根据帧内预测模式进行确定。
并且,系数扫描方式也能够根据转换单位的尺寸而作不同确定,所述扫描图案根据方向性帧内预测模式不同,对于该情况,量子化系数的扫描顺序能够进行逆向扫描。
对于所述量子化的系数被分割为多个子集(sub-set)的情况,在各个子集内的量子化系数适用相同的扫描图案,子集之间的扫描图案能够适用之字形扫描或对角线扫描。
另外,优选地,所述扫描图案从包含DC的主子集正向扫描至剩余子集,其逆向也可以。
并且,也能够与子集内的量子化的系数的扫描图案相同而设定子集之间的扫描图案,子集之间的扫描图案根据帧内预测模式确定。
另外,编码装置10将显示在所述转换单元(PU)内非0的最后的量子化系数的位置及各个子集内的非0的最后量子化系数的位置的信息包含于比特流而传送至解码装置20。
逆量子化部135如上所述而对被量子化的量子化系数进行逆量子化,逆转换部125按转换单元(TU)单位执行逆转换而将所述逆量子化的转换系数恢复为空间区域的残差区块。
加法器195合并通过所述逆转换部125而恢复的残差区块和从帧内预测部150或帧间预测部160接收的预测区块而生成恢复区块。
并且,后期处理部170执行用于去除恢复的图片发生的区块化效果的去块(deblocking)滤波过程;按像素单位弥补与原视频的差异值的取样自适应偏移(SampleAdaptive Offset:SAO)适应过程及通过编码单元而弥补与原视频的差异值的自适应环路滤波(Adaptive Loof Filtering:ALF)过程等后续处理。
去块滤波过程适用于具有提前设定的尺寸以上的尺寸的预测单元(PU)或转换单元(TU)的边界。
例如,去块滤波过程包括如下步骤:确定要滤波的边界(boundary);确定适用于所述边界的边界滤波强度(boundary filtering strength);确定去块滤波器的适用与否;对于确定适用所述去块滤波器的情况,选择适用于所述边界的滤波器。
另外,所述去块滤波器的适用与否通过i)所述边界滤波强度是否比0大及ii)与所述要滤波的边界邻接的两个区块(P区块、Q区块)边界部分的像素值显示变化程度的值是否比通过量子化参数确定的第一基准值小与否而进行确定。
优选地,所述滤波器至少两个以上。在处于区块边界的两个像素之间的差异值的绝对值大于等于第二基准值情况下,选择执行相对弱的滤波的滤波器。
所述第二基准值通过所述量子化参数及所述边界滤波强度确定。
并且,取样自适应偏移(SAO)适用过程用于减少适用去块滤波器的视频内的像素和原像素之间的差异值(distortion),确定是否按图片或切片单位执行取样自适应偏移(SAO)适用过程。
图片或切片被分割为多个偏移区域,按各个偏移区域确定偏移类型,所述偏移类型包括提前设定的数量(例如,四个)边缘偏移类型和两个带偏移类型。
例如,对于偏移类型为边缘偏移类型的情况,确定各个像素所属的边缘类型,而适用与其对应的偏移,所述边缘类型基于与当前像素邻接的两个像素值的分布而确定。
自适应环路滤波(ALF)过程基于对比经过去块滤波过程或适应性偏移适用过程的恢复影像和原影像的值而执行滤波。
图片存储部180从后期处理部170接收所输入的后期处理的影像数据而按图片(Picture)单位恢复影像并存储,图片为帧单位的影像或字段单位的影像。
帧间预测部160利用存储至图片存储部180的至少一个参照图片而执行运动推定,并确定显示参照图片的参照图片索引及运动矢量。
对于该情况,根据所确定的参照图片索引及运动矢量,从在存储至图片存储部180的多个参照图片中运动推定使用的参照图片推测与要编码的预测单元对应的预测区块。
帧内预测部150利用包含当前预测单元的图片内部的再构成的像素值而执行帧内预测编码。
帧内预测部150接收所输入的要预测编码的当前预测单元而根据当前区块的尺寸而在提前设定的数量的帧内预测模式中选择一个而执行帧内预测。
帧内预测部150为了生成帧内预测区块而对参照像素执行适应性滤波,对于未能利用参照像素的情况,利用能够利用的参照像素而生成参照像素。
熵编码部140对通过量子化部130而量子化的量子化系数、从帧内预测部150接收的帧内预测信息、从帧间预测部160接收的运动信息等进行熵编码。
图6为显示在编码装置10执行帧间预测的结构的一实施例的框图。所示的帧间预测编码器包括运动信息确定部161、运动信息编码模式确定部162、运动信息编码部163、预测区块生成部164、残差区块生成部165、残差区块编码部166及多路复用器167。
参照图6,运动信息确定部161确定当前区块的运动信息,运动信息包括参照图片索引和运动矢量,参照图片索引显示之前编码恢复的图片中的任一个。
在对当前区块进行单向帧间预测编码的情况下,显示列表0(L0)所属的参照图片中的任一个,在对当前区块进行双向预测编码的情况下,包括显示列表0(L0)的参照图片中的一个的参照图片索引和显示列表1(L1)的参照图片中的一个参照图片索引。
并且,在对当前区块进行双向预测编码的情况下,包括显示结合列表0和列表1而生成的复合列表(LC)的参照图片中的一个或两个图片的索引。
运动矢量显示各个参照图片索引的图片内的预测区块的位置,所述运动矢量为像素单位(整数单位)或子像素单位。
例如,所述运动矢量具有1/2、1/4、1/8或1/16像素的精密度,对于运动矢量并非为整数单位的情况,预测区块从整数单位的像素生成。
运动信息编码模式确定部162确定对当前区块的运动信息的编码模式,编码模式通过跳跃模式、归并模式及AMVP(高级运动矢量预测)模式中的任一个例示。
跳跃模式存在具有与当前区块的运动信息相同的运动信息的跳跃候选标识符,在残差信号为0的情况下适用,所述跳跃模式在预测单元(PU)即当前区块与编码单元(CU)尺寸相同时适用。
归并模式在存在具有与当前区块的运动信息相同的运动信息的归并候选标识符时适用,所述归并模式在当前区块尺寸与编码单元(CU)不同或尺寸相同的情况下,在存在残差信号的情况下适用,另外,归并候选标识符和跳跃候选标识符相同。
AMVP模式在未适用跳跃模式及归并模式时适用,选择具有与当前区块的运动矢量最相似的运动矢量的AMVP候选标识符作为AMVP预测标识符。
但所述编码模式作为除了所述例示的方法之外的进程,适应性包含更细分化的运动补偿预测编码模式。适应性确定的运动补偿预测模式不仅包含上述的AMVP模式及归并模式、跳跃模式,还包括按当前新的运动补偿预测模式提出的FRUC(帧速率上转换,FRAMERATE UP-CONVERSION)模式、BIO(双向光流,BI-DIRECTIONAL OPTICAL FLOW)模式、AMP(仿射运动预测,AFFINE MOTION PREDICTION)模式、OBMC(重叠块运动补偿,OVERLAPPED BLOCKMOTION COMPENSATION)模式、DMVR(解码端运动矢量修正,DECODER-SIDE MOTION VECTORREFINEMENT)模式、ATMVP(可选时域运动矢量预测,Alternative temporal motion vectorprediction)模式、STMVP(空时运动矢量预测,Spatial-temporal motion vectorprediction)模式、LIC(局部光补偿,Local Illumination Compensation)模式中的至少一个,根据提前确定的条件而适应性确定区块。
运动信息编码部163根据通过运动信息编码模式确定部162确定的方式而对运动信息进行编码。
例如,运动信息编码部163在运动信息编码模式为跳跃模式或归并模式的情况下,执行归并运动矢量编码过程,在为AMVP模式的情况下,执行AMVP编码过程。
预测区块生成部164利用当前区块的运动信息而生成预测区块,对于运动矢量为整数单位的情况,复制与参照图片索引显示的图片内运动矢量显示的位置对应的区块而生成当前区块的预测区块。
另外,对于运动矢量并非为整数单位的情况,预测区块生成部164能够从参照图片索引显示的图片内的整数单位像素生成预测区块的像素。
此情况,对于亮度像素而使用8阶的插值滤波器而生成预测像素,对于色差像素而使用4阶插值滤波器而生成预测像素。
残差区块生成部165利用当前区块和当前区块的预测区块而生成残差区块,对于当前区块的尺寸为2Nx2N的情况,利用当前区块和与当前区块对应的2Nx2N尺寸的预测区块而生成残差区块。
另外,对于预测中使用的当前区块的尺寸为2NxN或Nx2N的情况,取得构成2Nx2N的两个2NxN区块各自的预测区块之后,利用所述两个2NxN预测区块而生成2Nx2N尺寸的最终预测区块。
并且,利用所述2Nx2N尺寸的预测区块也能够生成2Nx2N尺寸的残差区块,为了解决具有2NxN尺寸的两个预测区块的边界部分的不连续性而对于边界部分的像素适用重叠平滑。
残差区块编码部166将所述残差区块分割为一个以上转换单元(TU),对各个转换单元(TU)进行转换编码、量子化及熵编码。
残差区块编码部166利用基于整数的转换矩阵而转换通过帧间预测方法生成的残差区块,所述转换矩阵为基于整数的DCT矩阵。
另外,残差区块编码部166为了对通过转换矩阵而转换的残差区块的系数进行量子化而利用量子化矩阵,所述量子化矩阵通过量子化参数确定。
所述量子化参数通过提前设定的尺寸以上的编码单元(CU)确定,对于当前编码单元(CU)比所述提前设定的尺寸小的情况,进对所述提前设定的尺寸内的编码单元(CU)中编码顺序的第一编码单元(CU)的量子化参数进行编码,并且,剩下的编码单元(CU)的量子化参数因与所述参数相同而未进行编码。
并且,利用根据所述量子化参数及预测模式而确定的量子化矩阵而对所述转换区块的系数进行量子化。
按所述提前设定的尺寸以上的编码单元(CU)确定的量子化参数利用与当前编码单元(CU)邻接的编码单元(CU)的量子化参数而进行预测编码。
按当前编码单元(CU)的左侧编码单元(CU)、上侧编码单元(CU)顺序检索而利用有效的一个或两个有效的量子化参数而生成当前编码单元(CU)的量子化参数预测标识符。
例如,将按所述顺序检索的有效的第一量子化参数确定为量子化参数预测标识符,并且,按左侧编码单元(CU)、编码顺序上前一个编码单元(CU)顺序检索而将有效的第一个量子化参数确定为有效的第一量子化参数预测标识符。
扫描量子化的转换区块的系数而转换为一维量子化系数,扫描方式根据熵编码模式而作不同设定。
例如,对于按CABAC进行编码的情况,帧间预测编码的量子化系数通过提前设定的一个方式(之字形,或对角线方向的光栅扫描)进行扫描,对于按CAVLC编码的情况,按与所述方式不同的方式进行扫描。
例如,在扫描方式为帧间的情况下,在之字形、帧内的情况下,根据帧内预测模式确定,系数扫描方式也可以根据转换单位的尺寸而作不同确定。
另外,所述扫描图案根据方向性帧内预测模式不同,量子化系数的扫描顺序逆向扫描。
多路复用器167将通过所述运动信息编码部163编码的运动信息和通过所述残差区块编码部166编码的残差信号多样化。
所述运动信息根据编码模式不同,例如,在为跳跃或归并的情况下,仅包含显示预测标识符的索引,对于为AMVP的情况,包含当前区块的参照图片索引、差分运动矢量及AMVP索引。
下面,对图1显示的帧内预测部150的动作的一实施例进行具体说明。
首先,帧内预测部150从图片分割部110接收预测模式信息及预测单元(PU)的尺寸,为了确定预测单元(PU)的帧内预测模式而从图片存储部180读取参照像素。
帧内预测部150检验是否存在未能利用的参照像素而判断参照像素生成与否,所述参照像素在确定当前区块的帧内预测模式时使用。
在当前区块处于当前图片的上侧边界的情况下,未定义与当前区块的上侧邻接的像素,在当前区块处于当前图片的左侧边界的情况下,未定义与当前区块的左侧邻接的像素,所述像素被判断为并非能够利用的像素。
并且,当前区块处于切片边界而与切片的上侧或左侧邻接的像素并非为首先进行编码而恢复的像素的情况下,也能够判断为并非能够利用的像素。
如上所述,不存在与当前区块的左侧或上侧邻接的像素,或不存在编码而恢复的像素的情况,仅利用能够使用的像素也能够确定当前区块的帧内预测模式。
另外,也能够利用能够使用当前区块的参照像素而生成不能利用的位置的参照像素,例如,对于未能利用上侧区块的像素的情况,利用左侧像素的一部分或全部而生成上侧像素,相反也可以。
即,从不能够利用的位置的参照像素复制最接近提前设定的方向位置的能够利用的参照像素而生成参照像素,或对于不存在能够使用于提前设定的方向的参照像素的情况,复制相反方向的最接近位置的参照像素,而生成参照像素。
另外,在存在当前区块的上侧或左侧像素的情况下,根据所述区块所属的编码模式而确定为不能利用的参照像素。
例如,对于与当前区块的上侧邻接的参照像素所属的区块为进行帧间编码而恢复的区块的情况,判断为不能利用所述像素的像素。
对于该情况,与当前区块邻接的区块进行帧内编码而利用恢复的区块所属的像素而生成能够利用的参照像素,编码装置10将根据编码模式而判断能够利用的参照像素的信息传送至解码装置20。
帧内预测部150利用所述参照像素而确定当前区块的帧内预测模式,当前区块可容许的帧内预测模式的数量根据区块的尺寸而不同。
例如,在当前区块的尺寸为8x8、16x16、32x32的情况下,存在34个帧内预测模式,在当前区块的尺寸为4x4的情况下,存在17个帧内预测模式。
所述34个或17个帧内预测模式由至少一个非方向性模式(非directional模式)和多个方向性模式(directional模式)构成。
一个以上非方向性模式为DC模式及/或平面(planar)模式。DC模式及平面模式包含作为非方向性模式的情况下,在与当前区块的尺寸无关的情况下,也存在35个帧内预测模式。
对于该情况,包含两个非方向性模式(DC模式及平面模式)和33个方向性模式。
对于平面模式,利用处于当前区块的右下侧(bottom-right)的至少一个像素值(或所述像素值的预测值,以下称为第一参照值)和参照像素而生成当前区块的预测区块。
本发明的一实施例的影像解码装置的结构由参照图1至图6而说明的影像编码装置10的结构得出,例如,逆向执行参照图1至图6说明的影像编码方法的过程而对影像进行解码。
图7为显示本发明的一实施例的视频解码装置的结构的框图,解码装置20包括:熵解码部210、逆量子化/逆转换部220、加法器270、后期处理部250、图片存储部260、帧内预测部230、运动补偿预测部240及帧内/帧间转换开关280。
熵解码部210接收所输入的在影像编码装置10进行编码的比特流而进行解码,分离为帧内预测模式索引、运动信息、量子化系数序列等,将解码的运动信息传输至运动补偿预测部240。
熵解码部210将帧内预测模式索引传输至帧内预测部230和逆量子化/逆转换部220,将逆量子化系数序列传输至逆量子化/逆转换部220。
逆量子化/逆转换部220将所述量子化系数序列转换为二维排列的逆量子化系数,为了所述转换而选择多个扫描图案中的一个,例如基于当前区块的预测模式(即,帧内预测或帧间预测)和帧内预测模式而选择扫描图案。
逆量子化/逆转换部220对于二维排列的逆量子化系数而适用在多个量子化矩阵中选择的量子化矩阵而恢复量子化系数。
另外,根据要恢复的当前区块的尺寸而适用相互不同的量子化矩阵,对于相同尺寸的区块,基于所述当前区块的预测模式及帧内预测模式中的至少一个而选择量子化矩阵。
逆量子化/逆转换部220逆转换所述恢复的量子化系数而恢复残差区块,所述逆转换过程以转换单元(TU)为基本单位执行。
加法器270合并通过逆量子化/逆转换部220恢复的残差区块和通过帧内预测部230或运动补偿预测部240生成的预测区块而恢复视频区块。
后期处理部250在通过加法器270而生成的恢复视频执行后期处理,根据滤波等而减少因量子化过程而造成的影像损失而导致的去块制品等。
图片存储部260为用于存储通过后期处理部250而执行滤波后期处理的本地解码影像的帧存储器。
帧内预测部230基于从熵解码部210接收的帧内预测模式索引而恢复当前区块的帧内预测模式,根据所恢复的帧内预测模式而生成预测区块。
运动补偿预测部240基于运动矢量信息而从存储于图片存储部260的图片生成当前区块的预测区块,对于适用少数精密度的运动补偿的情况,适用所选择的插值滤波器而生成预测区块。
帧内/帧间转换开关280基于编码模式而将在帧内预测部230和运动补偿预测部240的任一个生成的预测区块提供至加法器270。
图8为在视频解码装置20执行帧间预测的结构的一实施例的框图,帧间预测解码器包括:多路复用器241、运动信息编码模式判断部242、归并模式运动信息解码部243、AMVP模式运动信息解码部244、选择模式运动信息解码部248、预测区块生成部245、残差区块解码部246及恢复区块生成部247。
参照图8,多路复用器241对从所接收的比特流对当前编码的运动信息和编码的残差信号进行逆多重化,将逆多重化的运动信息传送至运动信息编码模式判断部242,将逆多重化的残差信号传送至残差区块解码部246。
运动信息编码模式判断部242判断当前区块的运动信息编码模式,对于所接收的比特流的跳跃标记(skip_flag)为具有1值的情况,判断当前区块的运动信息编码模式按跳跃编码模式进行编码。
运动信息编码模式判断部242对于具有所接收的比特流的跳跃标记为0值,对于从多路复用器241接收的运动信息仅具有归并索引的情况,判断当前区块的运动信息编码模式按归并模式进行编码。
并且,运动信息编码模式判断部242对于具有所接收的比特流的跳跃标记具有0值,并且从多路复用器241接收的运动信息具有参照图片索引和差分运动矢量和AMVP索引的情况,判断当前区块的运动信息编码模式按AMVP模式进行编码。
归并模式运动信息解码部243在运动信息编码模式判断部242将当前区块的运动信息编码模式判断为跳跃或归并模式的情况下激活,AMVP模式运动信息解码部244在运动信息编码模式判断部242将当前区块的运动信息编码模式判断为AMVP模式的情况下激活。
选择模式运动信息解码部248除了按上述AMVP模式、归并模式、跳跃模式之外的其它运动补偿预测模式中选择的预测模式对运动信息进行解码处理。选择预测模式对比AMVP模式而包含更精密的运动预测模式,根据提前确定的条件(例如,区块尺寸及区块分割信息、信令信息存在、区块位置等)而适应性确定区块。选择预测模式包括:例如,FRUC(帧速率上转换,FRAME RATE UP-CONVERSION)模式,BIO(双向光流,BI-DIRECTIONAL OPTICALFLOW)模式、AMP(仿射运动预测,AFFINE MOTION PREDICTION)模式、OBMC(重叠块运动补偿,OVERLAPPED BLOCK MOTION COMPENSATION)模式、DMVR(解码端运动矢量修正,DECODER-SIDE MOTION VECTOR REFINEMENT)模式、ATMVP(可选时域运动矢量预测,Alternativetemporal motion vector prediction)模式、STMVP(空时运动矢量预测,Spatial-temporal motion vector prediction)模式、LIC(局部光补偿,Local IlluminationCompensation)模式中的至少一个。
预测区块生成部245利用通过归并模式运动信息解码部243或AMVP模式运动信息解码部244而恢复的运动信息而生成当前区块的预测区块。
对于运动矢量为整数单位的情况,复制与显示参照图片索引显示的图片内的运动矢量的位置对应的区块而生成当前区块的预测区块。
另外,对于运动矢量并非为整数单位的情况,从显示参照图片索引的图片内的整数单位像素生成预测区块的像素,该情况,在亮度像素的情况下,使用8阶的插值滤波器,对于色差像素的情况,使用4阶插值滤波器而生成预测像素。
残差区块解码部246对残差信号进行熵解码,将熵解码的系数进行反向扫描,生成二维量子化的计数区块,反向扫描方式根据熵解码方式而不同。
例如,对于通过基于植基于环境的可适性二叉算数编码(CABAC)进行解码的情况,在通过对角线方向的光栅反向扫描方式,在按基于自适应变长编码(CAVLC)解码的情况下,按之字形反向扫描方式适用所述反向扫描方式。并且,也能够根据预测区块的尺寸而不同确定所述反向扫描方式。
残差区块解码部246利用逆量子化矩阵而对如上所述生成的计数区块进行逆量子化,为了引导所述量子化矩阵,恢复量子化参数。在此,量子化步伐尺寸按提前设定的尺寸以上的编码单元恢复。
残差区块解码部260对所述逆量子化的计数区块进行逆转换而恢复残差区块。
恢复区块生成部270将通过所述预测区块生成部250生成的预测区块和通过所述残差区块解码部260生成的残差区块相加而生成恢复区块。
下面,再次参照图7对通过帧内预测恢复当前区块的过程的一实施例进行说明。
首先,从所接收的比特流对当前区块的帧内预测模式进行解码,为此,熵解码部210参照多个帧内预测模式表中一个而对当前区块的第一帧内预测模式索引进行恢复。
所述多个帧内预测模式表为编码装置10和解码装置20共享的表,适用根据与当前区块邻接的多个区块的帧内预测模式的分布而选择的任一个表。
例如,在当前区块的左侧区块的帧内预测模式和当前区块的上侧区块的帧内预测模式相同的情况下,适用第一帧内预测模式表而恢复当前区块的第一帧内预测模式索引,在不同的情况下,适用第二帧内预测模式表而恢复当前区块的第一帧内预测模式索引。
通过又一例,对于当前区块的上侧区块和左侧区块的帧内预测模式为所有方向性预测模式(directional intra prediction模式)的情况,所述上侧区块的帧内预测模式的方向和所述左侧区块的帧内预测模式的方向在规定角度以内的情况下,适用第一帧内预测模式表而恢复当前区块的第一帧内预测模式索引,在不脱离规定角度的情况下,适用第二帧内预测模式表而恢复当前区块的第一帧内预测模式索引。
熵解码部210将所恢复的当前区块的第一帧内预测模式索引传送至帧内预测部230。
从第一帧内预测模式接收索引的帧内预测部230对于所述索引具有最小值的情况(即,为0的情况),将当前区块的最大可能模式确定为当前区块的帧内预测模式。
另外,帧内预测部230对于所述索引具有0之外的值的情况,对比显示当前区块的最大可能模式的索引和所述第一帧内预测模式索引,对比结果在所述第一帧内预测模式索引不小于所述当前区块的最大可能模式显示的索引的情况下,将与在所述第一帧内预测模式索引加1的第二帧内预测模式索引对应的帧内预测模式确定为当前区块的帧内预测模式,否则将与所述第一帧内预测模式索引对应的帧内预测模式确定为当前区块的帧内预测模式。
当前区块可容许的帧内预测模式由至少一个以上非方向性模式(非directional模式)和多个方向性模式(directional模式)构成。
一个以上非方向性模式为DC模式及/或平面(planar)模式。并且,DC模式和平面模式中的任一个适应性地包含在所所述可容许的帧内预测模式集。
为此,在图片标题或切片标题包含在所述可容许的帧内预测模式集包含的对非方向性模式进行特定的信息。
下面,帧内预测部230为了生成帧内预测区块,从图片存储部260读取参照像素,并判断是否存在未能利用的参照像素。
所述判断也能够适用当前区块的解码的帧内预测模式而根据生成帧内预测区块时利用的参照像素的存在与否执行。
下面,帧内预测部230在需要生成参照像素的情况下,利用提前恢复的能够利用的参照像素而生成不可利用的位置的参照像素。
不可利用的参照像素的定义及参照像素的生成方法与图1的帧内预测部150动作相同,但也能够根据当前区块的解码的帧内预测模式而选择性恢复在生成帧内预测区块时使用的参照像素。
并且,帧内预测部230判断为了生成预测区块而在参照像素是否适用滤波器,即基于所述解码的帧内预测模式及当前预测区块的尺寸而确定为了生成当前区块的帧内预测区块而对参照像素是否适用滤波。
去块制品的问题因区块的尺寸越大而变大,由此,区块的尺寸越大而增加对参照像素进行滤波的预测模式的数量,但对于区块比规定尺寸大的情况,可以视为平坦的区域,由此,为了减少复杂度,也可以不滤波参照像素。
对于判断在所述参照像素需要适用滤波器的情况,帧内预测部230利用滤波器而对所参照像素进行滤波。
也能够根据所述参照像素之间的阶梯差的差异程度而适应性适用至少两个滤波器。优选地,所述滤波器的滤波器系数为对称的。
并且,所述两个以上滤波器也能够根据当前区块的尺寸而适应性适用,对于适用滤波器的情况,对于尺寸较小的区块,适用带宽窄的滤波器,对于尺寸较大的区块,也能够适用带宽较宽的滤波器。
在DC模式的情况下,按参照像素的平均值生成预测区块,由此,无需适用滤波器,在按不同垂直方向具有关联性(correlation)的垂直模式下,在参照像素无需适用滤波器,在影像在按水平方向存在关联性的水平模式下,在参照像素无需适用滤波器。
由此,滤波的适用与否与当前区块的帧内预测模式存在关联性,由此,基于当前区块的帧内预测模式及预测区块的尺寸而对参照像素进行适应性滤波。
下面,帧内预测部230根据所述恢复的帧内预测模式而利用参照像素或滤波的参照像素生成预测区块,所述预测区块的生成与编码装置10的动作相同,由此,省略对其具体说明。
帧内预测部230判断对所述生成的预测区块进行滤波与否,所述滤波与否利用包含在切片标题或编码单元标题的信息或根据当前区块的帧内预测模式确定。
对于判断为对所述生成的预测区块进行滤波的情况,帧内预测部230利用与当前区块邻接的可利用的参照像素而对所生成的预测区块的特定位置的像素滤波而生成新的像素。
例如,在DC模式中,与预测像素中的参照像素接触的预测像素利用与所述预测像素接触的参照像素进行滤波。
因此,根据预测像素的位置,利用一个或两个参照像素而对预测像素进行滤波,在DC模式的预测像素的滤波适用于所有尺寸的预测区块。
另外,在垂直模式中,预测区块的预测像素中的与左侧参照像素接触的预测像素利用在生成所述预测区块时利用的上侧像素之外的参照像素变更。
同样地,在水平模式中生成的预测像素中的与上侧参照像素接触的预测像素利用除在生成所述预测区块时利用的左侧像素之外的参照像素变更。
利用通过如上所述方式恢复的当前区块的预测区块和解码的当前区块的残差区块而恢复当前区块。
图9为用于说明将影像按区块单位分割而处理的方法的第二实施例的图。
参照图9,具有最大256x256像素尺寸的编码树单元(CTU)首先分为四叉树(quadtree)结构,分割为具有正方形的形状的四个编码单元(CU)。
在此,分割为所述四叉树结构的编码单元中的至少一个分为二叉树(binarytree)结构,再次分割为具有长方形的形状的两个编码单元(CU)。
另外,分割为所述四叉树结构的编码单元中的至少一个被分为四叉树结构,也可以再次分割为具有正方形的形状的四个编码单元(CU)。
并且,再次分割为所述二叉树结构的编码单元中的至少一个被再次分为二叉树结构,分割为具有正方形或长方形的形状的两个编码单元(CU)。
另外,再次分割为四叉树结构的编码单元中的至少一个再次分为四叉树结构或二叉树结构,也可以分割为具有正方形或长方形的形状的编码单元(CU)。
如上所述,分割为二叉树结构而构成的编码单元不能进一步分割,并用于预测及转换。此时,二进制分割的编码单元包括实际执行编码/解码的区块单位即编码区块(Coding block:CB)和与相应编码区块对应的句法。即,如图9显示所示的编码区块(CB)所属的预测单元(PU)和转换单元(TU)的尺寸与相应编码区块(CB)的尺寸相同。
如上所述,分割为四叉树结构的编码单元利用参照图3及图4而说明所示的方法而分割为一个或两个以上预测单元(PU)。
并且,如上所述,分割为四叉树结构的编码单元利用参照图5说明所示的方法而分割为一个或两个以上转换单元(TU),所述分割的转换单元(TU)最大具有64x64像素尺寸。
图10为显示为了将影像分割为区块单位而处理使用的句法(syntax)结构的一实施例的图。
参照图10及图9,本发明的实施例的区块结构(block structure)通过显示四叉树分割与否的split_cu_flag和显示二叉树分割与否的binary_split_flag确定。
例如,如上说明所示的编码单元(CU)的分割与否利用split_cu_flag显示。并且,与四叉树分割之后二进制分割的编码单元对应,确定显示二进制分割与否的binary_split_flag及显示所分割的方向的句法。此时,作为显示二进制分割的方向性的方法,如binary_split_hor和binary_split_ver所示,对多个句法进行解码而如确定基于此的分割方向的方法或binary_split_mode所示,而对一个句法和对应的信号值进行解码,例示处理按水平(Horizontal)(0)或垂直(Vertical)(1)方向的分割处理的方法。
作为本发明的又一实施例,使用二叉树而分割的编码单元(CU)的深度利用二叉树深度(binary_depth)显示。
对于通过参照图9及图10说明的方法而分割的区块(例如,编码单元(CU)、预测单元(PU)及转换单元(TU))而适用参照图1至图8而说明所示的方法,执行对影像的编码及解码。
下面,参照图11至图16,对将编码单元(CU)分割为一个或两个以上转换单元(TU)的方法的又一实施例进行说明。
根据本发明的实施例,编码单元(CU)被分为二叉树结构,而分割为执行残差区块的转换的基本单位即转换单元(TU)。
例如,参照图11,分割为二叉树结构而具有Nx2N或2NxN的尺寸的长方形的编码区块(CU0、Cu1)中的至少一个被再次分为二叉树结构,而分割为具有NxN的尺寸的正方形的转换单元(TU0、TU1)。
如上所述,基于区块的影像编码方法执行预测、转换、量子化及熵编码步骤。
在所述预测步骤中,参照执行当前编码的区块和现有的编码的影像或周边影像而生成预测信号,由此,计算与当前区块的差分信号。
另外,在转换步骤中,输入所述差分信号而利用各种转换函数执行转换,所述转换的信号进行按DC系数和AC系数分类的能源集中(Energy compaction)而提高编码效率。
并且,在量子化步骤中,通过输入转换系数(Transform coefficient)而执行量子化,之后对于量子化的信号而执行熵编码,由此,对影像进行编码。
另外,影像解码方法按如上所述的编码过程逆顺序进行,在量子化步骤发生影像的画质歪曲现状。
作为提高编码效率并减少画质歪曲现状的方法,根据在转换步骤中输入的差分信号的分布及影像的特征而转换单元(TU)的尺寸或形状和适用的转换函数种类变得多样化。
例如,在预测步骤中,对于通过基于区块运动推定过程而查找与当前区块相似的区块的情况,利用SAD(绝对差值和,Sumof Absolute Difference)或MSE(均方误差,MeanSquare error)等代价(cost)测定方法,差分信号的分布根据影像的特性而生成为各种形式。
由此,基于各种差分信号的分布而选择性确定转换单元(CU)的尺寸或形状而执行转换,由此,执行有效的编码。
参照图12,在任意的编码单元(CUx)中,如图12的(a)显示所示发生差分信号的情况,如图12的(b)显示所示,将相应编码单元(CUx)分为二叉树结构而分割为两个转换单元(TU),由此,执行有效的转换。
例如,DC值是指一般显示输入信号的平均值,由此,如图12的(a)显示所示的差分信号通过转换过程的输入而接收的情况,将编码单元(CUx)分割为两个转换单元(TU),由此,有效地显示DC值。
参照图13,具有2Nx2N的尺寸的正方形的编码单元(CU0)分为二叉树结构,分割为具有Nx2N或2NxN的尺寸的长方形的转换单元(TU0、TU1)。
根据本发明的又一实施例,如上所述,反复执行两次以上将编码单元(CU)分割为二叉树结构的步骤,而分割为多个转换单元(TU)。
参照图14,将具有Nx2N的尺寸的长方形的编码区块(CB1)分割为二叉树结构,将具有所述分割的NxN的尺寸的区块再次分割为二叉树结构,而构成具有N/2xN或NxN/2的尺寸的长方形的区块,之后,将具有所述N/2xN或NxN/2的尺寸的区块再次分割为二叉树结构,分割为具有N/2xN/2的尺寸的正方形的转换单元(TU1、TU2、TU4、TU5)。
参照图15,将具有2Nx2N的尺寸的正方形的编码单元(CU0)分割为二叉树结构,将具有所述分割的Nx2N的尺寸的区块再次分割为二叉树结构而构成具有NxN的尺寸的正方形的区块,之后,将具有所述NxN的尺寸的区块再次分割为二叉树结构,而分割为具有N/2xN的尺寸的长方形的转换单元(TU1、TU2)。
参照图16,将具有2NxN的尺寸的长方形的编码单元(CU0)分割为二叉树结构,将具有所述分割的NxN的尺寸的区块再次分割为四叉树结构而分割为具有N/2xN/2的尺寸的正方形的转换单元(TU1、TU2、TU3、TU4)。
对通过参照图11至图16说明的方法而分割的区块(例如,编码单元(CU)、预测单元(PU)及转换单元(TU))而适用参照图1至图8说明所示的方法,由此,执行对影像的编码及解码。
下面,对本发明的编码装置10确定区块分割结构的方法的实施例进行说明。
设置在影像编码装置10的图片分割部110根据提前设定的顺序而执行RDO(Ratedistortion Optimization),如上所述确定能够分割的编码单元(CU)、预测单元(PU)及转换单元(TU)的分割结构。
例如,为了确定区块分割结构,图片分割部110执行RDO-Q(率失真优化量化,Ratedistortion Optimization-Quantization),并在比特率(bitrate)和歪曲(distortion)侧面确定最优的区块分割结构。
参照图17,对于编码单元(CU)具有2Nx2N像素尺寸的形状的情况,按图17的(a)显示的2Nx2N像素尺寸、(b)显示的NxN像素尺寸、图17的(c)显示的Nx2N像素尺寸、图17的(d)显示的2NxN像素尺寸的转换单元(PU)分割结构顺序执行RDO而确定转换单元(PU)的最优分割结构。
参照图18,对于编码单元(CU)具有Nx2N或2NxN像素尺寸的形式的情况,按图18的(a)显示的Nx2N(或,2NxN)的像素尺寸、图18的(b)显示的NxN的像素尺寸、图18的(c)显示的N/2xN(或NxN/2)和NxN的像素尺寸、图18的(d)显示的N/2xN/2、N/2xN及NxN的像素尺寸、图18的(e)显示的N/2xN的像素尺寸的转换单元(PU)分割结构顺序执行RDO而确定转换单元(PU)的最优分割结构。
所述中,以执行RDO(Rate distortion Optimization)而确定区块分割结构为例对本发明的区块分割方法进行了说明,但图片分割部110利用SAD(绝对差值求和,SumofAbsolute difference)或MSE(均方误差,Mean Square Error)而确定区块分割结构而减少复杂度,并保持适当的效率。
根据本发明的一实施例,按如上所述分割的编码单元(CU)、预测单元(PU)或转换单元(TU)单位确定自适应环路滤波(Adaptive Loof Filtering:ALF)的适用与否。
例如,自适应环路滤波(ALF)的适用与否通过编码单元(CU)单位确定,根据编码单元(CU)而适用的环路滤波器的尺寸或系数不同。
对于该情况,显示编码单元(CU)各个所述自适应环路滤波(ALF)的适用与否的信息包含于切片标题。
对于色差信号的情况,也能够按图片单位确定自适应环路滤波(ALF)的适用与否,环路滤波器的形状与亮度不同,可以呈长方形。
并且,所述自适应环路滤波(ALF)按切片确定适用与否。因此,显示在当前切片是否适用自适应环路滤波(ALF)与否的信息包含于切片标题或图片。
在当前切片适用自适应环路滤波的情况下,切片标题或图片标题另外包含在自适应环路滤波过程使用的亮度成分的水平及/或垂直方向的滤波器长度的信息。
切片标题或图片标题包含显示滤波器组件的数量的信息,对于滤波器组件的数量为2以上的情况,滤波器系数可以使用预测方法而进行编码。
因此,切片标题或图片标题包括显示滤波器系数是否通过预测方法进行编码的信息,在使用预测方法的情况下包含所预测的滤波器系数。
另外,不仅亮度,色差成分也进行适应性滤波,对于该情况,显示是否滤波各个色差成分的信息包含在切片标题或图片标题,为了减少字节数而与显示对Cr和Cb的滤波与否的信息一起进行联合编码(即,多重编码)。
此时,在色差成分的情况下,为了减少复杂度,对于未全部滤波Cr和Cb的情况,最频繁的可能性高,因此,在未全部滤波Cr和Cb的情况下,分配最小的索引而执行熵编码。
并且,在对Cr及Cb全部滤波的情况下,分配最大的索引而执行熵编码。
图19至图29为用于说明本发明的另一实施例的复合分割结构的图。
例如,参照图19,编码单元(CU)根据分割为二叉树结构,显示分割为图19的(A)的横向长度W比纵向长度H长的形状的长方形和如图19的(B)所示纵向长度H比横向长度W长的形状的长方形的编码单元(CU)的形状。由此,对于特定方向的长度较长的编码单元的情况,与中间区域对比而边缘左右或上下边界区域相对地编码信息集中的可能性高。
因此,为了进行更精密且有效率性的编码及解码,本发明的实施例的编码装置10通过四叉树及二叉树分割,按将特定方向长度较长分割的编码单元的边缘区域容易分割的三叉树(ternary tree)或三分树(triple tree)结构分割编码单元。
例如,图19的(A)对于分割对象编码单元为进行水平分割的编码单元的情况,显示按横向W/8、纵向H/4长度即左侧边缘的第一区域、按横向W/8*6、纵向H/4长度,中间区域即第二区域和横向W/8、纵向H/4长度的右侧边缘的第三区域进行三进制分割。
并且,图19的(B)显示对于分割对象编码单元为进行垂直分割的编码单元的情况,按横向W/4、纵向H/8长度即上端边缘的第一区域和横向W/4、纵向H/8*6长度,中间区域即第二区域及横向W/4、纵向H/8长度的下端边缘的第三区域分割。
并且,本发明的实施例的编码装置10通过图片分割部110而处理该三叉树结构的分割。为此,图片分割部110将上述的四叉树及二叉树结构的分割根据编码效率确定,而且,一起基于三叉树结构而重新确定细划分的分割方式。
在此,三叉树结构的分割在不受其它限制的对所有编码单元进行处理。但如上所述,优选地,基于编码及解码效率,仅对特定条件的编码单元而允许用三叉树结构。
并且,优选地,三叉树结构需要对编码树单元的各种方式的三进制分割,但基于编码及解码复杂度及信令的传送带宽,仅允许用最优的规定的形状。
因此,图片分割部110在确定当前编码单元的分割时,当前编码单元仅在对于提前设定条件的情况下,判断及确定特定形状的三叉树结构的分割与否。并且,根据允许如上所述的三叉树,二叉树的分割比例并非仅为1:1而使扩展及改变为3:1、1:3等。因此,本发明的实施例的编码单元的分割结构包括根据比例而细化分割为四叉树、二叉树或三叉树的复合树结构。
例如,图片分割部110基于所述分割表,而确定分割对象编码单元的复合分割结构。
根据本发明的实施例,图片分割部110与区块的最大尺寸(例如,基于像素128x128、256x256等)对应而处理四叉树分割,执行处理与四叉树分割的终端节点对应的二叉树结构及三叉树结构分割中的至少一个复合分割处理。
尤其,根据本发明的实施例,图片分割部110确定根据分割表而与当前区块的特性及尺寸对应的二叉树分割即第一二进制分割(BINARY1)、第二二进制分割(BINARY2)、三叉树分割即第一三进制分割(TRI1)或第二三进制分割(TRI2)中的任一个分割结构。
在此,第一二进制分割与具有N:N的比例的垂直或水平分割对应,第二二进制分割与具有3N:N或N:3N的比例的垂直或水平分割对应,各个二进制分割的root(权限)CU分割为在分割表显示的各个尺寸的CU0及CU1。
另外,第一三进制分割与具有N:2N:N的比例的垂直或水平分割对应,第二三进制分割与具有N:6N:N的比例的垂直或水平分割对应,各个三进制分割的root CU被分割为分割表显示的各个尺寸的CU0、CU1及CU2。
但,本发明的实施例的图片分割部110分别设定用于适用所述第一二进制分割、第二二进制分割、第一三进制分割或第二三进制分割的最大编码单元尺寸及最小编码单元尺寸。
其执行具有与最小尺寸,例如与2以下的横向或纵向像素的区块对应的编码及解码处理的情况因在复杂度侧面为非效率性的,因此,本发明的实施例的分割表提前定义按各个编码单元的尺寸可容许的分割结构。
由此,图片分割部110提前防止最小尺寸,例如不足4的尺寸,按横向或纵向像素尺寸为2的情况分割的情况,为此,从分割对象区块的尺寸而提前判断与第一二进制分割、第二二进制分割、第一三进制分割或第二三进制分割对应的容许与否,对比处理与可容许的分割结构对应的率失真优化性能验算,而确定最优的分割结构。
例如,对于最大尺寸的权限编码单元CU0进行二进制分割的情况,二进制分割结构被分割为构成1:1、3:1或1:3垂直分割中的任一个结构的CU0、CU1,三进制分割结构被分割为构成1:2:1或1:6:1垂直分割中的任一个结构的CU0、CU1及CU2。
根据分割对象编码单元的尺寸,限制性确定可容许的垂直分割结构。例如,64X64编码单元及32X32编码单元的垂直分割结构全部容许第一二进制分割、第二二进制分割、第一三进制分割及第二三进制分割,但16X16编码单元的垂直分割结构中的第二三进制分割限制为不可能的。并且,8X8编码单元的垂直分割结构也能够容许限制第一二进制分割。由此,提前防止因引起复杂性的最小尺寸的区块的分割。
同样地,对于最大尺寸的权限编码单元CU0为二进制分割的情况,二进制分割结构被分割为构成1:1、3:1或1:3水平分割中的任一个结构CU0、CU1,三进制分割结构被分割为构成1:2:1或1:6:1水平分割中的任一个结构的CU0、CU1及CU2。
根据分割对象编码单元的尺寸,限制性确定可容许的水平分割结构。例如,64X64编码单元及32X32编码单元的水平分割结构全部容许第一二进制分割、第二二进制分割、第一三进制分割及第二三进制分割,但16X16编码单元的水平分割结构中第二三进制分割被限制为不可能的。并且,8X8编码单元的水平分割结构也能够限制性仅容许第一二进制分割。由此,提前防止引起复杂性的不足最小尺寸的区块的分割。
另外,图片分割部110根据分割表,将垂直分割的编码单元按第一二进制分割或第二二进制分割进行水平分隔处理,或按第一三进制分割或第二三进制分割进行水平分割处理。
例如,对于按32X64进行垂直分割的编码单元,图片分割部110根据第一二进制分割而分割为32X32的CU0、CU1或根据第二二进制分割而分割为32X48、32X16的C0、CU1或根据第一三进制分割而分割为32X32、32X16、32X16的CU0、CU1、CU2,或根据第二三进制分割而分割为32X8、64X48、32X8的CU0、CU1、CU2。
并且,图片分割部110将水平分割的编码单元按第一二进制分割或第二二进制分割进行垂直分割处理或按第一三进制分割或第二三进制分割进行垂直分割处理。
例如,与按32X16水平分割的编码单元对应,图片分割部110根据第一二进制分割而分割为16X16的CU0、CU1,或根据第二二进制分割而分割为24X16 8X16的C0、CU1,或根据第一三进制分割而分割为8X16、16X16、8X16的CU0、CU1、CU2,或根据第二三进制分割而分割为4X16、24X16、4X16的CU0、CU1、CU2。
该分割容许结构按CTU的尺寸、CTU组单位及切片单位、垂直及水平方向不同地通过条件部确定,第一二进制分割、第二二进制分割、第一三进制分割及第二三进制分割处理的情况的各个CU分割比例及确定尺寸信息通过分割表定义或条件信息提前设定。
另外,分割对象编码单元作为均等的水平或垂直分割而分割。但均等分割在高的预测值集中的区域仅在一部分边界区域存在等情况时,为非效率性的预测方法。由此,本发明的实施例的图片分割部110根据图20(C)显示的一定比例而通过条件部容许非均等分割的非均等分割。
例如,对于二叉均等分割为Binary(二进制):1:1的情况,非均等分割如Asymmetric Binary(非对称二进制):(1/3、2/3)、(1/4、3/4)、(2/5、3/5)、(3/8、5/8)、(1/5、4/5)所示确定其比例。例如,对于三叉均等分割为1:2:1的情况,非均等分割如1:6:1所示可变地确定其比例。
另外,本发明的实施例的图片分割部110基本按包含预测单位即编码单元的多个编码树单元(Coding Tree Unit:CTU)分割图片,多个编码树单元构成瓦片单位或切片单位。例如,一个图片分割为长方形区域即多个瓦片,图片分割为按一个以上纵列分割的瓦片,或分割为按一个以上横列分割的瓦片分割,或也能够分割为按一个以上纵列及一个以上横列分割的瓦片。图片也能够以图片内横列及纵列的长度为基准分割为均等相同的尺寸的瓦片,也可以分割为相异尺寸的瓦片。
一般而言,根据HEVC等标准句法,对于分割为瓦片或切片的区域的情况,为了能够与其它瓦片或切片独立的处理,作为该标题信息而分配及编码高级别句法。通过该高级别句法,能够按瓦片或切片进行并行处理。
但,当前的瓦片或切片编码方式仅依存编码装置中的编码条件,但存在未考虑解码装置的性能及环境的问题。例如,解码装置的进程或线程的数量即使为比编码装置多的情况,也发生无法运用其性能的问题。
尤其,对于要求基于最近问世的360度虚拟现实影像等超高分辨率及用户视点跟踪的部分解码处理的当前影像,该单向分割结构及标题确定程序依赖编码装置,最终存在引起整体编码及解码性能低下的问题。
根据用于解决该问题的本发明的实施例,图片分割部110按如上所示将分割图片的多个瓦片区分为在瓦片或瓦片组内确定的独立瓦片或依存瓦片,与其它瓦片独立或依存编码及解码的各个瓦片分配属性信息而构成与此对应的标题信息。
而且,本发明的实施例的图片分割部110根据瓦片的位置及属性,将所述图片分割为多个瓦片连续排列形成的瓦片组或子图,对包含在各个瓦片组或子图组的各个子图对应的构成信息进行编码而传输至解码装置20,由此,能够进行包含在与瓦片组对应的瓦片或子图的瓦片的独立或依存的处理。
因此,所述瓦片组或子图未通过该名称限制,该实质意义分割图片而形成,显示由瓦片或切片构成的一个以上长方形区域。因此,本发明的实施例的分割区域主要以瓦片组的名称进行说明,但其为分割图片的长方形区域,也能够称为包含一个以上瓦片或切片的子图(sub Picture)区域。也能够根据对包含所述子图的子图组的构成信息的信令确定各个子图的独立或依存处理。因此,与下面说明的瓦片组对应的技术结构对于子图而同样适用。
在此,独立是指与分割包含帧内预测、帧间预测、转换、量子化、熵及滤波器的编码及解码过程的其它瓦片、瓦片组或子图无关,执行作为独立图片的处理。但并非是指对于各个瓦片完全独立执行所有编码及解码过程,也能够在帧间预测或环路滤波时选择利用不同的瓦片的信息而进行编码及解码。
并且,依存是指在包含帧内预测、帧间预测、转换、量子化、熵及滤波器的编码及解码过程时,需要其它瓦片的编码或解码信息的情况。但并非是指对各个瓦片完全依存执行所有编码及解码过程,能够在一部分程序的情况下,处理独立的编码及解码。
并且,如上所示,所述瓦片组显示连续排列所述图片而形成的所述图片内特定区域,本发明的实施例的图片分割部110执行编码条件的瓦片组结构及瓦片组信息的生成处理,瓦片组信息能够进行解码装置20中的环境及性能的更有效率性的并行解码处理。
并且,如上所示,所述瓦片组与分割图片的子图对应,对于该情况,所述瓦片组信息包括与子图或子图组对应的子图组构成信息。
对此,首先对在图片分割部110中进行处理及确定的瓦片组信息进行说明。
图20为用于说明本发明的实施例的瓦片组信息的编码进程的流程图。
参照图20,本发明的实施例的编码装置10通过图片分割部110而将图片分割为多个瓦片区域(S1001),根据所分割的瓦片的编码特性信息而构成一个以上瓦片组或子图(S1003)。
并且,编码装置10通过图片分割部110而生成与各个瓦片组对应的瓦片组信息或子图信息(S1005),对所生成的瓦片组信息或子图信息进行编码(S1007),而传输至解码装置20。
在此,瓦片组信息或子图信息按各个瓦片组或子图例示标题信息,标题信息为高级别句法的形式,包含于被编码的影像比特流的图片标题信息。并且,所述标题信息为高级别句法的又一形式,也能够包含在编码的影像比特流的补充增强信息(Supplementalenhancement information,SEI)信息而传送。
更具体地,本发明的实施例的瓦片组或子图信息按各个瓦片组或子图包含识别信息,各个瓦片组或子图包括能够有效进行局部或独立的并行解码处理的影像构成信息。
例如,各个瓦片组(或子图)与用户视点(PERSPECTIVE)对应,或分别与360度影像的投影方向对应,或根据特定位置构成,由此,瓦片组(或子图)信息包含各个瓦片组的特性信息、与所述瓦片组内包含的瓦片对应的解码或参照优先顺序信息或并行化的处理可能与否信息,由此,能够在解码装置20中进行可变且有效率性的影像解码处理。
并且,该瓦片组或子图信息根据各个图片所属的图片组(Group Of Picture,GOP)单位而升级及更新,为此根据NAL(网络抽象层,Network abstraction layer)单元的周期而构成瓦片组信息或初始化。
并且,提出级别信息作为本发明的实施例的具体的瓦片组(或子图)信息。级别信息也能够显示各个瓦片组(或子图)内瓦片或与切片不同的瓦片组(或子图)之间编码依存性或独立性,在与根据级别信息分配的值对应的解码装置20中的处理适合性判断中使用。即,如上所示,解码装置20根据性能及环境而执行包含各个瓦片组或子图的并行化步骤的比特流的处理适合性测试程序,根据所述级别信息而按比特流内包含的瓦片组(或子图)的层确定处理适合性。
并且,例如,通过级别信息指示包含于瓦片组(或子图组)的瓦片的数量、CPB尺寸、比特率、瓦片组(或子图组)内独立瓦片(或独立子图)的存在与否或所有瓦片独立与否,或为所有是否依存瓦片等。
例如,对于360度虚拟现实影像的情况,根据影像制作者或内容提供者的意图等而与要求高画质解码的用户视图端口(VIEW PORT)对应的瓦片组或子图组对应,能够确定高级别的级别信息,在该高级别的瓦片组或子图分配第一级别信息。对于该情况,解码装置20根据性能及环境,测试与瓦片组(子图)第一级别信息对应的处理适合性,分配尽可能的最大值的性能,分别独立并行处理相应瓦片组或子图组内部的各个瓦片或子图。
并且,在比第一组级别相对低的级别的瓦片组分配第二组级别信息。对于该情况,解码装置20根据性能及环境,测试与瓦片组(子图)级别信息对应的处理适合性,优先并行处理按能够独立的瓦片指定的瓦片,执行剩余的依存瓦片的处理而执行具有中间值的性能的处理。在此,优先并行处理的独立瓦片为在瓦片组内包含的瓦片中的第一瓦片,归并瓦片为编码及解码程序依存所述第一瓦片的依存瓦片。
另外,在比第二组级别低的级别的瓦片组分配第三组级别信息。对于该情况,解码装置20测试与瓦片组(子图)级别信息对应的处理适合性,利用在其它瓦片组处理的瓦片解码信息,而执行当前瓦片组内依存瓦片的解码处理。
另外,本发明的实施例的级别信息包括指示瓦片组或子图组内瓦片或子图的并行化处理可能性的并行层信息。所述并行层信息包括显示各个瓦片组或子图组内瓦片或子图的并行处理的步骤的最大或最小并行层单位信息。
由此,所述并行层单位信息按所述瓦片组内瓦片与所述并行层单位信息对应的步骤分割为并行层,由瓦片组(子图)构成,显示分别独立并行处理。
例如,按与所述并行层单位信息对应的步骤分割的并行层包含至少一个非依存独立瓦片,解码装置20通过基于所述并行层信息的并行化确定程序而变化确定编码的瓦片组内瓦片的并行解码与否。
在此,所述并行化确定程序基于所述级别信息、所述并行层信息及所述解码装置的环境变量而包含按各个瓦片组确定并行化步骤的程序,环境变量根据解码装置20的系统环境变量、网络变量、用户视点(PERSPECTIVE)变量中的至少一个确定。
由此,解码装置20根据基于瓦片组或子图级别信息的解码装置20的自身适合性判断程序而执行基于环境变量的有效率性的提前解码设置,执行基于此的最优的局部解码及并行解码处理,尤其,按360度影像等用户视点能够提高与超高分辨率合并影像对应的整体的编码及解码性能。
图21至图25用于说明本发明的实施例的瓦片组的例示及瓦片组信息的图。
图21显示根据本发明的实施例而分割为多个瓦片组的分割树结构,图22为分割的瓦片组的示例图。
参照图21,瓦片组信息显示基于树结构的图片内的瓦片组及瓦片构成信息,根据瓦片组信息而任意的图片300由多个瓦片组构成。
为了有效呈现及编码该瓦片组的构成信息,瓦片组信息按二叉树、三叉树或四叉树等树结构包含图片内瓦片组的构成信息。
例如,在树结构中,根据根节点、父节点、子节点而呈现相应构成要素,在瓦片组标题信息内与和图片对应的根节点对应,分别指定与瓦片组对应的父节点信息及与各个瓦片对应的子节点信息。
例如,在瓦片组标题信息指定图片内瓦片组的数量信息、图片内瓦片组共同适用的编码特性信息等作为与图片节点(根节点)对应的瓦片组信息。
并且,在瓦片组标题信息中,与瓦片组节点(父节点)对应,而与各个瓦片组对应的上述组级别信息及并行层信息一起,存储瓦片组内瓦片的数量信息、内部瓦片的尺寸信息、内部瓦片的编码特性信息等,在根节点中与共同适用或传输的编码信息不同,在瓦片组之间执行相互不同的瓦片组的编码信息。
另外,在瓦片组标题信息中,与瓦片节点(子节点或终端节点)对应的各个瓦片组节点共享的编码信息一起,包含各个瓦片的编码具体信息。由此,编码装置10在相同的瓦片组内也可以按各个瓦片适用相互不同的编码条件而执行编码,并将该信息包含在瓦片组标题信息。
另外,为了并行化处理,在瓦片组标题信息包含显示能够执行并行化的层单位的瓦片组的并行层信息,解码装置20根据参照其的解码条件而执行选择适应性的并行解码。
为此,各个瓦片被区分为上述的独立瓦片或依存瓦片。由此,编码装置10按瓦片组/瓦片对独立性信息及依存性信息进行编码而传输至解码装置20,在解码装置20中判断在基于此的瓦片之间并行化处理可能与否,根据环境变量及性能而适应性执行最合适的高速并行化处理。
另外,参照图22,一个图片内包含一个或一个以上瓦片组,对于分割为两个以上瓦片组的情况,瓦片组的数量根据按2的倍数、4的倍数等提前定义的规则而限制性定义。
并且,瓦片组信息包含该瓦片组的分割数量信息,在瓦片组标题指定而编码。
例如,对于瓦片组数量定义为T的情况,在瓦片组标题对按log2(T)转换的值进行编码。
另外,各个瓦片组包括一个以上瓦片,一个以上瓦片被确定是否根据并行层信息按步骤并行处理。例如,并行层信息按瓦片组内深度信息(D)呈现,瓦片组内瓦片数量N通过2D等指数形式。
例如,并行层信息通过0或其以上值指定,可变地确定与并行层信息对应的瓦片的分割并行化处理与否。
例如,参照图22,一个瓦片组1未被分割为另外两个以上具体瓦片,此时瓦片组1的并行层信息可以分配为0。此时,瓦片组1由一个瓦片构成,相应瓦片具有与瓦片组1相同的尺寸。
另外,瓦片组2包括两个瓦片,此时,瓦片组的并行层信息可以分配为1。
并且,瓦片组3包含四个瓦片,此时,瓦片组的并行层信息可以分配为2。
并且,瓦片组4包含8个瓦片,此时,瓦片组的并行层信息可以分配为3。
并且,在本实施例中,瓦片组作为子图组,瓦片作为各个子图而作相同说明,确定与作为子图组包含的子图对应的级别信息和并行层信息。
另外,图23显示在本发明中提出的瓦片组的各种瓦片连接结构。
本发明的实施例的瓦片组包括按一个瓦片或按2的倍数、4的倍数指定的多个瓦片,为此,图片分割部110通过各种方式分割瓦片,并分配由所分割的瓦片构成的瓦片组。
例如,如图23显示所示,对于分配第一瓦片组20、第二瓦片组21、第三瓦片组22及第四瓦片组23的情况,第一瓦片组20包括按具体瓦片的宽度(Width)(横向长度),可变分割高度(Height)(纵向长度)的方式分割的瓦片,将瓦片的纵向长度按1:2、1:3等比例进行再分割,瓦片组内瓦片的尺寸可以作不同调整构成。
并且,如第二瓦片组21的情况所示,瓦片组21包括固定具体瓦片的高度(纵向长度),并按可变分割宽度(横向长度)的方式分割的瓦片。此时,横向长度按1:2、1:3等比例进一步划分,瓦片组内瓦片的尺寸可以作不同调整构成。
另外,第三瓦片组22以由一个瓦片构成为例,此时,瓦片(22-1)的尺寸及形状具有与瓦片组22相同的尺寸及形状。
另外,第四瓦片组23为按多个相同瓦片23-1、23-2、23-3、23-4的尺寸构成瓦片组为一例,各个瓦片23-1、23-2、23-3、23-4为垂直方向的长方形,构成一个瓦片组23。并且,在按相同的瓦片的尺寸构成瓦片组的情况下,也能够按水平方向的长方形形状构成一个瓦片组。
由此,编码装置10按每个瓦片组相互不同地构成瓦片组内瓦片的形状、数量等,显示其的瓦片组信息通过瓦片组标题而编码,并向解码装置20信令。
由此,在解码装置20中,基于瓦片组信息,按瓦片组确定瓦片组内瓦片的形状、数量等。并且,通过该瓦片组内瓦片的形状及数量信息,有效地执行解码装置20的局部解码或并行化处理进程。在此,所述级别信息涉及性能及适合性测试,包含于与瓦片组信息对应的子图组的瓦片的数量信息也能够在确定级别信息时使用。
例如,解码装置20对于第一瓦片组20的情况,将该尺寸按1:1的比例商定,从第一瓦片组20的尺寸引导横向长度,在引导所述横向长度之后,为了引导纵向长度,获取另外信令的瓦片组信息内比例(1:2、1:3等)信息或尺寸信息,由此,引导纵向长度。在此,也能够转换各个瓦片的横向的尺寸或纵向的尺寸信息而直接传输至解码装置20而获取。
并且,例如解码装置20对于第二瓦片组21的情况,将瓦片组21按1:1的比例商定,在第二瓦片组21的尺寸引导纵向长度,利用另外信令的瓦片组信息内横向长度信息,按瓦片组确定瓦片结构信息。
并且,解码装置20如第四瓦片组23情况所示,从瓦片组的整个尺寸均等进行垂直/水平分割,引导具体瓦片的横向及纵向尺寸而确定各个瓦片组的瓦片结构信息。
另外,图24显示在本发明的实施例的基于瓦片组的编码处理时瓦片边界区域的具体进程。
首先,本发明的实施例的编码装置10将各个瓦片的尺寸信息按高度(M)、宽度(N)等数值显示,或从所述数值信息按乘法运算或乘法对数转换值等进行编码而包含在标题信息或处理以通过各个瓦片内CTU的数量引导而处理使得指示按各个瓦片组包含在瓦片组信息的所述瓦片。
例如,优选地,各个瓦片的尺寸为最小CTU单位,与最大瓦片组单位相同,瓦片的尺寸在所述范围内横向及纵向长度为4或8的倍数定义。
并且,根据本发明的实施例,根据瓦片及瓦片组的尺寸设定而发生与CTU单位交错的情况。例如,通常包含于瓦片组的瓦片与各个CTU之间边界(42、44)一致,但通过图片边界区域等发生以未与CTU间边界一致而分割(41、43)瓦片或瓦片组的情况。
由此,首先,编码装置10对于所述瓦片组之间边界或瓦片的边界线与CTU边界一致的瓦片的情况,按独立瓦片分类处理,在解码装置20执行分配并行化进程的并行解码。
但对于所述瓦片组的边界或瓦片边界未与CTU边界一致的情况,编码装置10将包含边界区域CTU的开始位置或Left-Top(左上)(x、y)位置的瓦片分类为独立瓦片,将与此相邻的瓦片按依存瓦片分类。
此情况,解码装置20应首先处理独立瓦片的解码,之后执行依存瓦片的解码,从而,防止画质劣化。
图25根据本发明的实施例,显示将任意的图片分割为各种瓦片组的形式的各个瓦片组30、31、32由包含各个瓦片的瓦片组构成,在各个瓦片组分配上述瓦片组标识符、并行层信息、瓦片组级别信息,与此相应的瓦片组信息向解码装置20进行信令。
各个瓦片组30、31、32包含两个、四个、三个等各种数量的瓦片,编码装置10对各个瓦片组的编码特性的瓦片组标题进行确定及编码而传送至解码装置20,瓦片组标题包括瓦片组内瓦片的各种编码工具(OMAF、ALF、SAO等)的开/关信息等编码特性信息。
该瓦片组标题信息由从与图片内第一个瓦片对应的瓦片组标题信息引导下一个瓦片组标题信息的形式构成。
例如,编码装置10利用一个图片内第一个瓦片组的标题信息,而与瓦片组的标题信息对应而与第一个瓦片组标题信息相互不同适用的选项值、差分信号或偏移(Offset)信息等,而在下一个瓦片组的标题信息以依次升级的方式进行编码。由此,根据按图片内所有瓦片组而标题根据依次升级获取。
并且,编码装置10基于图片内第一个瓦片组30的标题信息,也可以利用在图片内存在的另一个多个瓦片组31、32的标题信息的选项差异值、差分信号或偏移(Offset)信息,处理使得从解码装置20引导按瓦片组适用的编码特性信息。
另外,编码装置10的图片组(Group of Picture)的开始图片以由IDR(瞬时解码刷新,Instantaneous Decoding Refresh)编码的图片的瓦片组标题信息为基准,编码处理以使升级包含所述IDR图片的GOP内另一个图片的瓦片组标题信息升级。对此做另外的说明。
图26为用于说明本发明的实施例的基于瓦片组信息的解码进程的流程图。
参照图26,首先,解码装置20对瓦片组标题信息进行解码(S2001),基于标题信息而获取瓦片组信息(S2003)。
解码装置20基于瓦片组信息,确定分割影像的图片的一个以上瓦片(tile),组合所述瓦片,而由多个瓦片组构成。
在此,解码装置20利用由编码装置10另外传送或引导的左侧及右侧下端的CTU(编码树单元)位置信息而引导瓦片组内瓦片构成信息。
并且,编码装置10为了提高编码效率而仅利用右侧下端的CTU信息,也能够使解码装置20引导瓦片内瓦片的构成信息。
例如,右侧下端的CTU位置信息向解码装置20而通过另外的标志值进行信令。并且,解码装置20利用瓦片的行(Row)和列(Column)的构成信息,将处于该瓦片的最后的行和列的CTU视为右侧下端CTU,也能够引导所述信息。
此时,左侧上端的CTU信息利用瓦片的开始的CTU位置信息而定义。由此,解码装置20利用左侧下端及右侧下端的CTU位置信息而引导瓦片组内瓦片的构成信息,在多个瓦片的情况下,利用相同的方法,并将之前瓦片的边界面作为开始位置的CTU设定为开始CTU,引导与此对应的右侧下端CTU的位置信息,从而,引导瓦片组内瓦片的构成信息。
并且,解码装置20利用瓦片组信息而按瓦片组及瓦片确定特定信息(S2005),根据确定的特性信息及环境变量而按瓦片组/瓦片分配并行进程(S2007),按所分配的并行进程的瓦片执行解码(S2009)。
更具体地,瓦片组信息包括包含各瓦片组的结构信息、所述瓦片组内瓦片之间依存性或独立性信息、所述组级别信息及所述并行层信息的瓦片组标题信息。
基于根据从该瓦片组信息确定的特性信息、系统环境变量、网络变量、用户视点(PERSPECTIVE)变量中的至少一个确定的解码装置的环境变量,有选择地并行解码由所述多个瓦片组构成的各个瓦片。
尤其,该瓦片组信息作为瓦片组标题信息而从编码装置10进行信令,而在解码装置20存储及管理,根据包含所述图片的图片组(Group of Picture)识别信息而对所述瓦片组标题信息进行初始化或升级处理。
图27为用于说明本发明的实施例的瓦片组标题的初始化进程的图。
参照图27,对于从解码装置20获取由多个GOP构成的影像比特流而处理的情况,瓦片组标题可以在一个GOP内共享及升级,在相互不同的GOP中根据初始化而利用相互不同的瓦片组标题。
例如,假设在存在由N个图片构成的GOP 0时,GOP 0的POC 0图片为由IDR(瞬时解码刷新,Instantaneous Decoding Refresh)编码的图片,解码装置20存储与图片POC 0对应的初期六个瓦片组标题。此时,各个瓦片组标题由固有的瓦片ID(身份标识号)分类。
并且,在各个瓦片组标题包含各个图片内瓦片组的左上端CTU的位置信息或地址信息、右下端的CTU的位置信息或地址信息作为固有信息,该情况,解码装置20利用所述位置信息而确定瓦片组的结构。
更具体地,POC 5的瓦片组标题(N1101)包含总六个瓦片组的标题信息,各个瓦片组标题信息通过固有的ID分类。
并且,包含于特定GOP内的图片之间各个瓦片组标题信息被独立获取后依存引导而处理。
例如,参照图27,解码装置20,为了引导POC 5的瓦片组信息(N1101)而首先直接利用从POC 0的第一瓦片组标题(N1100)解码的标题信息。
并且,解码装置20,为了获取各个瓦片组内瓦片的构成信息而利用瓦片组N1102的左上端CTU位置信息和右下端CTU位置信息而确定瓦片组N1102的尺寸及形状信息。
而且,解码装置20能够获取POC 5的第二个瓦片组(N1103)的瓦片组信息。
另外,解码装置20参照POC 8的瓦片组标题(N1110)、已-编码的瓦片组标题信息而引导。
例如,对于处于POC 0和POC 8相同的图片组内的情况,图片内瓦片组的构成保持相同,因此,从IDR图片(POC 0)的瓦片组标题信息同样引导POC 8的瓦片组构成信息(瓦片组数量、瓦片组内左-上端CTU的位置信息、瓦片组内右-下端CTU的位置信息)。
并且,POC 8的瓦片组标题(N1110)将基本瓦片组构成信息及编码条件信息从POC5的瓦片组标题(N1101)引导,利用从编码装置10另外信令的偏移(Offset)信息,而按POC 8的瓦片组对滤波条件(ALF/SAO/De-blocking filter)具体化而确定,或按瓦片组对相互不同的Delta QP具体化,或对画面之间预测编码工具(全景媒体(OMAF)/仿射(Affine)等)具体化适用,按瓦片组执行选择适应性解码。
并且,POC N-1的瓦片组标题(N1120)同样从已解码的POC 8的瓦片组标题(N1110)或POC 5的瓦片组标题(N1101)引导获取,解码装置20根据发生解码顺序或网络单元类型获取的活动,仅从已解码的瓦片组标题信息获取要升级的差异信息,按POCN-1图片的瓦片组引导编码具体条件。
另外,其它GOP 1的IDR图片POC M进行独立性解码,为此另外指定构成POC M的瓦片组标题(N1130)。由此,在相互不同的GOP之间形成相互不同的瓦片组结构。
并且,解码装置20利用瓦片组级别信息及瓦片组类型信息而执行部分并行解码处理。
例如,如上所示,各个瓦片组由相互不同的瓦片组级别指定,例如,根据所述瓦片组级别而瓦片组级别为0的情况下,独立瓦片组为1的情况下,分类为非独立瓦片(依存瓦片)组。
并且,瓦片组信息包括瓦片组类型特性信息,瓦片组类型被分类为I、B、P类型。
首先,I类型的瓦片组被指定为独立瓦片组级别的情况,未参照相互不同的瓦片组,是指在瓦片组内需执行通过画面内预测的解码。
并且,对于I类型的瓦片组按依存瓦片组级别指定的情况,是指通过画面内预测而对相应瓦片组的影像进行解码,但需参照相邻的独立瓦片组而执行解码。
另外,显示B或P类型的瓦片组通过画面内预测或画面间预测而执行影像解码,但能够根据瓦片组级别而确定参照区域及范围。
首先,解码装置20对于按独立瓦片组级别指定的B或P类型的瓦片组的情况,在执行画面内预测时,在独立瓦片组内的范围内执行画面内预测解码。
并且,对于解码装置20按依存瓦片组级别指定的B或P类型的瓦片组的情况,在执行画面间预测时,能够参照按已-解码的图片中的独立瓦片组定义的瓦片组的解码信息而执行解码。
例如,解码装置20对于按依存瓦片组级别指定的瓦片组的特性为B或P类型的情况,在执行画面内预测时,参照已-编码的邻接的瓦片组的解码信息而解码,在执行画面间预测时,从已-编码的独立瓦片组设定参照区域而执行运动补偿处理。
例如,特定POC 5的N1102及POC N-1的N1121为独立瓦片组,且在POC 8之前解码的瓦片组,对于N1111为独立瓦片的情况,要解码的瓦片组N1111的瓦片组级别为0,类型为B类型(B Type)的情况下,解码装置20参照N1102及N1121,以用于要解码的瓦片组N1111,而执行画面间预测解码。相反地,如POC 5的N1104所示,对于为非-独立瓦片组的情况,解码装置20参照N1104而无法对N1111进行解码。
并且,解码装置20在POC 8的N1112的瓦片组级别为1,类型为B或P的情况,瓦片组(N1112)按非-独立(依存)瓦片组确定,画面内预测解码的参照区域通过相邻的已解码的瓦片组限制。例如,对于N1111为已-解码的情况,解码装置20参照N1111而执行N1112的画面内预测解码。并且,解码装置20在执行画面间预测解码时,参照已解码的区域中瓦片组的级别为0的N1102,执行N1112的画面间预测解码。
由此,在本发明中,利用瓦片组级别及瓦片组类型信息,在画面内、画面间限制或指定预测结构的参照结构,通过此,处理使得有效执行任意的图片的瓦片组单位的部分解码。
图28为用于说明本发明的实施例的基于并行层单位的可变并行处理的图。
参照图28,图片(N200)被分割为四个瓦片组N205、N215、N225、N235时,瓦片组N205由两个下位瓦片N201、N202构成,N215及N235分别由两个瓦片N211、N212和一个瓦片N231瓦片构成。并且,和瓦片组N225一样,由八个瓦片N221~N224、N226~N229构成一个瓦片组。
由此,瓦片组由一个或一个以上瓦片构成。并且,瓦片的尺寸及编码特性可以多样化确定,对该瓦片组内瓦片的特性及构成信息明确编码而信令,或间接在解码装置20引导。
作为明确编码信令的方法的一例,例示在瓦片组标题指定瓦片组内下位瓦片的尺寸信息(Width/Height)或下位瓦片的第一CTU位置信息、瓦片的列和行的数量、瓦片内CTU数量等,或利用瓦片内第一CTU位置信息(左上,Top-Left)和最后CTU(右下,Right Bottom)的位置信息而对瓦片的结构信息发出信令的方式。
例示通过间接引导的方式根据与各个瓦片的第一CTU的编码信息及之前编码信息的依存性与否而在解码器掌握瓦片分割与否的方法。
并且,根据本发明的实施例,复合利用瓦片组级别信息、瓦片并行层信息,如图28显示所示,执行将按瓦片组及瓦片分割而编码的影像的解码装置20的性能最大化运用有效的并行解码。
例如,在编码装置10中,根据影像的特性信息或影像制作者、服务提供者等意图等而将任意的图片分割为多个瓦片组,编码装置10去除各个瓦片组之间预测/参照的依存性,对与适应计算编码数据、运动矢量预测值缓冲区(MVP Buffer)及预测后补列表等瓦片内周边区块共享的编码数据进行初始化处理。
并且,编码装置10在解码装置20中进行编码以使多个瓦片组分别分配至一个并行处理进程而解码。例如,在编码装置10中分配一个进程(Core)或线程(Thread)而执行单一编码或将四个进程分别分配至N205、N215、N225、N235而并行执行编码。
并且,编码装置10根据编码处理信息而将在解码装置20中分配可变分配并行进程的瓦片组级别信息及并行层信息作为瓦片组信息,而传输至解码装置20。
由此,解码装置20基本执行在编码装置10中处理的并行处理,并根据该性能及环境变量等,执行更具体的另外的并行处理或局部解码处理。
例如,编码处理信息例示为360影像的影像投影格式(Projection format)信息、视频的视点信息(Viewport)信息等,编码装置10根据特定瓦片组影像的重要度或感兴趣区域(ROI)信息等,而将视频制作者或服务提供者的意图的执行并行/父解码或部分解码的影像区域信息映射至瓦片组信息。
例如,编码对象影像如360影像一样由全方位影像构成,输入影像中特定视点影像与图片内瓦片组对应,或映射而在解码装置20执行并行解码或局部解码。
用于此的并行层信息显示是否在所述瓦片组内的瓦片分配按步骤的及另外的并行处理进程,具体地包含最小或最大并行层步骤信息。
由此,解码装置20利用并行层信息而确定在一个瓦片组内是否分配下位瓦片数相应的多个进程/线程,利用瓦片组级别信息而个别判断对任意的瓦片组或瓦片组内瓦片的独立性/依存性解码可能与否而执行用户视点的部分解码。
例如,解码装置20根据并行层信息而对于瓦片组内瓦片,按步骤确定是否另外执行按层单位分割的并行进程。
例如,解码装置20在并行层单位信息为0的情况下,无法执行对在瓦片组内瓦片的另外的并行程序。该情况,能够在瓦片组内分配仅包含依存瓦片的瓦片组级别。
相反,在并行化阶层值为1时,解码装置20执行对瓦片组内具体瓦片的一次另外的并行进程。此时,在构成瓦片组的瓦片分配仅由独立瓦片构成的瓦片组级别,或分配包含独立瓦片和依存瓦片的瓦片组级别。
另外,根据瓦片组级别而解码装置20执行主要影像或局部影像的分类处理,或确定瓦片组内瓦片的独立及依存瓦片存在与否。
例如,在将瓦片组级别的值设定为0时,所述瓦片组的瓦片被全部指示为独立瓦片,解码装置20通过主要影像瓦片组分类。
并且,在将瓦片组级别设定为1的情况下,瓦片组的第一瓦片被指示独立瓦片,剩余瓦片被指示为依存瓦片,解码装置20按非主要影像瓦片组分类而处理。
并且,在瓦片组级别设定为2的情况下,瓦片组内瓦片被全部指示为依存瓦片,解码装置20参照已解码的周边瓦片组或周边瓦片的解码信息而进行解码处理。
由此,解码装置20根据并行层单位而分配与构成瓦片组的瓦片对应的各个并行线程(Thread)进行分配,而执行帧单位高速并行解码。
并且,解码装置20确认瓦片组级别,根据系统环境及网络状况,用户的视点变化等,判别与主要影像或主要视点对应的瓦片组,对于在解码器判断能够局部解码的区域的情况,独立执行与特定视点对应的图片内部分解码。
例如,参照图28,解码装置20将与N205对应的两个并行解码进程(Core)分别分配至N201、N202,在N225将八个进程分配至N221~224、N226~229,在N215将两个进程分配至N211、N212,在N235而将一个进程分配至N231,由此,最大分配13个进程而执行并行解码。并且,例示解码装置20根据其性能及环境变量而按与N205、N215、N225及N235对应的四个瓦片组分别分配一个进程而处理利用一共四个进程的并行解码或也可以执行利用一个进程的整体图片的单进程(Single Core)解码。
并且,例如解码装置20对于特定瓦片组N205的瓦片组级别较高设定的情况,将相应部分分类为主要影像,对于较低设定N215的情况,将相应部分分类为非主要视频,将N215的瓦片中的N211识别为独立瓦片,将N212识别为依存瓦片。
如上所述情况,解码装置20处理以使360影像等全方位影像与瓦片组联动,尤其,根据内容制作者的意图或用户的意图(视觉反应、运动反应)等而将一个图片内仅一部分瓦片组分类为主要影像,执行局部高速并行解码。
例如,假设N225为前方影像,N205为左-右侧影像(N201(右侧),N202(左侧))、N215及N235分别为对角或后方影像时,解码装置20根据用户视点变化等,选择性仅对前方影像N225和左-右侧影像N205进行局部解码,N205、N215、N225及N235按四个瓦片组执行并行解码,同时在解码器利用一个或四个Core而执行利用单进程(单一)解码或四进程的并行解码。
由此,基于瓦片组的并行层信息、瓦片组级别信息而改变分配一个以上并行处理进程而进行有效解码。
图29为用于说明本发明的实施例的瓦片组信息和用户视点信息之间映射的情况的图。
参照图29,图片由五个瓦片组N301、N302、N303、N304、N305构成,其作为影像的视点信息,与视图端口(VIEW PORT)对应。
例如,瓦片组与一个或多个视图端口对应。如图29显示所示,N301与中心(Center)视图端口映射,N302与左(Left)视图端口映射,N303与右(Right)视图端口映射,N304与右上(Right Top)和右下(Right Bottom)视图端口影像映射及N305与左上(Left Top)和左下(Left Bottom)视图端口影像映射。
并且,在一个瓦片组也能够映射多个视图端口,此时,能够在瓦片组内各个瓦片映射各个视图端口。例如,N304和N305分别为由两个视图端口瓦片(N304由N306和N307构成,N305由N308和N309构成)构成的瓦片组。
并且,瓦片组N304的瓦片N306和N307与两个相互不同的视点(右上和右下)的视图端口映射。
解码装置20利用瓦片组信息而处理影像的部分扩张及转换。在瓦片组标题包含与影像的视图端口或视点信息对应的映射信息,还包含用户视点移动的部分解码执行与否及处理影像的像素扩张的尺度信息或旋转转换(90度/180度/270度转换)信息。
在解码装置20中对利用所述旋转转换及尺度信息而执行瓦片组内部分的影像的影像像素调整及影像的转换(Rotation)的影像进行解码及输出。
图30为例示本发明的实施例的瓦片组标题信息的句法的图。
参照图30,在瓦片组标题信息包含瓦片组地址信息、瓦片组内瓦片数量信息、并行层信息、瓦片组级别信息、瓦片组类型信息、瓦片组QP delta信息、瓦片组QP偏移信息、瓦片组SAO信息、瓦片组ALF信息中的至少一个。
首先,瓦片组地址(Tile_group_address)信息显示任意的图片由多个瓦片组构成时的瓦片组内第一个瓦片的地址。瓦片组或瓦片组内第一瓦片的边界利用处于左侧上端的第一CTU的位置及处于右侧下端的CTU的位置(Address)而引导。
并且,单一瓦片标志(Single_tile_per_tile_group_flag)信息作为用于确认瓦片组内瓦片的构成信息的标志信息,对于所述Single_tile_per_tile_group_flag的值为0或False的情况,图片内瓦片组是指由多个瓦片构成。与此不同,对于Single_tile_per_tile_group_flag的值为1或True的情况,相应瓦片组是指由一个瓦片构成的瓦片组。
并且,并行层信息指示作为瓦片组可扩展性(Tile_group_scalability)信息,其是指对瓦片组内瓦片的可分配的最小或最大并行进程单位。通过所述值而调节分配在瓦片组内瓦片的线程的数量。
另外,瓦片组级别信息(Tile_group_level)显示瓦片组内瓦片的独立瓦片及依存瓦片的存在与否。显示利用瓦片组级别信息而瓦片组内瓦片是否全部由独立瓦片构成,或是否由独立及非-独立(依存)瓦片构成,或是否全部由非-独立(依存)瓦片构成。
瓦片组类型信息(Tile_group_type)被分类为I/B/P类型的瓦片组特性信息,根据各个类型结构,是指对相应瓦片组进行编码的预测方法及预测模式等各种编码方法及制约事项。
另外,作为编码信息,例示瓦片组QP delta信息、瓦片组QP偏移信息、瓦片组SAO信息、瓦片组ALF信息等,在瓦片组标题将瓦片组内各种编码工具的开/关信息另外指定作为标志信息。解码装置20在执行当前解码的瓦片组内引导所有瓦片的编码工具(Tool)信息或通过另外演算过程而引导瓦片组内瓦片中的一部分瓦片的编码信息。
上述本发明的方法通过在计算机执行的程序制作而存储在电脑可读取的记录介质,电脑可读取的记录介质,诸如ROM、RAM、CD-ROM、磁带、软盘、光数据存储装置等,并且,包含由载波(例如通过网络的传送)的形式实现。
计算机可读取的记录介质分散至通过网络连接的计算机系统,通过分散方式存储并执行计算机可读取的代码。并且,用于实现所述方法的功能性(function)程序、代码及代码分段能够容易通过本发明所属的技术领域的程序设计员推论。
并且,综上对本发明的优选的实施例显示并进行了说明,但本发明并非通过上述特定实施例限定,在不脱离权利要求范围的本发明的要旨的情况下,本发明所属技术领域的普通技术人员能够进行各种变形实施,该变形实施不应从本发明的技术思想或前景进行个别理解。