视频解码设备的制造方法
【专利说明】
[0001 ]本申请是向中国知识产权局提交的申请日为20 11年04月0 5日、申请号为 201180027747.0、发明名称为"用于通过使用变换索引对视频进行编码的方法和设备、用于 通过使用变换索引对视频进行解码的方法和设备"的申请的分案申请。
技术领域
[0002] 示例性实施例涉及执行空间域与变换域之间的变换的视频编码和视频解码。
【背景技术】
[0003] 随着用于再现和存储高分辨率或高质量视频内容的硬件的开发和提供,对于用于 有效地编码或解码高分辨率或高质量视频内容的视频编解码器的需要正在增加。在传统的 视频编解码器中,基于具有预定尺寸的宏块根据有限的编码方法对视频进行编码。在传统 的视频编解码器中,通过使用均具有相同尺寸的块对宏块执行变换和逆变换,来对视频数 据进行编码和解码。
【发明内容】
[0004] 技术问题
[0005] 示例性实施例涉及执行空间域与变换域之间的变换的视频编码和视频解码。
[0006] 技术方案
[0007] 根据示例性实施例的一方面,提供了 一种对视频进行编码的方法,包括:确定变换 单元,其中,所述变换单元是对当前编码单元进行变换的数据单元,编码单元是对视频的当 前画面进行编码的数据单元;基于确定的变换单元对当前编码单元的数据进行变换,以对 当前编码单元的数据进行编码;将当前编码单元的编码数据、指示当前编码单元的编码数 据的编码模式的编码模式信息以及指示对当前编码单元的数据进行变换的变换单元的结 构的变换索引信息输出为比特流。
[0008] 有益效果
[0009] 根据示例性实施例的视频编码设备和根据示例性实施例的视频解码设备可通过 使用根据示例性实施例的变换索引信息来有效地对用于确定具有树结构的变换单元的各 种尺寸和形状的信息进行编码和解码,其中,所述信息是在基于编码单元的各种尺寸和形 状的视频编码和解码期间执行变换和逆变换所必需的。
【附图说明】
[0010] 图1是根据示例性实施例的使用变换索引的视频编码设备的框图;
[0011] 图2是根据示例性实施例的使用变换索引的视频解码设备的框图;
[0012] 图3是示出根据示例性实施例的变换单元的结构和变换索引的示图;
[0013] 图4是示出根据示例性实施例的变换单元的结构和变换索引的示图;
[0014]图5和图6是不出根据不例性实施例的使用变换索引的不例的不图;
[0015] 图7是示出根据示例性实施例的使用变换索引的视频编码方法的流程图;
[0016] 图8是示出根据示例性实施例的使用变换索引的视频解码方法的流程图;
[0017] 图9是根据示例性实施例的使用具有树结构的编码单元和变换索引的视频编码设 备的框图;
[0018] 图10是根据示例性实施例的使用具有树结构的编码单元和变换索引的视频解码 设备的框图;
[0019] 图11是用于描述根据示例性实施例的编码单元的构思的示图;
[0020] 图12是根据示例性实施例的基于编码单元的图像编码器的框图;
[0021 ]图13是根据示例性实施例的基于编码单元的图像解码器的框图;
[0022]图14是根据示例性实施例的根据深度的更深层编码单元以及分区(partition)的 示图;
[0023] 图15是用于描述根据示例性实施例的编码单元与变换单元之间的关系的示图;
[0024] 图16是用于描述根据示例性实施例的与编码深度对应的编码单元的编码信息的 示图;
[0025] 图17是根据示例性实施例的根据深度的更深层编码单元的示图;
[0026] 图18至图20是用于描述根据示例性实施例的编码单元、预测单元和变换单元之间 的关系的不图;
[0027] 图21是用于描述根据表1的编码模式信息的编码单元、预测单元或分区和变换单 兀之间的关系的不图;
[0028] 图22是示出根据示例性实施例的基于具有树结构的编码单元和变换单元使用变 换索引的视频编码方法的流程图;
[0029] 图23是示出根据示例性实施例的基于具有树结构的编码单元和变换单元使用变 换索引的视频解码方法的流程图。
[0030] 最佳模式
[0031 ]根据示例性实施例的一方面,提供了 一种对视频进行编码的方法,包括:确定变换 单元,其中,所述变换单元是对当前编码单元进行变换的数据单元,编码单元是对视频的当 前画面进行编码的数据单元;基于确定的变换单元对当前编码单元的数据进行变换,以对 当前编码单元的数据进行编码;将当前编码单元的编码数据、指示当前编码单元的编码数 据的编码模式的编码模式信息以及指示对当前编码单元的数据进行变换的变换单元的结 构的变换索引信息输出为比特流。
[0032]根据示例性实施例的另一方面,提供了一种对编码的视频进行解码的方法,包括: 接收编码的视频的比特流并解析接收的比特流;从解析的比特流提取当前编码单元的编码 数据、编码模式信息以及变换索引信息,其中,所述当前编码单元是对编码的视频的当前画 面进行编码的数据单元,编码模式信息指示当前编码单元的编码数据的编码模式,变换索 引信息指示作为对当前编码单元的数据进行变换的数据单元的变换单元的结构;基于变换 索引信息对当前编码单元的编码数据执行逆变换,以对以变换单元变换的当前编码单元的 编码数据进行解码。
[0033]根据示例性实施例的另一方面,提供了一种包括处理器的视频编码设备,所述视 频编码设备包括:变换单元确定器,确定变换单元,其中,所述变换单元是对当前编码单元 进行变换的数据单元,编码单元是对接收的视频的当前画面进行编码的数据单元;编码单 元,基于确定的变换单元对当前编码单元的数据进行变换,以对当前编码单元的数据进行 编码;编码数据输出单元,输出当前编码单元的编码数据、指示当前编码单元的编码数据的 编码模式的编码模式信息以及指示对当前编码单元的数据进行变换的变换单元的结构的 变换索引信息。
[0034]根据示例性实施例的另一方面,提供了一种包括处理器的视频解码设备,所述视 频解码设备包括:接收器,接收编码的视频的比特流并解析接收的比特流;提取器,从解析 的比特流提取当前编码单元的编码数据、编码模式信息以及变换索引信息,其中,所述当前 编码单元是对编码的视频的当前画面进行编码的数据单元,编码模式信息指示当前编码单 元的编码数据的编码模式,变换索引信息指示作为对当前编码单元进行变换的数据单元的 变换单元的树结构;解码器,基于变换索引信息对当前编码单元的编码数据执行逆变换,以 对以变换单元变换的当前编码单元的编码数据进行解码。
[0035]根据示例性实施例的另一方面,提供了一种包括处理器的视频编码设备,所述设 备包括:最大编码单元划分器,将当前画面划分为至少一个最大编码单元;编码单元确定 器,通过对于所述至少一个最大编码单元中的每一个最大编码单元,从根据指示所述至少 一个最大编码单元被空间划分的次数的深度而分层地构成的所有更深层编码单元中独立 地确定用于输出每个更深层编码单元的编码结果的编码深度的编码单元,并确定作为对具 有树结构的编码单元中的当前编码单元进行变换的数据单元的变换单元,来确定具有树结 构的编码单元(其中,所述具有树结构的编码单元包括在所述至少一个最大编码单元的相 同区域中根据深度而分层且在不同区域中处于独立的编码深度的编码单元),以通过包括 基于变换单元的变换来对当前编码单元进行编码;输出单元,对于每一个最大编码单元,对 当前画面的编码数据、关于具有树结构的编码单元的编码深度和编码模式的信息以及关于 编码深度的编码单元的变换单元的结构的变换索引信息进行编码和输出。
[0036]根据示例性实施例的另一方面,提供了一种包括处理器的视频解码设备,所述设 备包括:接收器,接收编码的视频的比特流并解析接收的比特流;图像数据和编码信息提取 器,从解析的比特流,根据包括在画面被划分成的多个最大编码单元中的每一个最大编码 单元中的具有树结构的编码单元,提取画面的编码数据、关于编码深度和编码模式的信息 以及关于编码深度的编码单元的变换单元的结构的信息;图像数据解码器,通过对于所述 多个最大编码单元中的每一个最大编码单元,基于根据变换索引信息获得的变换单元对编 码深度的编码单元执行逆变换来对编码数据进行解码,其中,具有树结构的编码单元包括 当所述多个最大编码单元中的至少一个最大编码单元被编码时,在根据指示最大编码单元 被空间划分的次数的深度而分层构成的更深层编码单元中与被确定为用于输出编码结果 的编码深度对应的编码单元。
[0037] 根据示例性实施例的另一方面,提供了一种在其上记录有用于执行对视频进行编 码的方法的程序的计算机可读记录介质。
[0038] 根据示例性实施例的另一方面,提供了一种在其上记录有用于执行对视频进行解 码的方法的程序的计算机可读记录介质。
【具体实施方式】
[0039] 以下,将参照示出示例性实施例的附图更加充分地描述示例性实施例。在示例性 实施例中,"单元"根据其上下文可指示或可不指示尺寸单元,"图像"可指示视频的静止图 像或运动图像,即,视频自身。
[0040] 以下,根据示例性实施例,"编码单元"是在编码器侧对图像数据进行编码的编码 数据单元和在解码器侧对编码的图像数据进行解码的编码数据单元。此外,"编码深度"指 示编码单元被编码的深度。
[0041] 将参照图1至图8描述根据示例性实施例的基于具有树结构的变换单元通过使用 变换索引对视频的编码和解码。将参照图9至图23来描述根据示例性实施例的基于具有树 结构的编码单元和变换单元通过使用变换索引对视频的编码和解码。
[0042] 首先,将参照图1至图8描述根据示例性实施例的用于通过使用变换索引对视频进 行编码的方法和设备以及用于通过使用变换索引对视频进行解码的方法和设备。
[0043]图1是根据示例性实施例的使用变换索引的视频编码设备10的框图。
[0044] 参照图1,使用变换索引的视频编码设备10包括变换单元确定器12、编码单元14和 编码数据输出单元16。为了便于解释,使用变换索引的视频编码设备将被称作视频编码设 备10。可由视频编码处理器(未示出)、中央处理单元(CPU)、图形处理单元(GPU)等有组织地 控制视频编码设备10的变换单元确定器12、编码单元14和编码数据输出单元16的操作。
[0045] 视频编码设备10将接收的视频的当前画面划分为多个数据单元(其中,每个数据 单元具有预定尺寸),并对每一个数据单元执行编码以对当前画面进行编码。以下,对当前 画面进行编码的数据单元被称作"编码单元"。视频编码设备10可通过对每个编码单元执行 包括帧间预测和帧内预测的预测编码、变换和量化以及熵编码,来对当前画面进行编码。
[0046] 变换单元确定器12确定变换单元,即,对当前画面的编码单元中的当前编码单元 进行变换的数据单元。变换单元可被包括在当前编码单元中,并且可被确定为具有小于或 等于当前编码单元的尺寸的数据单元。变换单元确定器12可通过将当前编码单元的高度和 宽度二等分(即,将当前编码单元四等分)来产生变换单元。
[0047] 变换单元确定器12可通过将变换单元的高度和宽度二等分来产生较低等级的变 换单元。变换单元12可通过将所有变换单元划分为较低等级的变换单元,来将当前编码单 元划分为均具有相同尺寸的变换单元。由于每个变换单元的高度和宽度被二等分,所以当 前编码单元可被划分为均具有相同尺寸的变换单元,并且较低等级的变换单元的总数是4 的正整数次幂。
[0048] 变换单元确定器12可确定具有树结构的变换单元,以对当前编码单元进行变换。 具有树结构的变换单元包括当前编码单元的变换单元中的最终变换单元,其中,所述最终 变换单元的变换结果被确定将被输出。
[0049] 为了确定具有树结构的变换单元,变换单元确定器12可通过重复地二等分当前编 码单元的变换单元中的变换单元的高度和宽度,来产生较低等级的变换单元。变换单元确 定器12可确定是否将每个变换单元划分为较低等级的变换单元,上述确定独立于与所述每 个变换单元的等级相同的等级上的其它变换单元。
[0050] 变换单元确定器12可通过对当前编码单元中的具有分层结构的所有等级中的每 一个等级的变换单元重复地进行变换,来选择变换误差最小化的等级的变换单元。允许最 小变换误差的等级的变换单元可被确定为其变换结果将被输出的最终变换单元。因此,变 换单元确定器12可确定根据示例性实施例的具有树结构的变换单元,其中,包括了其变换 结果被确定将被输出的最终变换单元。
[0051] 编码单元14通过产生当前编码单元的残差数据并基于由变换单元确定器12确定 的变换单元对残差数据进行变换,来对当前编码单元进行编码。根据示例性实施例的针对 视频编码的"变换"指的是用于将视频的空间域的数据变换为其变换域的数据的数据处理 技术。由编码单元14针对视频编码执行的变换可包括频率变换、正交变换和整数变换等。
[0052] 编码数据输出单元16将当前编码单元的编码数据、指示编码模式的信息和变换索 引信息输出为比特流。
[0053] 关于编码模式的信息可包括关于用于对当前编码单元编码的各种方法等的信息。
[0054] 变换索引信息可以是关于用于对当前编码单元进行变换的变换单元的结构的信 息。例如,变换索引信息可包括当前编码单元被划分至成为最终等级的变换单元的划分次 数和关于变换单元的尺寸和形状的信息。
[0055] 变换索引信息可表示当前变换单元是否被划分为较低等级的变换单元。例如,指 示当前变换单元是否被划分为较低等级的变换单元的与1比特数据对应的变换单元划分比 特可被用作变换索引信息。
[0056] 根据第一示例性实施例的变换索引信息可指示当前变换单元是否被划分为均具 有相同尺寸的变换单元。例如,根据第一示例性实施例的变换索引信息可指示当前编码单 元的高度和宽度均被二等分一次而获得四个变换单元,还是当前编码单元的高度和宽度均 被二等分两次而获得16个变换单元。换言之,根据第一示例性实施例的变换索引信息可指 示当前编码单元被划分成的均具有相同尺寸的变换单元的4的正整数次幂的数值。
[0057] 根据第二示例性实施例的变换索引信息可表示当前编码单元是否根据例性实施 例被划分为根据树结构的具有各种尺寸的变