首页> 中国专利> 用于系数扫描的系数群及系数译码

用于系数扫描的系数群及系数译码

摘要

本发明描述用于视频译码器(例如,视频编码器或视频解码器)的技术,所述视频译码器经配置以从对于多个扫描类型相同的多个上下文样式选择上下文样式。本发明还描述用于视频译码器的技术,所述视频译码器经配置以选择识别用于两个或两个以上扫描类型的上下文的上下文样式。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-01-19

    授权

    授权

  • 2015-04-22

    实质审查的生效 IPC(主分类):H04N19/13 申请日:20130415

    实质审查的生效

  • 2014-12-24

    公开

    公开

说明书

相关申请案

本申请案主张以下临时申请案的权利:

2012年4月16日申请的美国临时申请案第61/625,039号,及

2012年7月2日申请的美国临时申请案第61/667,382号,所述临时申请案中的每一 者的全部内容是以引用方式并入本文中。

技术领域

本发明是关于视频译码,且更特别地,是关于用于在视频译码中译码语法元素的技 术。

背景技术

数字视频能力可并入到广泛范围的装置中,所述装置包括数字电视、数字直播系统、 无线广播系统、个人数字助理(PDA)、便携式或台式计算机、平板计算机、电子书阅读 器、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂 窝或卫星无线电话、所谓“智能电话”、视频电话会议装置、视频流式处理装置及其类 似者。数字视频装置实施根据视频译码标准而定义的视频压缩技术。数字视频装置可通 过实施这些视频压缩技术来较有效率地传输、接收、编码、解码及/或存储数字视频信息。 视频译码标准包括ITU-T H.261、ISO/IEC MPEG-1Visual、ITU-T H.262或ISO/IEC  MPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual及ITU-T H.264(也被称为ISO/IEC  MPEG-4AVC),包括其可缩放视频译码(SVC)及多视图视频译码(MVC)扩展。此外,高 效率视频译码(HEVC)为正由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组 (MPEG)的视频译码联合合作小组(JCT-VC)开发的视频译码标准。

视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测以缩减或移除为视频序 列所固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的部分) 分割成若干视频块,其也可被称作树块、译码单元(CU)及/或译码节点。图片的经帧内译 码(I)切片中的视频块是使用关于所述同一图片中的相邻块中的参考样本的空间预测予 以编码。图片的经帧间译码(P或B)切片中的视频块可使用关于所述同一图片中的相邻 块中的参考样本的空间预测或关于其它参考图片中的参考样本的时间预测。图片可被称 作帧,且参考图片可被称作参考帧。

空间或时间预测引起用于待译码块的预测性块。残余数据表示原始待译码块与预测 性块之间的像素差。经帧间译码块是根据指向形成预测性块的参考样本块的运动矢量及 指示经译码块与预测性块之间的差的残余数据予以编码。经帧内译码块是根据帧内译码 模式及残余数据予以编码。出于进一步压缩起见,可将残余数据从像素域转换到转换域, 从而引起残余转换系数,其接着可被量化。可扫描最初按二维阵列而排列的经量化转换 系数以便产生转换系数的一维矢量,且可应用熵译码以实现甚至更多的压缩。

发明内容

大体上,本发明描述用于在转换系数译码中编码及解码表示转换系数的有效性的数 据(诸如,有效系数标志及系数群标志)的技术。描述用于确定待用于CABAC(上下文自 适应二进制算术译码)译码与转换系数相关联的语法元素的上下文的各种技术。

举例来说,在一些技术中,视频编码器及视频解码器针对水平扫描、垂直扫描及对 角扫描的扫描类型而从相同多个上下文样式选择一上下文样式。换言之,不管垂直地、 水平地还是对角地扫描子块,所述视频编码器及所述视频解码器可针对所有三个扫描类 型而从所述相同上下文样式选择所述上下文样式。所述视频编码器及所述视频解码器利 用所述选定上下文样式内的上下文以分别CABAC编码或CABAC解码转换块的有效性 语法元素。

作为另一实例,在一些技术中,视频编码器及视频解码器可选择上下文样式。在一 些实例中,所述视频编码器及所述视频解码器针对所述子块的两个或两个以上扫描类型 利用所述选定上下文样式。举例来说,如果水平地扫描所述子块,那么所述视频编码器 及所述视频解码器利用所述选定上下文样式,且如果垂直地扫描所述子块,那么所述视 频编码器及所述视频解码器利用所述选定上下文样式。

在一个实例中,本发明描述一种用于解码视频数据的方法。所述方法包含:在位流 中接收用于块的当前子块的转换系数的有效性语法元素;针对用于所述当前子块的所述 转换系数的所述有效性语法元素的多个扫描类型而从多个二维上下文样式选择上下文 样式,其中所述多个二维上下文样式对于所述多个扫描类型中的每一者相同,且其中所 述上下文样式中的每一者是与一或多个相邻子块是否包括任何非零转换系数的条件相 关联;基于所述选定上下文样式而将上下文指派给所述转换系数的所述有效性语法元素 中的每一者;及基于所述经指派上下文来上下文自适应二进制算术译码(CABAC)解码所 述当前子块的所述转换系数的所述有效性语法元素。

在另一实例中,本发明描述一种用于解码视频数据的装置,所述装置包含视频解码 器,所述视频解码器经配置以:在位流中接收用于块的当前子块的转换系数的有效性语 法元素;针对用于所述当前子块的所述转换系数的所述有效性语法元素的多个扫描类型 而从多个二维上下文样式选择上下文样式,其中所述多个二维上下文样式对于所述多个 扫描类型中的每一者相同,且其中所述上下文样式中的每一者是与一或多个相邻子块是 否包括任何非零转换系数的条件相关联;基于所述选定上下文样式而将上下文指派给所 述转换系数的所述有效性语法元素中的每一者;及基于所述经指派上下文来上下文自适 应二进制算术译码(CABAC)解码所述当前子块的所述转换系数的所述有效性语法元素。

在另一实例中,本发明描述一种计算机可读存储媒体,其具有存储在其上的指令, 所述指令在执行时使用于解码视频数据的装置的一或多个处理器:在位流中接收用于块 的当前子块的转换系数的有效性语法元素;针对用于所述当前子块的所述转换系数的所 述有效性语法元素的多个扫描类型而从多个二维上下文样式选择上下文样式,其中所述 多个二维上下文样式对于所述多个扫描类型中的每一者相同,且其中所述上下文样式中 的每一者是与一或多个相邻子块是否包括任何非零转换系数的条件相关联;基于所述选 定上下文样式而将上下文指派给所述转换系数的所述有效性语法元素中的每一者;及基 于所述经指派上下文来上下文自适应二进制算术译码(CABAC)解码所述当前子块的所 述转换系数的所述有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的方法。所述方法包含:产生用 于块的当前子块的转换系数的有效性语法元素;针对用于所述当前子块的所述转换系数 的所述有效性语法元素的多个扫描类型而从多个二维上下文样式选择上下文样式,其中 所述多个二维上下文样式对于所述多个扫描类型中的每一者相同,且其中所述上下文样 式中的每一者是与一或多个相邻子块是否包括任何非零转换系数的条件相关联;基于所 述选定上下文样式而将上下文指派给所述转换系数的所述有效性语法元素中的每一者; 基于所述经指派上下文来上下文自适应二进制算术译码(CABAC)编码所述当前子块的 所述转换系数的所述有效性语法元素;及输出所述经编码有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的装置,所述装置包含视频编码 器,所述视频编码器经配置以:产生用于块的当前子块的转换系数的有效性语法元素; 针对用于所述当前子块的所述转换系数的所述有效性语法元素的多个扫描类型而从多 个二维上下文样式选择上下文样式,其中所述多个二维上下文样式对于所述多个扫描类 型中的每一者相同,且其中所述上下文样式中的每一者是与一或多个子块是否包括任何 非零转换系数的条件相关联;基于所述选定上下文样式而将上下文指派给所述转换系数 的所述有效性语法元素中的每一者;基于所述经指派上下文来上下文自适应二进制算术 译码(CABAC)编码所述当前子块的所述转换系数的所述有效性语法元素;及输出所述经 编码有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的装置,所述装置包含:用于产 生用于块的当前子块的转换系数的有效性语法元素的装置;用于针对用于所述当前子块 的所述转换系数的所述有效性语法元素的多个扫描类型而从多个二维上下文样式选择 上下文样式的装置,其中所述多个二维上下文样式对于所述多个扫描类型中的每一者相 同,且其中所述上下文样式中的每一者是与一或多个相邻子块是否包括任何非零转换系 数的条件相关联;用于基于所述选定上下文样式而将上下文指派给所述转换系数的所述 有效性语法元素中的每一者的装置;用于基于所述经指派上下文来上下文自适应二进制 算术译码(CABAC)编码所述当前子块的所述转换系数的所述有效性语法元素的装置;及 用于输出所述经编码有效性语法元素的装置。

在另一实例中,本发明描述一种用于解码视频数据的方法。所述方法包含:在位流 中接收用于块的当前子块的转换系数的有效性语法元素;选择上下文样式,其中所述上 下文样式识别用于所述当前子块的两个或两个以上扫描样式的上下文;基于所述选定上 下文样式而将上下文指派给用于所述当前子块的所述转换系数的所述有效性语法元素; 及基于所述经指派上下文来上下文自适应二进制算术译码(CABAC)解码所述当前子块 的所述转换系数的所述有效性语法元素。

在另一实例中,本发明描述一种用于解码视频数据的装置,所述装置包含视频解码 器,所述视频解码器经配置以:在位流中接收用于块的当前子块的转换系数的有效性语 法元素;选择上下文样式,其中所述上下文样式识别用于所述当前子块的两个或两个以 上扫描样式的上下文;基于所述选定上下文样式而将上下文指派给用于所述当前子块的 所述转换系数的所述有效性语法元素;及基于所述经指派上下文来上下文自适应二进制 算术译码(CABAC)解码所述当前子块的所述转换系数的所述有效性语法元素。

在另一实例中,本发明描述一种计算机可读存储媒体,其具有存储在其上的指令, 所述指令在执行时使用于解码视频数据的装置的一或多个处理器:在位流中接收用于块 的当前子块的转换系数的有效性语法元素;选择上下文样式,其中所述上下文样式识别 用于所述当前子块的两个或两个以上扫描样式的上下文;基于所述选定上下文样式而将 上下文指派给用于所述当前子块的所述转换系数的所述有效性语法元素;及基于所述经 指派上下文来上下文自适应二进制算术译码(CABAC)解码所述当前子块的所述转换系 数的所述有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的方法。所述方法包含:产生用 于块的当前子块的转换系数的有效性语法元素;选择上下文样式,其中所述上下文样式 识别用于所述当前子块的两个或两个以上扫描样式的上下文;基于所述选定上下文样式 而将上下文指派给用于所述当前子块的所述转换系数的所述有效性语法元素;基于所述 经指派上下文来上下文自适应二进制算术译码(CABAC)编码所述当前子块的所述转换 系数的所述有效性语法元素;及输出所述经编码有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的装置,所述装置包含视频编码 器,所述视频编码器经配置以:产生用于块的当前子块的转换系数的有效性语法元素; 选择上下文样式,其中所述上下文样式识别用于所述当前子块的两个或两个以上扫描样 式的上下文;基于所述选定上下文样式而将上下文指派给用于所述当前子块的所述转换 系数的所述有效性语法元素;基于所述经指派上下文来上下文自适应二进制算术译码 (CABAC)编码所述当前子块的所述转换系数的所述有效性语法元素;及输出所述经编码 有效性语法元素。

在另一实例中,本发明描述一种用于编码视频数据的装置,所述装置包含:用于产 生用于块的当前子块的转换系数的有效性语法元素的装置;用于选择上下文样式的装 置,其中所述上下文样式识别用于所述当前子块的两个或两个以上扫描样式的上下文; 用于基于所述选定上下文样式而将上下文指派给用于所述当前子块的所述转换系数的 所述有效性语法元素的装置;用于基于所述经指派上下文来上下文自适应二进制算术译 码(CABAC)编码所述当前子块的所述转换系数的所述有效性语法元素的装置;及用于输 出所述经编码有效性语法元素的装置。

在随附图式及以下描述中阐明一或多个实例的细节。从所述描述及所述图式且从权 利要求书,其它特征、目标及优势将显而易见。

附图说明

图1为说明用于视频块的系数群及扫描的实例的概念图。

图2A到2B为说明用于视频块的系数群及扫描的实例的概念图。

图3A到3B为说明用于视频块的系数群及扫描的实例的概念图。

图4为说明视频块中的转换系数与同视频块相关联的有效性映射之间的关系的概念 图。

图5A到5D为说明用于针对子块中的系数的上下文指派的样式的实例的概念图。

图6为说明可利用本发明所描述的帧间预测技术的实例视频编码及解码系统的框 图。

图7为说明可实施本发明所描述的帧间预测技术的实例视频编码器的框图。

