首页> 中国专利> 用于时间预测的共位图片的隐式确定以及组合隐式和显式确定

用于时间预测的共位图片的隐式确定以及组合隐式和显式确定

摘要

在一个实施例中,一种方法确定当前图片,并且确定用于当前图片的第一列表参考图片和第二列表参考图片中的至少一个。分析当前图片与第一列表参考图片和第二列表参考图片中的至少一个中的至少一部分参考图片之间的时间距离。然后,该方法在分析后的至少一部分参考图片中选择离当前图片在时间距离上最近的参考图片。所选参考图片被设置为用于当前图片的共位图片,并且在用于当前图片的时间预测处理中使用所选参考图片。

著录项

  • 公开/公告号CN104137547A

    专利类型发明专利

  • 公开/公告日2014-11-05

    原文格式PDF

  • 申请/专利权人 摩托罗拉移动有限责任公司;

    申请/专利号CN201280057222.6

  • 申请日2012-11-20

  • 分类号H04N19/463;

  • 代理机构中原信达知识产权代理有限责任公司;

  • 代理人陈依虹

  • 地址 美国伊利诺伊州

  • 入库时间 2023-12-17 02:29:08

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-02-23

    授权

    授权

  • 2016-04-06

    专利申请权的转移 IPC(主分类):H04N19/463 登记生效日:20160316 变更前: 变更后: 申请日:20121120

    专利申请权、专利权的转移

  • 2014-12-10

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

    实质审查的生效

  • 2014-11-05

    公开

    公开

说明书

相关申请的交叉引用

本公开要求以下优先权:

于2011年11月21日提交的名为“An Implicit Way for Signaling Collocated Picture for HEVC”的美国临时申请No.61/561,931;以及

于2011年11月21日提交的名为“A Combined Way for Signaling Collocated Picture for HEVC”的美国临时申请No.61/562,426,其全部 内容通过引用结合于此。

本公开涉及于2012年11月19日提交的名为“An Explicit Way for Signaling a Collocated Picture for High Efficiency Video Coding (HEVC)”的美国专利申请No.13/680,531,其全部内容通过引用结合于 此。

背景技术

视频压缩系统采用用于大多数压缩操作的块处理。块是一组邻近 像素,并且可以根据压缩操作被视为一个编译单元。理论上,优选较 大编译单元,以利用直接邻近像素之间的相关性。例如运动图像专家 组(MPEG-1)、MPEG-2、和MPEG-4的多种视频压缩标准使用4x4、 8x8、和16x16(称为宏块(MB))的块尺寸。

高效视频编译(HEVC)还是基于块的混合空间和时间预测编译方 案。HEVC将输入图片划分为被称为编译树单元(CTU)的正方形块, 如图1中所示。不像现有编译标准,CTU可以为128x128像素那样大。 每个CTU都可以被划分为被称为编译单元(CU)的较小正方形块。图 2示出CU的CTU划分的实例。CTU100首先被划分为四个CU102。 每个CU102还可以被进一步分割为四个更小的CU102,其是CU102 的尺寸的四分之一。该划分处理可以基于特定准则被重复,诸如,可 以施加对可以划分CU的次数的限制。如图所示,CU102-1、102-3和 102-4是CTU100的尺寸的四分之一。而且,CU102-2已被分割为四 个CU102-5、102-6、102-7和102-8。

每个CU102都可以包括可以被称为预测单元(PU)的一个或多 个块。图3示出PU的CU划分的实例。PU可以用于执行空间预测或 时间预测。CU可以被空间或时间预测编译。如果CU在帧内模式下被 编译,则CU的每个PU可以具有其自己的空间预测方向。如果CU在 帧间模式下被编译,则CU的每个PU可以具有其自己的运动矢量和关 联参考图片。

在HEVC中,运动矢量(MV)在时间预测处理中被预测编译。 对于具有一个当前运动矢量和关联参考索引的当前PU,从当前PU的 空间邻近或时间共位PU的运动矢量导出运动矢量预测因子(MVP)。 然后,当前运动矢量和MVP之间的差值被确定和编译。这减少了开销, 因为仅发送差值而不是用于当前运动矢量的信息。而且,当在合并模 式下,单个运动矢量可以被应用至一组空间邻近或时间共位PU。

给定当前图片中的当前PU,关联共位PU驻留在关联共位图片中。 共位PU被用作用于MVP的候选者之一或者在合并/跳转模式下用于当 前PU。共位图片是在列表0或列表1中指定的参考图片。标记可以被 设置成指示应当从哪个列表定义共位PU。例如,标记可以被设置为1, 以指示将从列表0定义包含共位划分的参考图片,否则,将从列表1 定义参考图片。

一旦编码器或解码器确定包含共位图片(collocated picture)的列 表,则编码器或解码器就使用列表0或列表1中的第一参考图片。即, 选择在列表0或列表1中具有索引0的参考图片。在一些情况下,列 表0或列表1中的第一参考图片可以不是当执行用于当前PU的时间预 测处理时使用的最佳参考图片。

发明内容

在一个实施例中,一种方法确定当前图片,并且确定用于当前图 片的第一列表参考图片和第二列表参考图片中的至少一个。分析在当 前图片与第一列表参考图片和第二列表参考图片中的所述至少一个中 的至少一部分参考图片之间的时间距离。然后,该方法在分析后的至 少一部分参考图片中,选择离当前图片在时间距离上最近的参考图片。 将所选参考图片设置为用于当前图片的共位图片,并且在用于当前图 片的时间预测处理中使用所选参考图片。

在一个实施例中,提供一种方法,包括:由计算设备确定当前图 片;由计算设备确定用于当前图片的第一列表参考图片和第二列表参 考图片中的至少一个;由计算设备分析在当前图片与第一列表参考图 片和第二列表参考图片中的所述至少一个中的至少一部分参考图片之 间的时间距离;由计算设备在分析后的至少一部分参考图片中,选择 离当前图片在时间距离上最近的参考图片;以及由计算设备将所选参 考图片设置为用于当前图片的共位图片,其中,在用于当前图片的时 间预测处理中使用所选参考图片。

