用于可缩放视频译码及3d视频译码的多假设运动补偿的制作方法_3

文档序号:8208078阅读:来源:国知局
指若干基于时间的译码模式中的任一者。
[0059] 如图2中所示,视频编码器20接收待编码视频帧内的当前视频块。在图1的实例 中,视频编码器20包含模式选择单元40、参考帧存储器64、求和器50、变换处理单元52、量 化单元54及摘编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、 帧内预测单元46及分割单元48。为了视频块重构,视频编码器20还包含反量化单元58、 反变换单元60,及求和器62。还可包含解块滤波器(图2中未图示)以便对块边界进行滤 波,以从经重构视频移除成块性假影。必要时,解块滤波器通常将对求和器62的输出进行 滤波。除解块滤波器之外,还可使用额外滤波器(环路内或环路后)。为简洁起见未展示 此类滤波器,但是必要时,这些滤波器可以对求和器50的输出进行滤波(作为环路内滤波 器)。
[0060] 在编码过程期间,视频编码器20接收待译码的视频帧或切片。所述帧或切片可被 划分成多个视频块。运动估计单元42及运动补偿单元44相对于一或多个参考帧中的一或 多个块执行所接收视频块的帧间预测译码以提供时间预测。帧内预测单元46可替代地相 对于与待译码块相同的帧或切片中的一或多个相邻块执行对所接收的视频块的帧内预测 译码以提供空间预测。视频编码器20可以执行多个译码遍次,例如,以便为每一视频数据 块选择一种适当的译码模式。
[0061] 此外,分割单元48可以基于前述译码遍次中的前述分割方案的评估将视频数据 块分割成子块。举例来说,分割单元48最初可以将帧或切片分割成LCU,并且基于速率失真 分析(例如,速率失真优化)将LCU中的每一者分割成子CU。模式选择单元40可以进一步 产生指示LCU划分成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU和 一或多个TU。
[0062] 模式选择单元40可以基于错误结果选择译码模式中的一者(帧内或帧间),并且 将所得的经帧内译码或经帧间译码块提供到求和器50以便产生残差块数据,并且提供到 求和器62以便重构经编码块用作参考帧。模式选择单元40还将语法元素(例如,运动向 量、帧内模式指示符、分割信息及其它此类语法信息)提供到熵编码单元56。
[0063] 运动估计单元42与运动补偿单元44可高度集成,但出于概念目的分开加以说明。 由运动估计单元42执行的运动估计是产生运动向量的过程,所述过程估计视频块的运动。 举例来说,运动向量可以指示当前视频帧或图片内的视频块的PU相对于参考帧(或其它经 译码单元)内的预测块相对于当前帧(或其它经译码单元)内正经译码的当前块的移位。 预测块是被发现在像素差方面与待译码块紧密匹配的块,像素差可通过绝对差总和(SAD)、 平方差总和(SSD)或其它差异度量来确定。在一些实例中,视频编码器20可计算存储于参 考帧存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可以内插 参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估 计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精度 的运动向量。
[0064] 运动估计单元42通过比较PU的位置与参考图片的预测块的位置来计算经帧间译 码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二 参考图片列表(列表1),所述参考图片列表中的每一者识别存储在参考帧存储器64中的一 或多个参考图片。运动估计单元42将计算出来的运动向量发送到j:商编码单元56及运动补 偿单元44。
[0065] 由运动补偿单元44执行的运动补偿可以涉及基于由运动估计单元42确定的运动 向量提取或产生预测块。同样,在一些实例中,运动估计单元42与运动补偿单元44可以在 功能上集成。在接收到当前视频块的PU的运动向量后,运动补偿单元44便可以在参考图 片列表中的一者中定位所述运动向量指向的预测块。求和器50通过从经译码的当前视频 块的像素值减去预测块的像素值从而形成像素差值来形成残差视频块,如下文所论述。一 般来说,运动估计单元42相对于亮度分量执行运动估计,并且运动补偿单元44对于色度分 量及亮度分量两者使用基于亮度分量计算的运动向量。模式选择单元40还可产生与视频 块和视频切片相关联的供视频解码器30在对视频切片的视频块进行解码时使用的语法元 素。
[0066] 作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代 方案,帧内预测单元46可以对当前块进行帧内预测或计算。明确地说,帧内预测单元46可 以确定用来编码当前块的帧内预测模式。在一些实例中,帧内预测单元46可(例如)在单 独编码回合期间使用各种帧内预测模式对当前块进行编码,且帧内预测单元46 (在一些实 例中,或为模式选择单元40)可从所测试的模式中选择将使用的适当的帧内预测模式。
[0067] 举例来说,帧内预测单元46可以使用速率失真分析计算针对各种经测试帧内预 测模式的速率失真值,并且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测 模式。速率失真分析一般确定经编码块与经编码以产生所述经编码块的原始的未经编码块 之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内 预测单元46可以根据用于各种经编码块的失真及速率计算比率,以确定哪种帧内预测模 式对于所述块展现最佳速率失真值。
[0068] 在选择了用于块的帧内预测模式之后,帧内预测单元46可将指示用于所述块的 选定帧内预测模式的信息提供给熵编码单元56。熵编码单元56可以对指示所选帧内预测 模式的信息进行编码。视频编码器20可在所传输的位流中包含配置数据,所述配置数据 可包含多个帧内预测模式索引表及多个修改的帧内预测模式索引表(还被称作码字映射 表)、编码用于各种块的上下文的界定,及用于所述上下文中的每一者的最可能的帧内预测 模式、帧内预测模式索引表及修改的帧内预测模式索引表的指示。
[0069] 视频编码器20通过从经译码的原始视频块减去来自模式选择单元40的预测数据 形成残差视频块。求和器50表示执行此减法运算的一或多个组件。变换处理单元52将例 如离散余弦变换OCT)或概念上类似的变换等变换应用于残差块,从而产生包括残差变换 系数值的视频块。变换处理单元52可以执行概念上类似于DCT的其它变换。还可使用小 波变换、整数变换、子频带变换或其它类型的变换。在任何情况下,变换处理单元52向残差 块应用所述变换,从而产生残差变换系数的块。所述变换可将残差信息从像素值域转换到 变换域,例如频域。变换处理单元52可将所得变换系数发送到量化单元54。量化单元54 将变换系数量化以进一步减小位速率。量化过程可减少与系数中的一些系数或全部相关联 的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可以接着执 行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可以执行所述扫描。
[0070] 在量化之后,熵编码单元56对经量化的变换系数进行熵译码。举例来说,熵编 码单元56可以执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码 (CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间划分熵(PIPE)译码 或另一熵译码技术。在基于上下文的熵译码的情况下,上下文可以基于相邻块。在熵编码 单元56的熵译码之后,可以将经编码位流传输到另一装置(例如视频解码器30),或者将所 述视频存档用于以后传输或检索。
[0071] 反量化单元58及反变换单元60分别应用反量化及反变换以在像素域中重构残差 块,例如以供稍后用作参考块。运动补偿单元44可以通过将残差块添加到参考帧存储器64 的帧中的一者的预测块中来计算参考块。运动补偿单元44还可将一或多个内插滤波器应 用于经重新构造的残差块以计算子整数像素值以用于运动估计。求和器62将经重构的残 差块添加到由运动补偿单元44产生的经运动补偿的预测块以产生经重构参考块以供存储 在参考帧存储器64中。经重构视频块可由运动估计单元42及运动补偿单元44用作参考 块以对后续视频帧中的块进行帧间译码。
[0072] 图3是说明可实施本发明中描述的方面的技术的视频解码器的实例的框图。视频 解码器30可经配置以执行本发明的技术中的任一者或全部。作为一个实例,运动补偿单元 72及/或帧内预测单元74可经配置以执行本发明中描述的技术中的任一者或全部。然而, 本发明的方面不限于此。在一些实例中,本发明中描述的技术可在视频解码器30的各种组 件之间共享。在一些实例中,作为补充或替代,处理器(未图示)可经配置以执行本发明中 描述的技术中的任一者或全部。
[0073] 在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测 单元74、反量化单元76、反变换单元78、参考帧存储器82及求和器80。视频解码器30在 一些实例中可执行一般与关于来自图2的视频编码器20所描述的编码回合互逆的解码回 合。运动补偿单元72可基于从熵解码单元70接收的运动向量产生预测数据,而帧内预测 单元74可基于从熵解码单元70接收的帧内预测模式指示符产生预测数据。
[0074] 在解码过程期间,视频解码器30从视频编码器20接收表示经解码视频切片和相 关联的语法元素的视频块的经编码视频位流。视频解码器30的熵解码单元70熵解码位流 以产生经量化的系数、运动向量或帧内预测模式指示符及其它语法元素。摘解码单元70将 运动向量及其它语法元素转发到运动补偿单元72。视频解码器30可以接收在视频切片层 级和/或视频块层级处的语法元素。
[0075] 当视频切片经译码为经帧内译码(I)切片时,帧内预测单元74可以基于用信号发 送的帧内预测模式和来自当前图片的先前经解码块的数据产生用于当前视频切片的视频 块的预测数据。在视频帧被译码为经帧间译码(例如,B、P或GPB)切片时,运动补偿单元 72基于运动向量及从熵解码单元70接收的其它语法元素而产生用于当前视频切片的视频 块的预测块。可以从参考图片列表中的一者内的参考图片中的一者产生预测块。视频解码 器30可基于存储于参考帧存储器92中的参考图片使用默认建构技术来建构参考帧列表: 列表0及列表1。运动补偿单元72通过解析运动向量及其它语法元素来确定用于当前视 频切片的视频块的预测信息,并且使用所述预测信息产生用于正被解码的当前视频块的预 测块。举例来说,运动补偿单元72使用所接收的语法元素中的一些语法元素来确定用于对 视频切片的视频块进行译码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型 (例如,B切片、P切片或GPB切片)、用于切片的参考图片列表中的一或多者的建构信息、用 于切片的每一经帧间编码视频块的运动向量、用于切片的每一经帧间译码视频块的帧间预 测状态,及用以对当前视频切片中的视频块进行解码的其它信息。
[0076] 运动补偿单元72还可基于内插滤波器执行内插。运动补偿单元72可使用由视频 编码器20在编码视频块期间使用的内插滤波器来计算参考块的子整数像素的内插值。在 此状况下,运动补偿单元72可根据所接收的语法信息元素而确定由视频编码器20使用的 内插滤波器且使用所述内插滤波器来产生预测块。
[0077] 反量化单元76将在位流中提供且由j:商解码单元80解码的经量化变换系数反量 化,例如解量化。反量化过程可包含使用视频解码器30针对视频切片中的每一视频块计算 以确定应该应用的量化程度和同样反量化程度的量化参数QPY。反变换单元78对变换系数 应用反变换,例如反DCT、反整数变换或概念上类似的反变换过程,以便产生像素域中的残 差块。
[0078] 在运动补偿单元82基于运动向量和其它语法元素产生当前视频块的预测块之 后,视频解码器30通过对来自反变换模块78的残差块与由运动补偿单元72产生的对应预 测块求和而形成经解码视频块。求和器90表示可执行此求和运算的组件。必要时,还可应 用解块滤波器以对经解码块进行滤波以便移除成块性假影。还可使用其它环路滤波器(在 译码环路中或在译码环路之后)来使像素转变变平滑或者以其它方式改善视频质量。接着 将给定帧或图片中的经解码视频块存储在参考图片存储器92中,参考图片存储器92存储 参考图片用于后续运动补偿。参考帧存储器82还存储经解码视频用于以后在显示装置(例 如图1的显示装置32)上呈现。
[0079]HEVC中的运动补偿
[0080] 如上文所提及,HEVC是下一代视频译码标准。一般来说,HEVC遵循先前视频译码 标准的框架。HEVC的运动补偿循环保持与H. 264/AVC中的运动补偿循环相同,S卩,当前帧| 的重构等于经解量化的系数r加上时间预测P :
[0081] I=r+P,
[0082] 其中P指示P帧或切片的单向预测或B帧或切片的双向预测。
[0083] HEVC中的运动补偿的单元不同于先前视频译码标准中的单元。实际上,在HEVC中 不存在先前视频译码标准中的宏块的概念。而是,宏块概念被基于通用四叉树方案的高度 灵活的分层结构取代。在此方案内,界定三种类型的块,即,译码单元(CU)、预测单元(PU) 及变换单元(TU)。CU是区拆分的基础单元。CU类似于宏块的概念,但其不限制最大大小且 其允许递归地拆分为四个相等大小的CU来改进内容适应性。PU是帧间/帧内预测的基础 单元且其可在单一PU中含有多个任意形状的分区以有效地译码不规则的图像图案。TU是 变换的基础单元。其可独立于PU而界定;然而,其大小受限于TU所属的CU。此将块结构 分离为三个不同概念允许每一者根据其作用被优化,这促成改进的译码效率。
[0084] 一般来说,在多假设运动补偿中,同时使用一个以上运动补偿预测信号来预测当 前帧。如今,B帧是二假设运动补偿的最常见实例。对多假设运动补偿进行的研宄已发现 增加假设的数目将一般导致更高的译码效率。进一步的研宄指示在考虑额外假设的运动信 息的成本时,二假设运动补偿是几乎最佳的。因此,二假设运动补偿广泛用于现今的视频译 码标准及实际的视频编解码器中,因为来自使用额外假设(例如,第三或第四假设)的额外 质量或译码效率增益的益处一般不及用于编码额外假设的额外运动信息的位成本。然而, 在一些实施例中,以下揭示内容描述允许在仅需要将最少的额外数据编码到位流中的同时 使用额外假设的系统及装置。实际上,所述系统及装置可使用预先存在的数据以导出所述 额外假设。
[0085] HEVC中的运动预测
[0086] 在HEVC中,对于每一帧间预测单元(PU),传输个别运动参数。为了实现改进的译 码效率,利用块合并过程以在所谓的合并模式中选择最佳运动向量预测符。
[0087] 如下描述合并模式的实施例的解码过程。
[0088] 鲁解析如预测单元中指定的候选者列表的索引 :merge_idx〇
[0089] ?根据图4建构合并候选者列表。使用以下特定次序的来自空间相邻者A、B、C、 D及在时间上位于同一地点的块的相对于当前预测单元的候选运动向量:
[0090] 〇A,如果availableFlagA等于 1
[0091] 〇B,如果availableFlagB等于 1
[0092] 〇Col(时间位于同一地点的块),如果availableFlag
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1