图8为说明可实施根据本发明的用于熵编码预测性语法元素的技术的熵编码器的实 例的框图。

图9A到9D为说明用于针对子块中的系数的上下文指派的样式的实例的概念图。

图10为说明用于针对子块中的系数的上下文指派的样式的实例的概念图。

图11为说明根据本发明的技术来编码预测性语法元素的流程图。

图12为说明根据本发明的技术来编码预测性语法元素的流程图。

图13为说明可实施本发明所描述的帧间预测技术的实例视频解码器的框图。

图14为说明可实施根据本发明的用于解码预测性语法元素的技术的熵解码器的实 例的框图。

图15为说明根据本发明的技术来解码预测性语法元素的流程图。

图16为说明根据本发明的技术来解码预测性语法元素的流程图。

具体实施方式

根据一些实例而设计的视频译码器(诸如,高效率视频译码(HEVC)标准的工作草稿 7(WD7)(在本文中被称作HEVC WD7且可得自http://phenix.it-sudparis.eu/jct/ doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v5.zip)中提议的视频译码器)针对 非正方形系数群相比于针对4×4子块系数群可需要不同数据存取。这种情形可在视频译 码器的实施期间强加额外硬件及软件复杂性。如果移除非正方形系数群且根据对角、垂 直或水平扫描类型中的一者来扫描4×4子块系数,那么可缩减额外硬件及软件复杂性。 然而,当使用根据HEVC WD7而定义的上下文导出来将上下文指派给指示子块是否包 括有效系数的语法元素时,这种修改可缩减译码效率。因此,本发明描述用于指派用于 指示子块是否包括有效系数的语法元素的上下文的技术,其可提供改善型译码效率。

举例来说,在这些其它技术(即,未必根据本发明所描述的技术的技术)中的一些中, 针对用于转换单元(TU或转换块)的可能大小的子集使用上下文样式来译码指示转换单 元的转换系数的有效性的语法元素(被称作有效性语法元素)。此外,这些其它技术针对 有限扫描类型使用上下文样式。因此,因必须确定TU的大小以使得可进行关于是否可 使用上下文样式的确定而浪费计算资源。

在本发明所描述的技术中,针对多种不同大小的TU而将相同上下文样式用于多个 扫描类型(例如,水平扫描、垂直扫描及对角扫描)。举例来说,视频编码器或视频解码 器可从用于8×8TU的4×4子块的相同多个上下文样式选择一上下文样式,而不管用于 4×4子块的扫描类型(例如,不管4×4子块被水平地扫描、垂直地扫描还是对角地扫描)。 如更详细地所描述,所述多个上下文样式中的每一者是与一或多个相邻子块是否包括任 何有效转换系数(例如,任何非零转换系数)的条件相关联。如也更详细地所描述,本发 明描述供视频编码器或视频解码器选择上下文样式的多个上下文样式的特性。如此,由 于视频编码器及视频解码器可针对用于包括8×8块(即,8×8TU)的4×4子块的子块的有 效性语法元素的多个扫描类型(例如,水平扫描、垂直扫描及对角扫描)使用相同上下文 样式来确定用于有效性语法元素的上下文,故可实现计算效率。

在以上实例中,上下文样式可为二维上下文样式。然而,本发明的方面不受到如此 限制。在一些实例中,视频编码器及视频解码器选择上下文样式(例如,被存储为一维上 下文样式的上下文样式)。举例来说,可将一些上下文样式定义为二维上下文样式。可有 可能从二维上下文样式预计算一维上下文样式。预计算可加速编码及解码进程。举例来 说,可将转换系数从二维块变换为一维块。在经预计算的一维样式的情况下,相比于在 一维块上使用二维上下文样式,如果使用一维样式来编码或解码有效性语法元素,那么 可实现编码及解码效率,这是因为将转换系数变换到一维块。应理解,从二维上下文样 式预计算一维上下文样式并不在每一实例中被需要,且不应被视为确定一维上下文样式 的有限方式。

可存在可计算一维上下文样式的各种方式。作为一个实例,对角地扫描、水平地扫 描及垂直地扫描二维上下文样式以产生三个一维上下文样式(每一扫描类型一个一维上 下文样式)。在本发明所描述的技术中,二维上下文样式可包含缩减所产生的一维上下文 样式的总数的特性。

举例来说,如果存在各自经水平地、垂直地及对角地扫描以产生一维上下文样式的 四个二维上下文样式,那么将存在总共12个一维上下文样式。在一些实例中,四个二 维上下文样式可包括以使得两个不同扫描引起相同一维上下文样式的方式而排列的上 下文。

举例来说,二维上下文样式中的一者可包括在经水平地或垂直地扫描时引起相同一 维上下文样式的上下文。作为另一实例,二维上下文样式中的一者可包括在经水平地扫 描时引起一维上下文样式的上下文,所述一维上下文样式为在垂直地扫描二维上下文样 式中的另一者时将引起的相同一维矢量。作为另一实例,二维上下文样式中的一者可包 括在经水平地、垂直地及对角地扫描时引起相同一维上下文样式的上下文。

如此,可在由上下文样式的不同扫描引起的所得一维上下文样式中存在重叠,这种 情形缩减需要存储的一维上下文样式的总数。这种情形允许针对子块的两个或两个以上 扫描类型使用一个上下文样式。

举例来说,如上文所描述,二维上下文样式中的一者包括在经水平地、垂直地及对 角地扫描时引起相同一维上下文样式的上下文。因此,对于这种上下文样式,存储仅一 个一维上下文样式,这是因为所述一维上下文样式对于所有三个类型的上下文样式扫描 相同。

作为另一实例,二维上下文样式中的一者包括在经水平地或垂直地扫描时引起相同 一维上下文样式的上下文。在这种状况下,存储用于对角扫描的一维上下文样式,且存 储用于水平扫描或垂直扫描而非这两者的一维上下文样式,这是因为由水平及垂直扫描 引起的一维上下文样式相同。在这些实例中,可预计算及存储从二维上下文样式计算的 这些一维上下文样式,这种情形可加速编码及解码进程。

此外,在一些实例中,未必需要从二维上下文样式计算一维上下文样式。更确切地, 可预选择及存储所述一维上下文样式作为一维上下文样式。即使在这些实例中,一维上 下文样式也可识别用于当前子块的两个或两个以上扫描类型的上下文。

数字视频装置实施视频压缩技术以较有效率地编码及解码数字视频信息。可根据视 频译码标准(诸如,当前在JCT-VC的开发中的HEVC标准)来定义视频压缩技术。HEVC 标准化努力是基于被称作HEVC测试模型(HM)的视频译码装置的模型。HM推测视频译 码装置相对于在开发先前视频译码标准(例如,ITU-T H.264/AVC)期间可用的视频译码装 置的能力改善。举例来说,H.264提供九个帧内预测编码模式,而HEVC提供多达三十 五个帧内预测编码模式。另外,作为HEVC标准化努力的部分,JCT-VC已定义可用以 评估对HEVC标准的草稿的个别修改可如何影响总体译码性能的测试条件。用以评估译 码性能的一个准则为所谓BD速率。

被称作“HEVC工作草稿7”或“WD7”的HEVC的新近工作草稿(WD)被描述于 Bross等人的文档JCTVC-I1003_d4的“High efficiency video coding(HEVC)text  specification draft 7”中,ITU-T SG16WP3及ISO/IEC JTC1/SC29/WG11的视频译码联 合合作小组(JCT-VC),瑞士日内瓦,2012年4月到5月,第9次会议。另外,HEVC的 另一新近工作草稿——工作草稿9(WD9)——被描述于Bross等人的文档 JCTVC-K1003_v7的“High Efficiency Video Coding(HEVC)Text Specification Draft 9” 中,ITU-T SG16WP3及ISO/IEC JTC1/SC29/WG11的视频译码联合合作小组(JCT-VC), 中国上海,2012年10月,第11次会议。WD9的最新版本是得自 http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v29.zip。

虽然本发明的技术是关于ITU-T H.264标准及即将到来的HEVC标准予以描述,但 本发明的技术通常适用于任何视频译码标准。出于说明的目的,本申请案中将描述根据 开发中HEVC标准的目前所提议方面中的一些的译码。然而,本发明所描述的技术也可 有用于及应用于其它视频译码进程,诸如,根据ITU-T H.264或其它标准而定义的视频 译码进程或专有视频译码进程。

视频序列通常包括一系列视频帧,也被称作图片。图片群(GOP)通常包含所述视频 帧中的一系列一或多个视频图片。GOP可在GOP的标头中、在图片中的一或多者的标 头中或在别处包括语法数据,所述语法数据描述包括在GOP中的图片的数目。每一帧 可包括多个切片。图片的每一切片可包括描述用于相应切片的译码模式的切片语法数 据。每一切片可包括多个视频块或译码单元。视频块可具有固定或变化大小,且其大小 可根据指定译码标准而不同。

可通过应用空间(帧内)预测及/或时间(帧间)预测技术以缩减或移除为视频序列所固 有的冗余来编码视频块。空间预测可被称作“帧内模式”(I模式),且时间预测可被称作 “帧间模式”(P模式或B模式)。预测技术产生视频数据的预测性块,其也可被称作参考 样本块。比较待译码的原始视频数据块与预测性块。原始视频数据块与预测性块之间的 差可被称作残余数据。残余数据通常为预测性块及原始视频数据块的像素值之间的差的 阵列。

可在译码进程期间将转换(例如,离散余弦转换(DCT)或概念上相似转换、整数转换、 小波转换,或另一类型的转换)应用于残余数据以产生一组对应转换系数。因此,可通过 对转换系数执行反转换且将残余数据加到预测性块来重建原始视频块。也可量化转换系 数。量化通常是指转换系数经量化以可能地缩减用以表示所述系数的数据的量而提供进 一步压缩的进程。即,可根据经定义位深度而将转换系数的值表示为位字符串。举例来 说,可在量化期间将n位值降值舍入到m位值,其中m小于n。在一些状况下,量化可 引起将低值转换系数表示为零。经量化转换系数可被称作转换系数级别。

在量化之后,可根据诸如内容自适应可变长度译码(CAVLC)、上下文自适应二进制 算术译码(CABAC)或概率区间分割熵译码(PIPE)的熵译码方法来熵编码经量化转换系 数。也可熵译码诸如定义预测模式的语法元素的语法元素。为了执行CAVLC,视频编 码器可选择用于待传输符号的可变长度代码。VLC中的代码字可经构造成使得相对较短 代码对应于较可能符号,而较长代码对应于较不可能符号。为了执行CABAC,视频编 码器可将上下文模型内的上下文指派给待传输符号。

对于一些熵编码技术,可使用预定义扫描顺序来扫描经量化转换系数以产生可被熵 编码的经量化转换系数的系列化矢量。因此,根据预测性视频译码,可将包含像素差值 的残余值转换成转换系数、进行量化及扫描以产生系列化转换系数以用于熵译码。

对于视频译码,作为一个实例,可将视频帧分割成一或多个切片,其中切片包括连 续整数数目个译码单元。译码单元(CU)通常是指充当出于视频压缩而被应用各种译码工 具的基本单元的矩形图像区域。一般而言,本发明的技术是关于转换、量化、扫描及熵 译码CU的数据。CU通常为正方形,且可被视为相似于诸如ITU-T H.264的其它视频译 码标准所描述的所谓“宏块”。CU可被视为视频样本值阵列。视频样本值也可被称作像 元或像素。CU通常具有被表示为Y的亮度分量,及被表示为U及V的两个色度分量。 所述两个色度分量也可分别被表示为Cb及Cr分量。可根据水平及垂直样本的数目来定 义CU的大小。因此,可将CU描述为N×N或N×M CU。在本发明中,“N×N”与“N 乘N”可互换式地用以指在垂直及水平维度方面的视频块的像素尺寸,例如,16×16像 素或16乘16像素。一般而言,16×16块将在垂直方向上具有16个像素(y=16)且在水平 方向上具有16个像素(x=16)。同样地,N×N块通常在垂直方向上具有N个像素且在水 平方向上具有N个像素,其中N表示非负整数值。块中的像素可以行及列而排列。此 外,块未必需要在水平方向上与在垂直方向上具有相同数目个像素。举例来说,块可包 含N×M像素,其中M未必等于N。

为了实现较好译码效率,CU可取决于视频内容而具有可变大小。根据HEVC,位 流内的语法数据可定义最大译码单元(LCU),其在样本的数目方面为用于帧或图片的最 大CU。通常,LCU包括64×64亮度样本,但LCU的大小可取决于译码应用而变化。 LCU也可被称作“译码树单元”。可通过递归式地将LCU分割成若干子CU来产生其它 尺寸的CU。可使用被称为“残余四叉树”(RQT)的四叉树结构来执行LCU成为子CU 的分割。因此,LCU也可被称作树块。根据四叉树分割,四叉树的根节点(诸如,LCU) 可拆分成四个较小节点,且每一子节点又可进一步拆分成另四个较小节点。用于位流的 语法数据可定义LCU可被拆分的最大次数,被称作CU深度。因此,位流也可定义最小 译码单元(SCU)。通常,SCU包括8×8亮度样本。因此,在一个实例中,可通过将64×64 LCU分割成四个子CU来产生四个32×32CU,且所述32×32CU中的每一者可进一步分 割成十六个8×8CU。

CU可包括一或多个关联预测单元(PU)及/或转换单元(TU)。一般而言,PU包括用以 产生用于CU的视频数据的预测性块的数据。PU也可被称作“预测分区”。与CU相关 联的语法元素可描述将CU分割成一或多个PU。PU可为正方形或非正方形形状。包括 在PU中的类型数据可取决于CU被跳过或直接模式编码、帧内预测模式编码还是帧间 预测模式编码而不同。举例来说,当CU将被帧内模式编码时,PU可包括描述帧内预测 模式的数据,且当CU将被帧间模式编码时,PU可包括定义用于PU的运动矢量的数据。 举例来说,定义用于PU的运动矢量的数据可描述运动矢量的水平分量、运动矢量的垂 直分量、用于运动矢量的分辨率(例如,四分之一像素精确度或八分之一像素精确度)、 运动矢量所指向的参考图片,及/或用于运动矢量的参考图片列表。在使用CU的PU的 预测之后,视频译码器可计算CU的残余数据。

HM支持以各种PU大小的预测。假设特定CU的大小为2N×2N,那么HM支持以 2N×2N或N×N的PU大小的帧内预测及以2N×2N、2N×N、N×2N或N×N的对称PU大 小的帧间预测。HM也支持用于以2N×nU、2N×nD、nL×2N及nR×2N的PU大小的帧间 预测的不对称分割。在不对称分割中,CU的一个方向未分割,而另一方向分割成25% 及75%。对应于25%分区的CU的部分是由“n”后面跟着“上”、“下”、“左”或“右” 的指示进行指示。因此,举例来说,“2N×nU”是指被水平地分割的2N×2N CU,其中 2N×0.5N PU是在顶部上且2N×1.5N PU是在底部上。

如上文所描述,可将转换应用于残余数据以将残余数据从像素域变换到转换域。 HEVC标准允许根据TU的转换,其对于不同CU可不同。TU通常是基于给定CU内的 PU的大小予以定大小,但可不总是为这种状况。TU的大小可与CU的大小相同,或可 将CU分割成多个TU。TU通常为相同大小或小于PU。在HEVC中,与CU相关联的 语法元素可描述根据四叉树而将CU分割成一或多个TU。

一般而言,TU用于将残余数据转换成转换系数的进程中。TU可为正方形或非正方 形形状。举例来说,可将8×8残余值的块转换成一组8×8转换系数。这组转换系数更通 常可被称作转换块。举例来说,可对与16×16样本阵列相关联的残余值执行一种转换, 或可对四个8×8样本阵列中的每一者执行转换。较大TU通常提供较多压缩,其中在经 重建图像中具有较可感知的“块效应(blockiness)”,而较小TU通常提供较少压缩,其中 具有较不可感知的“块效应”。TU大小的选择可基于速率-失真优化分析。可用TU大小 可包括32×32、16×16及8×8TU。应注意,本发明通常使用术语“视频块”以指CU的 译码节点。在一些特定状况下,本发明也可使用术语“视频块”以指树块,即,LCU或 CU,其包括译码节点以及PU及TU。

概念上,转换块或TU可为转换系数的二维(2D)矩阵。如上文所描述,视频译码器 可对转换块执行量化操作。可使用预定义扫描顺序来扫描经量化转换系数以产生经量化 转换系数的系列化矢量。经量化转换系数的系列化矢量接着可经熵编码以提供进一步压 缩。

在一些实例中,对于16×16及32×32TU,使用4×4子块扫描以产生经量化转换系 数的系列化矢量。举例来说,使用右顶部到左底部扫描而在反向方向上扫描子块。在子 块内,也使用右底部到左顶部扫描而在反向方向上扫描转换系数。这种类型的扫描可被 称作对角4×4子块扫描。在一些实例中,8×8TU也可使用对角4×4子块扫描作为一种 可能扫描。图1为说明用于视频块的系数群及扫描的实例的概念图。图1说明划分成四 个4×4子块的8×8视频块,其中对所述子块中的每一者执行对角扫描。子块也可被称作 系数群。在图1中,使用较粗内部线来识别及分离每一系数群。如图1所说明,存在四 个系数群,且每一系数群包括16个系数。使用方向箭头来展示图1中的子块内的扫描。

除了对角4×4子块扫描以外,模式相依系数扫描也允许针对一些8×8帧内预测模式 的非正方形水平及垂直扫描。对于8×8TU的非正方形水平及垂直扫描,将系数群定义 为用于非正方形水平扫描的8×2矩形(即,在扫描顺序中的16个连续系数)。以相似方式, 将系数群定义为用于非正方形垂直扫描的2×8矩形。图2A到2B分别说明具有8×8TU 的水平及垂直扫描的非正方形系数群。在图2A到2B中,使用较粗内部线来识别及分离 每一系数群。如图2A到2B所说明,存在四个系数群,且每一系数群包括16个系数。 在图2A中,使用右边到左边扫描来扫描子块。如图2B所说明,使用底部到顶部扫描来 扫描子块。使用方向箭头来展示图2A到2B中的子块内的扫描。应注意,根据HEVC WD7 而设计的视频译码器针对非正方形系数群相比于针对规则4×4子块系数群可需要不同数 据存取。这种情形可在视频译码器的实施期间强加额外硬件及软件复杂性。

因此,除了对角4×4子块扫描以及非正方形水平及垂直扫描以外,也已针对8×8TU 的4×4子块提议水平及垂直子块扫描作为非正方形水平及垂直扫描的替代例。子块水平 及垂直扫描的实例被描述于以下各者中:(1)Rosewarne,C.、Maeda,M.的“Non-CE11: Harmonisation of 8x8TU residual scan”,JCT-VC Contribution JCTVC-H0145;(2)Yu,Y.、 Panusopone,K.、Lou,J.、Wang,L.的“Adaptive Scan for Large Blocks for HEVC”,JCT-VC  Contribution JCTVC-F569;及(3)2012年7月17日申请的美国专利申请案第13/551,458 号,其中的每一者是据此以引用方式并入。图3A到3B中说明可用于8×8TU的两个实 例水平及垂直4×4子块扫描。在图3A到3B中,使用较粗内部线来识别及分离每一系 数群。相似于图1所说明的群,在图3A到3B中,存在使用右顶部到左底部扫描而在反 向方向上被扫描的四个4×4系数群。使用方向箭头来说明子块内的扫描。

应注意,在使用水平4×4子块扫描及垂直4×4子块扫描作为非正方形水平及垂直扫 描的替代例时,根据提议JCTVC-H0145,相比于使用对角4×4子块、水平8×2矩形扫 描及垂直2×8矩形扫描的组作为用于8×8TU的可能扫描,使用对角4×4子块、水平4×4 子块扫描及垂直4×4子块扫描的组作为8×8TU的可能扫描已针对帧内配置引起0.3%的 性能BD速率损失。即,在一些测试状况下,用图3A到3B所说明的扫描来取代图2A 到2B所说明的扫描已将译码性能减低达0.3%。

在视频译码的实例中,使用五个译码遍次来译码每一子块,即,(1)有效性遍次、(2) 大于1遍次、(3)大于2遍次、(4)正负号遍次,及(5)系数级别剩余遍次。有效性译码是 指产生语法元素以指示子块内的系数中的任一者是否具有1或更大的值。即,具有1或 更大的值的系数被视为有效。有效性的译码包括两个部分。对于有效性译码的第一部分, 针对每一像素群(即,4×4子块)译码或推断语法元素,其指示在所述子块中是否存在任 何非零系数。这个语法元素的一个实例被称作系数群标志(CGF)。在HEVC WD7中,CGF 可由语法元素significant_coeff_group_flag表示。在HEVC WD9中,系数群标志的语法 元素名称已从significant_coeff_group_flag改变到coded_sub_block_flag(其由于系数群 为4×4子块而也可被称作CSBF)。本发明将系数群标志称作CGF,其可对应于 significant_coeff_group_flag或coded_sub_block_flag语法元素中的任一者。

对于有效译码的第二部分,如果CGF为1(即,在子块中存在非零系数),那么针对 系数群中的每一转换系数产生指示所述转换系数是否有效(即,为1或更大的值)的语法 元素。这些语法元素的实例被称作有效性语法元素,其实例为有效系数标志。在HEVC WD7及WD9中,有效系数标志是由语法元素significant_coefficient_flag表示。

换言之,为了译码系数的有效性,译码两个类型的语法元素。针对每一译码群(即, 子块)译码第一语法元素(例如,CGF),其指示在译码群中是否存在任何非零系数。如果 第一语法元素指示在译码群中存在至少一个非零系数,那么针对译码群中的每一系数译 码第二语法元素(例如,有效性语法元素或significant_coefficient_flag),其指示系数为 零还是非零系数。

大于1遍次产生用以指示有效系数的绝对值是否大于1的语法元素。在一个实例中, 被称作coeff_abs_level_greater1_flag(缩写为“gr1Flag”)的语法元素提供关于有效系数 是否具有大于1的绝对值的指示。以相似方式,大于2遍次产生用以指示大于1系数的 绝对值是否大于2的语法元素。在一个实例中,被称作coeff_abs_level_greater2_flag(缩 写为“gr2Flag”)的语法元素提供关于大于1系数是否具有大于2的绝对值的指示。

正负号遍次产生用以指示用于有效系数的正负号信息的语法元素。在一个实例中, 被称作coeff_sign_flag(缩写为“signFlag”)的语法元素可指示用于有效系数的正负号信 息。举例来说,signFlag的值0可指示正号,而值1可指示负号。系数级别剩余遍次产 生指示转换系数级别的剩余绝对值(例如,余数值)的语法元素。在一个实例中,被称作 coeff_abs_level_remain(缩写为“levelRem”)的语法元素可提供这个指示。作为一个实 例,除非针对任何给定系数存在gr2Flag,否则可不发信levelRem语法元素,但并不总 是需要此类限制。在一个实例中,具有值level的系数可被译码为(abs(level)-x),其中x 的值取决于gr1Flag及gr2Flag的存在。举例来说,如果存在gr2Flag,那么x可等于3。 在一些实例中,对于存在余数的任何系数,值level可被译码为(abs(level)-3)。应注意, 五遍次途径仅仅为可用于译码转换系数的一种实例技术,且本文所描述的技术可同等地 适用于其它技术。

另外,除了上文所描述的语法元素以外,也可在位流中发信在TU内的最后有效系 数的位置。在TU内的最后有效系数的位置取决于与TU相关联的扫描顺序。出于识别 最后有效系数的目的的扫描顺序可为上文所描述的扫描顺序或另一预定扫描顺序中的 任一者。在HEVC WD7中,通过指定x坐标值及y坐标值来指示在块内的最后有效系 数的位置。可使用last_significant_coeff_x_prefix及last_significant_coeff_x_suffix语法 元素来指示x坐标值。可使用last_significant_coeff_y_prefix及 last_significant_coeff_y_suffix语法元素来指示y坐标值。

如此,上文所描述的语法元素可用以发信转换系数的所谓有效性映射,其中有效性 映射说明具有TU的有效系数的位置。图4为说明转换块中的转换系数与同转换映射相 关联的有效性映射之间的关系的概念图。如图4所说明,有效性映射包括“1”以指示 在转换块中的有效系数值(即,大于0的值)的每一实例。此外,在这个实例中,CFG的 值为“1”以指示在译码群(即,子块)中存在至少一个非零系数。

举例来说,在图4中,左边的子块说明实例转换系数(例如,经量化转换系数)。如 所说明,在子块中存在至少一个非零系数,因此,CFG为1。此外,在图4中,右边的 有效性映射包括用于子块中的每一转换系数的有效性语法元素(例如,有效系数标志)。 举例来说,针对所有对应转换系数的有效系数标志值1指示这些转换系数的值并非零 (即,非零转换系数),且针对所有对应转换系数的值0指示这些转换系数的值为零。

在HEVC中,可使用CABAC(上下文自适应二进制算术译码)来熵译码与经量化转 换系数有关的语法元素,诸如,上文所描述的significant_coeff_group_flag及 significant_coefficient_flag以及其它语法元素。为了将CABAC译码应用于语法元素, 可将二进制化应用于语法元素以形成一系列一或多个位,其被称作“二进制”。此外, 译码上下文可与语法元素的二进制相关联。译码上下文可识别译码二进制具有特定值的 概率。举例来说,译码上下文可指示译码0值二进制(在这种情况下,表示“最可能符号” 的实例)的0.7概率,及译码1值二进制的0.3概率。在识别译码上下文之后,可基于所 述上下文来算术上译码二进制。在一些状况下,与特定语法元素或其二进制相关联的上 下文可取决于其它语法元素或译码参数。

举例来说,CGF上下文导出取决于对应系数群的扫描顺序。举例来说,对于根据对 角4×4子块扫描而扫描的系数群(例如,在16×16及32×32TU以及一些8×8TU的状况 下),CGF上下文(即,语法元素significant_coeff_group_flag的上下文)取决于在所述系 数群右边的子块的CGF(CGFR)及在所述系数群下方的子块的CGF(CGFB)。对于图2A 到2B所说明的非正方形水平及垂直扫描(例如,在8×8TU的那种状况下),系数群的CGF 上下文仅取决于先前经译码系数群的CGF。对于水平扫描,先前经译码系数群是指在所 述系数群下方的经译码系数群。对于垂直扫描,先前系数群是指在所述系数群右边的系 数群。

应注意,在HEVC WD7中,因为CGF的上下文导出对于对角4×4子块扫描(即, 取决于CGFR及CGFB)与对于非正方形水平及垂直扫描(即,仅取决于先前CGF)不同, 所以对于针对4×4对角子块系数群的CGF上下文导出与针对非正方形水平及垂直扫描 的CGF上下文导出需要不同逻辑路径,这种情形也可强加硬件及软件复杂性。

在HEVC WD7中,指派给significant_coefficient_flag语法元素的上下文取决于以 下各者:(1)在4×4子块内的转换系数的位置、(2)在当前子块右边的子块的CGF(CGFR) 及在当前子块下方的子块的CGF(CGFB),及(3)子块是否含有DC系数。全文据此以引 用方式并入的Kumakura,T.、Fukushima,S.的“Non-CE3:Simplified context derivation for  significant map”(JCT-VC Contribution JCTVC-I0296)提供一个实例,其中取决于CGFR及CGFB的值及在子块内的系数的位置而向4×4子块内的系数指派上下文。

图5A到5D说明用于取决于CGFR及CGFB的4×4子块的有效系数标志的上下文指 派的四个不同样式。应注意,在图5A到5D中,虽然上下文编号开始于0,但这种情形 是出于说明目的且不反映HEVC WD7中使用的实际上下文编号,而仅反映相对上下文 编号。如图5A到5D所说明,每一上下文样式包括16个上下文值,其中每一上下文值 对应于位于相应位置中的系数。另外,如图5A到5D所说明,上下文样式是基于CGFR及CGFB的值予以确定。如此,图5A到5D中的样式说明实例,其中基于在4×4子块内 的转换系数的位置以及CGFR及CGFB的值而将上下文指派给有效系数标志。应注意, 图5A到5D所说明的上下文指派对于图3A到3B所说明的水平或垂直子块扫描基于在 使用所述扫描而产生的矢量内有效系数的可能位置并非最佳。

另外,在一个实例中,可基于对应子块是否包括DC系数来修改上下文样式内的上 下文的值。作为一个实例,DC系数可为转换的第一系数,且通常可指示整个块中的平 均量能量。对于亮度转换系数,如果4×4子块不含有DC系数,那么可应用上下文偏移。 在一些实例中,应用为3的上下文偏移。作为实例,如果4×4子块不含有DC系数且从 上下文样式导出的上下文指派为2,那么所使用的实际上下文可为5。换言之,在两种 状况下,上下文导出进程可确切地相同(即,基于CGFR及CGFB的值而从一组样式选择 样式),但针对DC及非DC子块使用不同组上下文。即,DC及非DC子块不共享相同 上下文。

本发明使用术语“DC子块”以指块(例如,TU)的包括所述块的DC系数的子块。 举例来说,假设TU的DC系数为最左上部系数,那么TU的包括DC系数的最左上部子 块可被称作DC子块。另外,在一个实例中,对于色度转换系数,不应用基于4×4子块 是否含有DC系数的上下文偏移确定。即,对于色度转换系数,针对DC子块及非DC 子块共享上下文。因此,在一些状况下,针对与色度分量相关联的转换系数使用仅三个 上下文。另外,在一些状况下,DC系数可总是使用针对所有TU大小被共享的分离上 下文。另外,在HEVC WD7中,针对8×8TU的有效性映射上下文导出使用可缩放8×8 表用于上下文指派,且因而,用于8×8TU的有效性映射译码不与用于16×16及32×32TU 的有效性映射上下文导出统一。

本发明描述用于译码与包括在转换块中的转换系数相关联的语法元素(诸如,译码群 标志语法元素(即,significant_coeff_group_flag或coded_sub_block_flag)及有效系数语 法元素(即,significant_coefficient_flag))的若干技术。详言之,本发明描述可使用图3A 到3B中的扫描顺序作为图2A到2B所说明的非正方形系数群的替代例的技术。另外, 本发明描述用于与转换系数相关联的语法元素的上下文导出技术,其中所述技术是基于 图3A到3B所说明的子块扫描的特性。在一个实例中,当使用图3A到3B所说明的扫 描以代替图2A到2B所说明的扫描时,上下文导出技术可减轻BD速率性能损失,如上 文所描述。

图6为说明可经配置以利用本发明所描述的技术来指派上下文的实例视频编码及解 码系统10的框图。如图6所示,系统10包括源装置12,其产生待在稍后时间由目的地 装置14解码的经编码视频数据。源装置12及目的地装置14可包含广泛范围的装置中 的任一者,包括台式计算机、笔记本(例如,便携式)计算机、平板计算机、机顶盒、诸 如所谓“智能”电话的电话手机、所谓“智能”板、电视、相机、显示装置、数字媒体 播放器、视频游戏控制台、视频流式处理装置或其类似者。在一些状况下,源装置12 及目的地装置14可经装备用于无线通信。然而,本发明的技术未必限于无线应用或环 境。所述技术可应用于视频译码以支持多种多媒体应用中的任一者,诸如,空中电视广 播、有线电视传输、卫星电视传输、流式处理视频传输(例如,经由因特网)、供存储在 数据存储媒体上的数字视频的编码、存储在数据存储媒体上的数字视频的解码,或其它 应用。在一些实例中,系统10可经配置以支持单向或双向视频传输以支持诸如视频流 式处理、视频播放、视频广播及/或视频电话的应用。

在图6的实例中,源装置12包括视频源18、视频编码器20及输出接口22。在一 些状况下,输出接口22可包括调制器/解调器(调制解调器)及/或传输器。在源装置12中, 视频源18可包括诸如视频捕获装置(例如,视频相机)、含有先前经捕获视频的视频存档、 用以从视频内容提供者接收视频的视频馈送接口及/或用于产生计算机图形数据作为源 视频的计算机图形系统的源,或这些源的组合。作为一个实例,如果视频源18为视频 相机,那么源装置12及目的地装置14可形成所谓相机电话或视频电话。然而,本发明 所描述的技术大体上可适用于视频译码,且可应用于无线及/或有线应用。经捕获、经预 捕获或经计算机产生视频可由视频编码器12编码。经编码视频数据可经由链路16而经 由源装置20的输出接口22直接地传输到目的地装置14。经编码视频数据也(替代地)可 存储到存储装置32上以供目的地装置14或其它装置稍后存取,以用于解码及/或播放。

链路16可包含能够将经编码视频数据从源装置12输送到目的地装置14的任何类 型的媒体或装置。在一个实例中,链路16可包含通信媒体以使源装置12能够实时地将 经编码视频数据直接地传输到目的地装置14。经编码视频数据可根据诸如无线通信协议 的通信标准予以调制,且传输到目的地装置14。通信媒体可包含任何无线或有线通信媒 体,诸如,射频(RF)频谱或一或多个物理传输线。通信媒体可形成基于数据包的网络的 部分,诸如,局域网、广域网,或诸如因特网的全局网络。通信媒体可包括路由器、交 换机、基站,或可有用于促进从源装置12到目的地装置14的通信的任何其它设备。

存储装置32可包括多种分布式或本地存取式数据存储媒体中的任一者,诸如,硬 盘、蓝光光盘、DVD、CD-ROM、闪速存储器、易失性或非易失性存储器,或用于存储 经编码视频数据的任何其它合适数字存储媒体。在另外实例中,存储装置32可对应于 可保持由源装置12产生的经编码视频的文件服务器或另一中间存储装置。目的地装置 14可经由流式处理或下载而从存储装置32存取经存储视频数据。文件服务器可为能够 存储经编码视频数据且将经编码视频数据传输到目的地装置14的任何类型的服务器。 实例文件服务器包括web服务器(例如,用于网站)、FTP服务器、网络连接存储(NAS) 装置或本地磁盘驱动器。目的地装置14可经由包括因特网连接的任何标准数据连接而 存取经编码视频数据。这种连接可包括适合于存取存储在文件服务器上的经编码视频数 据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器,等等)或这 两者的组合。

在图6的实例中,目的地装置14包括输入接口28、视频解码器30及显示装置34。 在一些状况下,输入接口28可包括接收器及/或调制解调器。目的地装置14的输入接口 28经由链路16或从存储装置32接收经编码视频数据。经由链路16而传达或提供在存 储装置32上的经编码视频数据可包括由视频编码器20产生的多种语法元素以供诸如视 频解码器30的视频解码器在解码所述视频数据时使用。这些语法元素可与传输在通信 媒体上、存储在存储媒体上或存储在文件服务器上的经编码视频数据一起被包括。

显示装置34可与目的地装置14整合或在目的地装置14外部。在一些实例中,目 的地装置14可包括整合式显示装置,且也可经配置以与外部显示装置界接。在其它实 例中,目的地装置14可为显示装置。显示装置34向用户显示经解码视频数据,且可包 含多种显示装置中的任一者,诸如,液晶显示器(LCD)、等离子显示器、有机发光二极 管(OLED)显示器或另一类型的显示装置。

视频编码器20及视频解码器30可根据如上文所描述的视频压缩标准(诸如,目前在 开发中的HEVC标准)而操作,且通常可符合HEVC测试模型(HM)。替代地,视频编码 器20及视频解码器30可根据诸如ITU-T H.264标准或这些标准的扩展的其它专有或工 业标准而操作。然而,本发明的技术不限于任何特定译码标准。另外,视频编码器20 及视频解码器30可根据经修改以并入本文所描述的技术的视频压缩标准而操作。

虽然图6中未图示,但在一些方面中,视频编码器20及视频解码器30各自可与音 频编码器及解码器整合,且可包括适当MUX-DEMUX单元或其它硬件及软件,以处置 公共数据流或分离数据流中的音频及视频两者的编码。在一些实例中,适用时, MUX-DEMUX单元可符合ITU H.223多路复用器协议,或诸如用户数据报协议(UDP)的 其它协议。

视频编码器20及视频解码器30各自可被实施为多种合适编码器电路中的任一者, 诸如,一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程 门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术是部分地以软 件予以实施时,装置可将用于所述软件的指令存储在合适非暂时性计算机可读媒体中, 且使用一或多个处理器以硬件来执行所述指令以执行本发明的技术。视频编码器20及 视频解码器30中的每一者可包括在一或多个编码器或解码器中,所述一或多个编码器 或解码器中的任一者可在相应装置中被整合为组合式编码器/解码器(CODEC)的部分。

图7为说明可实施本发明所描述的技术的实例视频编码器20的框图。在图8的实 例中,视频编码器20包括模式选择单元35、预测处理单元41、参考图片存储器64、求 和器50、转换处理单元52、量化处理单元54及熵编码单元56。预测处理单元41包括 运动估计单元42、运动补偿单元44及帧内预测模块46。出于视频块重建起见,视频编 码器20也包括反量化处理单元58、反转换模块60及求和器62。也可包括去块滤波器(图 7中未图示)以滤波块边界以从经重建视频移除块效应假象。视需要,去块滤波器通常将 滤波求和器62的输出。除了去块滤波器以外,也可使用额外环路滤波器(环路内或环路 后)。应注意,不应将预测处理单元41及转换处理单元52与如上文所描述的PU及TU 相混淆。

如图7所示,视频编码器20接收视频数据,且模式选择单元35将所述数据分割成 视频块。这种分割也可包括分割成切片、图像块或其它较大单元,以及视频块分割,例 如,根据LCU及CU的四叉树结构。视频编码器20通常说明编码待编码的视频切片内 的视频块的组件。切片可划分成多个视频块(且可能地划分成被称作图像块的若干组视频 块)。预测处理单元41可基于误差结果(例如,译码速率及失真级别)来选择用于当前视 频块的多个可能译码模式中的一者,诸如,多个帧内译码模式中的一者或多个帧间译码 模式中的一者。预测处理单元41可将所得经帧内译码或经帧间译码块提供到求和器50 以产生残余块数据,且提供到求和器62以重建经编码块以用作参考图片。

预测处理单元41内的帧内预测单元46可执行当前视频块相对于与待译码的当前块 相同的帧或切片中的一或多个相邻块的帧内预测性译码以提供空间压缩。预测处理单元 41内的运动估计单元42及运动补偿单元44执行当前视频块相对于一或多个参考图片中 的一或多个预测性块的帧间预测性译码以提供时间压缩。

运动估计单元42可经配置以根据用于视频序列的预定样式来确定用于视频切片的 帧间预测模式。预定样式可将序列中的视频切片指定为P切片或B切片。运动估计单元 42与运动补偿单元44可高度地整合,但出于概念目的而被分离地说明。由运动估计单 元42执行的运动估计为产生估计用于视频块的运动的运动矢量的进程。举例来说,运 动矢量可指示当前视频帧内的视频块的PU相对于参考图片内的预测性块的位移。

预测性块为被发现在像素差方面接近地匹配于待译码的块的PU的块,所述像素差 可由绝对差总和(SAD)、平方差总和(SSD)或其它差指标确定。在一些实例中,视频编码 器20可计算存储在参考图片存储器64中的参考图片的次整数像素位置的值。举例来说, 视频编码器20可内插四分之一像素位置、八分之一像素位置或参考图片的其它小数像 素位置的值。因此,运动估计单元42可执行相对于完全像素位置及小数像素位置的运 动搜索,且输出具有小数像素精确度的运动矢量。

运动估计单元42通过比较PU的位置与参考图片的预测性块的位置来计算用于经帧 间译码切片中的视频块的PU的运动矢量。参考图片可选自第一参考图片列表(列表0) 或第二参考图片列表(列表1),所述列表中的每一者识别存储在参考图片存储器64中的 一或多个参考图片。运动估计单元42将经计算运动矢量发送到熵编码单元56及运动补 偿单元44。

由运动补偿单元44执行的运动补偿可涉及基于通过运动估计确定的运动矢量来提 取或产生预测性块,从而可能地执行达子像素精确度的内插。在接收到用于当前视频块 的PU的运动矢量后,运动补偿单元44就可定位在参考图片列表中的一者中的运动矢量 所指向的预测性块。视频编码器20通过从正被译码的当前视频块的像素值减去预测性 块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于块的残余数据, 且可包括亮度差分量及色度差分量两者。求和器50表示执行这种减去运算的组件。运 动补偿单元44也可产生与视频块及视频切片相关联的语法元素以供视频解码器30在解 码视频切片的视频块时使用。

作为如上文所描述的由运动估计单元42及运动补偿单元44执行的帧间预测的替代 例,帧内预测单元46可帧内预测当前块。详言之,帧内预测单元46可确定待用以编码 当前块的帧内预测模式。在一些实例中,帧内预测单元46可使用各种帧内预测模式来 编码当前块(例如,在分离编码遍次期间),且帧内预测单元46(或在一些实例中,模式 选择单元35)可从经测试模式选择适当帧内预测模式以供使用。举例来说,帧内预测单 元46可使用针对各种经测试帧内预测模式的速率-失真分析来计算速率-失真值,且在经 测试模式当中选择具有最佳速率-失真特性的帧内预测模式。速率-失真分析通常确定经 编码块与原始未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用以产 生经编码块的位速率(即,位的数目)。帧内预测单元46可从用于各种经编码块的失真及 速率计算比率以确定哪一帧内预测模式展现块的最佳速率-失真值。

在任何状况下,在选择用于块的帧内预测模式之后,帧内预测单元46可将指示用 于块的选定帧内预测模式的信息提供到熵编码单元56。熵编码单元56可根据本文所描 述的熵技术来编码指示选定帧内预测模式的信息。视频编码器20可在经传输位流中包 括:配置数据,其可包括多个帧内预测模式索引表及多个经修改帧内预测模式索引表(也 被称作代码字映射表);编码用于各种块的上下文的定义;及待用于上下文中的每一者的 最可能帧内预测模式、帧内预测模式索引表及经修改帧内预测模式索引表的指示。

在预测处理单元41经由帧间预测或帧内预测而产生用于当前视频块的预测性块之 后,视频编码器20通过从当前视频块减去预测性块而形成残余视频块。残余块中的残 余视频数据可包括在一或多个TU中且应用于转换处理单元52。转换处理单元52可使 用诸如离散余弦转换(DCT)或概念上相似转换的转换而将残余视频数据转换成残余转换 系数。转换处理单元52可将残余视频数据从像素域转换到诸如频域的转换域。在一些 状况下,转换处理单元52可将2维(2-D)转换(在水平方向及垂直方向两者上)应用于TU 中的残余数据。在一些实例中,转换处理单元52可代替地将水平1-D转换、垂直1-D 转换或不将转换应用于TU中的每一者中的残余数据。

转换处理单元52可将所得转换系数发送到量化处理单元54。量化处理单元54量化 转换系数以进一步缩减位速率。量化进程可缩减与所述系数中的一些或全部相关联的位 深度。可通过调整量化参数来修改量化程度。在一些实例中,量化处理单元54接着可 执行包括经量化转换系数的矩阵的扫描。替代地,熵编码单元56可执行所述扫描。

如上文所描述,对转换块执行的扫描可基于转换块的大小。量化处理单元54及/或 熵编码单元56可使用上文关于图1、图2A到2B及图3A到3B而描述的子块扫描的任 何组合来扫描8×8、16×16及32×32转换块。在一个实例中,可使用上文关于图1而描 述的4×4对角子块扫描来扫描32×32转换块及16×16转换块,且可使用上文关于图1及 图3A到3B而描述的4×4子块扫描来扫描8×8转换块。当一个以上扫描可用于转换块 时,熵编码单元56可基于与转换块相关联的译码参数(诸如,与对应于转换块的预测单 元相关联的预测模式)来选择扫描。下文关于图8描述关于熵编码单元56的另外细节。

反量化处理单元58及反转换处理单元60分别应用反量化及反转换以重建像素域中 的残余块以稍后用作参考图片的参考块。运动补偿单元44可通过将残余块加到参考图 片列表中的一者内的参考图片中的一者的预测性块来计算参考块。运动补偿单元44也 可将一或多个内插滤波器应用于经重建残余块以计算供在运动估计中使用的次整数像 素值。求和器62将经重建残余块加到由运动补偿单元44产生的经运动补偿预测块以产 生视频块以存储在参考图片存储器64中。参考块可由运动估计单元42及运动补偿单元 44用作参考块以帧间预测后续视频帧或图片中的块。

在量化之后,熵编码单元56熵编码经量化转换系数。举例来说,熵编码单元56可 执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基 于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编 码方法或技术。在由熵编码单元56进行的熵编码之后,经编码位流可传输到视频解码 器30,或经存档以供视频解码器30稍后传输或检索。熵编码单元56也可熵编码用于正 被译码的当前视频切片的运动矢量及其它语法元素。熵编码单元56可使用CABAC来 熵编码诸如上文所描述的significant_coeff_group_flag、significant_coefficient_flag、 coeff_abs_level_remain、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag 及coeff_sign_flag语法元素的语法元素。

图8为说明可实施本发明所描述的技术的实例熵编码单元56的框图。图8所说明 的熵编码单元56可为CABAC编码器。实例熵编码单元56可包括二进制化单元502、 包括旁路编码引擎504及规则编码引擎508的算术编码单元510,及上下文模型化单元 506。

熵编码单元56可接收一或多个语法元素,诸如,上文所描述的 significant_coeff_group_flag或coded_sub_block_flag语法元素以及 significant_coefficient_flag、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag、 coeff_sign_flag及coeff_abs_level_remain语法元素中的任一者。二进制化单元502接收语 法元素且产生二进制字符串。举例来说,二进制化单元502可使用以下技术中的任一者 或其组合以产生二进制字符串:固定长度译码、一元译码、截断一元译码、截断莱斯译 码、哥伦布译码、指数哥伦布译码及哥伦布-莱斯译码。另外,在一些状况下,二进制化 单元502可接收语法元素作为二进制字符串,且仅仅穿过二进制值。在一个实例中,二 进制化单元502接收语法元素significant_coeff_group_flag,且产生二进制字符串。

算术编码单元510经配置以从二进制化单元502接收二进制字符串,且对二进制字 符串执行算术编码。如图8所示,算术编码单元510可从旁路路径或规则译码路径接收 二进制值。遵循旁路路径的二进制值可为被识别为经旁路译码的二进制值,且遵循规则 编码路径的二进制值可被识别为经CABAC译码。与上文所描述的CABAC进程一致, 在算术编码单元510从旁路路径接收二进制值的状况下,旁路编码引擎504可在不利用 指派给二进制值的自适应上下文的情况下对二进制值执行算术编码。在一个实例中,旁 路编码引擎504可假设针对二进制的可能值的相等概率。

在算术编码单元510经由规则路径而接收二进制值的状况下,上下文模型化单元506 可提供上下文变量(例如,上下文状态),使得规则编码引擎508可基于由上下文模型化 单元506提供的上下文指派来执行算术编码。上下文指派可根据诸如即将到来的HEVC 标准的视频译码标准予以定义。另外,在一个实例中,上下文模型化单元506及/或熵编 码单元56可经配置以基于本文所描述的技术而将上下文指派给 significant_coeff_group_flag及significant_coefficient_flag语法元素的二进制。所述技 术可并入到HEVC或另一视频译码标准中。上下文模型可存储在存储器中。上下文模型 化单元506可包括一系列已编入索引表,及/或利用映射函数以确定用于特定二进制的上 下文及上下文变量。在编码二进制值之后,规则编码引擎508可基于实际二进制值来更 新上下文。

如上文所描述,图5A到5D所说明的上下文指派对于图3A到3B所说明的水平或 垂直4×4子块扫描并非最佳。举例来说,图5A及图5D所说明的样式具有沿着对角线 而划分的上下文指派区域。当应用水平或垂直4×4子块扫描时,那些区域不与有效系数 的期望位置对应。此外,水平4×4子块扫描的第一行相比于第二行具有高得多的有效概 率。以相似方式,垂直4×4子块扫描的第一列相比于第二列具有高得多的有效概率。因 此,图5A到5D所说明的上下文样式可经修改以提供针对已根据水平4×4子块扫描或 垂直4×4子块扫描而扫描的有效系数标志的较最佳内容指派。因此,除了基于根据HEVC  WD7而定义的上下文指派来执行算术编码以外,规则编码引擎508也可经配置以基于根 据本文所揭示的技术而导出的上下文来执行算术编码。

图9A到9D说明基于有效系数相对于水平4×4子块扫描或垂直4×4子块扫描的期 望位置的上下文样式。应注意,在图9A到9D中,如同图5A到5D所说明的上下文样 式,虽然上下文编号开始于0,但这种情形是出于说明目的且不反映实际上下文编号, 而仅反映相对上下文编号。图9A到9D说明可用于取决于CGFR及CGFB的4×4子块的 有效系数标志的上下文指派的四个不同样式,其中CGFR是指用于右边译码群(即,右边 子块)的上下文群标志,且CGFB是指用于下方译码群(即,下方子块)的上下文群标志。 再次,上下文群标志语法元素指示译码群的转换系数中的任一者是否为非零。

根据本发明所描述的技术,视频编码器20选择用于编码有效性语法元素的上下文 样式,且视频解码器30选择用于解码有效性语法元素的上下文样式。图9A到9D说明 可供视频编码器20及视频解码器30选择用于编码及解码的上下文样式的多个二维上下 文样式的实例。在一些实例中,视频编码器20及视频解码器30可从用于多个扫描类型 的相同上下文样式(例如,图9A到9D所说明的上下文样式)选择上下文样式。举例来说, 对于水平扫描,视频编码器20及视频解码器30可从相同上下文样式进行选择。对于垂 直扫描,视频编码器20及视频解码器30可从与用于水平扫描的上下文样式相同的上下 文样式进行选择。对于对角扫描,视频编码器20及视频解码器30可从与用于水平扫描 及垂直扫描的上下文样式相同的上下文样式进行选择。

一般而言,相比于图5A到5D所说明的相应样式,图9A到9D所说明的上下文样 式可被认为具有较少对角扫描行为及较多逐行/列指派行为。熵编码单元56可经配置以 基于图9A到9D所说明的上下文样式而将上下文指派给significant_coefficient_flag语 法元素。

如图9A到9D所说明,每一上下文样式包括16个上下文值,其中每一上下文值对 应于位于相应位置中的系数。应注意,图9D中的上下文样式(即,针对CGFB=1、CGFR=1) 对于所有位置是一致的(即,上下文=2)。图9D可与图5D形成对比,其中上下文样式 是不一致的。另外,相比于图5B及图5C所说明的上下文样式,图9B所说明的针对 CGFB=0、CGFR=1的上下文样式及图9C所说明的针对CGFB=1、CGFR=0的上下文样式 分别向第一行及第一列给予较多重要性。此外,相比于图5A所说明的上下文样式,图 9A所说明的针对CGFB=0、CGFR=0的上下文样式更为正方形形状且向左顶部系数给予 较多重要性。

在一个实例中,熵编码单元56可经配置以针对水平及垂直4×4子块扫描基于图9A 到9D所说明的上下文样式而将上下文指派给significant_coefficient_flag语法元素,且 针对对角4×4子块扫描基于图5A到5D所说明的上下文样式而将上下文指派给 significant_coefficient_flag语法元素。在另一实例中,为了限制上下文样式的总数,熵 编码单元56可经配置以针对对角、水平及垂直4×4子块扫描中的全部基于图9A到9D 所说明的上下文样式而将上下文指派给significant_coefficient_flag语法元素。

另外,图5A到5D及图9A到9D所说明的上下文样式的组合可用以指派用于 significant_coefficient_flag语法元素的上下文。举例来说,对于CGFB及CBFR的相应值, 水平4×4子块扫描可使用图5A、图9B、图5C及9D所说明的上下文样式。在这个实例 中,水平4×4子块扫描不使用具有垂直特性的样式(即,图9C所说明的样式)。这种情 形可改善译码,这是因为水平扫描的统计通常不匹配于图9C所说明的分布。在另一实 例中,对于水平4×4子块扫描,代替针对状况(CGFB=1、CBFR=0)使用图9C所说明的样 式,可针对状况(CGFB=1、CBFR=0)及状况(CGFB=1、CBFR=1)两者使用图9D所说明的 样式。在这个实例中,对于给定扫描,存在用于不同CGF配置的样式共享。此类样式 共享也可应用于其它扫描类型。

如上文所描述,在一个实例中,量化处理单元54及/或熵编码单元56可使用上文关 于图1而描述的4×4对角子块扫描来扫描32×32转换块及16×16转换块,且可使用上文 关于图1以及图3A及3B而描述的4×4子块扫描来扫描8×8转换块。在一个实例中, 熵编码单元56可经配置以基于用于如下操作的上下文样式而将上下文指派给用于 32×32及16×16转换块的significant_coefficient_flag语法元素:基于用于8×8转换块的 上下文样式而将上下文指派给所述significant_coefficient_flag语法元素。

在一个实例中,熵编码单元56可使用图9A到9D所说明的上下文样式来导出用于 32×32、16×16及8×8转换块中的每一者的上下文。在另一实例中,当应用4×4对角子 块扫描时,熵编码单元56可使用一组上下文样式(诸如,图5A到5B所说明的上下文样 式)以导出用于32×32、16×16及8×8转换块的上下文,且当应用4×4水平子块扫描或4×4 垂直子块扫描中的任一者时,熵编码单元56可使用一组不同上下文样式(诸如,图9A 到9D所说明的上下文样式)以导出用于8×8转换块的上下文。在这个实例中,上下文的 导出可针对变化大小的TU被共享,且可取决于扫描类型。

另外,在相似于关于导出上下文且将上下文指派给DC及非DC子块的状况的事件 中,虽然可针对32×32、16×16及8×8转换块中的每一者共享上下文导出,但实际上下 文可服从于每一大小转换块。举例来说,用于32×32、16×16及8×8转换块的实际上下 文中的每一者可基于图5A到5B所说明的上下文样式,但可基于TU的大小而将偏移应 用于所述上下文样式中的每一者。在这个实例中,32×32、16×16及8×8转换块中的每 一者将共享上下文导出,而非实际上下文。在另一实例中,上下文导出对于所有子块可 相同而不管TU大小或扫描类型(例如,图9A到9D所说明的样式可用于所有状况),但 可存在三组实际上下文:用于大TU(16×16及32×32)的一组上下文、在对角扫描的情况 下用于8×8TU的一组上下文,及当使用水平或垂直扫描时用于8×8TU的一组上下文。 可通过将不同偏移应用于一组上下文样式来定义所述组。因此,上下文模型化单元506 及/或熵编码单元56可经配置以使用针对所有扫描顺序的统一上下文导出而将上下文指 派给significant_coefficient_flag。

如上文所描述,相比于对于非DC子块,对于DC子块,可将一组不同上下文指派 给significant_coefficient_flag。即,当确定实际上下文时,可将偏移应用于上下文样式。 这种情形的原因为:当使用4×4对角子块扫描时,针对DC子块的统计通常显著地不同 于针对非DC子块的统计。然而,当使用4×4水平或垂直子块扫描来扫描子块时,针对 DC子块及非DC子块的统计可相似。举例来说,对于使用水平子块扫描的8×8TU,在 DC子块右边的子块可具有较相似于DC子块而较不相似于其它非DC子块的统计。相似 地,对于垂直扫描,在DC子块下方的子块可具有较相似于DC子块而较不相似于其它 非DC子块的统计。

为了补偿非DC子块中的一者可具有相似于DC子块的统计的事实,上下文模型化 单元506及/或熵编码单元56可经配置以针对DC子块及邻近非DC子块使用第一组上 下文,且可使用第二组上下文以指派用于其它非DC子块的上下文。举例来说,当针对 8×8TU使用水平4×4子块扫描时,上下文模型化单元506及/或熵编码单元56可经配置 以使用第一组上下文以将上下文指派给子块的第一行且使用第二组上下文以将上下文 指派给子块的第二行。举例来说,上下文模型化单元506及/或熵编码单元56可经配置 以针对第二行使用图5A到5D所说明的上下文样式及图9A到9D所说明的上下文样式。 另外,针对非DC子块仍可应用偏移,使得DC子块仍可具有独特上下文组。以相似方 式,对于垂直子块扫描类型,可基于列来指派上下文样式。另外,这种概念可扩展到具 有两个以上列或行的较大TU。基于子块的行或列来导出及指派上下文的技术可应用于 所有大小的TU。因此,上下文模型化单元506及/或熵编码单元56可经配置以基于子块 扫描类型及在转换块内的子块的位置而将上下文指派给significant_coefficient_flag。

如上文所描述,图9A到9D说明由视频编码器20选择用于确定用于编码转换块的 子块的转换系数的有效性语法元素的上下文的实例上下文样式。在一些实例中,对于子 块的多个扫描类型(即,如果将水平地、垂直地或对角地扫描子块),视频编码器20可从 图9A到9D所说明的上下文样式中的一者选择上下文样式。换言之,可供视频编码器 20选择上下文样式的所述上下文样式对于多个扫描类型(例如,水平扫描、垂直扫描及 对角扫描)可相同。

此外,如图9A到9D所说明,上下文样式中的每一者是与一或多个相邻子块是否 包括任何非零转换系数的条件相关联。举例来说,一或多个相邻子块包括第一相邻子块 及第二相邻子块。在一些实例中,上下文样式中的每一者是与第一相邻子块(例如,在当 前子块下方的下方子块)是否包括任何非零转换系数且第二相邻子块(例如,在当前子块 右边的右边子块)是否包括任何非零转换系数的条件相关联。如上文所描述,CGFB指示 下方子块是否包括任何非零转换系数,且CGFR指示右边子块是否包括任何非零转换系 数。

视频编码器20可基于各种因素来选择图9A到9D所说明的上下文样式中的一者, 如下文所描述。在任何情况下,视频编码器20可基于选定上下文样式而将上下文指派 给转换系数的有效性语法元素中的每一者。

举例来说,如果视频编码器20选择与第一相邻子块不包括任何非零转换系数且第 二相邻子块包括至少一个非零转换系数(即,CGFB等于0且CGFR等于1)的条件相关联 的上下文样式,那么视频编码器20可将上下文指派给用于当前子块的转换系数的有效 性语法元素的第一行,所述上下文与用于当前子块的转换系数的有效性元素的其它行的 上下文不同。举例来说,如果CGFB等于0且CGFR等于1,那么图9B说明转换块的第 一行被指派为2(或5,假设偏移为3)的上下文以用于编码子块的第一行的有效性语法元 素,所述上下文与用于子块的任何其它行的上下文不同。

视频解码器30可以大体上相似方式起作用。举例来说,如果视频解码器30选择图 9B所说明的上下文样式(例如,CGFB等于0且CGFR等于1的条件),那么视频解码器 30相应地将上下文指派给转换块的子块的有效性语法元素。举例来说,相似于视频编码 器20,视频解码器30将上下文指派给用于当前子块的转换系数的有效性语法元素的第 一行,所述上下文与用于当前子块的转换系数的有效性语法元素的其它行的上下文不 同。

作为另一实例,如果视频编码器20选择与第一相邻子块包括至少一个非零转换系 数且第二相邻子块不包括任何非零转换系数(即,CGFB等于1且CGFR等于0)的条件相 关联的上下文样式,那么视频编码器20可将上下文指派给用于当前子块的转换系数的 有效性元素的第一列,所述上下文与用于当前子块的转换系数的有效性元素的其它列的 上下文不同。举例来说,如果CGFB等于1且CGFR等于0,那么图9C说明转换块的第 一列被指派为2(或5,这是假设偏移为3)的上下文以用于编码子块的第一列的有效性语 法元素,所述上下文与用于子块的任何其它列的上下文不同。

视频解码器30可以大体上相似方式起作用。举例来说,如果视频解码器30选择图 9C所说明的上下文样式(例如,CGFB等于1且CGFR等于0的条件),那么视频解码器 30相应地将上下文指派给转换块的子块的有效性语法元素。举例来说,相似于视频编码 器20,视频解码器30将上下文指派给用于当前子块的转换系数的有效性语法元素的第 一列,所述上下文与用于当前子块的转换系数的有效性元素的其它列的上下文不同。

作为另一实例,如果视频编码器20选择与第一相邻子块包括至少一个非零转换系 数且第二相邻子块包括至少一个非零转换系数(即,CGFB等于1且CGFR等于1)的条件 相关联的上下文样式,那么视频编码器20可将相同上下文指派给用于当前子块的转换 系数的有效性语法元素。举例来说,如果CGFB等于1且CGFR等于1,那么图9D说明 所有上下文对于有效性语法元素相同(即,2)。

视频解码器30可以大体上相似方式起作用。举例来说,如果视频解码器30选择图 9D所说明的上下文样式(例如,CGFB等于1且CGFR等于1的条件),那么视频解码器 30相应地将上下文指派给转换块的子块的有效性语法元素。举例来说,相似于视频编码 器20,视频解码器30将相同上下文指派给用于当前子块的转换系数的有效性元素。

如果CGFB等于0且CGFR等于0,那么视频编码器20可选择图9A所说明的上下 文样式,且相应地将上下文指派给转换块的子块的有效性语法元素。如果CGFB等于0 且CGFR等于0,那么视频解码器30可以大体上相似方式起作用。

此外,图9A到9D所说明的上下文样式可包括除了上文所描述的特性以外的特性。 举例来说,上下文样式的特性中的一者(例如,当CGFB等于0且CGFR等于0时)为:上 下文样式包括在经水平地或垂直地扫描时引起相同一维矢量的上下文。

举例来说,如果从右底部到左顶部水平地扫描图9A所说明的上下文样式,那么所 得一维矢量为:[0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 2]。如果从右底部到左顶部垂直地扫描图9A 所说明的上下文样式,那么所得一维矢量为:[0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 2]。可看出, 这两个一维矢量相同。

作为上下文样式的特性的另一实例,上下文样式中的两者为彼此的转置,使得上下 文样式中的一者的水平扫描及上下文样式中的另一者的垂直扫描引起相同一维矢量。举 例来说,从右底部到左顶部而对图9B所说明的上下文样式的水平扫描引起一维矢量: [0 0 0 0 0 0 0 0 1 1 1 1 2 2 2 2]。从右底部到左顶部而对图9C所说明的上下文样式的垂直 扫描引起一维矢量:[0 0 0 0 0 0 0 0 1 1 1 1 2 2 2 2]。可看出,这两个一维矢量相同。

作为上下文样式的特性的另一实例,上下文样式中的一者包括在经水平地、垂直地 及对角地扫描时引起相同一维矢量的上下文。举例来说,图9D所说明的上下文样式的 上下文的水平扫描、垂直扫描或对角扫描引起相同一维矢量:[2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2]。

如上文所描述,视频编码器20基于各种因素来选择图9A到9D所说明的上下文样 式中的一者。作为一个实例,视频编码器20基于下方及右边子块的CGF来选择上下文 样式。然而,也可存在额外因素。举例来说,视频编码器20可基于扫描类型来选择上 下文样式。如果扫描类型为子块的水平扫描,那么视频编码器20可选择图9B所说明的 上下文样式。如果扫描类型为子块的垂直扫描,那么视频编码器20可选择图9C所说明 的上下文样式。视频解码器30可以相似方式起作用。

在一些实例中,如上文所描述,视频编码器20可从所述上下文样式排除由视频编 码器20评估以确定将选择哪一上下文样式的上下文样式。举例来说,如果子块的扫描 类型为水平,那么视频编码器20可确定图9C所说明的上下文样式不能被选择为上下文 样式,即使CGFB等于1且CGFR等于0也如此。在这种状况下,视频编码器20可选择 图9D所说明的上下文样式。举例来说,如果子块的扫描类型为水平,那么视频编码器 20可排除图9C所说明的上下文样式。从剩余上下文样式,视频编码器20可选择图9D 所说明的上下文样式。在这种状况下,可存在用于CGFB及CGFR的不同值的上下文样 式共享。举例来说,对于水平扫描,如果CGFB等于0且CGFR等于1或如果CGFB等于 1且CGFR等于1,那么视频编码器20可选择图9D所说明的上下文样式。

对于垂直扫描的扫描类型,视频编码器20可以相似方式起作用,惟视频编码器20 可排除图9B所说明的上下文样式除外,即使CGFB等于1且CGFR等于1也如此。在这 个实例中,视频编码器20可从剩余多个上下文样式选择一上下文样式。视频解码器30 以相似方式起作用。

举例来说,视频编码器20及视频解码器30确定当前子块的扫描类型,且基于当前 子块的经确定扫描类型而从多个上下文样式确定不能被选择为上下文样式的至少一个 上下文样式。视频编码器20及视频解码器30基于排除经确定的至少一个上下文样式的 多个上下文样式来选择上下文样式。在一些实例中,视频编码器20及视频解码器30基 于排除经确定的至少一个上下文样式的多个上下文样式来选择上下文样式,而不管下方 相邻子块是否包括任何非零转换系数且右边相邻子块是否包括任何非零转换系数。

在图5A到5D及图9A到9D中,上下文样式被说明及定义为2-D块。然而,在一 些实际实施中,诸如视频编码器20的视频编码器可根据选定子块扫描类型而将2-D块 表示为1-D矢量,且存储1-D矢量以便加速上下文指派进程。在这种情形中,即使使用 相同2-D上下文样式以指派用于使用不同子块扫描类型的子块的上下文,也可基于选定 子块扫描类型来获得不同1-D矢量。举例来说,根据水平扫描而扫描的图9C所说明的 上下文样式的1-D矢量将具有以下1-D矢量表示:

Scan_Pattern=[2 1 0 0 2 1 0 0 2 1 0 0 2 1 0 0]

而根据垂直扫描而扫描的图9C所说明的上下文样式将具有以下1-D矢量表示:

Scan_Pattern=[2 2 2 2 1 1 1 1 0 0 0 0 0 0 0 0]

在这种状况下,如果诸如视频编码器20的视频编码器将上下文样式存储为1-D矢 量(即,一维上下文样式),那么对于每一上下文样式可存在若干矢量。一种用以克服用 于每一上下文样式的若干不同1-D矢量的存储的方式为通过将上下文样式直接地定义为 1-D矢量(即,一维上下文样式),且针对两个或两个以上子块扫描类型使用相同矢量。 举例来说,具有常数值(即,全2)的上下文样式提供相同扫描1-D而不管扫描类型。在 这个实例中,1-D矢量可指定相同上下文(例如,2)或所有有效性语法元素。可如下表示 1-D矢量:

Scan_Pattern=[2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2]

在另一实例中,一维上下文样式定义用于扫描顺序中的第一有效性语法元素的第一 上下文、定义用于扫描顺序中的第二及第三有效性语法元素的第二上下文,且定义用于 扫描顺序中的剩余有效性语法元素的第三上下文。举例来说,1-D矢量可针对第一有效 性系数标志指定为2的上下文、针对第二及第三指派指定为1的上下文,且针对剩余指 派指定为0的上下文,且可被表示如下:

Scan_Pattern=[2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0]

另一可能上下文样式为Scan_Pattern=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]。在这个实例 中,上下文样式定义用于扫描顺序中的第一有效性语法元素的第一上下文(例如,1),且 定义用于扫描顺序中的剩余有效性语法元素的第二上下文(例如,0)。图10为说明用于 针对子块中的系数的上下文指派的样式的实例的概念图。用于图10所说明的上下文样 式的所得扫描样式对于如上文所定义的对角、水平及垂直4×4子块扫描相同。上下文模 型化单元506及/或熵编码单元56可经配置以将上下文样式存储为1-D矢量(即,一维上 下文样式)。在一个实例中,对于诸如对角、水平及垂直4×4子块扫描的多个子块扫描 类型,可使用相同经存储扫描样式以将上下文指派给significant_coefficient_flag。