在一个实施例中,提供一种方法,包括:由计算设备确定指示使 用第一列表参考图片或第二列表参考图片中的哪个的标记的值;如果 该值是第一值,则由计算设备在第一列表中的合格参考图片中选择离 当前图片具有最小绝对时间距离的参考图片;如果该值是第二值,则 由计算设备在第二列表中的合格参考图片中选择离当前图片具有最小 绝对时间距离的参考图片;由计算设备设置变量的值,以指示第一列 表或第二列表中的所选参考图片的位置,其中,所选参考图片包括到 当前图片中的当前块的共位块,用于在时间预测处理中使用。

在一个实施例中,提供一种解码器,包括:一个或多个计算机处 理器;以及非暂时性计算机可读存储介质,包括当被执行时,控制一 个或多个计算机处理器被配置用于以下的指令:确定当前图片;确定 用于当前图片的第一列表参考图片和第二列表参考图片中的至少一 个;分析当前图片与第一列表参考图片和第二列表参考图片中的所述 至少一个中的至少一部分参考图片之间的时间距离;在分析后的至少 一部分参考图片中,选择离当前图片在时间距离上最近的参考图片; 以及将所选参考图片设置为用于当前图片的共位图片,其中,所选参 考图片被用于在时间预测处理中解码当前图片。

在一个实施例中,提供一种编码器,包括:一个或多个计算机处 理器;以及非暂时性计算机可读存储介质,包括当被执行时,控制一 个或多个计算机处理器被配置用于以下的指令:确定当前图片;确定 用于当前图片的第一列表参考图片和第二列表参考图片中的至少一 个;分析当前图片与第一列表参考图片和第二列表参考图片中的所述 至少一个中的至少一部分参考图片之间的时间距离;在分析后的至少 一部分参考图片中,选择离当前图片在时间距离上最近的参考图片; 以及将所选参考图片设置为用于当前图片的共位图片,其中,所选参 考图片被用于在时间预测处理中对当前图片编码。

以下详细说明和附图提供特定实施例的性质和优点的更好理解。

附图说明

图1示出被划分为称为编译树单元(CTU)的正方形块的输入图 片。

图2示出CU的CTU划分的实例。

图3示出PU的CU划分的实例。

图4示出根据一个实施例的用于对视频内容编码和解码的系统的 实例。

图5示出根据一个实施例的离当前图片具有不同时间距离的参考 图片的实例。

图6示出根据一个实施例的列表0和列表1的实例。

图7示出根据一个实施例的用于确定共位图片的方法的简化流程 图。

图8示出根据一个实施例的用于从列表0和列表1选择的以上语 义的简化流程图。

图9示出根据一个实施例的用于从列表0和列表1中的第一参考 图片选择的方法的简化流程图。

图10提供图示用于使用两个参考图片列表—列表0和列表1来识 别在解码当前图片时使用的共位参考图片的一个实施例的语法列表。

图11图示用于解释如何确定当前图片和参考图片之间的图片顺 序计数的差异的一组图片。

图12提供图示可以用于识别共位图片以实现当前图片的解码和 编码的编辑(compilation)语法步骤的流程图。

图13提供图示用于使用共有参考图片列表识别在解码当前图片 时使用的共位图片的另一个实施例的语法列表。

图14A示出根据一个实施例的编码器的实例。

图14B示出根据一个实施例的解码器的实例。

具体实施方式

在此描述用于视频压缩系统的技术。在以下说明书中,为了解释 的目的,阐述大量实例和特定详情,以便提供特定实施例的透彻理解。 由权利要求限定的特定实施例可以单独或结合以下描述的其他特征包 括这些实例中的一些或所有特征,并且可以进一步包括在此描述的特 征和概念的修改和等同物。

共位图片的隐式确定

概述

图4示出根据一个实施例的用于编码和解码视频内容的系统400 的实例。编码器402和解码器403可以使用HEVC编码和解码比特流; 然而,还可以想到其他视频压缩标准。

编码器402包括共位图片管理器404-1,并且解码器403包括共位 图片管理器404-2。在特定实施例中,共位图片管理器404-1和404-2 “隐式地”确定将用作用于当前图片的共位图片的参考图片。通过隐 式地确定将用作共位图片的参考图片,在没有选择哪个共位图片的任 何信令的情况下,编码器402和解码器403可以独立地作出该确定。 例如,编码器402不将编码器选择哪个参考图片作为共位图片信号发 送至解码器403。而是,共位图片管理器404-1和共位图片管理器404-2 独立地确定相同参考图片用作用于当前图片的共位图片。以下将更详 细地描述用于确定用作共位图片的参考图片的算法。

所选共位图片包括可以在时间预测处理中使用的运动矢量(MV) 信息。例如,在共位图片中用于划分的运动矢量可以用作高级运动矢 量预测(AMVP)中的时间运动矢量预测因子(MVP)或合并处理中 的时间合并/跳转候选运动矢量。当共位块的运动矢量被用作时间MVP 时,共位块的运动矢量和当前块的当前运动矢量的差值被编译并且从 编码器402被发送至解码器403。当在合并处理中使用共位块的运动矢 量时,当前块和共位块被合并,并且使用共位块的相同运动矢量。

时间MVP或时间合并/跳转候选MV被定义为所选共位块的MV, 所选共位块驻留在参考图片中并且具有与当前图片中的当前块相同的 几何位置。在一个实例中,给定当前图片中的PU,关联共位PU可以 驻留在时间上在前或在后的PU中。共位PU可以被用作候选者,以实 现用于当前PU的MVP和合并/跳转模式。像PU那样,共位块可以被 提供用于变换单元(TU)、CU或图片本身。随后论述将参考图片,尽 管其可以应用至图片或片的任何所列子分量。另外,可以参考块,其 可以是PU,但是还可以是TU、CU、图片或片。

