对编码单位的变换单位编码和解码的方法、设备和系统的制作方法_5

文档序号:8367822阅读:来源:国知局
换树句法结构 9116、9118、9120、9122是变换树句法结构9102的另一实例。在变换树句法结构9102中将 不存在编码块标志9124和亮度变换单位部9126。
[0122] 实现还可以对变换树句法结构9102进行配置,以使得将编码块标志9124和亮度 变换单位部9126 (在存在的情况下)放置在变换树句法结构9102中的较前位置,诸如放置 在编码块标志9114和变换树句法结构9116之间等。
[0123] 对于诸如变换树630等的变换树的叶节点处的变换树句法结构9102的实例,分割 变换标志9110对诸如分割变换标志值704等的分割变换标志值(0)进行编码。因而,变换 树句法结构9102的实例与变换树930中的变换单位(TU)相对应。变换单位(TU)具有根 据诸如编码单位(CU) 602等的包含变换单位(CU)的编码单位(CU)以及变换深度所确定的 大小。编码块标志9112对编码块标志值(1)进行编码,以表示通过针对"U"色度通道的推 断分割所产生的任何色度区域均可以具有编码块标志值(1)。如果编码块标志9112对值0 进行编码,则通过针对"U"色度通道的推断分割所产生的各色度区域的编码块标志值具有 被推断为〇的编码块标志值。即使在编码块标志9112对值1进行编码的情况下,实现仍可 以对通过推断分割所产生的各色度区域的值为0的编码块标志进行编码。因此,实现可以 将编码块标志9112从编码位流312中省略,代替地始终针对所省略的编码块标志9112推 断编码块标志值(1)。编码块标志9114以与编码块标志9112相同的方式对"V"色度通道 的另一编码块标志值进行编码。对于与发生向四个色度区域的推断分割(色度残差系数阵 列的最大数量为4)的大小一致的变换单位(TU)大小,在变换树节点句法结构9102中包括 四个变换树句法结构9116、9118、9120、9122。对于与发生向两个色度区域的推断分割(色 度残差系数阵列的最大数量为2)的大小一致的变换单位(TU)大小,在变换树节点句法结 构9102中包括诸如变换树句法结构9116、9118等的两个变换树句法结构。各个变换树句法 结构9116、9118、9120、9122是针对色度句法结构9132的变换树的实例。编码块标志9124 对诸如编码块标志值708等的编码块标志值进行编码,从而指定针对变换单位(TU)的亮度 通道的变换的有无。变换单位9126的亮度部分将亮度残差系数阵列编码为亮度残差句法 元素9128。
[0124] 在发生推断分割的情况下仅针对各色度区域而存在的色度句法结构9132的变换 树包括变换树句法结构930的句法的缩小集合。编码块标志9142对色度区域的"U"色度 通道的编码块标志值进行编码。编码块标志9144对色度区域的"V"色度通道的编码块标 志值进行编码。变换单位(TU) 9146的色度部分对变换单位(TU)句法结构952的子集进行 编码。如果编码块标志9142的值为1,则变换单位(TU) 9146的色度部分针对"U"色度通道 将色度残差系数阵列编码为色度残差句法元素9150。如果编码块标志9144的值为1,则变 换单位(TU) 9146的色度部分针对"V"色度通道将色度残差系数阵列编码为色度残差句法 元素9152。
[0125] 如图9D所示的句法结构9130针对推断变换分割示出紧挨各色度通道的第一和第 二色度残差系数阵列之后进行编码得到的第一和第二编码块标志。可选地,可以使用诸如 针对各色度通道以邻接方式对编码块标志和色度残差系数阵列进行编码等的其它配置。
[0126] 尽管通过将8 X 16区域664分割成两个8 X 8区域来例示推断变换分割,但替代实 现可以针对其它区域进行该分割。例如,一些实现可以推断16X32区域向两个16X16区 域的分割。这些实现有利地使得不必进行色度处理路径中的32点1D变换。由于在应用 4:2:0色度格式时针对色度处理路径不要求32点1D变换,因此将针对32点1D变换的要求 从色度处理路径完全去除。由此,使用单独的处理电路以使亮度通道和色度通道解耦的实 现可以在色度处理电路中实现较低的实现成本。
[0127] 存在针对各亮度样本位置具有一个色度样本位置的4:4:4色度格式。因此,利用 该格式,针对色度格式和亮度格式的变换可以具有相同大小。在亮度处理路径中最大变换 大小为32 X 32的情况下,这需要将32 X 32变换引入色度处理路径以进行解耦实现。特定 实现可以推断针对各色度通道的用以将32X32区域分割成四个16X16区域的分割,从而 使得能够将现有的16X 16变换重新用在色度处理路径中。由于在针对4:4:4色度格式的 色度处理路径中将仅使用32X32变换,因此推断针对各色度通道的用以将32X32区域分 割成四个16X16区域的分割将使得能够将32X32变换从色度处理路径去除,从而减少所 需的处理电路。这些实现针对各色度通道将需要四个编码块标志值,并且由此将多达四个 编码块标志在编码位流312中编码在针对各色度通道的句法结构930中。
[0128] 支持4:2:2色度格式的实现还可以推断针对各色度通道的用以将32 X 16区域分 割成四个8X 16区域的分割。这些实现针对各色度通道需要四个编码块标志值,由此将四 个编码块标志在编码位流312中编码在针对各色度通道的句法结构930中,因而在变换单 位(TU)句法结构952中可以引入"CU3"、"CU4"、"CV3"和"CV4"编码块标志(图9B中未 示出)。这些实现避免了将32点变换逻辑引入色度处理路径,并且在不对8X 16区域进行 子分割的情况下,这些实现可以将要求变换的(亮度通道中的)大小为16X 16的变换单位 (TU)所需的8X 16变换逻辑重新用于针对色度通道的大小为8X 16的变换。
[0129] 图10是示出用于通过对变换树非叶节点句法结构902和变换树叶节点句法结构 932进行编码来对变换单位(TU)进行编码的方法1000的示意流程图。参考变换单位(TU) 的色度通道来说明方法1000,然而方法1000还可应用于变换单位(TU)的任何色度通道。 由于变换树非叶节点句法结构902和变换树叶节点句法结构932描述变换树中的一个节 点,因此方法1000将变换树的一个节点编码在编码位流312中。例如,可以以硬件或利用在 处理器205上可执行的软件来实现方法1000。最初针对变换树的顶层等级调用方法1000, 并且方法1000能够(递归地)调用自身以对变换树的子节点进行编码。确定变换单位大 小的步骤1002根据包含变换树的编码单位(CU)大小和变换单位(TU)的变换深度值来确 定变换树中的变换单位(TU)的大小。在变换树的顶层等级调用方法1000的情况下,将变 换深度值设置为〇,否则利用方法1000的母实例来提供变换深度值。如果变换深度值小于 最大容许变换深度,则将诸如分割变换标志值702等的分割变换标志值作为分割变换标志 910编码在编码位流312中。
[0130] 在分割变换标志值为1时,仅在变换树层级的母节点具有相应的编码块标志值 (1)的情况下,才针对各色度通道进行色度编码块标志912和914的编码。然后,方法1000 针对变换树的(利用变换树句法结构916、918、920和922在编码位流312的一部分中所表 示的)各子节点调用方法1000的新实例。针对子节点所调用的方法1000的各实例设置有 与(本方法1000实例的变换深度值+1)相等的变换深度值。
[0131] 在分割变换标志值为0的情况下,识别最大数量的正变换的步骤1004确定针对编 码中的区域的各色度通道的最大数量(n)的变换。在没有发生推断分割的情况下,该数量 n将为1。在4:2:2色度格式处于使用中、遇到诸如8 X 16区域664等的色度通道的矩形区 域并且该区域大小是区域大小的预定集合(诸如16X32和8X 16等)其中之一的情况下, 发生推断分割并且变换的最大数量将为2 (否则变换数量将为1)。另一方面(区域大小不 是区域大小的预定集合其中之一),变换的最大数量将为1。例如,如果4X8不是区域大小 的预定集合其中之一,则变换的最大数量将为1。在4:4:4色度格式处于使用中并且所遇到 的区域大小是区域大小的预定集合其中之一(诸如32X32区域等)的情况下,发生推断分 割并且变换的最大数量将为4。另一方面(区域大小不是区域大小的预定集合其中之一), 最大数量将为1。例如,如果8X8不是区域大小的预定集合其中之一,则变换的最大数量将 为1。尽管区域大小的预定集合包括8X16,但区域大小的其它预定集合也是可以的,诸如 在4:2:2色度格式处于使用中的情况下仅为16X32或者在4:4:4色度格式处于使用中的 情况下为32X32等。
[0132] 针对各色度通道,如果母节点的编码块标志值为1,则针对各个n,将编码块标志 编码在编码位流312中。例如,在变换数量等于2的情况下,编码块标志942和944表示针对 通过分割所推断出的两个区域各自存在变换。选择正变换的步骤1006基于变换单位(TU) 大小来针对最大数量的各变换从正变换的预定集合中选择正变换,而该变换单位(TU)大 小依赖于变换深度,因而与最大编码单位中的变换单位的层级有关。在变换深度等于〇的 情况下,变换单位(TU)大小等于编码单位(CU)大小。对于变换深度的各递增,变换单位 (TU)大小减半。对于32X32编码单位(⑶)大小、变换深度为0并且使用4:2:2色度格式, 变换单位(TU)大小由此将是32X32并且针对色度的变换大小由此将为16X32。例如,在 变换的最大数量为2并且针对色度的区域大小为16 X 32的情况下,针对通过推断分割而产 生的色度的各个16X 16区域选择16X 16正变换。
[0133] 应用正变换的步骤1008针对编码块标志值为1的相应区域上的最大数量的各变 换进行正变换。对色度残差样本阵列进行编码的步骤1008通常由变换模块320来进行。这 样使得将各色度残差样本阵列(空间域表示)转换成色度残差系数阵列(频域表示)。
[0134] 对色度残差系数阵列进行编码的步骤1010将编码块标志值为1的各色度通道的 最大数量的变换区域各自的色度残差系数阵列编码在编码位流312中。针对给定色度通道 的给定变换单位进行编码的色度残差系数阵列的数量依赖于各变换的编码块标志值,因而 将在0~(最多为)变换的最大数量的范围内改变。例如,在变换数量为2、并且这两个色 度通道针对各个计数值的编码块标志值均为1的情况下,将色度残差块956、958、960和962 编码在编码位流312中。如果针对给定色度通道的各变换的编码块标志值为0,则针对该色 度通道不将色度残差块编码在编码位流312中。对色度残差系数阵列进行编码的步骤1010 通常由熵编码器324来进行。
[0135] 图11是示出用于通过对变换树非叶节点句法结构902和变换树叶节点句法结构 932进行解码来对变换单位(TU)进行解码的方法1100的示意流程图。参考变换单位(TU) 的色度通道来说明方法1100,然而方法1100还可应用于变换单位(TU)的任何色度通道。 由于变换树非叶节点句法结构902和变换树叶节点句法结构932描述变换树中的一个节 点,因此方法1100从编码位流312解码变换树的一个节点。可以以适当的硬件或者可选地 以例如处理器205可执行的软件来进行方法1100。最初针对变换树的顶层等级调用方法 1100,并且方法1100能够(递归地)调用自身以对变换树的子节点进行解码。确定变换 单位(TU)大小的步骤1102以与确定变换单位大小的步骤1002相同的方式确定变换单位 (TU)大小。确定变换单位大小的步骤1102根据包含变换树的编码单位(CU)大小和变换单 位(TU)的变换深度值来确定变换树中的变换单位(TU)的大小。在变换树的顶层等级调用 方法1100的情况下,将变换深度值设置为0,否则将利用方法1100的母实例来提供变换深 度值。在变换深度值小于最大容许变换深度的情况下,从编码位流312解码诸如分割变换 标志值702等的分割变换标志值作为分割变换标志910。
[0136] 在分割变换标志值为1的情况下,仅在变换树层级的母节点具有相应的编码块标 志值(1)的情况下,才针对各色度通道进行色度编码块标志912和914的解码。然后,方法 1100针对变换树的(利用变换树句法结构916、918、920和922在编码位流312的一部分中 所表示的)各子节点调用方法1100的新实例。针对子节点所调用的方法1100的各实例设 置有与(本发明1100实例的变换深度值+1)相等的变换深度值。
[0137] 在分割变换标志值为0的情况下,识别最大数量的逆变换的步骤1104以与识别最 大数量(n)的正变换的步骤1004相同的方式,确定针对存在于解码中的区域的各色度通道 的至少一个色度残差系数阵列各自的变换的(最大)数量(n)。在没有发生推断分割的情 况下,该数量n将为1。在4:2:2色度格式处于使用中、遇到诸如8 X 16区域664等的色度 通道的矩形区域并且区域大小是区域大小的预定集合(诸如16X32和8X 16等)其中之 一的情况下,发生推断分割并且变换的最大数量将为2 (否则,变换数量将为1)。另一方面 (区域大小不是区域大小的预定集合其中之一),变换的最大数量将为1。例如,如果4X8 不是区域大小的预定集合其中之一,则变换的最大数量将为1。在4:4:4色度格式处于使用 中并且所遇到的区域大小是区域大小的预定集合其中之一(诸如32X32区域等)的情况 下,发生推断分割并且变换的最大数量将为4。另一方面(区域大小不是区域大小的预定集 合其中之一),最大数量将为1。例如,如果8X8不是区域大小的预定集合其中之一,则变 换的最大数量将为1。尽管区域大小的预定集合包括8X16,但区域大小的其它预定集合也 是可以的,诸如在4:2:2色度格式处于使用中的情况下仅为16 X 32或者在4:4:4色度格式 处于使用中的情况下为32 X 32等。针对各色度通道,如果母节点的编码块标志值为1,则针 对(n)个变换中的每一个变换,在编码位流312中解码编码块标志。例如,在变换的最大数 量等于2的情况下,编码块标志942和944表示针对通过分割推断出的两个区域各自存在 变换。
[0138] 然后,对色度残差系数阵列进行解码的步骤1106从编码块标志值为1的编码位流 312中解码针对各色度通道的最大数量的变换区域各自的残差系数阵列。针对给定色度通 道的给定变换单位进行解码的残差系数阵列的数量依赖于各变换的编码块标志值,因而将 在〇~(最多为)"变换数量(n) "的范围内改变。例如,在变换数量为2并且这两个色度 通道针对各个计数值的编码块标志均为1的情况下,从编码位流312解码色度残差块956、 958、960和962。对色度残差系数阵列进行解码的步骤1106通常由熵解码器420针对编码 块标志值为1的各色度残差系数阵列进行。
[0139] 然后,选择逆变换的步骤1108对于针对各色度通道的编码块标志值为1的最大数 量的各变换,从逆变换的预定集合中选择逆变换。例如,在变换的最大数量为2、区域大小为 16X32并且针对这两个变换各自的编码块标志值为1的情况下,针对通过推断分割而产生 的16 X 16区域各自选择16 X 16逆变换。
[0140] 然后,应用逆变换的步骤1110针对编码块标志值为1的相应区域上的最大数量的 变换区域各自进行逆变换。这样使得将各色度残差系数阵列(频域表示
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1