在一些实例中,可从诸如图9A到9D所说明的二维上下文样式的二维上下文样式 预计算一维上下文样式。举例来说,可水平地、垂直地及对角地扫描图9A到9D所说 明的上下文样式以产生一维上下文样式。因此,在这个实例中,可存在高达12个一维 上下文样式。然而,图9A到9D所说明的上下文样式的特性可使得预计算及存储12个 以下一维上下文样式。

举例来说,如上文所描述,图9A所说明的上下文样式的水平扫描及垂直扫描引起 相同一维矢量。因此,图9A所说明的上下文样式的水平、垂直及对角扫描引起两个独 特一维上下文样式,而非三个。

此外,对于图9B及9C所说明的上下文样式,针对所述上下文样式中的一者可存在 三个独特一维上下文样式(即,每一扫描类型一个一维上下文样式)。然而,针对另一上 下文样式可存在仅两个独特一维上下文样式。这是因为图9B所说明的上下文样式的水 平扫描及图9C所说明的上下文样式的垂直扫描引起相同一维上下文样式。因此,在图 9B及9C所说明的上下文样式之间存在总共五个独特一维上下文样式。换言之,从图9B 所说明的上下文样式(例如,第一个二维上下文样式)预计算多个一维上下文样式中的一 者。第一个二维上下文样式包括在经水平地扫描时引起与当垂直地扫描第二个二维上下 文样式时相同的一维上下文样式的上下文。当图9B中说明第一个二维上下文样式时, 第二个二维上下文样式的一个实例为图9C所说明的二维上下文样式。