当多个参考图片都可以时,与来自离当前图片具有较小时间距离 的参考图片的共位块相比,使用来自离当前图片具有较大时间距离的 参考图片的共位块可能不太有效。这是因为当线性运动发生时,来自 在时间距离上更接近的共位块的运动矢量将很可能更类似于当前块的 当前运动矢量。这在编译处理中更有效,因为可能存在共位块的运动 矢量与当前运动矢量的更少差异。

为了图示时间距离上的差异,图5示出根据一个实施例的离当前 图片具有不同时间距离的参考图片的实例。应当理解,可以考虑未来 和过去两者的参考图片。当前图片在502处被示出,并且包括在503 处示出的当前块。附加参考图片#1、#2、和#3分别在504-1、504-2、 和504-3处示出。每个参考图片都是离当前图片的不同时间距离。例如, 在504-1处的参考图片包括时间距离TR=1,参考图片504-2包括时间 距离TR=2,并且参考图片504-3包括时间距离TR=3,其中,用于TR 的更高值是离当前图片的更大时间距离。

运动矢量MV_1是在参考图片#1中的在508-1处示出的共位块的 运动矢量,并且运动矢量MV_2是在参考图片#2中的用于在508-2处 所示的共位块的运动矢量。运动矢量MV_1或MV_2可以被用作用于 当前图片中的当前块的时间MVP或时间合并/跳转候选MV。如在510 处所示,运动矢量MVP_1基于运动矢量MV_1,并且在512处,运动 矢量MVP_2基于运动矢量MV_2。特定实施例选择运动矢量MV_1用 作时间MVP或时间合并/跳转候选MV,这是因为参考图片#1在时间 距离上最接近当前图片。如果被用作时间MVP,则假定线性运动,运 动矢量MV_1很可能更类似于用于当前块的当前运动矢量。

从而,特定实施例通过基于当前图片和参考图片的候选集合之间 的时间距离选择共位图片来改进编译性能。如上所述,可以从被称为 列表0或列表1的两个列表之一中指定的参考图片,选择共位图片。 根据列表0或列表1中的参考图片的布置,所选共位图片可能不是列 表0或列表1中的第一参考图片。图6示出根据一个实施例的列表0 和列表1的实例。如图所示,列表0和列表1按照索引被布置,其中, 索引中的第一位置是[0],第二位置是[1],以此类推。不同参考图片可 以在索引位置上相关联,其可以通过变量RefPicList0[i]或RefPicList[j] 指出。例如,对于列表0,从图5看,RefPicList0[0]指向参考图片#2, RefPicList0[1]指向参考图片#1,并且RefPicList0[2]指向参考图片#3。 类似地,列表1包括相同索引位置,但是可以包括不同参考图片或在 列表0中发现的一些相同参考图片,但是可能在不同位置。例如, RefPicList1[0]指向参考图片#3,RefPicList1[1]指向参考图片#2,并且 RefPicList1[2]指向参考图片#1。从而,如果要选择具有离当前图片最 小时间距离的参考图片,然后,如果使用列表0,则使用位置 RefPicList0[1],或者如果使用列表0,则使用位置RefPicList1[2]。

单个列表实例

在一个实施例中,可以使用标记为collocated_from_l0_flag的标记, 以指定应当被用于识别共位图片的列表0或列表1的两个列表之一。 例如,如果标记collocated_from_l0_flag等于0,则应当使用列表1。 即,从列表1中的参考图片确定共位图片。可替换地,如果标记 collocated_from_l0_flag等于1,则使用列表0。即,从列表0中的参考 图片确定共位图片。特别是,以下提供可以在一种方法中使用以识别 共位图片的语义。在该语义中,以上识别的标记collocated_from_l0_flag 与识别被标记为RefPicList1[j]和RefPicList1[i]的列表0和列表1的变 量一起被使用。附加变量colPic识别共位图片。

在一些实施例中,语法可以通过以下语义表达:

-如果slice_type等于B并且collocated_from_l0_flag等于0,则变 量colPic如通过RefPicList1[j]所指定的来指定包含共位划分的图片, 其中,j是与在不被编译为RefPicList1中的帧内图片的所有可用参考当 中的不被编译为离当前图片/片具有最小绝对时间距离的帧内图片的参 考相对应的索引。

-否则(slice_type等于B并且collocated_from_l0_flag等于1或 slice_type等于P),变量colPic如通过RefPicList0[i]所指定的来指定 包含共位划分的图片,其中,i是与在不被编译为RefPciList0中的帧内 图片的所有可用参考中的不被编译为离当前图片/片具有最小绝对时间 距离的帧内图片的参考相对应的索引。

在以上语义中,如果用于当前图片的片类型是B片,并且 collocated_from_l0_flag等于0,则变量colPic被设置为指定列表1中 的离当前图片在时间距离上最近的参考图片。例如,使用RefPicList1[j], 其中,j是对于离当前图片为最小绝对时间距离的参考图片的索引。不 考虑不被编译为帧内图片的参考图片,这是因为由于这些图片被帧内 编译,它们不包括运动矢量。而且,因为在时间上在当前图片之前或 之后可以是参考图片,所以使用最小绝对时间距离。

可替换地,如果当前图片的片类型等于B并且 collocated_from_l0_flag等于1,或者片类型等于P(当片类型等于P时, 仅使用列表0),则变量colPic被设置到列表0中的与当前图片在时间 距离上最近的参考图片。例如,设置RefPicList0[i],其中,i是列表0 中的索引,用于与当前图片为最小绝对时间距离的参考图片。再次, 不考虑不被编译为帧内图片的参考图片,因为由于这些图片被帧内编 译,它们不包括运动矢量。

