《一种基于帧内预测的解码方法和解码装置.pdf》由会员分享,可在线阅读,更多相关《一种基于帧内预测的解码方法和解码装置.pdf(20页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102857763 A (43)申请公布日 2013.01.02 CN 102857763 A *CN102857763A* (21)申请号 201110182388.8 (22)申请日 2011.06.30 H04N 7/34(2006.01) H04N 7/32(2006.01) H04N 7/26(2006.01) (71)申请人 华为技术有限公司 地址 518129 广东省深圳市龙岗区坂田华为 总部办公楼 (72)发明人 杨海涛 赖昌材 (74)专利代理机构 北京龙双利达知识产权代理 有限公司 11329 代理人 毛威 肖鹂 (54) 发明名称 一种基于帧内预。
2、测的解码方法和解码装置 (57) 摘要 本发明实施例提供了一种基于帧内预测的解 码方法和解码装置。该解码方法包括 : 为当前预 测单元从视频图像的压缩码流中获取一个或多个 分割标记、 一个分割形状标记和一个分割方向标 记 ; 根据所获取的上述一个或多个分割标记、 该 分割形状标记和该分割方向标记将当前预测单元 最终分割为多个方形变换单元或多个矩形变换单 元 ; 对最终分割得到的多个方形变换单元中的每 个方形变换单元或最终分割得到的多个矩形变换 单元中的每个矩形变换单元执行解码流程。根据 本发明的实施例可以通过在同一预测单元内选择 将预测单元分割为方形变换单元或者是矩形变换 单元, 从而提高视频。
3、图像压缩效率。 (51)Int.Cl. 权利要求书 3 页 说明书 12 页 附图 4 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 12 页 附图 4 页 1/3 页 2 1. 一种基于帧内预测的解码方法, 其特征在于, 包括 : 为当前预测单元从视频图像的压缩码流中获取一个或多个分割标记、 一个分割形状标 记和一个分割方向标记, 所述一个或多个分割标记中与当前块相对应的分割标记用于指示 是否将所述当前块分割为多个块, 所述一个分割形状标记指示将所述当前块分割为多个方 形块或者分割为多个矩形块, 所述一个分割方向标记指示将所述当前块沿水平方向分割。
4、为 所述多个矩形块或者沿竖直方向分割为所述多个矩形块, 所述多个方形块中的每个方形块 的宽度与高度相等, 所述多个矩形块中的每个矩形块宽度与高度不相等 ; 根据所获取的所述一个或多个分割标记、 所述一个分割形状标记和所述一个分割方向 标记将所述当前预测单元最终分割为多个方形变换单元或多个矩形变换单元 ; 对最终分割得到的多个方形变换单元中的每个方形变换单元或最终分割得到的多个 矩形变换单元中的每个矩形变换单元执行解码流程。 2. 根据权利要求 1 所述的基于帧内预测的解码方法, 其特征在于, 所述当前块是与所 述当前预测单元大小相同的图像块。 3. 根据权利要求 1 所述的基于帧内预测的解码方。
5、法, 其特征在于, 分割得到的所述多 个块之一作为下一步分割的当前块。 4. 根据权利要求 1 所述的基于帧内预测的解码方法, 其特征在于, 所述沿水平方向分 割得到的所述多个矩形块中的每个矩形块的宽度大于高度, 并且所述沿竖直方向分割得到 的所述多个矩形块中的每个矩形块的宽度小于高度。 5. 根据权利要求 1 所述基于帧内预测的解码方法, 其特征在于, 在所述一个或多个分割标记中的第一个分割标记指示将所述当前块分割为多个块 的情况下, 在获取所述第一个分割标记之后, 从所述压缩码流中获取所述一个分割形状标 记 ; 在所述一个分割形状标记指示将所述当前块分割为多个矩形块的情况下, 在获取所述 。
6、一个分割形状标记之后, 从所述压缩码流中获取所述一个分割方向标记。 6. 根据权利要求 1 所述的基于帧内预测的解码方法, 其特征在于, 所述根据所获取的 所述一个或多个分割标记、 所述一个分割形状标记和所述一个分割方向标记将所述当前预 测单元分割为多个方形变换单元或多个矩形变换单元包括 : 在所述一个或多个分割标记中与所述当前块相对应的分割标记指示将所述当前块分 割为多个块的情况下, 按照所述分割方向标记对应的分割方向将所述当前块分割成多个与 分割形状标记对应的方形块或矩形块。 7. 根据权利要求 6 所述的基于帧内预测的解码方法, 其特征在于, 所述按照所述分割 方向标记对应的分割方向将所。
7、述当前块分割成多个与分割形状标记对应的方形块或矩形 块包括 : 在所述一个分割形状标记指示将所述当前块分割为所述多个方形块情况下, 将所述当 前块分割为四个大小相等的方形块, 其中所述四个大小相等的方形块中的每个方形块的宽 度或高度分别为所述当前块的宽度或高度的二分之一 ; 在所述一个分割形状标记指示将所述当前块分割为所述多个矩形块的情况下, 根据所 述一个分割方向标记将所述当前块进一步分割为四个大小相等的矩形块。 8. 根据权利要求 7 中所述的基于帧内预测的解码方法, 其特征在于, 在所述一个分割 权 利 要 求 书 CN 102857763 A 2 2/3 页 3 形状标记指示将所述当前。
8、块分割为多个矩形块的情况下, 根据所述一个分割方向标记将当 前块分割为四个大小相等的矩形块包括 : 在所述一个分割方向标记指示将所述当前块沿水平方向分割为所述多个矩形块的情 况下, 将所述当前块沿水平方向分割为四个大小相等的矩形块, 其中所述四个大小相等的 矩形块中的每个矩形块的宽度与所述当前块的宽度相同, 并且所述四个大小相等的矩形块 中的每个矩形块的高度为所述当前块的高度的四分之一 ; 在所述一个分割方向标记指示将所述当前块沿竖直方向分割为所述多个矩形块的情 况下, 将所述当前块沿竖直方向分割为四个大小相等的矩形块, 其中所述四个大小相等的 矩形块中的每个矩形块的高度与所述当前块的高度相同。
9、, 并且所述四个大小相等的矩形块 中的每个矩形块的宽度为所述当前块的宽度的四分之一。 9. 根据权利要求 1 所述的基于帧内预测的解码方法, 其特征在于, 所述对最终分割得 到的多个方形变换单元中的每个方形变换单元或最终分割得到的多个矩形变换单元中的 每个矩形变换单元执行解码流程 : 在所述一个或多个分割标记中与所述当前块相对应的分割标记指示不对所述当前块 做进一步分割的情况下, 对最终分割得到的每个方形变换单元或者矩形变换单元执行解码 流程。 10. 根据权利要求 9 所述的基于帧内预测的解码方法, 其特征在于, 根据所述每个方形 变换单元或者矩形变换单元的位置、 宽度和高度以及由所在的预测。
10、单元确定的帧内预测模 式, 获取所述每个方形变换单元或者矩形变换单元的预测信号, 根据所述每个方形变换单 元或者矩形变换单元的位置、 宽度和高度以及所在的分割层级深度, 获取所述每个方形变 换单元或者矩形变换单元的重建预测差值信号, 并且根据所述预测信号和所述重建预测差 值信号, 获得所述每个方形变换单元或者矩形变换单元的重建信号。 11. 一种基于帧内预测的解码装置, 包括 : 标记获取模块, 用于为当前预测单元从视频图像的压缩码流中获取一个或多个分割标 记、 一个分割形状标记和一个分割方向标记, 所述一个或多个分割标记中与当前块相对应 的分割标记用于指示是否将所述当前块分割为多个块, 所述。
11、一个分割形状标记指示将所述 当前块分割为多个方形块或者分割为多个矩形块, 所述一个分割方向标记指示将所述当前 块沿水平方向分割为所述多个矩形块或者沿竖直方向分割为所述多个矩形块, 所述多个方 形块中的每个方形块的宽度与高度相等, 所述多个矩形块中的每个矩形块宽度与高度不相 等 ; 分割模块, 用于根据所获取的所述一个或多个分割标记、 所述一个分割形状标记和所 述一个分割方向标记将所述当前预测单元最终分割为多个方形变换单元或多个矩形变换 单元 ; 解码模块, 用于对最终分割得到的多个方形变换单元中的每个方形变换单元或最终分 割得到的多个矩形变换单元中的每个矩形变换单元执行解码流程。 12. 根据。
12、权利要求 11 所述的基于帧内预测的解码装置, 其特征在于, 所述当前块是与 所述当前预测单元大小相同的图像块。 13. 根据权利要求 11 所述的基于帧内预测的解码装置, 其特征在于, 分割得到的所述 多个块之一作为下一步分割的当前块。 权 利 要 求 书 CN 102857763 A 3 3/3 页 4 14. 根据权利要求 11 所述的基于帧内预测的解码装置, 其特征在于, 所述标记获取模 块在所述一个或多个分割标记中的第一个分割标记指示将所述当前块分割为多个块的情 况下, 在获取所述第一个分割标记之后, 从所述压缩码流中获取所述一个分割形状标记 ; 并 且在所述一个分割形状标记指示将所。
13、述当前块分割为多个矩形块的情况下, 在获取所述一 个分割形状标记之后, 从所述压缩码流中获取所述一个分割方向标记。 15. 根据权利要求 14 所述的基于帧内预测的解码装置, 其特征在于, 所述分割模块在 所述一个或多个分割标记中与所述当前块相对应的分割标记指示将所述当前块分割为多 个块的情况下, 按照所述分割方向标记对应的分割方向将所述当前块分割成多个与分割形 状标记对应的方形块或矩形块。 16. 根据权利要求 11 所述的基于帧内预测的解码装置, 其特征在于, 所述解码模块在 所述一个或多个分割标记中与所述当前块相对应的分割标记指示不对所述当前块做进一 步分割的情况下, 对最终分割得到的每。
14、个方形变换单元或者矩形变换单元执行解码流程。 17. 根据权利要求 16 所述的基于帧内预测的解码装置, 其特征在于, 根据所述每个方 形变换单元或者矩形变换单元的位置、 宽度和高度以及由所在的预测单元确定的帧内预测 模式, 获取所述每个方形变换单元或者矩形变换单元的预测信号, 根据所述每个方形变换 单元或者矩形变换单元的位置、 宽度和高度以及所在的分割层级深度, 获取所述每个方形 变换单元或者矩形变换单元的重建预测差值信号, 并且根据所述预测信号和所述重建预测 差值信号, 获得所述每个方形变换单元或者矩形变换单元的重建信号。 权 利 要 求 书 CN 102857763 A 4 1/12 页。
15、 5 一种基于帧内预测的解码方法和解码装置 技术领域 0001 本发明实施例涉及图像处理处理领域, 更具体地, 涉及基于帧内预测的解码方法 和解码装置。 背景技术 0002 为了节约网络传输的带宽, 通常对于视频图像在发送端通过编码器进行压缩编码 后, 通过网络传输给接收端, 接收端通过解码器进行解压缩后恢复出视频图像。 该发送端或 者接收端可以为移动电话, 便携式电脑, 手持式电脑, 摄像机, 视频监控设备等。 0003 在视频图像压缩码流的解码方案中, 通常包含针对图像块信号的预测模块与变换 模块。预测模块根据已解码的信息对当前图像块信号进行预测得到预测信号。变换模块对 接收得到的变换系数。
16、进行反变换操作得到重建差值信号。 解码端将预测信号与重建差值信 号相加得到重建图像块信号。 0004 预测分为帧间预测与帧内预测两种。 帧间预测基于当前图像块的时间邻近已编码 信息来获取预测信号, 帧内预测基于当前图像块的空间邻近已编码信息来获取预测信号。 0005 在帧内编解码技术方案中, 编码单元是在编码端或解码端进行编码或解码时操作 的图像块。预测单元是编码单元中具有独立预测模式的图像块。预测块是编码单元进行预 测操作的图像块, 一个预测单元中可能包含多个预测块, 这些预测块可使用共同的预测模 式 ( 即所在预测单元的预测模式 ) 来进行预测操作。变换单元是编码单元中进行变换操作 的图像。
17、块。预测块大小一般与变换单元大小相同, 这是因为相邻帧内预测块边界部分的预 测差值信号的相关性较弱, 所以变换单元不应跨越预测块边界。同时考虑到预测块内部差 值信号的相关性较强, 而大块变换比小块变换能量集中性能更高, 所以通常选择与预测块 相同大小的变换单元。 0006 在一种基于方形块的帧内编解码技术方案中, 可以从码流中获取当前预测单元的 四叉树分割标记, 并按照标记将当前预测单元迭代地分割为大小不同的方形变换单元。四 叉树分割标记为 1 表示需要进一步分割, 标记为 0 表示停止分割。现有技术使用 split_ transform_flag 作为分割标记, 指示当前块是否进行进一步的分。
18、割。split_transform_ flag 可作为独立的语法元素进行编码, 也可与其它语法元素进行联合编码。解码端需依次 对每一个变换单元进行下列操作 : 使用变换单元所对应的预测单元的帧内预测模式进行帧 内预测操作获取预测信号 ; 对接受到的变换系数进行反变换获取重建预测差值信号 ; 将预 测信号与重建预测差值信号相加, 得到重建图像信号。 0007 由于该技术方案仅采用方块分割方式得到方形变换单元, 并没有考虑频繁出现的 条状纹理。因此, 当存在条状纹理时, 该技术方案压缩效率较低。 发明内容 0008 本发明实施例提供一种基于帧内预测的解码方法和解码装置, 能够提高视频图像 压缩效率。
19、。 说 明 书 CN 102857763 A 5 2/12 页 6 0009 本发明实施例提供了一种基于帧内预测的解码方法, 其特征在于, 包括 : 为当前预 测单元从视频图像的压缩码流中获取一个或多个分割标记、 一个分割形状标记和一个分割 方向标记, 上述一个或多个分割标记中与当前块相对应的分割标记用于指示是否将当前块 分割为多个块, 该分割形状标记指示将当前块分割为多个方形块或者分割为多个矩形块, 该分割方向标记指示将当前块沿水平方向分割为多个矩形块或者沿竖直方向分割为多个 矩形块, 多个方形块中的每个方形块的宽度与高度相等, 多个矩形块中的每个矩形块宽度 与高度不相等 ; 根据所获取的上。
20、述一个或多个分割标记、 该分割形状标记和该分割方向标 记将当前预测单元最终分割为多个方形变换单元或多个矩形变换单元 ; 对最终分割得到的 多个方形变换单元中的每个方形变换单元或最终分割得到的多个矩形变换单元中的每个 矩形变换单元执行解码流程。 0010 根据本发明的另一实施例, 提供了一种基于帧内预测的解码装置, 包括 : 标记获取 模块, 用于为当前预测单元从视频图像的压缩码流中获取一个或多个分割标记、 一个分割 形状标记和一个分割方向标记, 上述一个或多个分割标记中与当前块相对应的分割标记用 于指示是否将当前块分割为多个块, 该分割形状标记指示将当前块分割为多个方形块或者 分割为多个矩形块。
21、, 该分割方向标记指示将当前块沿水平方向分割为多个矩形块或者沿竖 直方向分割为多个矩形块, 多个方形块中的每个方形块的宽度与高度相等, 多个矩形块中 的每个矩形块宽度与高度不相等 ; 分割模块, 用于根据所获取的一个或多个分割标记、 该分 割形状标记和该分割方向标记将当前预测单元最终分割为多个方形变换单元或多个矩形 变换单元 ; 解码模块, 用于对最终分割得到的多个方形变换单元中的每个方形变换单元或 最终分割得到的多个矩形变换单元中的每个矩形变换单元执行解码流程。 0011 本发明实施例可以通过在同一预测单元内选择将预测单元分割为方形变换单元 或者是矩形变换单元, 采用一种适应图像帧的条状纹理。
22、的可选变换单元 ( 即矩形变换单 元 ) 来处理条状纹理, 能够提高视频图像压缩效率。 附图说明 0012 为了更清楚地说明本发明实施例的技术方案, 下面将对实施例或现有技术描述中 所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些实 施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附 图获得其他的附图。 0013 图 1A 至图 1C 是示出根据本发明实施例的编码单元、 预测单元和变换单元的示意 图。 0014 图 2A 和图 2B 是示出根据本发明另一实施例的编码单元、 预测单元和变换单元的 示意图。 0015 图 3 是示。
23、出根据本发明实施例的基于帧内预测的解码方法的示意性流程图。 0016 图 4 是示出根据本发明另一实施例的基于帧内预测的解码方法的示意性流程图。 0017 图 5 示出根据本发明实施例的基于帧内预测的解码装置的示意性结构图。 具体实施方式 0018 下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完 说 明 书 CN 102857763 A 6 3/12 页 7 整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。基于本发 明中的实施例, 本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例, 都属于本发明保护的范围。 0019。
24、 视频编码器或者解码器广泛的应用于各种电子设备中, 例如, 移动电话, 便携式电 脑, MP3/MP4, 手持式电脑, 摄像机, 视频监控设备。视频编码器或者解码器可以通过数字处 理电路实现, 例如 DSP 芯片实现, 也可以通过处理器 ( 例如 CPU) 调用软件代码实现。 0020 在新一代视频编解码技术中, 提出了一种矩形块的帧内预测模式 - 短距离帧内预 测模式 (SDIP)。与基于方形块的帧内预测方法不同, SDIP 的预测单元为 MN 的矩形块, 其 中 M 与 N 不相等。在解码每一个帧内编码单元时, 首先获取 1 比特的 SDIP_flag 标记判断 是否采用该预测模式。若 S。
25、DIP_flag 为 1, 则再获取 1 比特的 SDIP_direction 标记判断预 测单元是沿水平方向或者沿竖直方向进行条状分割。 解码端需依次对每一个变换单元进行 下列操作 : 通过使用变换单元所对应的预测单元的帧内预测模式进行帧内预测操作来获取 预测信号 ; 通过对接收到的变换系数进行反变换来获取重建预测差值信号 ; 将预测信号与 重建预测差值信号相加, 得到重建图像信号。 0021 当前编码单元采用 SDIP 预测编码模式时, 每个预测单元需要独立地选择自己的 预测模式, 因此编码端采用多种分割方式对预测单元进行分割, 这会大大增加编码复杂度。 0022 图 1A 至 1C 是根。
26、据本发明实施例的编码单元、 预测单元和变换单元的示意图。 0023 如图 1A 所示, 根据本发明的实施例的编码单元 100 可以与预测单元 110 的大小相 同, 即可以将当前编码单元作为一个预测单元。 0024 如图 1B 所示, 预测单元 110 首先被分割为四个大小相等的矩形块, 如矩形块 130。 位于图 1B 顶部的矩形块被进一步分割为四个大小相等的矩形块, 如矩形块 120。由于矩形 块 130 和矩形块 120 没有被断续分割, 所以它们是分割预测单元 110 最终得到的多个矩形 变换单元中的两个矩形变换单元。类似地, 可以采用矩形分割方式对预测单元 110 进行多 个层级的分。
27、割得到多个矩形变换单元。 0025 如图 1C 所示, 预测单元 110 首先被分割为四个大小相等的方形块, 如方形块 140。 位于图 1C 左下方的方形块再经过两次分割得到方形块 150。由于方形块 140 和方形块 150 没有被继续分割, 所以它们是分割预测单元 110 最终得到的多个方形变换单元中的两个方 形变换单元。类似地, 可以采用方形分割方式对预测单元 110 进行多个层级的分割得到多 个方形变换单元。 0026 需要说明的是, 这里所描述的矩形块或矩形变换单元可以表示水平方向与竖直方 向大小不等的四边形的块或变换单元, 这里所描述的方块或方形变换单元可以表示水平方 向与竖直方。
28、向大小相等的四边形的块或变换单元。 0027 图 2A 和图 2B 是示出根据本发明另一实施例的编码单元、 预测单元和变换单元的 示意图。 0028 如图 2A 所示, 根据本发明另一实施例, 可以将当前编码单元 200 分割为四个等大 小的预测单元210, 其中分割得到每个预测单元210的宽度与高度分别为当前编码单元200 的宽度的二分之一。 本领域技术人员知道如何将编码单元分割为四个大小相等的预测单元 的方法, 这里不再详述。 0029 如图 2B 所示, 根据本发明另一实施例, 每一个预测单元 210 可以进一步分割为多 说 明 书 CN 102857763 A 7 4/12 页 8 个。
29、变换单元。例如, 位于图 2B 左上方的预测单元 210 采用矩形分割方式, 经过两次分割后, 得到矩形变换单元 220 ; 位于图 2B 右上方的预测单元 210, 采用方形分割方式, 经过两次分 割后, 得到方形变换单元230 ; 位于图2B右下方的预测单元210, 采用矩形分割, 经过一次分 割后, 得到变换单元 240 ; 位于图 2B 左下方的预测单元 210 没有经过分割, 直接作为方形变 换单元 250。换句话说, 每个预测单元 210 最终分割为如图 2B 所示的多个矩形或方形变换 单元。 0030 由于根据本发明的实施例减少了预测单元划分方式 ( 即, 不使用矩形的预测单元 。
30、划分方式 ), 所以可以降低编码端计算复杂度。 0031 图 3 是示出根据本发明实施例的基于帧内预测的解码方法的示意性流程图。 0032 如图3所示, 在310中, 为当前预测单元从视频图像的压缩码流中获取一个或多个 分割标记、 一个分割形状标记和一个分割方向标记, 上述一个或多个分割标记中与当前块 相对应的分割标记用于指示是否将当前块分割为多个块, 该分割形状标记指示将当前块分 割为多个方形块或者分割为多个矩形块, 该分割方向标记指示将当前块沿水平方向分割为 多个矩形块或者沿竖直方向分割为多个矩形块, 多个方形块中的每个方形块的宽度与高度 相等, 多个矩形块中的每个矩形块宽度与高度不相等。。
31、在 320 中, 根据所获取的上述一个或 多个分割标记、 该分割形状标记和该分割方向标记将当前预测单元最终分割为多个方形变 换单元或多个矩形变换单元。在 330 中, 对最终分割得到的多个方形变换单元中的每个方 形变换单元或最终分割得到的多个矩形变换单元中的每个矩形变换单元执行解码流程。 0033 在基于帧内预测的解码过程中, 为了得到重建差值信号, 要将编码单元分割为变 换单元。根据本发明的实施例, 例如, 可以将编码单元分割为多个预测单元 ( 例如, 方形的 预测单元 ) 或者将编码单元作为一个预测单元。然后, 可以从码流中为每个预测单元获取 一个或多个分割标记, 其中每个分割标记用于表示。
32、是否对与该分割标记相对应的某个图像 块进行分割。在确定对该预测单元进行分割的情况下, 则可以从码流中获取一个分割形状 标记和一个分割方向标记, 并根据分割形状标记将该预测单元分割为矩形变换单元或者是 方形变换单元。在确定将预测单元分割为矩形变换单元的情况下, 根据分割方向标记沿水 平方向或者沿竖直方向分割该预测单元。在对该预测单元经过一次或多次分割, 得到最终 的变换单元后, 再对每个变换单元执行解码流程。 根据本发明的实施例并不限于此, 也可以 对不再分割的变换单元进行即时解码操作。 由于同一预测单元使用了一个分割形状标记和 一个分割方向标记, 因此, 在同一预测单元内, 变换单元的分割方向。
33、和分割形状是一致的。 0034 根据本发明的实施例提供的基于帧内预测的解码方法, 通过在同一预测单元内选 择将预测单元分割为方形变换单元或者是矩形变换单元, 从而采用一种适应图像帧的条状 纹理的可选变换单元(即矩形变换单元)来处理条状纹理, 能够提高视频图像压缩效率。 由 于根据本发明的实施例减少了预测单元划分方式 ( 即, 不使用矩形的预测单元划分方式 ), 所以可以进一步降低编码端计算复杂度。 0035 下面将结合图 1A 至 1C 以及图 2A 和图 2B 以及具体的实现方法来描述图 3 的解码 方法。 0036 在 310 中, 为当前预测单元从视频图像的压缩码流中获取一个或多个分割标。
34、记、 一个分割形状标记和一个分割方向标记, 上述一个或多个分割标记中与当前块相对应的分 割标记用于指示是否将当前块分割为多个块, 该分割形状标记指示将当前块分割为多个方 说 明 书 CN 102857763 A 8 5/12 页 9 形块或者分割为多个矩形块, 该分割方向标记指示将当前块沿水平方向分割为多个矩形块 或者沿竖直方向分割为多个矩形块, 多个方形块中的每个方形块的宽度与高度相等, 多个 矩形块中的每个矩形块宽度与高度不相等。 0037 根据本发明的实施例, 当前块可以是与当前预测单元大小相同的图像块根据本发 明的另一实施例, 分割得到的所述多个块之一作为下一步分割的当前块。 换句话说。
35、, 对预测 单元的分割可以是一个分层级的迭代过程, 直到当前块所对应的分割标记指示不再对当前 块分割, 这时获得的图像块为变换单元, 如图 1A 至图 1C 以及图 2A 和图 2C 所示。 0038 根据本发明的实施例, 沿水平方向分割得到的多个矩形块中的每个矩形块 ( 例 如, 图2B中的矩形变换单元220)的宽度大于高度, 并且沿竖直方向分割得到的多个矩形块 中的每个矩形块 ( 例如, 图 2B 中的矩形变换单元 240) 的宽度小于高度。 0039 根据本发明的实施例, 在上述一个或多个分割标记中的第一个分割标记指示将当 前块分割为多个块的情况下, 在获取第一个分割标记之后, 从压缩码。
36、流中获取一个分割形 状标记 ; 并且在一个分割形状标记指示将当前块分割为多个矩形块的情况下, 在获取一个 分割形状标记之后, 从压缩码流中获取一个分割方向标记。 换句话说, 可以为处于一个预测 单元的不同分割层级的图像块获取对应的分割标记, 而一个预测单元可以获取一个分割形 状标记和一个分割方向标记。另外, 在获取第一分割形状标记后再依次获取分割形状标记 和分割方向标记, 可以提高获取这些标记的效率。当然, 根据本发明的实施例并不限于此, 可以按其它顺序为同一预测单元获取这些标记。 0040 根据本发明的实施例, 例如, 在具体实现时, 可以在压缩码流的结构中加入语法 元素 : non_squ。
37、are_transform_flag 与 non_square_transform_direction。前者表示当 前预测单元是否分割为多个矩形变换单元, 后者表示采用水平还是竖直条状分割方式来 获取多个矩形变换单元。两个语法元素的数值的语义可以按下面方法解释 : non_square_ transform_flag 为 1 表示将当前预测单元分割为若干个矩形变换单元, non_square_ transform_flag 为 0 表示将当前预测单元分割为若干个方形变换单元。non_square_ transform_direction 为 1 表示按水平条状分割方式确定矩形变换单元, 所谓按。
38、水平条 状分割方式确定的变换单元, 是指变换单元的宽度大于高度。non_square_transform_ direction 为 0 表示按竖直条状分割方式确定矩形变换单元。所谓按竖直条状分割方式确 定的矩形变换单元是指变换单元的宽度小于高度。 根据本发明的实施例以亮度的帧内预测 为例进行描述。 0041 解 码 端 可 执 行 下 面 操 作 获 取 non_square_transform_flag 与 non_square_ transform_direction : 判断是否从码流中获取 non_square_transform_flag, 如果是, 则 按照规定的编码方式执行对应的。
39、解析与解码操作从码流中获取 non_square_transform_ flag, 否则将 non_square_transform_flag 设置为默认值 0 ; 如果 non_square_transform_ flag 为 1, 则按照规定的编码方式执行对应的解析与解码操作从码流中获取 non_square_ transform_direction。 0042 可以基于下列条件中的至少一项来判断是否从码流中获取 non_square_ transform_flag : 1) 所获取 split_transform_flag 为当前预测单元中第一个 split_ transform_fla。
40、g, 2) 所获取 split_transform_flag 为 1, 即指示对当前块分割为多个变换 单元, 3)当前块大小满足给定限制条件。 当然, 根据本发明的实施例并不限于此。 在本发明 说 明 书 CN 102857763 A 9 6/12 页 10 的实施例中, 假设仅考虑上述第 1) 项与第 2) 项作为判断条件来进行描述。 0043 与上述解码端操作对应的伪代码语法表格如表 1 所示 : 0044 表 1 0045 代码语法表格表示 语法元素编码方式 if(split_transform_flag) non_square_transform_flag u(1)|ae(v) if(。
41、non_square_transform_flag) non_square_transform_direction u(1)|ae(v) 0046 其 中 标 记 split_transform_flag 表 示 当 前 预 测 单 元 中 的 第 一 个 split_ transform_flag。标记 split_transform_flag 取值可按照本领域中的常规方法确定。表 中 u(1) 表示作为 1 比特无符号整型变量进行编码, 即直接写入码流 ; ae(v) 表示基于上下 文模型的二进制熵编码方式。 0047 需注意的是, 根据本发明实施例的语法元素 non_square_tra。
42、nsform_flag 与 non_square_transform_direction 的语义也可以有用其它解释方法。例如, non_square_ transform_flag 为 1 表示将当前预测单元分割为若干个方形变换单元, non_square_ transform_flag 为 0 表示将当前预测单元分割为若干个矩形变换单元。non_square_ transform_direction 为 1 表示按竖直条状分割方式确定矩形变换单元, non_square_ transform_direction 为 0 表示按水平条状分割方式确定矩形变换单元。语义解释方法不 同时, 解码流程。
43、需进行相应的改变。本领域技术人员根据本发明实施例知道如何进行这样 的改变, 在此不再赘述。 0048 在 320 中, 根据所获取的上述一个或多个分割标记、 该分割形状标记和该分割方 向标记将当前预测单元最终分割为多个方形变换单元或多个矩形变换单元。 0049 根据本发明的实施例, 在上述一个或多个分割标记中与当前块相对应的分割标记 指示将当前块分割为多个块的情况下, 按照分割方向标记对应的分割方向将当前块分割成 多个与分割形状标记对应的方形块或矩形块。 0050 具体来说, 在该分割形状标记指示将当前块分割为多个方形块情况下, 将当前块 分割为四个大小相等的方形块, 其中四个大小相等的方形块。
44、中的每个方形块的宽度或高度 分别为当前块的宽度或高度的二分之一。 0051 在该分割形状标记指示将当前块分割为多个矩形块的情况下, 根据该分割方向标 记将当前块进一步分割为四个大小相等的矩形块。 在该分割方向标记指示将当前块沿水平 方向分割为多个矩形块的情况下, 将当前块沿水平方向分割为四个大小相等的矩形块, 其 中四个大小相等的矩形块中的每个矩形块的宽度与当前块的宽度相同, 并且四个大小相等 的矩形块中的每个矩形块的高度为当前块的高度的四分之一。 说 明 书 CN 102857763 A 10 7/12 页 11 0052 进一步, 在该分割方向标记指示将当前块沿竖直方向分割为多个矩形块的情。
45、况 下, 将当前块沿竖直方向分割为四个大小相等的矩形块, 其中四个大小相等的矩形块中的 每个矩形块的高度与当前块的高度相同, 并且四个大小相等的矩形块中的每个矩形块的宽 度为当前块的宽度的四分之一。 0053 根据本发明的实施例, 在具体实现时, 例如, 在执行该解码流程之前, 当前预测 单元中所有变换单元分割标记 split_transform_flag、 矩形变换单元标记 non_square_ transform_flag 以及矩形变换单元分割方向标记 non_square_transform_direction 都已 经从码流中获取, 并可用于该解码流程。 在对当前预测单元进行分割之前。
46、, 当前块即是当前 预测单元。对当前预测单元进行分割之后, 当前块可以是分割得到任一图像块。 0054 根据本发明的实施例, 可以首先获取各输入参数 : 亮度位置 (xB, yB), 该位置 表示当前块左上角像素相对于当前图像左上角像素的位移 ; 当前块宽度的对数表示 log2TrafoWidth 与高度的对数表示 log2TrafoHeight ; 当前块相对于当前编码单元的 层级深度 trafoDepth ; 当前块所使用的帧内预测模式 intraPredMode ; 当前块的色彩分 量索引 cIdx, cIdx 为 0 表示亮度分量, cIdx 为 1 或 2 表示色度分量。在 non_。
47、square_ transform_flag 为 0 时, log2TrafoWidth 与 log2TrafoHeight 相等, 此时将这两个变量记 作 log2TrafoSize。这里, log2TrafoWidth 表示以 2 为底对宽度求对数, 例如, 44 块的 log2TrafoWidth 的值为 2, 而 88 块的 log2TrafoWidth 为 3。log2TrafoSize 表示以 2 为 底对方形块的边长求对数。 0055 根据本发明的实施例, 在当前块 split_transform_flag 为 1 时, 即在需要对当前 块进行分割时, 进行如下处理。 0056 。
48、首先, 设置分割得到的四个块的位置信息。分割得到四个块的左上角亮度位置 分别记做 (xB, yB)、 (xB1, yB1)、 (xB2, yB2) 和 (xB3, yB3)。在 non_square_transform_ flag 为 1 且 non_square_transform_direction 为 1 时,将 xB1, xB2, xB3 都 设 置 为 xB, 将 yB1 设 置 为 yB+(1 log2TrafoHeight) 2), 将 yB2 设 置 为 yB 1+(1 log2TrafoHeight)2), 将yB3设置为yB2+(1log2TrafoHeight)2) ; 。
49、在 non_square_transform_flag 为 1 且 non_square_transform_direction 为 0 时, 将 yB1, yB2, yB3 都设置为 yB ; 将 xB1 设置为 xB+(1 log2TrafoWidth) 2), 将 xB2 设置 为 xB1+(1 log2TrafoWidth) 2), 将 xB3 设置为 xB2+(1 log2TrafoWidth) 2) ; 在 non_square_transform_flag 为 0 时, 将 xB2 设置为 xB, 将 xB1 与 xB3 设置 为 xB+(1 log2TrafoSize) 1), 将 yB1 设置为 yB, 将 yB2 与 yB3 设置为 yB+(1 log2TrafoSize) 1)。这里, 1 x 指把二进制数 1 向左移 x 位, 例如, 1 2 表示二进制 100, x 2 表示将二进制数 x 向右移 2。