对于图9D所说明的上下文样式,存在仅一个独特一维上下文样式(即,对角、水平 及垂直扫描皆引起相同一维上下文样式)。举例来说,当图9D所说明的上下文样式用以 预计算一维样式时,所得一维样式(无论被垂直地、水平地还是对角地扫描)引起定义用 于子块的转换系数的所有有效性语法元素的相同上下文(例如,2)的上下文样式。因此, 图9A到9D所说明的上下文样式的特性引起总共八个一维上下文样式(即,来自图9A 的两个一维上下文样式、来自图9B及9C的五个一维上下文样式,及来自图9D的一个 一维上下文样式),其少于在上下文样式不包含图9A到9D所说明的上下文样式的特性 时将需要被存储的12个一维上下文样式。

如上文所描述,除了将上下文指派给significant_coefficient_flag语法元素以外,在 一个实例中,上下文模型化单元506及/或熵编码单元56也可经配置以将上下文指派给 significant_coeff_group_flag。如上文所描述,在HEVC WD7中, significant_coeff_group_flag的上下文导出取决于扫描顺序(即,无论应用对角4×4、非 正方形水平还是垂直扫描)。在用图3A到3B所说明的扫描来替换非正方形扫描的状况 下,可从HEVC WD7所描述的上下文导出来修改significant_coeff_group_flag的上下文 导出。在一个实例中,上下文模型化单元506及/或熵编码单元56也可经配置以使用针 对所有子块的相同上下文导出而将上下文指派给significant_coeff_group_flag,而不管 与子块相关联的TU的扫描类型及大小。然而,在一个实例中,指派给 significant_coeff_group_flag的实际上下文可基于是否使用对角、水平及垂直4×4子块 扫描来扫描子块而不同。在一个实例中,当应用4×4对角扫描时,可使用第一组上下文 以用于将上下文指派给significant_coeff_group_flag,且当应用水平或垂直4×4子块扫 描时,可使用第二组上下文以用于将上下文指派给significant_coeff_group_flag。在一 个实例中,可通过将偏移加到第一上下文组来导出第二组上下文。