图7示出根据一个实施例的用于确定共位图片的方法的简化流程 图700。该方法可以在编码器402或解码器403处隐式地执行。在702 处,共位图片管理器404(在编码器402或解码器403中)确定正被编 码或解码的当前图片的片类型是B片还是P片。如果当前片是B片, 则在704处,共位图片管理器404确定标记collocated_from_l0_flag等 于0还是1。如果标记collocated_from_l0_flag等于1,则在706处, 共位图片管理器404分析用于列表0中的参考图片的时间距离。另外, 如果如在702中确定的正在处理P片,则还执行在706处的处理。在 一个实施例中,可以分析用于不被编译为帧内图片的列表0中的参考 图片的时间距离。

在708处,共位图片管理器404从在706处分析的共位图片中, 选择离当前图片为最小绝对时间距离的参考图片。在710处,共位图 片管理器404将变量colPic设置为所选参考图片。

如果标记collocated_from_l0值是0,则在706、708和710中描述 的处理被执行用于列表1。例如,在712处,共位图片管理器404分析 用于列表1中的参考图片的时间距离。在一个实施例中,可以分析用 于不被编译为帧内图片的列表1中的参考图片的时间距离。

在714处,共位图片管理器404从在712处分析的共位图片中, 选择离当前图片最小绝对时间距离的参考图片。在714处,共位图片 管理器404将变量colPic设置为所选参考图片。然后,编码器402或 解码器403可以使用用于共位图片的运动矢量作为时间MVP或时间合 并/跳转候选MV。

组合列表实例

在另一个实施例中,可以从列表0和列表1中可用的所有合格参 考图片当中的参考图片,选择共位图片。即,共位图片被定义为在列 表0和列表1中可用的所有合格参考当中的离当前图片具有最小绝对 时间距离的参考图片。当使用该限制时,collocated_from_l0_flag的语 法可能不需要并且可以被去除。不需要使用标记,因为特定实施例不 需要指定列表0和列表1之间的哪个列表用于确定共位图片。即,搜 索列表0和列表1,认为指示搜素哪个列表的标记是不必要的。在一个 实施例中,用于以上语法改变的语义可以被定义为:

-如果slice_type等于B,则变量colPic如通过以下所指定的来指 定包含共位划分的图片

■RefPicList0[i],如果i是与在RefPicList1和RefPicList0中不被 编译为帧内图片的所有可用参考当中的不被编译为离当前图片/片具有 最小绝对时间距离的帧内图片的参考相对应的索引。

■否则,RefPicList1[j],如果j是与在RefPicList1和RefPicList0 中不被编译为帧内图片的所有可用参考当中的不被编译为离当前图片/ 片具有最小绝对时间距离的帧内图片的参考相对应的索引。

可替换地,在另一个实施例中,语义可以为:

-如果slice_type等于B,则变量colPic如通过以下所指定的来指 定包含共位划分的图片

■RefPicList1[i],如果i是与在RefPicList1和RefPicList0中不被 编译为帧内图片的所有可用参考当中的不被编译为离当前图片/片最小 具有绝对时间距离的帧内图片的参考相对应的索引。

■否则,RefPicList0[j],如果j是与在RefPicList1和RefPicList0 中不被编译为帧内图片的所有可用参考当中的不被编译为离当前图片/ 片具有最小绝对时间距离的帧内图片的参考相对应的索引。

在第一语义中,如果当前图片的slice_type是B片,则变量colPic 被设置为包括与当前图片在时间距离上最近的参考图片的列表中-在列 表0或列表1中-的索引之一。例如,可以搜索列表0,以确定包括离 当前图片具有最小绝对时间距离的参考图片的索引位置。搜索在列表0 中不被编译为帧内图片的所有参考。然后,可以搜索列表1,以确定对 于与当前图片在时间距离上最近的参考图片的索引位置。变量colPic 被设置为最接近当前图片的共位图片的列表0中的索引位置或列表1 中的索引位置。例如,如果列表0中的参考图片比列表1中的所确定 参考图片更接近,则colPic被设置为RefPicList0[i],其中,i是到当前 图片具有最小绝对时间距离的参考图片的索引位置。否则,colPic被设 置为RefPicList1[j],其中,j是对于到当前图片为最小绝对时间距离的 参考图片的索引位置。替代语义首先搜索列表1,并且然后搜素列表0。 另外,在其他实施例中,在列表0和列表1中不被帧内编译的所有参 考图片可以被组合并且被搜索用于到当前图片具有最小绝对距离的参 考图片。

图8示出根据一个实施例的用于从列表0和列表1选择的以上语 义的简化流程图800。该方法可以在编码器402或解码器403处隐式地 执行。在802处,共位图片管理器404(在编码器402或解码器403中) 确定用于列表0和列表1中的合格参考图片的所有时间距离。如上所 述,仅不被编译为帧内图片的参考图片可能是合格的,并且可以确定 最小绝对时间距离。

在804处,共位图片管理器404确定列表0或列表1中的哪个包 括具有绝对最小时间距离的参考图片。如果列表0包括该参考图片, 则在806处,共位图片管理器404选择列表0中的参考图片作为用于 当前图片的共位图片。如上所述,变量colPic可以被设置成指定列表0 中的所选参考图片的索引。如果在804中选择列表1,则在808处,共 位图片管理器404选择列表1中的参考图片作为共位图片。如上所述, 列表1中的索引位置可以被设置为变量colPic。

仅考虑第一参考图片的组合列表实例

在还有的另一个实施例中,共位图片管理器404可以考虑列表0 或列表1中的第一参考图片。然后,共位图片管理器404确定列表0 或列表1中的第一参考图片中的哪个与当前图片在时间距离上更近。 例如,共位图片管理器404选择列表0中的第一参考图片和列表1中 的第一参考图片中的哪个离当前图片具有较小绝对时间距离。在该情 况下,该参考图片被设置为共位图片。当使用该语义时,包括标记 collocated_from_l0_flag的语法可能不需要并且可以被去除。这是因为 考虑列表0和列表1,并且不需要定义将使用列表0和列表1中的哪个 的标记。该语法可以通过以下语义概括:

-如果slice_type等于B,则变量colPic如通过以下所指定的来指 定包含共位划分的图片

■RefPicList0[0],如果RefPicList[0]不被编译为帧内图片并且具有 比RefPicList1[0]离当前图片/片更小的绝对时间距离。

■否则,如果RefPicList1[0]不被编译为帧内图片,则使用 RefPicList1[0]。

可替换地,语义可以为:

-如果slice_type等于B,则变量colPic如通过以下所指定的来指 定包含共位划分的图片

■RefPicList1[0],如果RefPicList1[0]不被编译为帧内图片并且比 RefPicList0[0]离当前图片具有更小的绝对时间距离。

■否则,如果RefPicList0[0]不被编译为帧内图片,则使用 RefPicList0[0]。

以上语义确定列表0和列表1中的第一参考图片,并且将变量 colPic设置为列表0和列表1中到当前图片具有最小绝对时间距离的第 一参考图片。如果第一参考图片之一被编译为帧内图片,则使用另一 个参考图片(如果也不被编译为帧内图片)。

图9示出根据一个实施例的用于从列表0和列表1中的第一参考 图片选择的方法的简化流程图900。该方法可以在编码器402或解码器 403处隐式地执行。在902处,共位图片管理器404(在编码器402或 解码器403处)确定列表0中的第一参考图片。在904处,共位图片 管理器404确定列表1中的第一参考图片。在906处,确定离当前图 片的用于列表0中的第一参考图片和列表1中的第一参考图片中的每 个的时间距离。

在908处,共位图片管理器404选择哪个参考图片离当前图片具 有绝对最小时间距离。然后,在910处,共位图片管理器404将离当 前图片具有绝对最小时间距离的参考图片设置为来自列表0或列表1 的共位图片。例如,如上所述,变量colPic可以被设置到列表0或列 表1中的第一索引位置。

从而,特定实施例提供用于隐式地确定将用于当前图片的共位图 片的不同方法。编码器402和解码器403可以执行类似处理,以确定 用于当前图片的共位图片。这不需要显式地信号发送在诸如列表0或 列表1中的参考图片的参考图片集合中使用哪个参考图片。由于可能 需要在比特流中发送更少的比特,所以这可以提高编译效率。

信号发送共位图片的显式方法

在本部分中的显式方法基于于2012年11月19日提交的名为“An Explicit Way for Signaling a Collocated Picture for High Efficiency Video Coding(HEVC)”的美国专利申请No.[]。

为了具有选择最佳共位图片的灵活性,可以显式地而不是隐式地 信号发送共位图片。对于显式信号发送,使用语法元素,以通过使用 包括可以不使用列表0或列表1中的第一条目参考图片的实施例的过 程,显式地表示共位图片,或者可替换地,参考一图片,以识别来自 单个列表而不是两个单独列表的共位参考图片。根据应用新语法元素 来显式地表示共位图片的情况,一个或两个语法元素可能需要用于列 表0和列表1,或者有效地去除对参考列表0和列表1的需要的单个列 表可能在更有效编译中被可替换地使用。

A.使用列表0和列表1的显式语法

在显式地识别共位图片的一个实施例中,使用绝对图片顺序计数 (POC)差来表示参考图片。该方法通过使用POC以及当前图片POC 和参考图片POC之差来实现。POC和ΔPOC被用于构造参考图片集合 (RPS)。然后,使用RPS来创建识别可以用于编码和解码当前图片 的共位图片的两个列表,列表0和列表1。可以使用图9的语法来执行 识别共位图片的该实施例的方法。

图10开始于识别参考图片集合索引ref_pic_set(idx),并且识别用 于该参考图片集合的负和正图片的数目。与列表0和列表1中的图片 的数目相等的用于识别负和正变量的数目的语法变量是 num_negaive_pics和num_pos_pics。如可以参考图10解释的,负和正 图片帮助确定列表0和列表1中的图片。图11图示具有用于从0到6 范围的图片的图片顺序计数(POC)的一组七个图片中的当前图片3。 负图片或在当前图片3之前的图片包括图片0-2。正图片或在当前图片 3之后的图片包括图片4-6。如在图片指示符之上所示,列表0中的负 图片在当前图片3之后按顺序被表示为L0[2,1,0],其中,括号中的那 些数字是列表0中的参考图片的POC数目,并且例如,列表0的第一 条目是POC2,并且列表0的第二条目是POC1等。类似地,列表1中 的正图片在当前图片3之后按顺序表示为L1[4,5,6]。谨记,具有POC 0,1,2,4,5和6的图片在图片3之前被编码或解码。

图10的语法继续,确定POC中的当前图片和参考图片之差。这 使得图10中所示的用于L0和L1的列表值能够通过使用差编译被转换 为更合理值。例如,通过语法步骤:

for(I=0;I<num_negative_pics;i++)

delta_poc_s0_minusl[i]

used_by_current_pic_s0_flag[i]

这些步骤从POC中的当前图片减去所列图片,以将列表L0[2,1,0]转 换为新ΔPOC列表L0[1,2,3],使得更容易对ΔPOC而不是POC本身 编译。同时,又一步骤通过使用used_by_current_pic_s0_flag设置当前 图片,以指示是否使用参考列表0中的图片。类似地,通过语法步骤:

for(I=0;I<num_positive_pics;i++)

delta_poc_s1_minusl[i]

used_by_current_pic_s1_flag[i]

这些步骤从POC中的当前图片减去所列图片,以将列表L1[4,5,6]转 换为新ΔPOC列表L1[-1,-2,-3],并且通过使用 used_by_current_pic_s1_flag设置当前图片,以指示是否使用参考列表1 中的图片。

