首页 / 专利库 / 纺织设备及加工 / 针织机 / 经编机 / 视频块预测模式的自适应译码

视频预测模式的自适应译码

阅读:314发布:2022-07-26

专利汇可以提供视频预测模式的自适应译码专利检索,专利查询,专利分析的服务。并且本 发明 描述用于对视频 块 的标头信息进行译码的技术。明确地说,本发明的所述技术选择多个预测模式中的一者以供在产生译码单元的视频块的预测块中使用,所述多个预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模式。编码装置基于所述译码单元的一个或一个以上先前经编码视频块的预测模式对当前视频块的预测模式进行编码。同样地,解码单元接收译码单元的视频块的经编码视频数据,及对所述经编码视频数据进行解码以基于所述译码单元的一个或一个以上先前经解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块中使用的预测模式。,下面是视频预测模式的自适应译码专利的具体信息内容。

1.一种对视频数据进行编码的方法,所述方法包含:
选择多个预测模式中的一者以供在产生译码单元的视频的预测块中使用,其中 所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测 模式;以及
基于所述译码单元的一个或一个以上先前经编码视频块的预测模式对当前视频 块的预测模式进行编码。
2.根据权利要求1所述的方法,其进一步包含基于所述译码单元的所述一个或一个以 上先前经编码视频块的所述预测模式选择多个译码上下文中的一者以供在编码所 述视频块的所述预测模式中使用,其中编码包含根据所述所选译码上下文而编码。
3.根据权利要求2所述的方法,其中选择所述译码上下文中的一者包含:
当所述一个或一个以上先前经编码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经编码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经编码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
4.根据权利要求1所述的方法,其进一步包含:
从所述视频块减去使用所述所选预测模式产生的所述预测块以形成残差块;
基于所述所选预测模式选择变换以应用于所述残差块;以及
将所述所选变换应用于所述残差块以产生残差变换系数。
5.根据权利要求4所述的方法,其中选择所述变换以应用于所述残差块包含:
当所述所选预测模式展现有限方向性时,选择离散余弦变换(DCT)及整数变换 中的一者以应用于所述残差块;以及
当所述所选预测模式展现方向性时,选择方向性变换以应用于所述残差块。
6.根据权利要求5所述的方法,其中选择所述DCT及所述整数变换中的一者包含当 所述所选预测模式为DC单向性预测模式或组合指向实质上正交方向的至少两个预 测模式的多向性预测模式时,选择所述DCT及所述整数变换中的一者以应用于所 述残差块。
7.根据权利要求5所述的方法,其进一步包含存储多个方向性变换,其中所述多个方 向性变换中的每一者符合所述预测模式中的展现方向性的一者,其中选择所述方向 性变换包含选择所述多个方向性变换中的对应于所述所选预测模式的所述一者。
8.根据权利要求4所述的方法,其进一步包含存储各自符合所述预测模式中的一者的 多个方向性变换,其中所述方向性变换中的每一者包含大小为N×N的列变换矩阵 及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
9.根据权利要求4所述的方法,其进一步包含存储各自符合所述预测模式中的一者的 多个方向性变换,其中所述多个方向性变换中的每一者包含大小为N2×N2的变换矩 阵,其中N为所述视频块的维度。
10.根据权利要求1所述的方法,其中所述多个预测模式包括单向性预测模式及可能的 双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向性 预测模式中的每一者的组合。
11.根据权利要求1所述的方法,其中基于所述译码单元的一个或一个以上先前经编码 视频块的预测模式对所述当前视频块的所述预测模式进行编码包含:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与所 述一个或一个以上先前经编码视频块的所述预测模式中的一者相同;以及
当所述一个或一个以上先前经编码视频块的所述预测模式彼此不相同时,对表示 所述预测模式的至少一个额外位进行编码以指示所述一个或一个以上先前经编码 视频块中的哪一者具有与所述视频块的所述预测模式相同的预测模式。
12.根据权利要求1所述的方法,其中基于所述译码单元的一个或一个以上先前经编码 视频块的预测模式对所述当前视频块的所述预测模式进行编码包含:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与所 述一个或一个以上先前经编码视频块的所述预测模式中的任一者不相同;
从所述多个预测模式中移除所述一个或一个以上先前经编码视频块的至少所述 预测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的预测模式的至少一个额外 预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对识别对应于所述当前视频块的所述预测模式的所述预测模式识别符的码字进 行编码。
13.一种对视频数据进行编码的装置,所述装置包含:
预测单元,其选择多个预测模式中的一者以供在产生译码单元的视频块的预测块 中使用,其中所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的 多向性预测模式;以及
熵编码单元,其基于所述译码单元的一个或一个以上先前经编码视频块的预测模 式对当前视频块的预测模式进行编码。
14.根据权利要求13所述的装置,其中所述熵编码单元基于所述译码单元的所述一个 或一个以上先前经编码视频块的所述预测模式选择多个译码上下文中的一者以供 在对所述视频块的所述预测模式进行编码中使用,且根据所述所选译码上下文而对 所述预测模式进行编码。
15.根据权利要求14所述的装置,其中所述熵编码单元当所述一个或一个以上先前经 编码视频块的所述预测模式均为单向性预测模式时,选择第一译码上下文;当所述 一个或一个以上先前经编码视频块的所述预测模式均为多向性预测模式时,选择第 二译码上下文;及当所述一个或一个以上先前经编码视频块的所述预测模式既非全 部单向也非全部多向时,选择第三译码上下文。
16.根据权利要求13所述的装置,其进一步包含变换单元,所述变换单元基于所述所 选预测模式选择变换以应用于残差块,且将所述所选变换应用于所述残差块以产生 残差变换系数,其中所述熵编码单元对所述残差变换系数进行编码。
17.根据权利要求16所述的装置,其中所述变换单元当所述所选预测模式展现有限方 向性时,选择离散余弦变换(DCT)及整数变换中的一者以应用于所述残差块;及 当所述所选预测模式展现方向性时,选择方向性变换以应用于所述残差块。
18.根据权利要求17所述的装置,其中所述变换单元当所述所选预测模式为DC单向 性预测模式或组合指向实质上正交方向的至少两个预测模式的多向性预测模式时, 选择所述DCT及所述整数变换中的一者以应用于所述残差块。
19.根据权利要求17所述的装置,其进一步包含存储多个方向性变换的存储器,其中 所述多个方向性变换中的每一者符合所述预测模式中的展现方向性的一者,其中所 述变换单元选择所述多个方向性变换中的对应于所述所选预测模式的所述一者。
20.根据权利要求16所述的装置,其进一步包含存储各自符合所述预测模式中的一者 的多个方向性变换的存储器,其中所述方向性变换中的每一者包含大小为N×N的 列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
21.根据权利要求16所述的装置,其进一步包含存储各自符合所述预测模式中的一者 的多个方向性变换的存储器,其中所述多个方向性变换中的每一者包含大小为 N2×N2的变换矩阵,其中N为所述视频块的维度。
22.根据权利要求13所述的装置,其中所述多个预测模式包括单向性预测模式及可能 的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向 性预测模式中的每一者的组合。
23.根据权利要求13所述的装置,其中所述熵编码单元:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与所 述一个或一个以上先前经编码视频块的所述预测模式中的一者相同;以及
当所述一个或一个以上先前经编码视频块的所述预测模式彼此不相同时,对至少 一个额外位进行编码,所述至少一个额外位指示所述一个或一个以上先前经编码视 频块中的哪一者具有与所述视频块的所述预测模式相同的预测模式。
24.根据权利要求13所述的装置,其中
所述预测单元:
从所述多个预测模式中移除所述一个或一个以上先前经编码视频块的至少所 述预测模式,
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测 模式时,移除并非所述一个或一个以上先前经编码视频块的预测模式的至少一个 额外预测模式,以及
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符,且
所述熵编码单元:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与 所述一个或一个以上先前经编码视频块的所述预测模式中的任一者不相同,以及
对识别对应于所述当前视频块的所述预测模式的预测模式识别符的码字进行 编码。
25.根据权利要求13所述的装置,其中所述装置包含无线通信装置。
26.根据权利要求13所述的装置,其中所述装置包含集成电路装置。
27.一种包含指令的计算机可读媒体,所述指令在于视频译码装置中执行时致使所述装 置对视频块进行译码,其中所述指令致使所述装置:
选择多个预测模式中的一者以供在产生译码单元的视频块的预测块中使用,其中 所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测 模式;以及
基于所述译码单元的一个或一个以上先前经编码视频块的预测模式对当前视频 块的预测模式进行编码。
28.根据权利要求27所述的计算机可读媒体,其进一步包含致使所述装置基于所述译 码单元的所述一个或一个以上先前经编码视频块的所述预测模式选择多个译码上 下文中的一者以供在对所述视频块的所述预测模式进行编码中使用的指令,其中编 码包含根据所述所选译码上下文而编码。
29.根据权利要求28所述的计算机可读媒体,其中所述指令致使所述装置:
当所述一个或一个以上先前经编码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经编码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经编码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
30.根据权利要求27所述的计算机可读媒体,其进一步包含致使所述装置进行下列操 作的指令:
从所述视频块减去使用所述所选预测模式产生的所述预测块以形成残差块;
基于所述所选预测模式选择变换以应用于所述残差块;以及
将所述所选变换应用于所述残差块以产生残差变换系数。
31.根据权利要求30所述的计算机可读媒体,其中所述指令致使所述装置:
当所述所选预测模式展现有限方向性时,选择离散余弦变换(DCT)及整数变换 中的一者以应用于所述残差块;以及
当所述所选预测模式展现方向性时,选择方向性变换以应用于所述残差块。
32.根据权利要求31所述的计算机可读媒体,其中所述指令致使所述装置在所述所选 预测模式为DC单向性预测模式或组合指向实质上正交方向的至少两个预测模式的 多向性预测模式时,选择所述DCT及所述整数变换中的一者以应用于所述残差块。
33.根据权利要求31所述的计算机可读媒体,其进一步包含致使所述装置存储多个方 向性变换的指令,其中所述多个方向性变换中的每一者符合所述预测模式中的展现 方向性的一者,其中选择所述方向性变换包含选择所述多个方向性变换中的对应于 所述所选预测模式的所述一者。
34.根据权利要求30所述的计算机可读媒体,其进一步包含致使所述装置存储各自符 合所述预测模式中的一者的多个方向性变换的指令,其中所述方向性变换中的每一 者包含大小为N×N的列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视 频块的维度。
35.根据权利要求30所述的计算机可读媒体,其进一步包含致使所述装置存储各自符 合所述预测模式中的一者的多个方向性变换的指令,其中所述多个方向性变换中的 每一者包含大小为N2×N2的变换矩阵,其中N为所述视频块的维度。
36.根据权利要求27所述的计算机可读媒体,其中所述多个预测模式包括单向性预测 模式及可能的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包 括所述单向性预测模式中的每一者的组合。
37.根据权利要求27所述的计算机可读媒体,其中所述指令致使所述装置:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与所 述一个或一个以上先前经编码视频块的所述预测模式中的一者相同;以及
当所述一个或一个以上先前经编码视频块的所述预测模式彼此不相同时,对表示 所述预测模式的至少一个额外位进行编码以指示所述一个或一个以上先前经编码 视频块中的哪一者具有与所述视频块的所述预测模式相同的预测模式。
38.根据权利要求27所述的计算机可读媒体,其中所述指令致使所述装置:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与所 述一个或一个以上先前经编码视频块的所述预测模式中的任一者不相同;
从所述多个预测模式中移除所述一个或一个以上先前经编码视频块的至少所述 预测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的预测模式的至少一个额外 预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对识别对应于所述当前视频块的所述预测模式的预测模式识别符的码字进行编 码。
39.一种对视频数据进行编码的装置,所述装置包含:
用于选择多个预测模式中的一者以供在产生译码单元的视频块的预测块中使用 的装置,其中所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的 多向性预测模式;以及
用于基于所述译码单元的一个或一个以上先前经编码视频块的预测模式对当前 视频块的预测模式进行编码的装置。
40.根据权利要求39所述的装置,其进一步包含用于基于所述译码单元的所述一个或 一个以上先前经编码视频块的所述预测模式选择多个译码上下文中的一者以供在 对所述视频块的所述预测模式进行编码中使用的装置,其中编码包含根据所述所选 译码上下文而编码。
41.根据权利要求40所述的装置,其中所述选择装置当所述一个或一个以上先前经编 码视频块的所述预测模式均为单向性预测模式时,选择第一译码上下文;当所述一 个或一个以上先前经编码视频块的所述预测模式均为多向性预测模式时,选择第二 译码上下文;及当所述一个或一个以上先前经编码视频块的所述预测模式既非全部 单向也非全部多向时,选择第三译码上下文。
42.根据权利要求39所述的装置,其进一步包含:
用于从所述视频块减去使用所述所选预测模式产生的所述预测块以形成残差块 的装置;
用于基于所述所选预测模式选择变换以应用于残差块的装置;以及
用于将所述所选变换应用于所述残差块以产生残差变换系数的装置。
43.根据权利要求42所述的装置,其中所述变换选择装置当所述所选预测模式展现有 限方向性时,选择离散余弦变换(DCT)及整数变换中的一者以应用于所述残差块; 及当所述所选预测模式展现方向性时,选择方向性变换以应用于所述残差块。
44.根据权利要求43所述的装置,其中所述变换选择装置当所述所选预测模式为DC 单向性预测模式或组合指向实质上正交方向的至少两个预测模式的多向性预测模 式时,选择所述DCT及所述整数变换中的一者以应用于所述残差块。
45.根据权利要求43所述的装置,其进一步包含用于存储多个方向性变换的装置,其 中所述多个方向性变换中的每一者符合所述预测模式中的展现方向性的一者,其中 所述变换选择装置选择所述多个方向性变换中的对应于所述所选预测模式的所述 一者。
46.根据权利要求42所述的装置,其进一步包含用于存储各自符合所述预测模式中的 一者的多个方向性变换的装置,其中所述方向性变换中的每一者包含大小为N×N 的列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
47.根据权利要求42所述的装置,其进一步包含存储各自符合所述预测模式中的一者 的多个方向性变换,其中所述多个方向性变换中的每一者包含大小为N2×N2的变换 矩阵,其中N为所述视频块的维度。
48.根据权利要求39所述的装置,其中所述多个预测模式包括单向性预测模式及可能 的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向 性预测模式中的每一者的组合。
49.根据权利要求39所述的装置,其中所述编码装置对表示所述预测模式的第一位进 行编码以指示所述当前块的所述预测模式与所述一个或一个以上先前经编码视频 块的所述预测模式中的一者相同;及当所述一个或一个以上先前经编码视频块的所 述预测模式彼此不相同时,对表示所述预测模式的至少一个额外位进行编码以指示 所述一个或一个以上先前经编码视频块中的哪一者具有与所述视频块的所述预测 模式相同的预测模式。
50.根据权利要求39所述的装置,其中
所述预测模式选择装置:
从所述多个预测模式中移除所述一个或一个以上先前经编码视频块的至少所 述预测模式,
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测 模式时,移除并非所述一个或一个以上先前经编码视频块的预测模式的至少一个 额外预测模式,以及
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符,且 所述编码装置:
对表示所述预测模式的第一位进行编码以指示所述当前块的所述预测模式与 所述一个或一个以上先前经编码视频块的所述预测模式中的任一者不相同,以及
对识别对应于所述当前视频块的所述预测模式的预测模式识别符的码字进行 编码。
51.一种对视频数据进行解码的方法,所述方法包含:
接收译码单元的视频块的经编码视频数据;以及
对所述经编码视频数据进行解码以基于所述译码单元的一个或一个以上先前经 解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块中 使用的一者,其中所述预测模式包括单向性预测模式及组合至少两个单向性预测模 式的多向性预测模式。
52.根据权利要求51所述的方法,其进一步包含基于所述译码单元的所述一个或一个 以上先前经解码视频块的所述预测模式选择多个译码上下文中的一者以供在对所 述视频块的所述预测模式进行解码中使用,其中解码包含根据所述所选译码上下文 而解码。
53.根据权利要求52所述的方法,其中选择所述多个译码上下文中的一者包含:
当所述一个或一个以上先前经解码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经解码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经解码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
54.根据权利要求51所述的方法,其进一步包含:
基于所述经识别预测模式选择逆变换以应用于所述视频块的残差变换系数;以及
将所述所选逆变换应用于所述视频块的所述残差变换系数以产生残差数据。
55.根据权利要求54所述的方法,其中选择所述逆变换以应用于所述经变换的残差系 数包含:
当所述经识别预测模式展现有限方向性时,选择逆离散余弦变换(DCT)及逆整 数变换中的一者以应用于所述视频块的所述残差变换系数;以及
当所述经识别预测模式展现方向性时,选择逆方向性变换以应用于所述视频块的 所述残差变换系数。
56.根据权利要求55所述的方法,其中选择所述逆DCT及所述逆整数变换中的一者包 含当所述经识别预测模式为DC单向性预测模式或组合指向实质上正交方向的至少 两个预测模式的多向性预测模式时,选择所述逆DCT及逆整数变换中的一者以应 用于所述视频块的所述残差变换系数。
57.根据权利要求55所述的方法,其进一步包含存储各自符合所述预测模式中的展现 方向性的一者的多个逆方向性变换,其中选择所述逆方向性变换包含选择所述多个 逆方向性变换中的对应于所述经识别预测模式的所述一者。
58.根据权利要求54所述的方法,其进一步包含存储各自符合所述预测模式中的一者 的多个逆方向性变换,其中所述多个逆方向性变换中的每一者包含大小为N×N的 列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
59.根据权利要求54所述的方法,其进一步包含存储各自符合所述预测模式中的一者 的多个逆方向性变换,其中所述多个逆方向性变换中的每一者包含大小为N2×N2 的变换矩阵,其中N×N为所述视频块的维度。
60.根据权利要求51所述的方法,其中所述多个预测模式包括单向性预测模式及可能 的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向 性预测模式中的每一者的组合。
61.根据权利要求51所述的方法,其中对所述经编码视频数据进行解码以基于所述译 码单元的一个或一个以上先前经解码视频块的预测模式而识别所述多个预测模式 中的供在产生所述视频块的预测块中使用的一者包含:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为所述一个或一个以上先前经解码视频块的所述预测模 式中的一者;以及
当所述一个或一个以上先前经解码视频块的所述预测模式相同时,选择所述一个 或一个以上先前经解码视频块中的任一者的所述预测模式。
62.根据权利要求61所述的方法,其进一步包含:
当所述一个或一个以上先前经解码视频块的所述预测模式不相同时,基于表示所 述预测模式的至少一个额外经编码位识别所述一个或一个以上先前经解码视频块 中的哪一者具有与供在产生所述视频块的所述预测块中使用的所述预测模式相同 的预测模式;以及
选择所述经识别的先前经解码视频块的所述预测模式。
63.根据权利要求51所述的方法,其中对所述经编码视频数据进行解码以基于所述译 码单元的一个或一个以上先前经解码视频块的预测模式而识别所述多个预测模式 中的供在产生所述视频块的预测块中使用的一者包含:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为并非所述一个或一个以上先前经解码视频块的所述预 测模式中的任一者;
从所述多个预测模式中移除所述一个或一个以上先前经解码视频块的至少所述 预测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的所述预测模式的至少一个 额外预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对码字进行解码以识别对应于供在产生当前视频块的预测块中使用的所述预测 模式的预测模式识别符。
64.一种用于对视频数据进行解码的装置,所述装置包含:
熵解码单元,其对译码单元的视频块的经编码视频数据进行解码以基于所述译码 单元的一个或一个以上先前经解码视频块的预测模式而识别多个预测模式中的供 在产生所述视频块的预测块中使用的一者,其中所述预测模式包括单向性预测模式 及组合至少两个单向性预测模式的多向性预测模式;以及
预测单元,其使用所述经解码预测模式产生所述预测块。
65.根据权利要求64所述的装置,其中所述熵解码单元基于所述译码单元的所述一个 或一个以上先前经解码视频块的所述预测模式选择多个译码上下文中的一者以供 在对所述视频块的所述预测模式进行解码中使用,其中解码包含根据所述所选译码 上下文而解码。
66.根据权利要求65所述的装置,其中所述熵解码单元:
当所述一个或一个以上先前经解码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经解码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经解码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
67.根据权利要求64所述的装置,其进一步包含逆变换单元,所述逆变换单元:
基于所述经识别预测模式选择逆变换以应用于所述视频块的残差变换系数;以及
将所述所选逆变换应用于所述视频块的所述残差变换系数以产生残差数据。
68.根据权利要求67所述的装置,其中所述逆变换单元:
当所述经识别预测模式展现有限方向性时,选择逆离散余弦变换(DCT)及逆整 数变换中的一者以应用于所述视频块的所述残差变换系数;以及
当所述经识别预测模式展现方向性时,选择逆方向性变换以应用于所述视频块的 所述残差变换系数。
69.根据权利要求68所述的装置,其中所述逆变换单元当所述经识别预测模式为DC 单向性预测模式或组合指向实质上正交方向的至少两个预测模式的多向性预测模 式时,选择所述逆DCT及逆整数变换中的一者以应用于所述视频块的所述残差变 换系数。
70.根据权利要求68所述的装置,其中所述逆变换单元存储各自符合所述预测模式中 的展现方向性的一者的多个逆方向性变换,且选择所述多个逆方向性变换中的对应 于所述经识别预测模式的所述一者。
71.根据权利要求67所述的装置,其中所述逆变换单元存储各自符合所述预测模式中 的一者的多个逆方向性变换,其中所述多个逆方向性变换中的每一者包含大小为 N×N的列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
72.根据权利要求67所述的装置,其中所述逆变换单元存储各自符合所述预测模式中 的一者的多个逆方向性变换,其中所述多个逆方向性变换中的每一者包含大小为 N2×N2的变换矩阵,其中N×N为所述视频块的维度。
73.根据权利要求64所述的装置,其中所述多个预测模式包括单向性预测模式及可能 的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向 性预测模式中的每一者的组合。
74.根据权利要求64所述的装置,其中所述解码单元:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为所述一个或一个以上先前经解码视频块的所述预测模 式中的一者;以及
当所述一个或一个以上先前经解码视频块的所述预测模式相同时,选择所述一个 或一个以上先前经解码视频块中的任一者的所述预测模式。
75.根据权利要求74所述的装置,其中所述解码单元:
当所述一个或一个以上先前经解码视频块的所述预测模式不相同时,基于表示所 述预测模式的至少一个额外编码位识别所述一个或一个以上先前经解码视频块中 的哪一者具有与供在产生所述视频块的所述预测块中使用的所述预测模式相同的 预测模式;以及
选择所述经识别的先前经解码视频块的所述预测模式。
76.根据权利要求64所述的装置,其中所述解码单元:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为并非所述一个或一个以上先前经解码视频块的所述预 测模式中的任一者;
从所述多个预测模式移除所述一个或一个以上先前经解码视频块的至少所述预 测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的所述预测模式的至少一个 额外预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对码字进行解码以识别对应于供在产生当前视频块的预测块中使用的所述预测 模式的预测模式识别符。
77.根据权利要求64所述的装置,其中所述装置包含无线通信装置。
78.根据权利要求64所述的装置,其中所述装置包含集成电路装置。
79.一种包含指令的计算机可读媒体,所述指令在于视频译码装置中执行时致使所述装 置对视频块进行译码,其中所述指令致使所述装置:
接收译码单元的视频块的经编码视频数据;以及
对所述经编码视频数据进行解码以基于所述译码单元的一个或一个以上先前经 解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块中 使用的一者,其中所述预测模式包括单向性预测模式及组合至少两个单向性预测模 式的多向性预测模式。
80.根据权利要求79所述的计算机可读媒体,其进一步包含致使所述装置基于所述译 码单元的所述一个或一个以上先前经解码视频块的所述预测模式选择多个译码上 下文中的一者以供在对所述视频块的所述预测模式进行解码中使用的指令,其中解 码包含根据所述所选译码上下文而解码。
81.根据权利要求80所述的计算机可读媒体,其中所述指令致使所述装置:
当所述一个或一个以上先前经解码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经解码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经解码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
82.根据权利要求79所述的计算机可读媒体,其进一步包含致使所述装置进行下列操 作的指令:
基于所述经识别预测模式选择逆变换以应用于所述视频块的残差变换系数;以及
将所述所选逆变换应用于所述视频块的所述残差变换系数以产生残差数据。
83.根据权利要求82所述的计算机可读媒体,其中所述指令致使所述装置:
当所述经识别预测模式展现有限方向性时,选择逆离散余弦变换(DCT)及逆整 数变换中的一者以应用于所述视频块的所述残差变换系数;以及
当所述经识别预测模式展现方向性时,选择逆方向性变换以应用于所述视频块的 所述残差变换系数。
84.根据权利要求83所述的计算机可读媒体,其中所述指令致使所述装置在所述经识 别的预测模式为DC单向性预测模式或组合指向实质上正交方向的至少两个预测模 式的多向性预测模式时选择所述逆DCT及逆整数变换中的一者以应用于所述视频 块的所述残差变换系数。
85.根据权利要求83所述的计算机可读媒体,其进一步包含致使所述装置存储各自符 合所述预测模式中的展现方向性的一者的多个逆方向性变换的指令,其中选择所述 逆方向性变换包含选择所述多个逆方向性变换中的对应于所述经识别预测模式的 所述一者。
86.根据权利要求82所述的计算机可读媒体,其进一步包含致使所述装置存储各自符 合所述预测模式中的一者的多个逆方向性变换的指令,其中所述多个逆方向性变换 中的每一者包含大小为N×N的列变换矩阵及大小为N×N的行变换矩阵,其中N×N 为所述视频块的维度。
87.根据权利要求82所述的计算机可读媒体,其进一步包含致使所述装置存储各自符 合所述预测模式中的一者的多个逆方向性变换的指令,其中所述多个逆方向性变换 中的每一者包含大小为N2×N2的变换矩阵,其中N×N为所述视频块的维度。
88.根据权利要求79所述的计算机可读媒体,其中所述多个预测模式包括单向性预测 模式及可能的双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包 括所述单向性预测模式中的每一者的组合。
89.根据权利要求79所述的计算机可读媒体,其中所述指令致使所述装置:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为所述一个或一个以上先前经解码视频块的所述预测模 式中的一者;以及
当所述一个或一个以上先前经解码视频块的所述预测模式相同时,选择所述一个 或一个以上先前经解码视频块中的任一者的所述预测模式。
90.根据权利要求89所述的计算机可读媒体,其进一步包含致使所述装置进行下列操 作的指令:
当所述一个或一个以上先前经解码视频块的所述预测模式不相同时,基于表示所 述预测模式的至少一个额外经编码位识别所述一个或一个以上先前经解码视频块 中的哪一者具有与供在产生所述视频块的所述预测块中使用的所述预测模式相同 的预测模式;以及
选择所述经识别的先前经解码视频块的所述预测模式。
91.根据权利要求79所述的计算机可读媒体,其中所述指令致使所述装置:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为并非所述一个或一个以上先前经解码视频块的所述预 测模式中的任一者;
从所述多个预测模式中移除所述一个或一个以上先前经解码视频块的至少所述 预测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的所述预测模式的至少一个 额外预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对码字进行解码以识别对应于供在产生当前视频块的预测块中使用的所述预测 模式的预测模式识别符。
92.一种用于对视频数据进行解码的装置,所述装置包含:
用于接收译码单元的视频块的经编码视频数据的装置;以及
用于对所述经编码视频数据进行解码以基于所述译码单元的一个或一个以上先 前经解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测 块中使用的一者的装置,其中所述预测模式包括单向性预测模式及组合至少两个单 向性预测模式的多向性预测模式。
93.根据权利要求92所述的装置,其中所述解码装置基于所述译码单元的所述一个或 一个以上先前经解码视频块的所述预测模式选择多个译码上下文中的一者以供在 对所述视频块的所述预测模式进行解码中使用,其中解码包含根据所述所选译码上 下文而解码。
94.根据权利要求93所述的装置,其中所述解码装置:
当所述一个或一个以上先前经解码视频块的所述预测模式均为单向性预测模式 时,选择第一译码上下文;
当所述一个或一个以上先前经解码视频块的所述预测模式均为多向性预测模式 时,选择第二译码上下文;以及
当所述一个或一个以上先前经解码视频块的所述预测模式既非全部单向也非全 部多向时,选择第三译码上下文。
95.根据权利要求92所述的装置,其进一步包含用于变换残差变换系数的装置,其中 所述变换装置:
基于所述经识别预测模式选择逆变换以应用于所述视频块的残差变换系数;以及
将所述所选逆变换应用于所述视频块的所述残差变换系数以产生残差数据。
96.根据权利要求95所述的装置,其中所述变换装置:
当所述经识别预测模式展现有限方向性时,选择逆离散余弦变换(DCT)及逆整 数变换中的一者以应用于所述视频块的所述残差变换系数;以及
当所述经识别预测模式展现方向性时,选择逆方向性变换以应用于所述视频块的 所述残差变换系数。
97.根据权利要求96所述的装置,其中所述变换装置当所述经识别预测模式为DC单 向性预测模式或组合指向实质上正交方向的至少两个预测模式的多向性预测模式 时,选择所述逆DCT及逆整数变换中的一者以应用于所述视频块的所述残差变换 系数。
98.根据权利要求96所述的装置,其进一步包含用于存储各自符合所述预测模式中的 展现方向性的一者的多个逆方向性变换的装置,其中变换装置选择所述多个逆方向 性变换中的对应于所述经识别预测模式的所述一者。
99.根据权利要求95所述的装置,其进一步包含用于存储各自符合所述预测模式中的 一者的多个逆方向性变换的装置,其中所述多个逆方向性变换中的每一者包含大小 为N×N的列变换矩阵及大小为N×N的行变换矩阵,其中N×N为所述视频块的维度。
100.根据权利要求95所述的装置,其进一步包含用于存储各自符合所述预测模式中的 一者的多个逆方向性变换的装置,其中所述多个逆方向性变换中的每一者包含大小 为N2×N2的变换矩阵,其中N×N为所述视频块的维度。
101.根据权利要求92所述的装置,其中所述多个预测模式包括单向性预测模式及可能的 双向性预测模式的子集,所述双向性预测模式的子集包括至少一个包括所述单向性 预测模式中的每一者的组合。
102.根据权利要求60所述的装置,其中所述解码装置:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为所述一个或一个以上先前经解码视频块的所述预测模 式中的一者;以及
当所述一个或一个以上先前经解码视频块的所述预测模式相同时,选择所述一个 或一个以上先前经解码视频块中的任一者的所述预测模式。
103.根据权利要求102所述的装置,其中所述解码装置:
当所述一个或一个以上先前经解码视频块的所述预测模式不相同时,基于表示所 述预测模式的至少一个额外经编码位识别所述一个或一个以上先前经解码视频块 中的哪一者具有与供在产生所述视频块的所述预测块中使用的所述预测模式相同 的预测模式;以及
选择所述经识别的先前经解码视频块的所述预测模式。
104.根据权利要求92所述的装置,其中所述解码装置:
基于表示所述预测模式的第一经编码位将供在产生所述视频块的所述预测块中 使用的所述预测模式识别为并非所述一个或一个以上先前经解码视频块的所述预 测模式中的任一者;
从所述多个预测模式中移除所述一个或一个以上先前经解码视频块的至少所述 预测模式;
当所述译码单元的所述先前经编码视频块中的两者或两者以上具有相同预测模 式时,移除并非所述一个或一个以上先前经编码视频块的所述预测模式的至少一个 额外预测模式;
在所述多个预测模式的剩余预测模式当中临时重新布置预测模式识别符;以及
对码字进行解码以识别对应于供在产生当前视频块的预测块中使用的所述预测 模式的预测模式识别符。