因此,存在由上下文模型化单元506及/或熵编码单元56用以将上下文指派给 significant_coeff_group_flag及significant_coefficient_flag语法元素的若干技术。熵编 码单元56可经配置以使用上文所描述的技术的任何组合而将上下文指派给 significant_coeff_group_flag及significant_coefficient_flag语法元素。

图11为说明根据本发明的技术来编码视频数据的实例的流程图。虽然下文将图11 中的进程描述为通常由视频编码器20执行,但所述进程可由视频编码器20、熵编码单 元56及/或上下文模型化单元506的任何组合执行。

如图11所说明,视频编码器20产生用于块的当前子块的转换系数的有效性语法元 素(1102)。转换系数的有效性语法元素(例如,有效性系数标志)指示转换系数的值为零 (即,零转换系数)还是非零(即,非零转换系数)。在一些实例中,子块为4×4子块,且 块为8×8转换块。

视频编码器20针对用于当前子块的转换系数的有效性语法元素的多个扫描类型(例 如,水平扫描、垂直扫描及对角扫描)而从相同多个二维上下文样式选择上下文样式 (1104)。上下文样式的实例包括图9A到9D所说明的上下文样式。在本发明所描述的技 术中,如果水平地、垂直地或对角地扫描子块,那么视频编码器20可从相同多个二维 上下文样式进行选择。换言之,扫描类型为水平或垂直,视频编码器20从在扫描类型 为对角时供视频编码器20选择的相同多个二维上下文样式当中进行选择。