图10进一步包括标记有“*”的重要语法。在该语法中,两个变 量被提供用于参考图片集合ref_pic_set(idx)中的列表0和列表1的索 引,这些变量被标记为collocated_picture_idx_list0和 collocated_picture_idx_list1,它们分别指定用于列表0和列表1中的共 位图片的索引。而且,在该重要语法中,提供标记为NumRpsCurr0和 NumRpsCurr1的用于当前参考图片的数目的两个变量,其还分别被已 知为用于列表0和列表1的图片的数目。变量NumRpsCurr0和 NumRpsCurr1分别识别当前参考图片集合RefPicSetCurr0和 RefPicSetCurr1中的条目的数目。

通过图10中的该重要语法,分别通过collocated_picture_idx_list0 和collocated_picture_idx_list1,在列表0和列表1之一中显式地信号发 送共位图片。首先,在重要语法中,用于列表0中的当前参考图片集 合中的图片的数目NumRpsCurr0被检验,以确定其是否大于1。如果 NumRpsCurr0是零,则在列表0中什么也没有,并且如果NumRpsCurr0 是1,则列表0中所列的一个参考图片必须是共位图片。然而,如果 NumRpsCurr0大于1,则检查语法collocated_picture_idx_list0,以确定 哪个参考图片被指定为共位图片。如果collocated_picture_idx_list0不 存在,则其被推断为等于0。

第二,在图10的重要语法中,用于列表1的当前参考图片集合中 的图片的数目NumRpsCurr1被检验,以确定其是否大于1。如果 NumRpsCurr1是零,则在列表1中什么也没有,并且如果NumRpsCurr1 是1,则列表1中所列的一个参考图片必须是共位图片。然而,如果 NumRpsCurr1大于1,则检查语法collocated_picture_idx_list1,以确定 哪个参考图片被指定为共位图片。如果collocated_picture_idx_list1不 存在,则其被推断为等于0。

虽然在图10的语法中未示出,但是可以提供单独标记,以识别两 个列表中的哪个(列表0或列表1)识别共位图片。用于将具有两个状 态1和0的标记的变量是collocated_from_l0_flag。如果 collocated_from_l0_flag等于1,则由collocated_picture_idx_list0指示 的列表0中的参考图片将被用于共位图片,否则,由 collocated_picture_idx_list1指示的列表1中的参考图片将被用作共位图 片。

对于除了B型之外的片/图片类型,collocated_from_l0_flag不存 在,并且将被设置为1作为默认值,以指示列表0将默认被使用。对 于B片图片,collocated_from_l0_flag可以具有0或1值,以指示将使 用列表0或列表1中的哪个。

实际上,由图10的语法所示的方法可以被实现,以将来自图片集 合的图片选择为用于当前图片的共位图片参考。以下提供多个实例。

在使用图10的语法的第一实例中,collocated_from_l0_flag是1, 并且NumRpsCurr0是5。被标记为RefPicSetCurr0的参考图片集合中 的参考图片的ΔPOC是{2,5,1,4,3}。如果collocated_picture_idx_list0 是2,则来自列表0的具有ΔPOC为1的参考图片将被用作用于当前图 片/片的共位图片。

在第二实例中,collocated_from_l0_flag是0,并且NumRpsCurr1 是5。RefPicSetCurr1中的参考图片的ΔPOC是{3,1,2,4,5}。如果 collocated_picture_idx_list1是1,则来自列表1的具有ΔPOC为1的参 考图片将被用作用于当前图片/片的共位图片。

图12提供图示可以用于识别共位图片以实现当前图片的解码和 编码的语法步骤的编辑的流程图。首先,在步骤1200中,提供被识别 用于编码或解码的一组图片中的当前图片。在步骤1202中,识别当前 图片的片类型,以确定其是否是B型。如果是,则在步骤1204中必须 访问标记,以确定共位图片在列表0还是在列表1中被识别。如果图 片不是B型,则方法直接进行至步骤1206,并且假设具有共位图片的 列表是列表0。使用确定步骤1204,标记状态确定该方法是进行至步 骤1206,以检验用于共位图片的列表0,还是进行至步骤1208,以检 验列表1。

如果列表0将被检验,则步骤1206查看列表0中的图片的当前数 目是否大于1。如果是,则控制进行至步骤1210,以识别来自列表0 的共位图片。如果在步骤1206中,图片的数目等于1,则处理进行至 步骤1212,以将共位图片识别为列表0中的仅有图片。

如果列表1将被检验,则步骤1208查看列表1中的图片的当前数 目是否大于1。如果是,则控制进行至步骤1214,以识别来自列表1 的共位图片。如果在步骤1208中,图片的数目等于1,则处理进行至 步骤1216,以将共位图片识别为列表1中的仅有图片。

最后,一旦共位图片被识别,方法就进行至步骤1218。步骤1218 提供共位图片,以实现对当前图片编码或解码。

B.使用单个参考列表的显式语法

作为由图10的语法所示的处理的替代,一种方案可以使用一个语 法,collocated_picture_idx,其指定用于列表0或列表1处的共位图片 的索引,在片头部处,显式地信号发送用于当前片的共位图片,如图 13的语法列表中所示。该方法还使用collocated_from_l0_flag,以确定 在访问参考图片列表之前,将使用列表0或列表1中的哪个。然而, 语法collocated_picture_idx可以被放在collocated_from_l0_flag之后。 通过该排序,将不需要具有两个语法。从而,图13的语法可以提供比 图9的语法更有效的系统。

对于图13的语法,最初,通过语法变量slice_type识别片类型。 如果片类型是B,则参考标记collocated_from_l0_flag,以确定共位图 片将来自列表0还是列表1。对于其他片类型,collocated_from_l0_flag 不存在,并且collocated_from_l0_flag的值被推导为等于1,这意味着 共位图片一直来自列表0,并且“else”语句不需要被检验。类似地, 如果collocated_from_l0_flag是0,则“if”语句不需要被检验。