说明书全文

技术领域

发明涉及数字视频译码,且更明确地说涉及视频的熵译码。

背景技术

可将数字视频能并入广泛范围的装置中,所述装置包括数字电视、数字直接广播 系统、无线通信装置(例如无线电话手持机)、无线广播系统、个人数字助理(PDA)、 膝上型或桌上型计算机、数码相机、数字记录装置、视频游戏装置、视频游戏控制台等。 数字视频装置实施视频压缩技术(例如MPEG-2、MPEG-4或H.264/MPEG-4(第10部 分,高级视频译码(AVC)),以更有效地发射及接收数字视频。视频压缩技术执行空间 与时间预测以减少或移除视频序列中所固有的冗余。
视频压缩大体包括空间预测及/或时间预测。明确地说,内译码依赖于空间预测以 减少或移除给定译码单元内的视频块之间的空间冗余,所述译码单元可包含视频帧、视 频帧的切片(slice)等。相比来说,帧间译码依赖于时间预测以减少或移除视频序列的 连续译码单元的视频块之间的时间冗余。对于帧内译码来说,视频编码器执行空间预测 以基于同一译码单元内的其它数据来压缩数据。对于帧间译码来说,视频编码器执行运 动估计及运动补偿以追踪两个或两个以上邻近译码单元的匹配视频块的移动。
在空间或时间预测之后,通过从所译码的原始视频块减去在预测过程期间所产生的 预测视频块而产生残差块(residual block)。所述残差块因此指示预测块与所译码的当前 块之间的差异。视频编码器可应用变换、量化及熵译码过程以进一步减小与残差块的通 信相关联的位速率。变换技术可将像素值集合改变为变换系数,所述变换系数表示频域 中像素值的能量。将量化应用于所述变换系数,且所述量化大体涉及限制与任何给定系 数相关联的位数目的过程。在熵编码之前,视频编码器将经量化的系数块扫描为一维系 数向量。视频编码器对经量化的变换系数的向量进行熵编码以进一步压缩残差数据。
视频解码器可执行逆熵译码操作以检索系数。还可在解码器处执行逆扫描以从所接 收的一维系数向量形成二维块。视频解码器接着对系数进行逆量化及逆变换以获得经重 构的残差块。视频解码器接着基于预测信息及运动信息来解码预测视频块。视频解码器 接着将所述预测视频块添加到对应残差块以便产生经重构的视频块及产生视频信息的 经解码序列。

发明内容

本发明描述用于视频块的标头信息的译码的技术。明确地说,本发明的技术选择多 个预测模式中的一者以供在产生译码单元的视频块的预测块中使用,所述多个预测模式 包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模式。视频编码器可 经配置以基于所述译码单元的一个或一个以上先前经编码视频块的预测模式而编码当 前视频块的预测模式。视频解码器还可经配置以执行由所述视频编码器执行的编码的互 逆解码功能。因此,所述视频解码器使用类似技术来解码以供在产生所述视频块的预测 块中使用的预测模式。
在一些例项中,所述视频编码器可基于先前经编码视频块的预测模式的类型(例如, 单向性或多向性)来选择供在译码所述所选预测模式中使用的不同译码上下文(coding context)。此外,本发明的技术可基于所述所选预测模式而进一步选择性地将变换应用 于所述视频块的残差信息。在一个实例中,所述视频编码器可存储各自符合所述预测模 式中的不同一者的多个方向性变换,且基于所述视频块的所述所选预测模式将对应的方 向性变换应用于所述视频块。在其它例项中,所述视频编码器可存储至少一个离散余弦 变换(DCT)或整数变换以及多个方向性变换,且当所述所选预测模式展现有限方向性 时将所述DCT或整数变换应用于所述视频块的残差数据,且当所述所选预测模式展现 方向性时将所述方向性变换中的一者应用于所述视频块的残差数据。
在一个方面中,一种编码视频数据的方法包含选择多个预测模式中的一者以供在产 生译码单元的视频块的预测块中使用,及基于所述译码单元的一个或一个以上先前经编 码视频块的预测模式而编码当前视频块的预测模式。所述预测模式包括单向性预测模式 及组合至少两个单向性预测模式的多向性预测模式。
在另一方面中,一种编码视频数据的装置包含:预测单元,其选择多个预测模式中 的一者以供在产生译码单元的视频块的预测块中使用;及熵编码单元,其基于所述译码 单元的一个或一个以上先前经编码视频块的预测模式而编码当前视频块的预测模式。所 述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模式。
在另一方面中,一种计算机可读媒体包含在于视频译码装置中执行时致使所述装置 对视频数据进行译码的指令,其中所述指令致使所述装置选择多个预测模式中的一者以 供在产生译码单元的视频块的预测块中使用及基于所述译码单元的一个或一个以上先 前经编码视频块的预测模式而编码当前视频块的预测模式。所述预测模式包括单向性预 测模式及组合至少两个单向性预测模式的多向性预测模式。
在另一方面中,一种编码视频数据的装置包含:用于选择多个预测模式中的一者以 供在产生译码单元的视频块的预测块中使用的装置;及用于基于所述译码单元的一个或 一个以上先前经编码视频块的预测模式而编码当前视频块的预测模式的装置。所述预测 模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模式。
在另一方面中,一种解码视频数据的方法包含:接收译码单元的视频块的经编码视 频数据;及解码所述经编码视频数据以基于所述译码单元的一个或一个以上先前经解码 视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块中使用的一 者。所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模 式。
在另一方面中,一种用于解码视频数据的装置包含熵解码单元,所述熵解码单元对 译码单元的视频块的经编码视频数据进行解码以基于所述译码单元的一个或一个以上 先前经解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块 中使用的一者。所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多 向性预测模式。所述装置还包括预测单元,所述预测单元使用所述经解码预测模式产生 所述预测块。
在另一方面中,一种计算机可读媒体包含在于视频译码装置中执行时致使所述装置 对视频块进行译码的指令。所述指令致使所述装置接收译码单元的视频块的经编码视频 数据,及解码所述经编码视频数据以基于所述译码单元的一个或一个以上先前经解码的 视频块的预测模式而识别多个预测模式中的供在产生所述视频块的预测块中使用的一 者。所述预测模式包括单向性预测模式及组合至少两个单向性预测模式的多向性预测模 式。
在另一方面中,一种用于解码视频数据的装置包含:用于接收译码单元的视频块的 经编码视频数据的装置;及用于解码所述经编码视频数据以基于所述译码单元的一个或 一个以上先前经解码视频块的预测模式而识别多个预测模式中的供在产生所述视频块 的预测块中使用的一者的装置。所述预测模式包括单向性预测模式及组合至少两个单向 性预测模式的多向性预测模式。
可以硬件软件固件或其任何组合来实施本发明中所描述的技术。如果以软件实 施,则可在处理器中执行软件,所述处理器可指一个或一个以上处理器,例如微处理器、 专用集成电路(ASIC)、现场可编程阵列(FPGA)或数字信号处理器(DSP),或其 它等效集成或离散逻辑电路。包含用以执行所述技术的指令的软件可最初被存储于计算 机可读媒体中并由处理器来加载及执行。
因此,本发明还涵盖计算机可读媒体,其包含用以致使处理器执行如本发明中所描 述的多种技术中的任一者的指令。在一些情况下,计算机可读媒体可形成可出售给制造 者及/或用于装置中的计算机程序产品的一部分。计算机程序产品可包括计算机可读媒 体,且在一些情况下,计算机程序产品还可包括封装材料。
在下文的附图及描述中阐述了本发明的一个或一个以上方面的细节。本发明中所描 述的技术的其它特征、目的及优点将从描述及图式以及从权利要求书中显而易见。

附图说明

图1为说明视频编码及解码系统的框图,所述视频编码及解码系统执行本发明中所 描述的译码技术。
图2为进一步详细说明图1的视频编码器的实例的框图。
图3为进一步详细说明图1的视频解码器的实例的框图。
图4为说明与本发明一致的调整系数的扫描次序的假设实例的概念图
图5为说明译码装置的实例操作的流程图,所述译码装置经配置以自适应地调整系 数的扫描次序。
图6为说明编码单元的实例操作的流程图,所述编码单元经配置以编码视频块的标 头信息。
图7为说明用于译码的实例译码上下文选择的流程图。
图8为说明解码单元的实例操作的流程图,所述解码单元经配置以解码视频块的标 头信息。

具体实施方式

图1为说明视频编码及解码系统10的框图,所述视频编码及解码系统10执行如本 发明中所描述的译码技术。如图1中所示,系统10包括源装置12,所述源装置12经由 通信信道16而将经编码视频数据发射到目的装置14。源装置12产生经译码视频数据以 用于发射到目的装置14。源装置12可包括视频源18、视频编码器20及发射器22。源 装置12的视频源18可包括视频捕捉装置(例如视频相机、含有先前捕捉的视频的视频 档案或来自视频内容提供者的视频馈送器)。作为进一步替代方案,视频源18可产生基 于计算机图形的数据作为源视频,或现场视频与计算机产生的视频的组合。在一些情况 下,源装置12可为所谓的相机电话或视频电话,在此情况下,视频源18可为视频相机。 在每一情况下,经捕捉、经预先捕捉或计算机产生的视频可由视频编码器20来编码以 用于经由发射器22及通信信道16而从源装置12发射到目的装置14。
视频编码器20从视频源18接收视频数据。从视频源18接收的视频数据可为一系 列视频帧。视频编码器20将所述系列帧划分为若干译码单元并处理所述译码单元以编 码所述系列视频帧。所述译码单元可(例如)为全部帧或所述帧的若干部分(即,切片)。 因此,在一些例项中,可将帧划分为若干切片。视频编码器20将每一译码单元划分为 若干像素块(本文中称作视频块)且对个别译码单元内的视频块进行操作以便编码视频 数据。因而,译码单元(例如,帧或切片)可含有多个视频块。换句话说,视频序列可 包括多个帧,帧可包括多个切片,且切片可包括多个视频块。
视频块可具有固定或变化的大小,且其大小可根据指定的译码标准而不同。作为实 例,国际电信联盟标准化部门(ITU-T)H.264/MPEG-4(第10部分,高级视频译码(AVC)) (下文中为“H.264/MPEG-4第10部分AVC”标准)支持呈各种块大小(例如亮度(luma) 分量的16×16、8×8或4×4及色度(chroma)分量的8×8)的帧内预测以及呈各种块大 小(例如亮度分量的16×16、16×8、8×16、8×8、8×4、4×8及4×4与色度分量的对应的 经缩放大小)的帧间预测。在H.264中,举例来说,16×16像素的每一视频块(经常称 作宏块(MB))可被再分为更小大小的子块并以子块对其进行预测。大体来说,可认为 MB及各种子块为视频块。因此,可认为MB为视频块,且如果加以分割或子分割,则 可认为MB自身界定若干视频块集合。
对于视频块中的每一者来说,视频编码器20针对所述块选择块类型。所述块类型 可指示是使用帧间预测还是帧内预测来预测所述块以及所述块的分割大小。举例来说, H.264/MPEG-4第10部分AVC标准支持若干帧间预测及帧内预测块类型(包括帧间 16×16、帧间16×8、帧间8×16、帧间8×8、帧间8×4、帧间4×8、帧间4×4、帧内16×16、 帧内8×8及帧内4×4)。如下文所详细描述,视频编码器20可针对所述视频块中的每一 者选择所述块类型中的一者。
视频编码器20还针对所述视频块中的每一者选择预测模式。在经帧内译码的视频 块的情况下,预测模式可确定使用一个或一个以上先前经编码视频块来预测当前视频块 的方式。在H.264/MPEG-4第10部分AVC标准中,举例来说,视频编码器20可针对每 一帧内4×4块选择九个可能的单向性预测模式中的一者;垂直预测模式、平预测模式、 DC预测模式、对线下/左预测模式、对角线下/右预测模式、垂直-右预测模式、水平- 下预测模式、垂直-左预测模式及水平-上预测模式。使用类似的预测模式来预测每一帧 内8×8块。对于帧内16×16块来说,视频编码器20可选择四个可能的单向性模式中的 一者;垂直预测模式、水平预测模式、DC预测模式及平面预测模式。在一些例项中, 视频编码器20可从预测模式集合选择预测模式,所述预测模式集合不仅包括单向性预 测模式,而且包括界定所述单向性模式的组合的一个或一个以上多向性预测模式。举例 来说,所述一个或一个以上多向性预测模式可为组合两个单向性预测模式的双向性预测 模式,如下文进一步详细描述。
在针对视频块选择预测模式之后,视频编码器20使用所选预测模式来产生经预测 视频块。从原始视频块减去所述经预测视频块以形成残差块。所述残差块包括像素差值 集合,所述像素差值量化原始视频块的像素值与所产生的预测块的像素值之间的差。可 以二维块格式(例如,像素差值的二维矩阵或阵列)来表示残差块。
在产生残差块之后,视频编码器20可在编码所述残差块之前对所述块执行若干其 它操作。视频编码器20可将变换(例如整数变换、DCT变换、方向性变换或小波(wavelet) 变换)应用于像素值的残差块以产生变换系数块。因此,视频编码器20将残差像素值 转换为变换系数(还称作残差变换系数)。可将所述残差变换系数称作变换块或系数块。 当应用非可分离变换时,所述变换或系数块可为所述系数的一维表示,或当应用可分离 变换时,所述变换或系数块可为所述系数的二维表示。非可分离变换可包括非可分离方 向性变换。可分离变换可包括可分离方向性变换、DCT变换、整数变换及小波变换
在变换之后,视频编码器20执行量化以产生经量化的变换系数(还称作量化系数 或量化残差系数)。又,可以一维向量格式或二维块格式来表示量化系数。量化大体指 其中系数经量化以可能减小用以表示所述系数的数据量的过程。量化过程可减小与所述 系数中的一些或全部相关联的位深度。如本文中所使用,术语“系数”可表示变换系数、 量化系数或其它类型的系数。在一些例项中,可将本发明的技术应用于残差像素值以及 变换系数与量化变换系数。然而,出于说明的目的,将以量化变换系数为背景描述本发 明的技术。
当使用可分离变换并以二维块格式来表示系数块时,视频编码器20将所述系数从 二维格式扫描到一维格式。换句话说,视频编码器20可扫描来自二维块的系数以将所 述系数串行化为系数的一维向量。根据本发明的方面中的一者,视频编码器20可基于 所收集的统计资料来调整用以将系数块转换为一维的扫描次序。所述统计资料可包含对 在二维块的每一位置中的给定系数值为零或非零的可能性的指示,且可(例如)包含与 二维块的系数位置中的每一者相关联的计数、概率或其它统计资料度量。在一些例项中, 可仅针对块的系数位置子集来收集统计资料。当评估扫描次序时(例如,在特定数目的 块之后),可改变扫描次序,使得在块内的被确定为具有较低的具有非零系数概率的系 数位置之前扫描所述块内的被确定为具有较高的具有非零系数概率的系数位置。以此方 式,初始扫描次序可适合于更有效地将非零系数分组在一维系数向量的开始处及将零值 系数分组在一维系数向量的结尾处。此又可减少在熵译码上所消耗的位数目,因为在位 于一维系数向量的开始处的非零系数之间存在若干较短的零游程且在一维系数向量的 结尾处存在一个较长的零游程。
在扫描系数之后,视频编码器20使用多种熵译码方法(例如上下文自适应可变长 度译码(content adaptive variable length coding,CAVLC)、上下文自适应二进制算术译 码(context adaptive binary arithmetic coding,CABAC)、游程长度译码(run length coding) 等)中的任一者来编码所述译码单元的视频块中的每一者。源装置12经由发射器22及 信道16而将经编码视频数据发射到目的装置14。通信信道16可包含任何无线或有线通 信媒体,例如射频(RF)频谱或一个或一个以上物理发射线,或无线与有线媒体的任何 组合。通信信道16可形成基于包的网络(例如局域网络、广域网络或全球网络(例如 因特网))的一部分。通信信道16大体表示用于将经编码视频数据从源装置12发射到 目的装置14的任何合适的通信媒体或不同通信媒体的集合。
目的装置14可包括接收器24、视频解码器26及显示装置28。接收器24经由信道 16而从源装置12接收经编码视频位流。视频解码器26应用熵解码来解码经编码视频位 流以获得经译码单元的经译码视频块的标头信息与量化残差系数。如上文所描述,由源 装置12编码的量化残差系数被编码为一维向量。视频解码器26因此扫描经译码视频块 的量化残差系数以将系数的一维向量转换为量化残差系数的二维块。如同视频编码器 20,视频解码器26可收集统计资料,所述统计资料指示视频块中的给定系数位置为零 或非零的可能性且因此以与用于编码过程中的方式相同的方式来调整扫描次序。因此, 可由视频解码器26应用互逆自适应扫描次序以便将经串行化的量化变换系数的一维向 量表示改变回到量化变换系数的二维块。
视频解码器26使用经解码标头信息及经解码残差信息来重构译码单元的块中的每 一者。明确地说,视频解码器26可针对当前视频块产生预测视频块并将所述预测块与 对应残差视频块组合以重构视频块中的每一者。目的装置14可经由显示装置28而向用 户显示所述经重构的视频块。显示装置28可包含多种显示装置(例如阴极射线管(CRT)、 液晶显示器(LCD)、等离子显示器、发光二极管(LED)显示器、有机LED显示器或 另一类型的显示单元)中的任一者。
在一些情况下,源装置12与目的装置14可以实质上对称的方式来操作。举例来说, 源装置12与目的装置14可各自包括视频编码及解码组件。因此,系统10可支持装置 12、14之间的单向或双向视频发射(例如,用于视频串流、视频广播或视频电话)。包 括视频编码及解码组件的装置还可形成共同编码、成档及回放装置(例如数字视频记录 器(DVR))的一部分。
视频编码器20及视频解码器26可根据多种视频压缩标准(例如由MPEG-1、MPEG-2 及MPEG-4中的运动图片专家组(MPEG)界定的标准、ITU-T H.263标准、运动图片 及电视工程师协会(SMPTE)421M视频编解码器标准(通常称作“VC-1”)、由中国音 频视频译码标准工作组界定的标准(通常称作“AVS”)以及由标准团体界定或由组织发 展为专有标准的任何其它视频译码标准)中的任一者来操作。尽管图1中未展示,但在 一些方面中,视频编码器20及视频解码器26可各自分别与音频编码器及解码器集成, 且可包括适当的多路复用-解多路复用单元或其它硬件与软件以处置共同数据流或单独 数据流中的音频与视频两者的编码。以此方式,源装置12与目的装置14可对多媒体数 据进行操作。如果可适用,则多路复用-解多路复用单元可符合ITU H.223多路复用器协 议或其它协议(例如用户数据报协议(UDP))。
在一些方面中,对于视频广播来说,可将本发明中所描述的技术应用于增强型H.264 视频译码,以供在使用仅前向链路(FLO)空中接口规范的陆地移动多媒体多播(TM3) 系统中递送实时视频服务(2007年7月被公开为技术标准TIA-1099的“陆地移动多媒 体多播的仅前向链路(FLO)空中接口规范(Forward Link Only Air Interface Specification for Terrestrial Mobile Multimedia Multicast)”(“FLO规范”))。即,通信信道16可包含用 以根据FLO规范来广播无线视频信息的无线信息信道等。FLO规范包括界定位流语法 及语义的实例及适合用于FLO空中接口的解码过程。
或者,可根据其它标准(例如DVB-H(数字视频广播-手持式)、ISDB-T(集成服 务数字广播-陆地)或DMB(数字媒体广播))来广播视频。因此,源装置12可为移动 无线终端、视频串流服务器或视频广播服务器。然而,本发明中所描述的技术并不限于 任何特定类型的广播、多播或点对点系统。在广播的情况下,源装置12可将视频数据 的若干信道广播到多个目的装置,所述目的装置中的每一者可类似于图1的目的装置14。 因此,尽管图1中展示单个目的装置14,但对于视频广播应用来说,源装置12将通常 同时将视频内容广播到许多目的装置。
在其它实例中,发射器22、通信信道16及接收器24可经配置以用于根据任何有线 或无线通信系统(包括以太网、电话(例如,POTS)、电缆、电力线及光纤系统中的一 者或一者以上)及/或无线系统来通信,所述无线系统包含以下各项中的一者或一者以上: 码分多址(CDMA或CDMA2000)通信系统、频分多址(FDMA)系统、正交频分多(OFDM) 址系统、时分多址(TDMA)系统(例如GSM(全球移动通信系统)、GPRS(通用包无 线电服务)或EDGE(增强型数据GSM环境))、TETRA(陆地集群无线电)移动电话 系统、宽带码分多址(WCDMA)系统、高数据速率1xEV-DO(仅第一代演进数据)或 1xEV-DO金多播系统、IEEE 802.18系统、MediaFLOTM系统、DMB系统、DVB-H系统, 或供在两个或两个以上装置之间进行数据通信的另一方案。
视频编码器20与视频解码器26各自可实施为一个或一个以上微处理器、数字信号 处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、 硬件、固件或其任何组合。可将视频编码器20与视频解码器26中的每一者包括于一个 或一个以上编码器或解码器中,其任一者可集成为相应移动装置、订户装置、广播装置、 服务器等中的组合式编码器/解码器(编解码器)的一部分。另外,源装置12与目的装 置14各自可包括适当的调制、解调制、频率转换、滤波及放大器组件以用于发射及接 收经编码视频(如可适用),其包括射频(RF)无线组件及足以支持无线通信的天线。 然而,出于说明的简易性起见,将此类组件概述为图1中的源装置12的发射器22及目 的装置14的接收器24。
图2为进一步详细说明图1的实例视频编码器20的框图。视频编码器20执行视频 帧内的块的帧内译码及帧间译码。帧内译码依赖于空间预测以减少或移除给定视频译码 单元(例如,帧或切片)内的视频数据中的空间冗余。对于帧内译码来说,视频编码器 20基于与所译码的块相同的译码单元内的一个或一个以上先前经编码块而形成空间预 测块。帧间译码依赖于时间预测以减少或移除视频序列的邻近帧内的时间冗余。对于帧 间译码来说,视频编码器20执行运动估计以追踪两个或两个以上邻近帧之间的密切匹 配的视频块的移动。
在图2的实例中,视频编码器20包括块分割单元30、预测单元32、帧存储件34、 变换单元38、量化单元40、系数扫描单元41、逆量化单元42、逆变换单元44及熵编 码单元46。视频编码器20还包括加法器48A及48B(“加法器48”)。可将环路内解块 滤波器(未展示)应用于经重构的视频块以减少或移除成块假影。对图2中的不同特征 作为单元的描绘希望突出所说明的装置的不同功能方面且未必暗示此类单元必须由单 独硬件或软件组件来实现。而是,可将与一个或一个以上单元相关联的功能性集成于共 用或单独硬件或软件组件内。
块分割单元30从视频源18(图1)接收(例如)呈视频帧序列的形式的视频信息 (标记为图2中的“视频输入(VIDEO IN)”)。块分割单元30将所述视频帧中的每一者 划分为若干包括多个视频块的译码单元。如上文所描述,所述译码单元可为整个帧或帧 的一部分(例如,帧的切片)。在一个例项中,块分割单元30可最初将译码单元中的每 一者划分为具有16×16的分割大小的多个视频块(即,划分为宏块)。块分割单元30可 进一步将所述16×16视频块中的每一者再分为更小块(例如8×8视频块或4×4视频块)。
视频编码器20基于块的块类型而针对译码单元的视频块中的每一者在逐块的基础 上执行帧内译码或帧间译码。预测单元32将块类型指派给视频块中的每一者,所述块 类型可指示块的所选分割大小以及将使用帧间预测还是帧内预测来预测所述块。在帧间 预测的情况下,预测单元32还决定运动向量。在帧内预测的情况下,预测单元32还决 定用以产生预测块的预测模式。
预测单元32接着产生预测块。所述预测块可为当前视频块的预测型式。当前视频 块指当前正被译码的视频块。在帧间预测的情况下(例如,当块被指派帧间块类型时), 预测单元32可执行时间预测以用于进行当前视频块的帧间译码。预测单元32可(例如) 将当前视频块与一个或一个以上邻近视频帧中的块相比较以识别邻近帧中的最密切匹 配当前视频块的块(例如,邻近帧中的具有最小MSE、SSD、SAD或其它差异度量的块)。 预测单元32将邻近帧中的已识别块选择为预测块。
在帧内预测的情况下(即,当块被指派帧内块类型时),预测单元32可基于共同译 码单元(例如,帧或切片)内的一个或一个以上先前经编码相邻块而产生预测块。预测 单元32可(例如)执行空间预测以通过使用当前帧内的一个或一个以上先前经编码相 邻块来执行内插而产生预测块。可(例如)从帧存储件34检索当前帧内的所述一个或 一个以上邻近块,所述帧存储件34可包含任何类型的存储器或数据存储装置以存储一 个或一个以上先前经编码帧或块。
预测单元32可根据预测模式集合中的一者来执行内插。如上文所描述,所述预测 模式集合可包括单向性预测模式及/或多向性预测模式。多向性预测模式界定单向性预测 模式的组合。在一个实例中,所述预测模式集合可包括界定于H.264/MPEG-4第10部分 AVC标准中的单向性预测模式及界定两个单向性预测模式的各种组合的双向性预测模 式。
对于帧内4×4块类型来说,举例来说,所述预测模式集合可包括九个界定于 H.264/MPEG-4第10部分AVC标准中的单向性预测模式及所述单向性预测模式的可能 组合的子集。因此,替代于支持单向性预测模式的所有36个可能组合,视频编码器20 可仅支持单向性预测模式的可能组合的一部分。如此做法可能不会产生许多译码降级。 下文提供了帧内预测模式的一个实例集合,其包括总计18个帧内预测模式。
模式0:垂直
模式1:水平
模式2:DC
模式3:对角线下/左
模式4:对角线下/右
模式5:垂直右
模式6:水平下
模式7:垂直左
模式8:水平上
模式9:垂直+水平(模式0+模式1)
模式10:DC+垂直(模式2+模式0)
模式11:DC+水平(模式2+模式1)
模式12:对角线下/左+水平(模式3+模式1)
模式13:对角线下/右+垂直(模式4+模式0)
模式14:垂直右+水平(模式5+模式1)
模式15:水平下+垂直(模式6+模式0)
模式16:垂直左+水平(模式7+模式1)
模式17:水平上+垂直(模式8+模式0)
在上文所说明的实例集合中,模式0到8为单向性预测模式且模式9到17为双向 性预测模式。明确地说,模式0到8为界定于H.264/MPEG-4第10部分AVC标准中的 帧内4×4预测模式。模式9到17为可能的双向性预测模式的子集。所提供的实例中的 可能的双向性预测模式的子集包括并入有每一单向性预测模式的至少一个组合。除包括 DC预测模式的双向性预测模式(例如,模式10与11)之外,每一双向性预测模式组合 具有为非平行且在一些例项中实质上彼此正交的内插方向的单向性预测模式。换句话 说,双向性预测模式的子集包括大体将来自“垂直”类别的预测模式与来自“水平”类 别的预测模式组合的双向性预测模式。此类双向性预测模式允许帧内预测过程组合来自 相隔较远的位置的可用预测像素,因此改进当前视频块内的较多像素位置的预测质量
出于说明的目的而描述上文所描述的预测模式集合。所述预测模式集合可包括更多 或更少的预测模式。举例来说,所述预测模式集合可包括更多或更少的双向性预测模式, 或不具有双向性预测模式。在其它例项中,所述预测模式集合可仅包括单向性预测模式 的子集。另外,除双向性预测模式之外或替代于双向性预测模式,所述预测模式集合可 包括组合两个以上单向性预测模式的多向性预测模式。此外,尽管上文关于帧内4×4块 类型而描述,但本发明的技术可应用于其它帧内块类型(例如,帧内8×8块类型或帧内 16×16块类型)或帧间块类型。
为确定针对特定块选择所述多个预测模式中的哪一者,预测单元32可估计用于所 述集合的预测模式中的每一者的译码成本(例如,拉格朗日(Lagrangian)成本),并选 择具有最小译码成本的预测模式。在其它例项中,预测单元32可估计用于可能的预测 模式的集合的仅一部分的译码成本。举例来说,预测模式32可基于针对一个或一个以 上相邻视频块所选择的预测模式来选择所述集合的预测模式的部分。预测单元32使用 所选预测模式来产生预测块。
在产生预测块之后,视频编码器20通过在加法器48A处从当前视频块减去由预测 单元32产生的预测块而产生残差块。所述残差块包括像素差值集合,所述像素差值量 化当前视频块的像素值与预测块的像素值之间的差。可以二维块格式(例如,像素值的 二维矩阵或阵列)来表示残差块。换句话说,所述残差块为像素值的二维表示。
变换单元38将变换应用于残差块以产生残差变换系数。变换单元38可(例如)应 用DCT、整数变换、方向性变换、小波变换或其组合。变换单元38可基于由预测单元 32所选择的用以产生预测块的预测模式而将变换选择性地应用于残差块。换句话说,应 用于残差信息的变换可视由预测单元32针对所述块所选择的预测模式而定。
变换单元38可保持多个不同变换并基于残差块的预测模式而将所述变换选择性地 应用于所述块。所述多个不同变换可包括DCT、整数变换、方向性变换、小波变换或其 组合。在一些例项中,变换单元38可保持DCT或整数变换及多个方向性变换,并基于 针对当前视频块所选择的预测模式而选择性地应用所述变换。变换单元38可(例如) 将DCT或整数变换应用于具有展现有限方向性的预测模式的残差块并将方向性变换中 的一者应用于具有展现显著方向性的预测模式的残差块。
使用上文所描述的预测模式的实例集合,变换单元38可将DCT或整数变换应用于 模式2、9及12到17。这些模式可展现有限方向性,因为其为DC预测或处于近似正交 方向的两个预测模式的组合。相反,模式1、3到8、10及11为可展现方向性的模式, 且因此变换单元38可针对这些模式中的每一者应用不同方向性变换以实现残差视频块 的更好能量压紧(energy compaction)。换句话说,当选择具有较强的方向性的预测模式 时,还可在此类预测模式的残差块中显现方向性。并且,不同预测模式的残差块展现不 同方向性特性。因而,与例如DCT或类似于DCT的整数变换的变换相比,针对每一预 测模式而经特定训练的方向性变换可为给定预测模式的残差块提供更好的能量压紧。另 一方面,对于不带有强大方向性的预测模式来说,例如DCT或类似于DCT的整数变换 的变换提供足够的能量压紧。以此方式,变换单元38无需针对可能的预测模式中的每 一者而保持单独变换,因此降低了变换存储要求。此外,DCT及/或整数变换的应用就 计算复杂性来说具有较小复杂性。
在其它例项中,变换单元38可针对可能的预测模式中的每一者而保持不同方向性 变换,且基于块的所选预测模式而应用对应方向性变换。对于上文所描述的预测模式的 实例集合来说,变换单元38可保持十八个不同方向性变换,所述变换中的每一者符合 十八个可能的帧内4×4预测模式中的一者。另外,变换单元38可针对十八个可能的帧 内8×8预测模式而保持十八个不同方向性变换、针对四个可能的帧内16×16预测模式而 保持四个不同的方向性变换及针对其它分割大小的任何其它预测模式而保持若干变换。 基于块的所选预测模式来应用单独方向性变换增加捕捉残差能量的效率(尤其对于选择 展现显著方向性的预测模式所针对的块来说)。方向性变换可为非可分离方向性变换(例 如,从非可分离Karhunen Lòeve变换(KLT)导出)或可为可分离方向性变换。在一些 例项中,可使用数据的训练集合来预先计算方向性变换。
KLT为其中从信号的统计资料导出基函数的线性变换,且因此可为自适应的。KLT 经设计以将同样多的能量放置于尽可能少的系数中。KLT大体为不可分离的,且因此变 换单元38执行如下文所详细描述的完整矩阵乘法。将出于示范性目的而描述非可分离 方向性变换到4×4残差块的应用。将类似的技术用于不同大小的块(例如,8×8块或16×16 块)。
以具有像素值的四个行与四个列(即,总计十六个像素值)的二维块格式来表示4×4 残差块X。为应用非可分离方向性变换,将4×4残差块重新布置成像素值的一维向量x (即,长度为十六)。通过以光栅扫描次序将像素布置于4×4残差块X中而将X重新布置 为向量x。即,如果将4×4残差块X写为
X = x 00 x 01 x 02 x 03 x 10 x 11 x 12 x 13 x 20 x 21 x 22 x 23 x 30 x 31 x 32 x 33 ,
则将长度为16的残差向量x写为
x=[x00 x01 x02 x03 x10 x11 x12 x13 x20 x21 x22 x23 x30 x31 x32 x33]。
通过根据以下方程式(1)执行矩阵乘法而获得变换系数向量y:
y=Tx,                     (1)
其中T为大小为16×16的变换矩阵,所述大小对应于针对所述块所选择的预测模式。 变换系数向量y也为具有十六个系数的长度的一维向量。
非可分离方向性变换的使用可能伴随着增加的计算成本及存储要求。大体来说,对 于大小为N×N的残差块来说,非可分离方向性变换需要大小为N2×N2的基函数。即,对 于4×4残差块来说,非可分离方向性变换具有16×16的大小;对于8×8残差块来说,非 可分离方向性变换具有64×64的大小;且对于16×16残差块来说,非可分离方向性变换 具有256×256的大小。因为可针对所述集合的预测模式中的每一者使用不同非可分离方 向性变换,所以变换单元32可存储十八个用于4×4块的16×16方向性变换及十八个用 于8×8块的64×64变换(在上文所描述的预测模式的实例集合的情况下),且如果预测 模式集合较大,则可能存储得更多。此可导致使用大存储器资源来存储用以进行变换过 程所需的变换矩阵。非可分离方向性变换的计算成本也较高。大体来说,将非可分离方 向性变换应用于N×N块上需要N2×N2次乘法及N2×(N2-1)次加法。
替代于非可分离方向性变换,变换单元32可针对预测模式中的每一者而保持可分 离方向性变换。与非可分离方向性变换相比,可分离方向性变换具有较低的存储及计算 成本。对于4×4残差块X来说,举例来说,如由以下方程式(2)所指示来应用可分离 变换:
Y=CXR,                         (2)
其中Y为所得变换系数矩阵,C为列变换矩阵且R为行变换矩阵,所有所述矩阵均 具有等于块的大小的大小(例如,在此实例中为4×4)。因此,所得变换系数矩阵Y也为 大小为4×4的二维矩阵。
对于每一预测模式来说,变换单元32可存储两个N×N变换矩阵(例如,矩阵对C 与R),其中N×N符合块大小(例如,N=4、8或16)。在上文所描述的用于4×4块的十 八个预测模式的实例集合中,变换单元32存储三十六个4×4变换矩阵,其需要比在使 用非可分离变换时所存储的十八个16×16变换矩阵小的存储装置。另外,变换单元32 可使用2×N×N×N次乘法及2×N×N×(N-1)次加法来执行可分离方向性变换,此为比用 于执行非可分离方向性变换的N2×N2次乘法及N2×(N2-1)次加法显著少的操作。表1 针对4×4及8×8的块大小而对使用可分离方向性变换对非可分离方向性变换之间的存储 及计算要求进行比较。可以类似方式来进行针对16×16块的可分离方向性变换与非可分 离方向性变换之间的比较。如表1中所说明,与非可分离方向性变换相比,使用可分离 方向性变换提供计算复杂性与存储要求两方面的减小,且对于较大的块大小来说,所述 减小变得更显著(例如,8×8块的减小大于4×4块的减小)。
表1:非可分离方向性变换对可分离方向性变换的复杂性

可使用来自训练视频序列集合的预测残差来获得针对每一预测模式的可分离变换 矩阵。类似于非可分离KLT变换的导出,可首先在行方向上且接着在行方向上将奇异值 分解(SVD)过程应用于所述训练集合中的预测残差以便分别获得行变换矩阵与列变换 矩阵。或者,可首先使用来自训练集合的预测残差来训练非可分离方向性变换矩阵(即, 非可分离KLT变换矩阵);接着,可通过进一步将非可分离变换矩阵分解为可分离变换 矩阵而获得针对每一预测模式的可分离变换矩阵。
总之,所得变换矩阵通常具有浮点精度。使用定点精度数来逼近变换矩阵中的系数, 以使得能够在变换过程中使用定点算术及降低计算成本。可通过使用定点算术而在计算 复杂性与变换过程期间所需的最大精度之间找到平衡来决定变换矩阵中的系数的定点 逼近法的精度。换句话说,变换矩阵的定点逼近法的较高精度可归因于使用定点逼近法 而产生更小误差,这是合乎需要的,但变换矩阵的定点逼近法中的过高精度还可引起定 点算术在变换过程期间溢出,这是不合乎需要的。
在将变换应用于像素值的残差块之后,量化单元40量化变换系数以进一步减小位 速率。在量化之后,逆量化单元42及逆变换单元44可分别应用逆量化及逆变换,以重 构残差块(标记为图2中的“重构残差块(RECON RESID BLOCK)”)。加法器48B将 经重构的残差块添加到由预测单元32产生的预测块以产生用于存储于帧存储件34中的 经重构的视频块。可由预测单元32使用所述经重构的视频块以对后续视频块进行帧内 译码或帧间译码。
如上文所描述,当使用可分离变换(其包括DCT、用于H.264/AVC中的整数变换, 及可分离方向性变换)时,所得变换系数被表示为二维系数矩阵。因此,在量化之后, 系数扫描单元41将所述系数从二维块格式扫描为一维向量格式(经常被称作系数扫描 的过程)。明确地说,系数扫描单元41根据扫描次序来扫描所述系数。根据本发明的一 个方面,系数扫描单元41可基于一个或一个以上系数统计资料来自适应地调整用于系 数扫描的扫描次序。在一些例项中,系数扫描单元41可针对于预测模式中的每一者而 独立地自适应地调整扫描次序,因为所述预测模式中的每一者可具有不同系数统计资 料。
系数扫描单元41可最初使用第一扫描次序来扫描经量化的残差块的系数。在一个 方面中,所述第一扫描次序可为通常用于H.264/MPEG-4第10部分AVC应用中的z字 形扫描次序。尽管将系数扫描单元41描述为最初使用z字形扫描次序进行扫描,但本 发明的技术并不限于任何特定初始扫描次序或技术。此外,预测模式中的每一者可具有 不同初始扫描次序(例如,针对所述预测模式而经特定训练的扫描次序)。然而,出于 说明的目的而描述了z字形扫描次序。所述z字形扫描次序以一维向量来布置量化系数, 使得在二维块的左上角中的系数朝向系数向量的开始而压紧。所述z字形扫描次序可为 具有有限方向性的系数块提供足够紧密性。
当残差块具有某方向性或显著方向性且使用可分离方向性变换来变换时,所得二维 变换系数块可仍带有某量的方向性。此是因为尽管使用可分离方向性变换提供较低的计 算复杂性及存储要求的益处,但其不可能像使用非可分离方向性变换那样捕捉残差块中 的方向性。作为一实例,在将方向性变换应用于垂直预测(上文所描述的实例的模式0) 之后,非零系数倾向于沿水平方向而存在。因此,z字形扫描次序可能并未导致所有非 零系数均朝向系数向量的开始而被压紧。与在以z字形扫描次序进行扫描将出现的情况 相比,通过调适系数扫描次序以将扫描次序定向于水平方向上以替代固定的z字形扫描 次序,系数块的非零系数可朝向一维系数向量的开始而更压紧。此又可减小熵译码上所 消耗的位数目,因为在一维系数向量的开始处的非零系数之间存在较短的零游程且在一 维系数向量的结尾处存在一个较长的零游程。调适用以产生一维系数向量的扫描次序的 概念还可应用于其它预测模式。举例来说,系数扫描单元41可针对预测模式中的每一 者而单独地自适应地调整扫描次序,因为所述预测模式中的每一者可具有系数块中的不 同方向性且因此具有不同系数统计资料。以此方式,对于预测模式中的每一者来说,扫 描次序可能不同。
如上文所描述,初始扫描次序可能并非z字形扫描次序(尤其对于将方向性变换应 用于残差块的例项来说)。在这些情况下,可使用下文所描述的技术中的一者来预定初 始扫描次序。作为一个实例,可使用训练视频序列集合来确定初始扫描次序。针对每一 预测模式来聚集非零系数的统计资料(例如下文所描述的统计资料)并将其用以初始化 系数扫描次序。明确地说,具有最高的非零系数概率的位置是初始扫描次序的第一系数 位置,接着具有仅次于最高的非零系数概率的位置是初始扫描次序的第二系数位置等 等,直到具有最小非零概率的位置为止,所述位置是初始扫描次序的最后系数位置。或 者,可基于可分离变换矩阵的本征值的量值来确定初始扫描次序。举例来说,可将所述 本征值分类为递减次序且遵循本征值的对应次序来扫描系数。
即使使用上文所描述的技术中的一者来确定初始扫描次序,各种类型的视频源仍可 导致量化残差系数位于块内的不同系数位置中。举例来说,不同分辨率的视频源(例如, 共用中间格式(CIF)、四分之一CIF(QCIF)及高清晰度(例如,720p/i或1080p/i)视 频源)可导致非零系数位于块内的不同系数位置中。因此,即使基于块的预测模式来选 择初始扫描次序,系数扫描单元41仍可调适扫描次序以改进非零系数朝向一维系数向 量的开始的紧密性。
为调适扫描次序,系数扫描单元41或视频编码器20的其它单元可收集一个或一个 以上块的一个或一个以上系数统计资料。换句话说,随着逐块地执行系数扫描,系数扫 描单元41可收集指示块内的位置中的每一者具有非零系数的次数的统计资料。举例来 说,系数扫描单元41可保持多个计数器(其每一者均符合二维块中的系数位置),且当 非零系数位于所述相应位置处时可递增对应于所述位置的计数器。以此方式,高计数值 符合块中以较大频率出现非零系数的位置且低计数值符合块中以较小频率出现非零系 数的位置。在一些例项中,系数扫描单元41可针对预测模式中的每一者而收集系数统 计资料的单独集合。
如上文所描述,系数扫描单元41可基于所收集的统计资料来调适扫描次序。系数 扫描单元41可基于所收集的统计资料来调适扫描次序以在被确定为具有较小的具有非 零系数可能性的系数位置之前扫描被确定为具有较高的具有非零系数的可能性的系数 位置。举例来说,系数扫描单元41可调适扫描次序以基于二维块的系数位置的计数值 (当所述计数值表示相应系数位置具有非零值的次数时)而以递减次序来扫描所述系数 位置。或者,计数器可追踪块内的位置中的每一者已为零值系数的位置的次数且调适扫 描次序以基于所述系数位置的计数值而以递增次序来扫描所述系数位置。在一些例项 中,可仅针对块的系数位置的子集而非块的所有系数位置来收集统计资料。在此情况下, 系数扫描单元41可仅调适扫描次序的一部分。
系数扫描单元41可以固定或非固定间隔来调适扫描次序。举例来说,系数扫描单 元41可以固定间隔(例如块边界)来调适扫描次序。在一些例项中,系数扫描单元41 可在4×4或8×8块边界处或在宏块边界处调适扫描次序。以此方式,可针对每一块或宏 块来调适扫描次序。然而,为降低系统复杂性,系数扫描单元41可较不频繁地(例如 在每n个块或宏块之后)调适扫描次序。或者,系数扫描单元41可以非固定间隔来调 适扫描次序。当块内的位置的计数值中的一者超过阈值时,系数扫描单元41可(例如) 调适扫描次序。在调适扫描次序之后,系数扫描单元41可使用经调适的扫描次序来扫 描至少一个后续视频块的后续经量化的残差块。在一些例项中,当至少一个后续视频块 存在于第一视频块的译码单元中时,系数扫描单元41可使用经调适的扫描次序来扫描 所述至少一个后续视频块的后续经量化的残差块。系数扫描单元41可继续扫描后续视 频块,直到根据所收集的统计资料来再次调适扫描次序或重新初始化扫描次序为止。以 此方式,系数扫描单元41调适扫描次序以便以可由熵译码单元46更有效地编码经量化 残差系数的方式产生一维系数向量。
在一些例项中,系数扫描单元41可使所收集的统计资料正规化。当系数计数达到 阈值时,可能需要使所收集的统计资料正规化。块内的具有已达到阈值的计数值的系数 位置(本文中称作系数位置A)可(例如)使所述系数位置即使在所述系数位置在一时 间周期中不具有非零系数时仍保持具有最高计数。此归因于位置A处的系数计数是如此 大使得在块内的另一位置(本文中称作系数位置B)的系数计数超过位置A处的系数计 数并导致系数位置A与B之间的扫描次序改变(即,调换)之前其它系数计数可占有多 个块(例如,几十个或几百个块)。因此,为允许视频编码器20较快速地调适局部系数 统计资料,当计数中的一者达到阈值时,系数扫描单元41可使系数正规化。举例来说, 系数扫描单元41可通过将计数值中的每一者减小预定因数(例如将计数值中的每一者 减小2倍)或通过将计数值复位为初始计数值集合来使系数正规化。系数扫描单元41 可利用其它正规化方法。举例来说,系数扫描单元41可在对特定数目的块进行译码之 后刷新统计资料。
熵编码单元46接收表示块的残差系数的一维系数向量以及块的块标头信息(呈一 个或一个以上标头语法元素的形式)。所述标头语法元素可识别当前视频块的特定特性 (例如块类型、预测模式、亮度与色度的译码块图案(CBP)、块分割及一个或一个以上 运动向量)。可从视频编码器20内的其它组件(例如,从预测单元32)接收这些标头语 法元素。
熵编码单元46编码当前视频块的标头信息及残差信息以产生经编码位流(标记为 图2中的“视频位流(VIDEO BITSTREAM)”)。熵编码单元46根据本发明中所描述的 技术来编码块中的每一者的语法元素中的一者或一者以上。明确地说,熵编码单元46 可基于一个或一个以上先前经编码视频块的语法元素来编码当前块的语法元素。因而, 熵编码单元46可包括用以存储所述一个或一个以上先前经编码视频块的语法元素的一 个或一个以上缓冲器。熵编码单元46可分析任何位置处的任何数目的相邻块以帮助编 码当前视频块的语法元素。出于说明的目的,熵编码单元46将被描述为基于直接位于 当前块上的先前经编码块(即,上部相邻块)及直接位于当前块左边的先前经编码块(即, 左相邻块)来编码预测模式。然而,可将类似技术用于编码其它标头语法元素(例如块 类型、块分割、CBP等)。又,可使用在当前视频块的译码中涉及比仅上部相邻块与左 相邻块多的相邻块的类似技术。
将参看上文所描述的十八个预测模式的集合并鉴于下文的实例伪代码来描述熵编 码单元46的操作。
Let upMode be the prediction mode of the top block
Let leftMode be the prediction mode of the left block
Let currMode be the prediction mode of the current block
If currMode==upMode||currMode==leftMode
     Send″1″
     If upMode!=leftMode
        Send″1″if currMode==upMode or″0″otherwise
Else
     Send″0″
Adjust currMode to be in the range of[0,15]
Send currMode using 4bits
熵编码单元46将变量upMode、leftMode及currMode分别初始化为等于上部相邻块 的预测模式、左相邻块的预测模式及当前块的预测模式。如上文所描述,可基于拉格朗 日成本分析来确定上部相邻块、左相邻块及当前块的预测模式。熵编码单元46将当前 块的预测模式(currMode)与相邻块的预测模式(upMode及leftMode)相比较。如果当 前块的预测模式等于所述相邻块中的任一者的预测模式,则熵编码单元46编码“1”。 因此,由熵编码单元46编码以表示当前块的预测模式的第一位指示当前预测模式是与 上部相邻块的预测模式相同还是与左相邻块的预测模式相同。
如果当前块的预测模式等于所述相邻块中的任一者的预测模式(即,第一编码位为 “1”),则熵编码单元46将上部相邻块的预测模式与左相邻块的预测模式相比较。如果 上部相邻块的预测模式与左相邻块的预测模式相同,则熵编码单元46针对预测模式不 再编码任何位。在此情况下,可使用单一位来编码预测模式。
然而,如果上部相邻块的预测模式不等于左相邻块的预测模式,则熵编码单元46 编码表示预测模式的至少一个额外位以指定所述相邻块中的哪一者具有与当前块相同 的预测模式。举例来说,当熵编码单元46分析上部相邻块与左相邻块的预测模式时, 熵编码单元46可在当前块的预测模式与上部相邻块的预测模式相同的情况下编码“1” 且可在当前块的预测模式与左相邻块的预测模式相同的情况下编码“0”。或者,熵编码 单元46可在当前块的预测模式与左相邻块的预测模式相同的情况下编码“1”且可在当 前块的预测模式与上部相邻块的预测模式相同的情况下编码“0”。在任一情况下,经编 码预测模式的第二位指示上部相邻块或左相邻块中的哪一者具有与当前块的预测模式 相同的预测模式。以此方式,当当前块的预测模式等于所述相邻块中的一者的预测模式 时,熵编码单元46可使用少到一个位及至多两个位来编码当前块的预测模式。如果熵 编码单元46分析两个以上相邻块,则熵编码单元46可编码一个以上额外位以指定先前 经编码块中的哪一者具有与当前块相同的预测模式。
如果当前视频块的预测模式与上部相邻块的预测模式或左相邻块的预测模式不相 同,则熵编码单元46发送“0”,其指示当前视频块的预测模式与所述相邻块中的任一 者的预测模式不相同。熵编码单元46编码表示当前块的预测模式的码字。将上文所描 述的十八个预测模式的集合用作实例,熵编码单元46可使用四位码字来编码当前视频 块的预测模式。尽管存在十八个可能的预测模式(其通常需要五位码字),但所述可能 的预测模式中的两者可针对当前块已从所述集合消除(即,上部相邻块及左相邻块的预 测模式),因为上部相邻块及左相邻块的预测模式已与当前块的预测模式相比较并被决 定为不等于当前块的预测模式。然而,当上部相邻块及左相邻块具有相同预测模式时, 十七个预测模式(而不是十六个预测模式)保持为可能的,从而再次需要五位码字而非 四位码字来表示。在此情况下,在预测过程期间,预测单元32可从所述集合选择性地 移除剩余十七个译码模式中的一者以使得能够使用四位码字来表示当前块的预测模式。 在一例项中,预测单元32可移除最后的预测模式(例如,在此实例中为预测模式17)。 然而,预测单元32可使用多种方法中的任何其它方法而将所述集合的预测模式中的任 一者选择为待移除。举例来说,预测单元32可追踪所选择的每一预测模式的概率,且 移除具有所选择的最低概率的预测模式。
在移除所选预测模式之后,熵编码单元46调整十六个剩余预测模式的范围,使得 预测模式数目的范围为[0,15]。在一个实例中,熵编码单元46可临时将所述剩余预测模 式从0到15重新编号,其以将0指派给具有最小模式编号的剩余预测模式开始并以将 15指派给具有最大预测模式编号的剩余预测模式而结束。举例来说,如果上部相邻块的 预测模式为模式12且左相邻块的预测模式是模式14,则熵编码单元46可分别将预测模 式13、预测模式15、预测模式16及预测模式17重新编号为预测模式12、预测模式13、 预测模式14及预测模式15。熵编码单元46接着使用四个位来编码预测模式。在具有若 干预测模式集合(其具有较多或较少可能的预测模式)的其它实例中,熵编码单元46 可使用类似技术而以较多或较少的位来编码预测模式。
熵编码单元46可使用CAVLC或CABAC来编码当前视频块的预测模式。强相关性 可存在于当前块的预测模式与上部相邻块与左相邻块的预测模式之间。明确地说,当上 部相邻块的预测模式及左相邻块的预测模式均为单向性预测模式时,当前块的预测模式 也为所述单向性预测模式中的一者的概率为高。同样,当上部相邻块的预测模式及左相 邻块的预测模式均为双向性预测模式时,当前块的预测模式也为所述双向性预测模式中 的一者的概率为高。以此方式,当上部相邻块及左相邻块的预测模式的类别(例如,单 向性对双向性)改变时,当前块的预测模式的概率分布改变。
因而,在一些方面中,熵编码单元46可视一个或一个以上先前经编码视频块(例 如,上部相邻视频块及左相邻视频块)的预测模式是单向性还是双向性而定而选择不同 译码上下文。在CABAC的情况下,不同译码上下文反映给定上下文内的预测模式集合 的不同概率。将对应于在上部相邻译码块及左相邻译码块两者具有单向性预测模式时的 情况的译码上下文(本文中称作“第一译码上下文”)作为实例。由于相邻相关性,第 一译码上下文可将比双向性预测模式高的概率指派给单向性预测模式。因此,当针对 CABAC编码选择第一译码上下文(即,上部相邻预测模式及左相邻预测模式两者为单 向性)时,与在当前预测模式为双向性预测模式中的一者的情况下相比,在当前预测模 式为单向性预测模式中的一者的情况下,译码当前预测模式可消耗较少的位。在CAVLC 的情况下,可针对不同译码上下文来界定不同VLC译码表。举例来说,当选择第一译 码上下文(即,上部相邻块及左相邻块两者均具有单向性预测模式)时,可使用VLC 译码表,所述VLC译码表将比双向性预测模式短的码字指派给单向性预测模式。
可见,当上部视频块的预测模式与左视频块的预测模式均为单向性预测模式时,熵 编码单元46可选择第一译码上下文。当上部视频块的预测模式与左视频块的预测模式 均不是单向性预测模式时,熵编码单元46可选择一不同译码上下文。举例来说,当上 部相邻视频块的预测模式与左相邻视频块的预测模式均为双向性预测模式时,熵编码单 元46可选择第二译码上下文。当上部相邻块与左相邻块两者的预测模式为双向性时, 所述第二译码上下文模拟当前视频块的预测模式的概率分布。第二译码上下文的概率分 布在CABAC译码的情况下可将比单向性预测模式高的概率指派给双向性预测模式,且 在CAVLC译码的情况下可将比单向性预测模式短的码字指派给双向性预测模式。
当所述相邻块中的一者的预测模式是单向性预测模式且所述相邻块中的另一者的 预测模式是双向性预测模式时,熵编码单元46仍可选择第三译码上下文。所述第三译 码上下文将当前预测模式的概率更均匀地分布于所述集合的单向性预测模式与双向性 预测模式当中。基于一个或一个以上先前经编码视频块(例如,上部视频块与左视频块) 的预测模式是单向性还是双向性而选择不同译码上下文以供在编码中使用可引起更好 地压缩预测模式信息。
图3为进一步详细说明图1的视频解码器26的实例的框图。视频解码器26可执行 经译码单元(例如视频帧或切片)内的块的帧内解码及帧间解码。在图3的实例中,视 频解码器26包括熵解码单元60、预测单元62、系数扫描单元63、逆量化单元64、逆 变换单元66及帧存储件68。视频解码器26还包括加法器69,所述加法器69组合逆变 换单元66及预测单元62的输出。
熵解码单元60接收经编码的视频位流(标记为图3中的“视频位流(VIDEO BITSTREAM)”)并解码所述经编码位流以获得残差信息(例如,呈量化残差系数的一 维向量的形式)及标头信息(例如,呈一个或一个以上标头语法元素的形式)。熵解码 单元60执行由图2的编码模块46执行的编码的互逆解码功能。出于实例的目的而描述 对熵解码单元60执行预测模式语法元素的解码的描述。可将所述技术扩展到其它语法 元素(例如块类型、块分割、CBP等)的解码。
明确地说,熵解码单元60分析表示预测模式的第一位以确定当前块的预测模式是 否等于所分析的先前经解码的块(例如,上部相邻块或左相邻块)中的任一者的预测模 式。熵解码模块60可在第一位为“1”时确定当前块的预测模式等于所述相邻块中的一 者的预测模式且可在第一位为“0”时确定当前块的预测模式与所述相邻块中的任一者 的预测模式不相同。
如果第一位为“1”且如果上部相邻块的预测模式与左相邻块的预测模式相同,则 熵解码单元60无需接收任何更多位。熵解码单元60选择所述相邻块中的任一者的预测 模式作为当前块的预测模式。熵解码单元60可(例如)包括存储所述一个或一个以上 先前经解码块的先前预测模式的一个或一个以上缓冲器(或其它存储器)。
如果第一位为“1”且如果上部相邻块的预测模式与左相邻块的预测模式不相同, 则熵解码单元60接收表示预测模式的第二位,熵解码单元60基于所述第二位来确定所 述相邻块中的哪一者具有与当前块相同的预测模式。熵解码单元60可(例如)在第二 位为“1”时确定当前块的预测模式与上部相邻块的预测模式相同,且可在第二位为“0” 时确定当前块的预测模式与左相邻块的预测模式相同。熵解码单元60选择正确的相邻 块的预测模式作为当前块的预测模式。
然而,当第一位为“0”时,熵解码单元60确定当前块的预测模式与所述相邻块中 的任一者的预测模式不相同。因此,熵解码单元60可从可能的预测模式的集合移除上 部相邻块与左相邻块的预测模式。所述可能的预测模式集合可包括一个或一个以上单向 性预测模式及/或一个或一个以上多向性预测模式。在上文图2的描述中提供包括总计十 八个预测模式的预测模式的一个实例集合。如果上部相邻块与左相邻块具有相同预测模 式,则熵解码单元60可移除所述相邻块的预测模式及至少一个其它预测模式。作为实 例,熵解码模块60可移除具有最大模式编号的预测模式(例如,上文所描述的十八个 预测模式的集合中的模式17)。然而,熵解码单元60可使用多种方法中的其它任一者而 将所述集合的预测模式中的任一者选择为待移除,只要解码单元60移除与由预测单元 32移除的预测模式相同的预测模式。举例来说,熵解码单元60可移除具有所选择的最 低概率的预测模式。
熵解码单元60可调整剩余预测模式的预测模式编号,使得所述预测模式编号的范 围为0到15。在一个实例中,熵编码单元46可临时将剩余预测模式从0到15重新编号, 其以具有最小模式编号的剩余预测模式开始且以具有最大预测模式编号的剩余预测模 式结束,如上文参看图2所描述。熵解码单元60解码剩余位(例如,在所描述的实例 中为四个位),以获得剩余预测模式的预测模式编号,其符合当前块的预测模式。
在一些例项中,熵解码单元60可使用CAVLC或CABAC来解码当前视频块的预测 模式。因为强相关性可存在于当前块的预测模式与一个或一个以上先前经解码块的预测 模式(例如,上部相邻块与左相邻块的预测模式)之间,所以熵解码单元60可基于一 个或一个以上先前经解码视频块的预测模式的类型针对所述块的预测模式而选择不同 译码上下文。换句话说,熵解码单元60可基于先前经解码块的预测模式是单向性还是 双向性来选择不同译码上下文。
作为一个实例,熵解码单元60可在两个先前经解码块的预测模式为单向性预测模 式时选择第一译码上下文,在两个先前经解码块的预测模式为双向性预测模式时选择第 二译码上下文,且在所述先前经解码块中的一者的预测模式为单向性预测模式且所述先 前经解码块中的另一者的预测模式为双向性预测模式时选择第三译码上下文。
预测单元62使用标头信息的至少一部分而产生预测块。举例来说,在帧内译码块 的情况下,熵解码单元60可将标头信息的至少一部分(例如此块的块类型及预测模式) 提供到预测单元62以用于产生预测块。预测单元62根据块类型及预测模式而使用共同 译码单元内的一个或一个以上邻近块(或所述邻近块的若干部分)来产生预测块。作为 实例,预测单元62可(例如)使用由预测模式语法元素指定的预测模式来产生由块类 型语法元素指示的分割大小的预测块。可(例如)从帧存储件68检索所述当前译码单 元内的所述一个或一个以上邻近块(或所述邻近块的若干部分)。
熵解码单元60还解码经编码视频数据以获得呈一维系数向量的形式的残差信息。 如果使用可分离变换(例如,DCT、H.264/AVC整数变换、可分离方向性变换),则系 数扫描单元63扫描一维系数向量以产生二维块。系数扫描单元63执行由图2的系数扫 描单元41执行的扫描的互逆扫描功能。明确地说,系数扫描单元63根据初始扫描次序 来扫描系数以将一维向量的系数置于二维格式。换句话说,系数扫描单元63扫描一维 向量以产生量化系数的二维块。
系数扫描单元63可基于一个或一个以上系数统计资料而自适应地调整用于系数扫 描的扫描次序以使所述扫描次序与由视频编码器20使用的扫描次序同步。为进行此, 系数扫描单元63可收集一个或一个以上块的一个或一个以上系数统计资料并基于所收 集的统计资料来调适扫描次序。换句话说,随着重构量化系数的二维块,系数扫描单元 63可收集指示二维块内的位置中的每一者已为非零系数的位置的次数的统计资料。系数 扫描单元63可保持多个计数器(其每一者符合二维块中的系数位置),且在非零系数位 于所述相应位置处时递增对应于所述位置的计数器。
系数扫描单元63可基于所收集的统计资料来调适扫描次序。系数扫描单元63可基 于所收集的统计资料来调适扫描次序以在被确定为具有较小的具有非零系数可能性的 系数位置之前扫描具有较高的具有非零系数可能性的位置。系数扫描单元63以由视频 编码器20使用的相同固定或非固定间隔来调适扫描次序。系数扫描单元63以与上文参 看视频编码器20所描述的方式相同的方式而使所收集的统计资料正规化。
如上文所描述,在一些例项中,系数扫描单元63可收集单独的系数统计资料并针 对预测模式中的每一者而单独地自适应地调整扫描次序。系数扫描单元63可进行此操 作,(例如)因为预测模式中的每一者可具有不同系数统计资料。
在产生量化残差系数的二维块后,逆量化单元64逆量化(即,解量化)所述量化 残差系数。逆变换单元66将逆变换(例如,逆DCT、逆整数变换或逆方向性变换)应 用于经解量化的残差系数以产生像素值的残差块。加法器69对由预测单元62产生的预 测块与来自逆变换单元66的残差块求和以形成经重构的视频块。以此方式,视频解码 器26使用标头信息及残差信息来逐块地重构视频序列的帧。
基于块的视频译码可有时在经译码视频帧的块边界处产生在视觉上可察觉的成块 性(blockiness)。在此类情况下,解块滤波可使块边界平滑以减少或消除在视觉上可察 觉的成块性。因而,还可应用解块滤波器(未展示)来滤波经解码块以便减少或移除成 块性。在进行任何任选解块滤波之后,接着将经重构的块放置于帧存储件68中,所述 帧存储件68为后续视频块的空间与时间预测提供参考块且还产生用以驱动显示装置(例 如图1的显示装置28)的经解码视频。
图4为说明与本发明一致的自适应扫描的假设实例的概念图。在此实例中,将系数 位置在项71中标记为c1到c16。在四个连续块的块1(72)、块2(73)、块3(74)及 块4(75)中展示了实际系数值。块1到4的实际系数值可表示量化残差系数、未量化 的变换系数或其它类型的系数。在其它例项中,所述位置可表示残差块的像素值的位置。 块1到4可包含与相同预测模式相关联的块。在图4中所说明的实例中,块1到4为4×4 块。然而,如上文所描述,本发明的技术可经扩展以应用于任何大小的块。此外,尽管 下文参看视频编码器20的系数扫描单元41而进行了描述,但视频解码器26的系数扫 描单元63可收集统计资料并以类似方式调适扫描次序。
最初,系数扫描单元41可使用z字形扫描次序来扫描块1的系数。在此情况下, 系数扫描单元41依以下次序来扫描块1的系数位置;c1、c2、c5、c9、c6、c3、c4、c7、 c10、c13、c14、c11、c8、c12、c15、c16。因此,在扫描块1的系数之后,系数扫描单 元41输出一维系数向量v,其中v=[9,4,6,1,1,0,0,0,0,2,0,0,0,0,0,0]。尽管在图4 中所说明的实例中,系数扫描单元41最初使用z字形扫描次序来扫描块1的系数,但 所述z字形扫描并非用于自适应扫描的唯一可能的开始点。可将水平扫描、垂直扫描或 任何其它初始扫描序列用作初始扫描次序。z字形扫描的使用产生一维系数向量v,所 述向量v在两个非零系数之间具有四个零的游程。
统计资料1(76)表示块1的统计资料。统计资料1(76)可为系数位置中的每一 者的计数值以追踪每一系数位置具有非零值的次数。在图4的实例中,将系数统计资料 全部初始化为零。然而,可使用其它初始化方案。举例来说,可使用预测模式中的每一 者的典型或平均系数统计资料来初始化相应预测模式的统计资料。在对块1译码之后, 统计资料1(76)对于块1的任何非零系数位置来说具有值1且对于块1的任何具有零 值的系数位置来说具有值0。统计资料2(77)表示块1与2的组合统计资料。系数扫 描模块41在系数位置在块2中具有非零值时递增统计资料1(76)的计数且在系数位置 具有值0时将所述计数保持为相同。因此,如图4中所示,系数扫描模块41将系数位 置c1、c2、c5、c9及c13的统计资料递增到值2且将剩余系数位置的统计资料保持为与 统计资料1(76)中的情况相同。统计资料3(78)表示块1到3的组合统计资料且统 计资料4(79)表示块1到4的组合统计资料。如上文所描述,在一些方面中,系数扫 描单元41可使用多个计数器来收集所述块的统计资料。
系数扫描单元41可基于所收集的统计资料来调适扫描次序。在所说明的实例中, 系数扫描单元41可经配置以基于统计资料4(79)而在四个视频块之后调适扫描次序。 在此情况下,系数扫描单元41分析所收集的统计资料并调适扫描次序,使得系数位置 是根据其对应计数值而以递减次序来扫描的。因而,系数扫描单元41可根据初始扫描 次序来扫描块1到4且调适扫描次序从而依以下次序来扫描后续块(例如,块5(未展 示))的位置;c1、c5、c9、c2、c13、c6、c3、c4、c7、c10、c14、c11、c8、c12、c15、 c16。系数扫描单元41根据新扫描次序而继续扫描后续块,直到再次基于块的所收集的 统计资料而调适或重新初始化所述扫描次序(例如,在后续译码单元开始处)为止。
调适扫描次序以从初始扫描次序(例如,z字形扫描次序)改变到新的扫描次序促 进在一维系数向量开始处的非零系数及在结尾处的零系数。在图4的实例中,与水平维 度中的系数相比,新的扫描次序较早地扫描垂直维度中的系数,从而反映以下事实:对 于给定预测模式来说,与水平维度中的系数相比,垂直维度中的系数具有较高的为非零 的可能性。块1到4可均具有相同的预测模式,且过去的统计资料可表示可能的未来的 非零系数位置。因此,通过使用过去的统计资料来界定扫描次序,本发明的技术可促进 将非零系数分组在靠近经扫描的一维向量的开始处及将零值系数分组在靠近所述经扫 描的一维向量的结尾处,因此消除或减少两个非零系数之间的零游程数目。此又可改进 在熵译码期间可实现的压缩水平。
图5为说明与本发明一致的译码技术的流程图。可将图5中所说明的译码技术用于 视频块的编码或解码。如图5中所示,系数扫描单元41、63根据针对当前块的对应预 测模式所界定的初始扫描次序来扫描块的系数(80)。从视频编码器20的观点来说,扫 描可将系数的二维块转换为一维系数向量。然而,从视频解码器26的观点来说,扫描 将使一维系数向量转换为二维系数块。作为一个实例,对应预测模式的初始扫描次序可 为z字形扫描次序。z字形扫描并非唯一可能的初始扫描次序。可将水平扫描、垂直扫 描或任何其它初始扫描次序用作初始扫描次序。
系数扫描单元41、63收集一个或一个以上块的统计资料(82)。明确地说,对于所 扫描的块中的每一者来说,系数扫描单元41、63可收集追踪(例如,通过计数器)二 维块内的系数位置中的每一者为非零系数的频率的统计资料。系数扫描单元41、63确 定是否评估扫描次序(83)。系数扫描单元41、63可以固定间隔(例如,在每一块边界 处或在n个块边界之后)或非固定间隔(例如,当块内的位置的计数值中的一者超过阈 值时)来评估扫描次序。
如果系数扫描单元41、63确定不评估扫描次序,则系数扫描单元41、63根据初始 扫描次序来扫描后续块(80)。如果系数扫描单元41、63确定评估扫描次序(例如,在 n个块已被编码/解码之后),则系数扫描单元可基于所收集的统计资料来调适扫描次序 (84)。举例来说,系数扫描单元41、63可调适扫描次序从而基于其计数值而以递减次 序来扫描块的系数位置,其中所述计数值反映给定位置具有非零系数的可能性。在调适 扫描次序之后,在一些例项中,系数扫描单元41、63可确定统计资料的任何计数值是 否超过阈值(86)。如果所述系数位置中的一者具有超过阈值的对应计数值,则系数扫 描单元41、63可使所收集的统计资料(例如,系数计数值)正规化(87)。举例来说, 系数扫描单元41、63可通过将计数值中的每一者减小预定因数(例如,减小2倍以将 计数值中的每一者减小一半)或将计数值复位为初始计数值的集合来使系数计数值正规 化。使系数计数值正规化可允许视频编码器20更快速地调适局部系数统计资料。
在使所收集的统计资料正规化之后或当不执行正规化时,系数扫描单元41、63使 用经调适的扫描次序来扫描后续块(88)。当至少一个后续块存在于先前经扫描视频块 的译码单元内时,系数扫描单元41、63可使用经调适扫描次序来扫描所述至少一个后 续块。系数扫描单元41、63可继续扫描后续视频块,直到再次调整或重新初始化(例 如,在译码单元边界处)扫描次序为止。以此方式,系数扫描单元41、63基于所收集 的统计资料来调适扫描次序以在块的被确定为具有较小的为非零可能性的系数位置之 前扫描块的被确定为具有较高的为非零可能性的系数位置。因此,一维系数向量经布置 以促进将非零系数分组在靠近经扫描一维向量的开始处及将零值系数分组在靠近所述 经扫描一维向量的结尾处。此又可改进在熵译码期间可实现的压缩水平。
在一些例项中,系数扫描单元41、63可针对预测模式中的每一者而单独地自适应 地调整扫描次序,因为所述预测模式中的每一者可具有不同系数统计资料。换句话说, 系数扫描单元41、63可针对预测模式中的每一者而保持单独统计资料且基于相应统计 资料来不同地调整用于预测模式中的每一者的扫描次序。因此,可针对每一预测模式而 由系数扫描单元41、63来执行上文所描述的实例流程图。
图6为流程图,其说明编码单元(例如视频编码器20的熵编码单元46)根据本发 明的技术中的一者来编码视频块的标头信息的实例操作。熵编码单元46接收块的标头 信息(90),所述标头信息呈一个或一个以上标头语法元素的形式。所述标头语法元素 可识别当前视频块的特定特性(例如块类型、预测模式、亮度及/或色度的译码块图案 (CBP)、块分割及一个或一个以上运动向量)。将关于编码当前块的预测模式来描述图6。 然而,可使用类似技术来编码标头语法元素中的其它者。
熵编码单元46将当前块的预测模式与一个或一个以上先前经编码块的预测模式相 比较(92)。所述一个或一个以上先前经编码块可(例如)包含一个或一个以上邻近块。 在图6的实例中,分析两个先前经编码块(例如,上部相邻块及左相邻块)。如果当前 块的预测模式与所述先前经编码块中的任一者的预测模式相同,则熵编码单元46编码 第一位以指示如此情况(94)。作为一个实例,熵编码单元46可将第一位编码为“1” 以指示当前块的预测模式与先前经编码块中的任一者的预测模式相同。
熵编码单元46将上部相邻块的预测模式与左相邻块的预测模式相比较(98)。如果 上部相邻块的预测模式与左相邻块的预测模式相同,则熵编码单元46针对所述预测模 式不再编码任何位(100)。在此情况下,可使用单一位来编码预测模式。
然而,如果上部相邻块的预测模式不等于左相邻块的预测模式,则熵编码单元46 编码表示预测模式的第二位以指示所述相邻块中的哪一者具有与当前块相同的预测模 式(102)。举例来说,熵编码单元46可在当前块的预测模式与上部相邻块的预测模式 相同的情况下编码“1”且可在当前块的预测模式与左相邻块的预测模式相同的情况下 编码“0”。因而,当当前块的预测模式等于所述相邻块中的一者的预测模式时,熵编码 单元46可使用少到一个位及至多两个位来编码当前块的预测模式。
如果当前块的预测模式与先前经编码块中的任一者的预测模式不相同,则熵编码单 元46编码第一位以指示如此情况(96)。为继续上文的实例,熵编码单元46可将第一 位编码为“0”以指示当前块的预测模式与先前经编码块中的任一者的预测模式不相同。 熵编码单元46可重新布置可能的预测模式的集合(104)。熵编码单元46可通过从可能 的预测模式的集合移除相邻块的预测模式来重新布置可能的预测模式的集合。当上部相 邻块与左相邻块具有彼此不同的预测模式时,熵编码单元46可从所述集合移除两个预 测模式。当上部相邻块与左相邻块具有彼此相同的预测模式时,熵编码单元46可从所 述集合移除一个预测模式(即,上部相邻块与左相邻块的预测模式)。此外,在一些例 项中,熵编码单元46可从所述集合选择性地移除一个或一个以上额外译码模式。当熵 编码单元46移除一个或一个以上额外译码模式时,图2的预测单元32也从可能的预测 模式的集合移除相同的额外译码模式,使得将不选择这些额外译码模式。在移除所述一 个或一个以上预测模式之后,熵编码单元46调整所述集合的剩余预测模式的模式编号。
熵编码单元46对表示当前块的预测模式的码字进行编码(106)。熵编码单元46可 使用CAVLC、CABAC或其它熵译码方法来编码当前视频块的预测模式。如将参看图7 而更详细描述,在一些例项中,编码单元46可基于所述一个或一个以上先前经编码块 的预测模式而自适应地选择供在编码当前块的预测模式中使用的译码上下文。
图7为说明根据本发明的一个方面的译码上下文选择的流程图。如上文所描述,相 关性可存在于当前块的预测模式的类型与一个或一个以上先前经编码块(例如上部相邻 块与左相邻块)的预测模式的类型之间。举例来说,当上部相邻块与左相邻块的预测模 式均为单向性预测模式时,存在当前块的预测模式也为单向性预测模式的较高概率。同 样,当上部相邻块与左相邻块的预测模式均为双向性预测模式时,存在当前块的预测模 式也为双向性预测模式的较高概率。
因而,熵编码单元46可确定上部相邻块与左相邻块的预测模式是否为单向性预测 模式(112)且当上部相邻块与左相邻块两者的预测模式为单向性预测模式时选择第一 译码上下文(114)。当上部相邻块与左相邻块两者的预测模式为单向性预测模式时,所 述第一译码上下文模拟当前视频块的预测模式的概率分布。与所述集合的双向性预测模 式相比,第一译码上下文的概率分布可为所述集合的单向性预测模式提供较高概率。在 CAVLC的情况下,举例来说,第一译码上下文可使用译码表,与同双向性预测模式相 关联的码字相比,所述译码表使较短的码字与单向性预测模式相关联。
当上部相邻块与左相邻块中的每一者的预测模式并非单向性预测模式时,熵编码单 元46可确定上部相邻块与左相邻块中的每一者的预测模式是否为双向性预测模式 (116)。当上部相邻块与左相邻块中的每一者的预测模式均为双向性预测模式时,熵编 码单元46可选择第二译码上下文(117)。所述第二译码上下文基于以下假定来模拟当 前视频块的预测模式的概率分布:与单向性预测模式相比,存在当前模式为双向性预测 模式的较高概率。又,在CAVLC的情况下,举例来说,第二译码上下文可使用译码表, 与同单向性预测模式相关联的码字相比,所述译码表使较短的码字与双向性预测模式相 关联。
当上部相邻块与左相邻块的预测模式均不是双向性预测模式(即,先前经编码块的 预测模式为双向性预测模式与单向性预测模式的组合)时,熵编码单元46可选择第三 译码上下文(118)。所述第三译码上下文是在以下假定下而产生的:当前预测模式的概 率被更均匀地分布于所述集合的单向性预测模式与双向性预测模式当中。在CAVLC的 情况下,举例来说,第三译码上下文可使用译码表,所述译码表使类似代码长度的码字 与双向性预测模式及单向性预测模式相关联。
熵编码模块46根据所选译码上下文来编码当前视频块的预测模式(119)。基于一 个或一个以上先前经编码视频块的预测模式而选择不同译码上下文以供在编码当前视 频块的预测模式中使用可引起更好地压缩预测模式信息。由解码单元60执行相同的译 码上下文选择技术,使得解码单元60可精确地解码视频块的预测模式。
图8为说明了解码单元(例如视频解码器26的熵解码单元60)根据本发明的技术 来解码视频块的标头信息的实例操作的流程图。熵解码单元60解码经编码视频位流以 获得标头信息(例如,呈一个或一个以上标头语法元素的形式)。出于实例的目的而描 述对熵解码单元60执行预测模式的解码的描述。可将所述技术扩展到其它标头语法元 素(例如块类型、块分割、CBP等)的解码。
明确地说,熵解码单元60接收表示当前块的预测模式的第一位(120)。熵解码单 元60确定表示预测模式的第一位是否指示当前块的预测模式与先前经解码块(例如, 上部相邻块或左相邻块)的预测模式相同(122)。熵解码模块60可(例如)在第一位 为“1”时确定当前块的预测模式与上部相邻块及左相邻块中的一者的预测模式相同, 且可在第一位为“0”时确定当前块的预测模式与上部相邻块及左相邻块的预测模式不 相同。
当熵解码单元60确定当前块的预测模式与上部相邻块及左相邻块中的一者的预测 模式相同时,熵解码单元60确定上部相邻块的预测模式与左相邻块的预测模式是否相 同(124)。当上部相邻块的预测模式与左相邻块的预测模式相同时,不接收表示当前视 频块的预测模式的更多位,且熵解码单元60选择所述相邻块中的任一者的预测模式作 为当前块的预测模式(126)。当上部相邻块的预测模式与左相邻块的预测模式不同时, 接收表示预测模式的一个额外位,且熵解码单元60基于表示预测模式的下一所接收的 位而选择正确的相邻块的预测模式作为当前块的预测模式(128)。举例来说,熵解码单 元60可在下一所接收的位为“1”时选择上部相邻块的预测模式作为当前块的预测模式, 且可在下一所接收的位为“0”时选择左相邻块的预测模式作为当前块的预测模式。
当熵解码单元60确定当前块的预测模式与上部相邻块及左相邻块中的任一者的预 测模式不同时(即,当表示预测模式的第一位为“0”时),熵解码单元60可移除可能 的预测模式的集合的一个或一个以上预测模式(130)。熵解码单元60可从可能的预测 模式的集合移除上部相邻块及左相邻块的预测模式。如果上部相邻块与左相邻块具有相 同预测模式,则熵解码单元60可移除所述相邻块的预测模式及至少一个其它预测模式, 如上文所详细描述。
熵解码单元60解码剩余位(例如,在所描述的实例中为四个位)以获得当前块的 预测模式的预测模式编号(132)。熵解码单元60可以与由熵编码单元46执行的预测模 式编号调整过程互逆的方式来调整剩余预测模式的预测模式编号(134)。在一个实例中, 熵解码单元60可通过插回已被移除的预测模式而将经解码预测模式编号(范围是从0 到15)重新编号为原始预测模式编号(范围是从0到17)。在一些例项中,熵解码单元 60可基于一个或一个以上先前经解码视频块的预测模式(例如,基于所述先前经解码块 的预测模式是否均为单向性、均为双向性或一者为单向性且另一者为双向性)针对块的 预测模式而选择不同译码上下文,如上文所详细描述。熵解码单元60将预测模式提供 到预测单元62以根据所选预测模式而产生预测块(136)。如参看图3所描述,将预测 块与残差像素值组合以产生经重构块供呈现给用户。
可以硬件、软件、固件或其任何组合来实施本发明中所描述的技术。可将被描述为 单元或组件的任何特征一起实施于集成逻辑装置中或单独实施为离散但可共同操作的 逻辑装置。如果以软件实施,则可至少部分地由计算机可读媒体来实现所述技术,所述 计算机可读媒体包含在被执行时可执行上文所描述的方法中的一者或一者以上的指令。 所述计算机可读媒体可形成计算机程序产品的一部分,所述计算机程序产品可包括封装 材料。计算机可读媒体可包含随机存取存储器(RAM)(例如同步动态随机存取存储器 (SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可 编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体等。另外或或者, 所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体携载或 传达呈指令或数据结构形式的代码且可由计算机来存取、读取及/或执行。
所述代码可由一个或一个以上处理器(例如一个或一个以上数字信号处理器(DSP)、 通用微处理器、专用集成电路(ASIC)、场可编程逻辑阵列(FPGA)或其它等效集成或 离散逻辑电路)来执行。因此,如本文中所使用的术语“处理器”可指上述结构中的任 一者或任何其它适合用于实施本文中所描述的技术的结构。另外,在一些方面中,可将 本文中所描述的功能性提供于经配置以用于编码及解码的专用软件单元或硬件单元内, 或并入于组合式视频编码器-解码器(编解码器)中。对不同特征作为单元的描述希望突 出所说明的装置的不同功能方面且未必暗示此类单元必须由单独硬件或软件组件来实 现。而是,可将与一个或一个以上单元相关联的功能性集成于共用或单独的硬件或软件 组件内。
已描述本发明的各种实施例。这些及其它实施例在所附权利要求书的范围内。
申请案主张2007年6月15日申请的美国临时申请案第60/944,470号及2007年 10月12日申请的美国临时申请案第60/979,762号的权利,所述申请案中的每一者的全 部内容以引用的方式并入本文中。
相关专利内容
标题 发布/更新时间 阅读量
经编机梳栉运动装置 2020-05-12 889
经编机的提花导纱装置 2020-05-13 991
经编机链传动构件 2020-05-13 449
经编机的取纱机构 2020-05-11 481
经编机压纱装置 2020-05-11 167
毛圈型经编机针芯运动机构 2020-05-14 58
经编机纱线张力器 2020-05-12 578
经编机压纱板运动装置 2020-05-12 531
经编机的铺纬装置 2020-05-13 284
一种经编机花梳针 2020-05-13 263
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