HEVC中的图像的分块分割方法
1、条带与区块
在HEVC的视频编解码过程中,一帧图像会被分割成条带(slice),条带片段(slice segment)和区块(tiles)进行处理。条带和区块都是可采取的独立分割形式之一。而条带则是由条带片段组成的元素,包括独立条带元素和依赖性条带元素两类。
上图即为一帧图像分割成条带的示意图。在该图中,该帧图像被分割成两个条带,其中第一个条带包含一个独立条带片段(包含4个树形编码单元CTU)和两个依赖条带片段;第二个条带包含一个独立条带片段。
区块是另一种区域分割方法,某个区块必须为矩形,由整数个CTU组成。对于条带和区块,或者所有同一个条带的CTU均属于一个区块,或者同属于一个区块的CTU均属于一个条带;类似的,或者同属于一个条带片段的CTU需属于一个区块,或者同属于一个区块的CTU必须属于同一个条带片段。下图是某一帧分割成左右两个区块的示例图,分别表示整帧图像仅包含一个条带,以及每个区块分别包含多个条带的情况。
2、块与四叉树结构
树形编码块(Coding Tree Blocks, CTBs)是一帧中像素组织的基本结构。亮度CTB的边长、色度CTB的长和宽分别由参数
CtbSizeY、CtbWidthC和CtbHeightC指定。对于每个CTB,都有一个块分割标识,用来表示预测和变换编码块的大小。分割从根(CTB)开始,进行四叉树分割,直至到达叶子节点(CB)。而CB又是预测树(Prediction tree)和变换树(Transform tree)的根节点,这两个树分别表示预测块和变换块的位置大小。
像素块和相应语法元素的封装格式可能有如下情况:
(1)三个预测块(亮度和色度)或者单一一个预测块(单色图像或separate_colour_plane_flag为1,也就是三个分量当做三个独立图像分别编码),与相应的语法结构组成一个预测单元(Prediction unit);
(2)一个或三个变换快(情况与以上类似),与相应的语法结构组成一个变换单元(Transform unit);
(3)一个或三个编码块CB,与相应的语法元素组成为一个编码单元coding unit;
(4)一个或三个树形编码块与相应的语法元素组成一个树形编码单元coding tree unit