不像图10的实施例,在图13中,查阅可以识别共位图片的单个 collocated_picture_idx。该标记可以被设置为1,以指示将从通过使用 来自列表0的collocated_picture_idx检验图片的“if”语法,导出包含 共定位划分的图片,否则将在来自列表1的“else”语句之后导出共位 图片。

类似于图10的实施例,在图13中,提供被标记为NumPpsCurr0 和NumRpsCurr1的用于当前参考图片的数目的两个变量。变量 NumPpsCurr0和NumRpsCurr1分别是列表0和列表1中的参考图片的 数目,识别当前参考图片集合中的条目的数目。从而,在语法中,根 据用于确定其是否大于1的“if”和“else”条件,检验NumPpsCurr0 和NumRpsCurr1。如果为0,则集合为空,并且不需要被评估。如果为 1,则一个索引值识别共位图片,这是因为在集合中仅有一个,并且意 味着collocated_picture_idx的默认值应当是0,并且共位图片是对应参 考列表中仅有的图片。如果大于1,则collocated_picture_idx语法可以 被用于识别共位参考图片。

C.具有有效语法的显式共位图片

用于以上部分A和B的语法共有的特征说明了可以如何执行显式 方法以识别共位图片。部分A的语法要求更多资源来识别共位图片。 例如,必须执行搜索两个单独列表collocated_picture_idx_list0和 collocated_picture_idx_list1,以识别共位图片。通过在部分B的系统中 采用高级步骤,来消除通过最初参考标记collocated_from_l0_flag搜索 列表之一的需要,部分B的语法消除了所要求的资源。而且,在部分 B中,在甚至参考该标记之前,检查片类型,这是因为如果片类型是I 型或者P型而不是B型,则标记状态将预先被知晓。

类似于从部分A到部分B的语法的改变,可以执行语法的其他修 改,以使共位图片的识别更有效。部分A和部分B的语法的共有特征 包括:(1)识别用于解码或编码的一组图片中的当前图片;(2)提 供用于识别该组图片中的共位参考图片的语法;以及(3)使用所识别 的共位图片解码或编码当前图片。

可以以多种方式执行通过图10和图13建议的语法的编译和编码。 对collocated_picture_idx_list0、collocated_picture_idx_list1或 collocated_picture_idx编译的一种可能方式是使用固定长度编译。用于 这些语法的最多比特被指定为变量Ceil(Log2(max_num_ref_frames)), 其中,max_num_ref_frames指定参考帧、互补参考字段对、以及非成 对参考字段的最大数目,用于序列中的任何图片的帧间预测的解码处 理可以使用非成对参考字段。

对于实际编码,应用多种条件。例如,如果collocated_from_l0_flag 是1并且NumRpsCurr0也是1,则collocated_picture_idx_list0和 collocated_picture_idx均不被编译。同样地,如果 collocated_from_l0_flag是0并且NumRpsCurr1是1,则 collocated_picture_idx_list1和collocated_picture_idx均不被编译。根据 编译过程,按照用于编码的语法编译规则的处理可以被用于解码。

信号发送共位图片的组合方法

如上所述,已经描述了信号发送哪个参考图片将被用作共位图片 的显式和隐式方式。在一个实施例中,编码器402和解码器403两者 可以在显式和隐式方法之间切换。从而,特定实施例可以使用标记 explicit_collocated_picture来指示应当使用哪个方法。例如,标记 explicit_collocated_picture可以被设置为1,并且从编码器402被信号 发送至解码器403。然后,解码器403使用在显式信令中描述的处理。 如果编码器402将explicit_collocated_picture标记设置为0,并且将该 标记信号发送至解码器403,则解码器403使用如上所述的隐式方法。 以下描述可以在图片参考集合(PPS)中提供标记 explicit_collocated_picture的语法:

图片参数集合RBSP语法

pie_parameter_sct_rbsp(){ 描述符 pie_parameter_set_id ue(v) seq_parameter_set_id uc(v) entropy_coding_mode_flag u(1) num_temporal_1ayer_switching_point_flags ue(v) for(i=0;i<num_temporal_laycr_switching_point_flags;i++) temporal_layer_switching_point_flag[i] u(1) num_ref_idx10_default_active_minus1 ue(v) num_ref_idx_11_default_active_minus1 ue(v) pic_init_qp_minus26/*relative to26*/ se(v) constrained_intra_pred_flag u(1) slice_granularity u(2) shared_pps_info_enabled_flag u(1) explicit_collocated_picture u(1) if(sharcd_pps_info_enabled_flag) if(adaptive_loop_filter_enabled_flag) alf_param() if(cu_qp_delta_enabled_flag) max_cu_qp_delta_depth u(4) rbsp_trailing_bits() }

编码器和解码器实例

在各种实施例中,所描述的编码器402可以被结合或者另外与头 端处的代码转换器或编码装置相关联,并且解码器403可以被结合或 者另外与下游设备相关联,诸如,移动设备、机顶盒或代码转换器。 图14A示出根据一个实施例的编码器402的实例。现在将描述编码器 402的一般操作;然而,将理解,基于在此的公开和教导,本领域技术 人员将会想到关于所描述的编码处理的变体。

对于当前PU,x,通过空间预测或时间预测获得预测PU,x’。然后, 从当前PU减去预测PU,得到残差PU,e。空间预测涉及帧内模式图片。 帧内模式编译可以使用来自当前输入图像的数据,而不参考其他图像, 以对I图片编译。空间预测块1404可以包括每PU不同空间预测方向, 诸如水平、垂直、45度对角线、135度对角线、DC(平坦求平均)、 以及平面、或任何其他方向。用于PU的空间预测方向可以被编译为语 法元素。在一些实施例中,用于PU的辉度(brightness)信息(亮度 (Luma))和颜色信息(色度)可以单独被预测。在一个实施例中, 用于所有块尺寸的亮度帧内预测模式的数目是35。在替代实施例中, 用于任何尺寸的块的亮度帧内预测模式的数目可以是35。附加模式可 以被用于色度帧内预测模式。在一些实施例中,色度预测模式可以被 称为“IntraFromLuma”。