此外,如上文所描述,上下文样式中的每一者是与一或多个相邻子块是否包括任何 非零转换系数的条件相关联。举例来说,一或多个相邻子块包括第一相邻子块及第二相 邻子块,且上下文样式中的每一者可与第一相邻子块是否包括任何非零转换系数且第二 相邻子块是否包括任何非零转换系数的条件相关联(即,每一上下文是与CGFB及CGFR的值为1还是0的条件相关联)。

视频编码器20基于选定上下文样式而将上下文指派给转换系数的有效性语法元素 中的每一者(1106)。举例来说,如上文所描述,如果视频编码器20选择与CGFB等于0 且CGFR等于1的条件(即,下方子块不包括任何非零转换系数且右边块包括至少一个非 零转换系数)相关联的上下文样式,那么视频编码器20将与用于其它行的上下文不同的 上下文(例如,上下文2或5,其中偏移为3)指派给子块的有效性语法元素的第一行。

如果视频编码器20选择与CGFB等于1且CGFR等于0的条件(即,下方子块包括 至少一个非零转换系数且右边块不包括任何非零转换系数)相关联的上下文样式,那么视 频编码器20将与用于其它列的上下文不同的上下文(例如,上下文2或5,其中偏移为 3)指派给子块的有效性语法元素的列。如果视频编码器20选择与CGFB等于1且CGFR等于1的条件(即,下方子块包括至少非零转换系数且右边块包括至少一个非零转换系 数)相关联的上下文样式,那么视频编码器20将相同上下文(例如,上下文2或5,其中 偏移为3)指派给当前子块的有效性语法元素。