时间预测块1406执行时间预测。帧间模式编译可以使用来自当前 输入图像和一个或多个参考图像的数据,以对“P”图片和/或“B”图 片编译。在一些情况和/或实施例中,帧间模式编译可以得到比帧内模 式编译更高的压缩。在帧间模式下,PU204可以在时间上被预测编译, 使得CU202的每个PU204可以具有一个或多个运动矢量和一个或多 个关联参考图像。可以通过运动估计操作执行时间预测,运动估计操 作在关联参考图像中搜索用于PU的最佳匹配预测。最佳匹配预测可以 通过运动矢量和关联参考图像描述。P图片使用来自当前输入图像和一 个或多个先前参考图像的数据。B图片使用来自当前输入图像以及先前 和随后参考图像的数据,并且可以具有多达两个运动矢量。运动矢量 和参考图片可以被编译在HEVC比特流中。在一些实施例中,运动矢 量可以是语法元素“MV”,并且参考图片可以是语法元素“refIdx”。 在一些实施例中,帧间模式可以允许空间和时间预测编译。最佳匹配 预测通过运动矢量(MV)和关联参考图片索引(refIdx)描述。运动 矢量和关联参考图片索引被包括在编译后的比特流中。

变换块1407通过残差PU,e执行变换操作。可以对CU执行不同 尺寸的块集合变换,使得一些PU可以被划分为更小的TU,并且其他 PU可以具有与PU相同的尺寸的TU。CU和PU到TU20的划分可以 通过四叉树表示示出。变换块1407在变换域E中输出残差PU。

然后,量化器1408量化残差PU的变换系数E。量化器1408将 变换系数转换为有限数目的可能值。在一些实施例中,这是有损操作, 其中,量化的数据损失可能是不可恢复的。在变换系数被量化之后, 熵编译块1410对量化后的系数熵编码,这得到将被传送的最终压缩比 特。可以使用不同熵编译方法,诸如,上下文自适应可变长度编译 (CAVLC)或上下文自适应二进制算术编译(CABAC)。

而且,在编码器402内的解码处理中,反量化器1412反量化残差 PU的量化后的变换系数。然后,反量化器1412输出残差PU的反量化 后的变换系数E’。反变换块1414接收反量化后的变换系数,其然后被 反变换,得到重构残差PU,e’。然后,重构PU,e’在空间或时间上被添 加至对应预测x’,以形成新的重构PU,x”。在确定预测时使用特定实 施例,诸如,在预测处理中使用共位图片管理器404,以确定要使用的 共位图片。循环滤波器1416对重构PU,x”执行解块,以减少块效应。 另外,循环滤波器1416可以在完成用于解码后的图片的解块滤波处理 之后,执行取样自适应偏移处理,其补偿重构像素和原始像素之间的 像素值偏移。而且,循环滤波器1416可以对重构PU执行自适应循环 滤波,这最小化了输入和输出图片之间的编译失真。另外,如果重构 图片是参考图片,则将参考图片存储在参考缓冲器1418中,用于未来 时间预测。帧内模式编译图像可以是在不需要附加重构图像的情况下 解码可以开始的可能点。

图14B示出根据一个实施例的解码器403的实例。现在将描述解 码器403的一般操作;然而,将理解,基于在此的公开和教导,本领 域技术人员将会想到关于所描述的解码处理的变体。解码器403从编 码器402接收输入比特,以用于编码后的视频内容。

熵解码块1430对输入比特流执行熵解码,以生成残差PU的量化 后的变换系数。反量化器1432反量化残差PU的量化后的变换系数。 然后,反量化器1432输出残差PU的反量化后的变换系数E’。反变换 块1434接收反量化后的变换系数,其然后被反变换,得到重构的残差 PU,e’。

然后,重构PU,e’在空间或时间上被添加至对应预测x’,以形成新 的重构PU,x’。循环滤波器1436对重构PU,x”执行解块,以减少块效 应。另外,循环滤波器1436可以在完成用于解码后的图片的解块滤波 处理之后执行取样自适应偏移处理,这补偿重构像素和原始像素之间 的像素值偏移。而且,循环滤波器1436可以对重构PU执行自适应循 环滤波,这最小化了输入和输出图片之间的编译失真。另外,如果重 构图片是参考图片,则参考图片被存储在参考缓冲器1438中,以用于 未来时间预测。

通过空间预测或时间预测获得预测PU,x’。空间预测块1440可以 接收每PU的解码后空间预测方向,诸如水平、垂直、45度对角线、 135度对角线、DC(平坦求平均)、以及平面。空间预测方向被用于 确定预测PU,x’。

时间预测块1406通过运动估计操作执行时间预测。可以在确定预 测时使用特定实施例,诸如,在预测处理中使用共位图片管理器404, 以确定要使用的共位图片。使用解码后的运动矢量,以确定预测PU,x’。 可以在运动估计操作中使用内插。

特定实施例可以在非暂时性计算机可读存储介质中实现,用于由 或结合指令执行系统、装置、系统或机器使用。计算机可读存储介质 包含用于控制计算机系统执行通过特定实施例描述的方法的指令。当 由一个或多个计算机处理器执行时,指令可操作以执行在特定实施例 中描述的方法。

如在此的说明书中并且贯穿权利要求中使用的,除非另外明确地 指示,“一”、“一个”、和“该”包括复数个引用。而且,如在此 的说明书中并且贯穿权利要求中使用的,除非另外明确指示,“在... 中”的意义包括“在...中”和“在...上”。

以上说明书示出多种实施例以及可以如何实现特定实施例的多个 方面的实例。以上实例和实施例应当不被认为是仅有的实施例,并且 被提供以说明如由权利要求限定的特定实施例的灵活性和优点。基于 以上公开和权利要求,可以在不脱离由权利要求限定的其范围的情况 下,采用其他布置、实施例、实现和等同物。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号