视频编码器20基于经指派上下文来CABAC编码有效性语法元素(1108)。视频编码 器20输出经编码有效性语法元素作为经编码位流的部分(1110)。

图12为说明根据本发明的技术来编码视频数据的实例的流程图。虽然下文将图12 中的进程描述为通常由视频编码器20执行,但所述进程可由视频编码器20、熵编码单 元56及/或上下文模型化单元506的任何组合执行。

如图12所说明,视频编码器20产生用于块的当前子块的转换系数的有效性语法元 素(1202)。转换系数的有效性语法元素(例如,有效性系数标志)指示转换系数的值为零 (即,零转换系数)还是非零(即,非零转换系数)。在一些实例中,子块为4×4子块,且 块为8×8转换块。

视频编码器20选择上下文样式(例如,被存储为一维上下文样式的上下文样式) (1204)。在一些实例中,上下文样式识别用于当前子块的两个或两个以上扫描类型的上 下文。举例来说,选定上下文样式用于水平扫描、垂直扫描及对角扫描的扫描类型。

作为一个实例,选定上下文样式定义用于扫描顺序中的第一有效性语法元素的第一 上下文、定义用于扫描顺序中的第二及第三有效性语法元素的第二上下文,且定义用于 扫描顺序中的剩余有效性语法元素的第三上下文。作为另一实例,选定上下文样式定义 用于扫描顺序中的第一有效性语法元素的第一上下文,且定义用于扫描顺序中的剩余有 效性语法元素的第二上下文。作为另一实例,选定上下文样式定义用于所有有效性语法 元素的相同上下文。

在一些实例中,选定上下文样式是选自被存储为一维上下文样式的多个上下文样 式。举例来说,从图9A到9D所说明的二维上下文样式预计算及存储多个上下文样式。 作为一个实例,从包括在经水平地或垂直地扫描时引起相同一维上下文样式的上下文的 二维上下文样式预计算多个上下文样式中的一者。此类二维上下文样式的一个实例为图 9A所说明的上下文样式。作为另一实例,从包括在经水平地、垂直地或对角地扫描时 皆引起相同一维上下文样式的上下文的二维上下文样式预计算多个上下文样式中的一 者。此类二维上下文样式的一个实例为图9D所说明的上下文样式。

作为另一实例,从包括在经水平地扫描时引起与当垂直地扫描第二个二维上下文样 式时相同的一维上下文样式的上下文的第一个二维上下文样式预计算多个上下文样式 中的一者。第一个二维上下文样式的一个实例为图9B所说明的上下文样式。第二个二 维上下文样式的一个实例为图9C所说明的上下文样式。

视频编码器20基于选定上下文而将上下文指派给有效性语法元素(1206)。视频编码 器20基于经指派上下文来CABAC编码有效性语法元素(1208)。视频编码器20输出经 编码有效性语法元素作为经编码位流的部分(1210)。

图13为说明可实施本发明所描述的技术的实例视频解码器30的框图。在图13的 实例中,视频解码器30包括熵解码单元80、预测处理单元81、反量化处理单元86、反 转换处理单元88、求和器90及参考图片存储器92。预测处理单元81包括运动补偿单 元82及帧内预测模块84。在一些实例中,视频解码器30可执行与关于来自图7的视频 编码器20而描述的编码遍次大体上互反的解码遍次。

归因于解码进程,视频解码器30从视频编码器20接收表示经编码视频切片的视频 块及关联语法元素的经编码视频位流。视频解码器30的熵解码单元80熵解码所述位流 以产生经量化系数、运动矢量及其它语法元素。熵解码单元80将运动矢量及其它语法 元素转发到预测模块81。视频解码器30可在视频切片级别及/或视频块级别处接收语法 元素。

图14为说明可实施本发明所描述的技术的实例熵解码单元70的框图。熵解码单元 70接收经熵编码位流,且解码来自所述位流的语法元素。语法元素可包括上文所描述的 语法元素significant_coeff_group_flag、significant_coefficient_flag、 coeff_abs_level_remain、coeff_abs_level_greater1_flag、coeff_abs_level_greater2_flag 及coeff_sign_flag语法元素。图14中的实例熵解码单元70包括算术解码单元702,其 可包括旁路解码引擎704及规则解码引擎706。实例熵解码单元70也包括上下文模型化 单元708及反二进制化单元710。实例熵解码单元70可执行关于图8而描述的实例熵编 码单元56的互反功能。如此,熵解码单元70可基于本文所描述的技术来执行熵解码。

算术解码单元702接收经编码位流。如图14所示,算术解码单元702可根据旁路 路径或规则译码路径来处理经编码二进制值。是否应根据旁路路径或规则通道来处理经 编码二进制值的指示可在具有较高级别语法的位流中被发信。与上文所描述的CABAC 进程一致,在算术解码单元702从旁路路径接收二进制值的状况下,旁路解码引擎704 可在不利用指派给二进制值的上下文的情况下对二进制值执行算术编码。在一个实例 中,旁路解码引擎704可假设针对二进制的可能值的相等概率。

在算术解码单元702经由规则路径而接收二进制值的状况下,上下文模型化单元708 可提供上下文变量,使得规则解码引擎706可基于由上下文模型化单元708提供的上下 文指派来执行算术编码。上下文指派可根据诸如HEVC的视频译码标准予以定义。上下 文模型可存储在存储器中。上下文模型化单元708可包括一系列已编入索引表,及/或利 用映射函数以确定经编码位流的上下文及上下文变量部分。另外,在一个实例中,上下 文模型化单元506及/或熵编码单元56可经配置以基于本文所描述的技术而将上下文指 派给significant_coeff_group_flag及significant_coefficient_flag语法元素的二进制。在 解码二进制值之后,规则译码引擎706可基于经解码二进制值来更新上下文。另外,反 二进制化单元710可对二进制值执行反二进制化,且使用二进制匹配函数以确定二进制 值是否有效。反二进制化单元710也可基于匹配确定来更新上下文模型化单元。因此, 反二进制化单元710根据上下文自适应解码技术来输出语法元素。

当将视频切片译码为经帧内译码(I)切片时,预测模块81的帧内预测模块84可基于 经发信帧内预测模式及来自当前帧或图片的先前经解码块的数据来产生用于当前视频 切片的视频块的预测数据。当将视频帧译码为经帧间译码(即,B或P)切片时,预测模 块81的运动补偿单元82基于从熵解码单元80接收的运动矢量及其它语法元素来产生 用于当前视频切片的视频块的预测性块。预测性块可从参考图片列表中的一者内的参考 图片中的一者予以产生。视频解码器30可使用基于存储在参考图片存储器92中的参考 图片的默认构造技术来构造参考帧列表:列表0及列表1。

运动补偿单元82通过分析运动矢量及其它语法元素来确定用于当前视频切片的视 频块的预测信息,且使用预测信息以产生用于正被解码的当前视频块的预测性块。举例 来说,运动补偿单元82使用经接收语法元素中的一些以确定用以译码视频切片的视频 块的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片或P切片)、 用于切片的参考图片列表中的一或多者的构造信息、用于切片的每一经帧间编码视频块 的运动矢量、用于切片的每一经帧间译码视频块的帧间预测状态,及用以解码当前视频 切片中的视频块的其它信息。

运动补偿单元82也可基于内插滤波器来执行内插。运动补偿单元82可使用如由视 频编码器20在视频块的编码期间使用的内插滤波器以计算参考块的次整数像素的内插 值。在这种状况下,运动补偿单元82可从经接收语法元素确定由视频编码器20使用的 内插滤波器,且使用所述内插滤波器以产生预测性块。

反量化处理单元86反量化(即,去量化)提供在位流中且由熵解码单元80解码的经 量化转换系数。反量化进程可包括针对视频切片中的每一视频块使用由视频编码器20 计算的量化参数以确定量化程度,且同样地确定应被应用的反量化程度。反转换处理单 元88将反转换(例如,反DCT、反整数转换或概念上相似反转换进程)应用于转换系数 以便在像素域中产生残余块。

在一些状况下,反转换处理单元88可将2维(2-D)反转换(在水平方向及垂直方向两 者上)应用于系数。根据本发明的技术,反转换处理单元88可代替地将水平1-D反转换、 垂直1-D反转换或不将转换应用于TU中的每一者中的残余数据。可将应用于视频编码 器20处的残余数据的转换类型发信到视频解码器30以将适当类型的反转换应用于转换 系数。

在运动补偿单元82基于运动矢量及其它语法元素来产生用于当前视频块的预测性 块之后,视频解码器30通过对来自反转换处理单元88的残余块与由运动补偿单元82 产生的对应预测性块进行求和来形成经解码视频块。求和器90表示执行这种求和运算 的组件。视需要,也可应用去块滤波器以滤波经解码块以便移除块效应假象。也可使用 其它环路滤波器(在译码环路中或在译码环路之后)以使像素转变平滑,或以其它方式改 善视频质量。给定帧或图片中的经解码视频块接着存储在参考图片存储器92中,参考 图片存储器存储用于后续运动补偿的参考图片。参考图片存储器92也存储经解码视频 以供稍后呈现在诸如图6的显示装置34的显示装置上。

图15为说明根据本发明的技术来解码视频数据的实例的流程图。虽然下文将图15 中的进程描述为通常由视频解码器30执行,但所述进程可由视频解码器30、熵解码单 元56及/或上下文模型化单元708的任何组合执行。

如图15所说明,视频解码器30在经熵编码位流中接收用于块的当前子块的转换系 数的有效性语法元素(1502)。子块可为4×4子块,且块可为8×8转换块。相似于视频编 码器20(例如,图11的块1104),视频解码器30针对用于当前子块的转换系数的有效性 语法元素的多个扫描类型(例如,水平扫描、垂直扫描及对角扫描)而从二维上下文样式 中的相同多个上下文样式选择一上下文样式(1504)。在这个实例中,上下文样式中的每 一者是与一或多个相邻块(例如,第一相邻子块及第二相邻块)是否包括任何非零转换系 数的条件相关联。

以相似于上文关于视频编码器20而描述的方式(例如,图11的块1106)的方式,视 频解码器30基于选定上下文样式而将上下文指派给转换系数的有效性语法元素中的每 一者(1506)。举例来说,如果选择与CGFB等于0且CGFR等于1的条件相关联的上下文 样式,那么视频解码器30将与用于其它行的上下文不同的上下文指派给第一行。如果 选择与CGFB等于1且CGFR等于0的条件相关联的上下文样式,那么视频解码器30将 与用于其它列的上下文不同的上下文指派给第一列。如果选择与CGFB等于1且CGFR等于1的条件相关联的上下文样式,那么视频解码器30将相同上下文指派给有效性语 法元素。视频解码器30基于经指派上下文来CABAC解码有效性语法元素(1508)。

图16为说明根据本发明的技术来解码视频数据的实例的流程图。虽然下文将图16 中的进程描述为通常由视频解码器30执行,但所述进程可由视频解码器30、熵解码单 元70及/或上下文模型化单元708的任何组合执行。

如图16所说明,视频解码器30在经熵编码位流中接收用于块的当前子块的转换系 数的有效性语法元素(1602)。子块可为4×4子块,且块可为8×8转换块。相似于视频编 码器20(例如,图12的块1204),视频解码器30选择上下文样式(例如,被存储为一维 上下文样式的上下文样式)(1604)。所述上下文样式可用于两个或两个以上扫描类型(例 如,水平、对角及垂直扫描类型)。

作为一个实例,如上文所描述,选定上下文样式定义用于扫描顺序中的第一有效性 语法元素的第一上下文、定义用于扫描顺序中的第二及第三有效性语法元素的第二上下 文,且定义用于扫描顺序中的剩余有效性语法元素的第三上下文。作为另一实例,如上 文所描述,选定上下文样式定义用于扫描顺序中的第一有效性语法元素的第一上下文, 且定义用于扫描顺序中的剩余有效性语法元素的第二上下文。作为另一实例,选定上下 文样式定义用于所有有效性语法元素的相同上下文。

在一些实例中,选定上下文样式是选自被存储为一维上下文样式的多个上下文样 式。举例来说,从图9A到9D所说明的二维上下文样式预计算及存储多个上下文样式。 作为一个实例,从包括在经水平地或垂直地扫描时引起相同一维上下文样式的上下文的 二维上下文样式预计算多个上下文样式中的一者。此类二维上下文样式的一个实例为图 9A所说明的上下文样式。作为另一实例,从包括在经水平地、垂直地或对角地扫描时 皆引起相同一维上下文样式的上下文的二维上下文样式预计算多个上下文样式中的一 者。此类二维上下文样式的一个实例为图9D所说明的上下文样式。

作为另一实例,从包括在经水平地扫描时引起与当垂直地扫描第二个二维上下文样 式时相同的一维上下文样式的上下文的第一个二维上下文样式预计算多个上下文样式 中的一者。第一个二维上下文样式的一个实例为图9B所说明的上下文样式。第二个二 维上下文样式的一个实例为图9C所说明的上下文样式。

视频解码器30基于选定上下文而将上下文指派给有效性语法元素(1606)。视频解码 器20基于经指派上下文来CABAC解码有效性语法元素(1608)。

在一或多个实例中,所描述功能可以硬件、软件、固件或其任何组合予以实施。如 果以软件予以实施,那么所述功能可作为一或多个指令或代码而存储在计算机可读媒体 上或经由计算机可读媒体而传输,且可由基于硬件的处理单元执行。计算机可读媒体可 包括对应于诸如数据存储媒体的有形媒体的计算机可读存储媒体,或包括(例如)根据通 信协议而促进计算机程序从一处传送到另一处的任何媒体的通信媒体。如此,计算机可 读媒体通常可对应于(1)为非暂时性的有形计算机可读存储媒体,或(2)诸如信号或载波的 通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实 施本发明所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可 包括计算机可读媒体。

作为实例而非限制,这些计算机可读存储媒体可包含RAM、ROM、EEPROM、 CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、闪速存储器,或可 用以存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。 此外,将任何连接适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光缆、 双绞线、数字订户线(DSL)或诸如红外线、无线电及微波的无线技术而从网站、服务器 或其它远程源传输指令,那么同轴电缆、光缆、双绞线、DSL或诸如红外线、无线电及 微波的无线技术包括在媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储 媒体不包括连接、载波、信号或其它暂时性媒体,而是有关于非暂时性有形存储媒体。 如本文所使用,磁盘及光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘 (DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式重现数据,而光盘用激光以光学方 式重现数据。以上各者的组合也应包括在计算机可读媒体的范围内。

指令可由诸如以下各者的一或多个处理器执行:一或多个数字信号处理器(DSP)、 通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA),或其它等效集成或 离散逻辑电路。因此,如本文所使用,术语“处理器”可指前述结构或适合于实施本文 所描述的技术的任何其它结构中的任一者。此外,在一些方面中,本文所描述的功能性 可提供在经配置用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编码解码 器中。此外,所述技术可完全地实施于一或多个电路或逻辑元件中。

本发明的技术可实施于各种各样的装置或仪器中,所述装置或仪器包括无线手机、 集成电路(IC)或一组IC(例如,芯片组)。各种组件、模块或单元在本发明中经描述以强 调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元而实现。 更确切地,如上文所描述,各种单元可组合于编码解码器硬件单元中,或由包括如上文 所描述的一或多个处理器的互操作性硬件单元集合结合合适软件及/或固件而提供。

已描述各种实例。这些及其它实例是在所附权利要求书的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号