在多视点视频编码中实施已解码缓存器管理的系统和方法
【专利摘要】提供了用于在多视点视频编码中实施已解码缓存器管理的系统和方法。具体地,提供了一种对场景的多个视点编码的方法,包括:至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表,以及提供用于相对于初始参考图片列表对视点间参考图片重新排序的第一信令元素,该第一信令元素至少部分地基于视点标识符值来导出。进一步地提供了一种对编码视频比特流解码的方法,该编码视频比特流是场景的多个视点的编码表示,该方法包括:至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表;以及至少部分地基于从编码比特流取回的第一信令元素和视点标识符值,相对于初始参考图片列表对视点间参考图片重新排序。
【专利说明】在多视点视频编码中实施已解码缓存器管理的系统和方法
[0001] 本申请是针对发明名称为"用于在多视点视频编码中实施有效的已解码缓存器管 理的系统和方法"、申请号为200780044464. 0、 申请人:为诺基亚公司的专利申请的分案申 请。
【技术领域】
[0002] 本发明一般涉及视频编码。具体而言,本发明涉及多视点视频编码中的已编码图 片缓存器管理。
【背景技术】
[0003] 本节旨在于提供权利要求书中记载的本发明的背景或者上下文。这里的描述可以 包括能够探求的概念,但是这些概念并非必然是先前已经设想或者探求的概念。因此,除 非这里另有指明,否则在本节中描述的内容不是本申请中的说明书和权利要求书的现有技 术、也不因为被包含于本节中而被承认是现有技术。
[0004] 在多视点视频编码中,将来自于不同相机的视频序列输出编码成一个比特流,其 中每个视频序列输出得益于场景的不同视点。在解码之后,为了显示某个视点而重建和显 示属于该视点的解码图片。也有可能重建和显示不止一个视点。
[0005] 多视点视频编码处理包括自由视点视频/电视、三维(3D) TV和监控应用的广泛的 各种应用。目前,国际标准化组织(ISO)的联合视频组(JVT)/国际工程联合会(IEC)运动 图像专家组(MPEG)和国际电信联盟(ITU)-T视频编码专家组正在致力于开发一种正在变 成ITU-T H. 264标准扩展的多视点视频编码(MVC)标准(也称为IS0/IEC MPEG-4第10部 分)。这些草案标准在这里分别称为MVC和AVC。MVC标准的最新草案在JVT-T208 " Joint Multiview Video Model (JMVM) 1. 0"(第 20 届 JVT 会议、奥地利、克拉根福、2006 年 7 月) 中有描述j 可以在 ftp3. itu. ch/av-arch/ivt-site/2006 07 Klagenfurt/.TVT-T208. zip 找到,并且通过引用将其全文合并于此。
[0006] 在JMVM1. 0中,对于各组图片(G0P),任何视点的图片按照解码顺序邻接。这在图 1中有描绘,其中水平方向表示时间(各时间瞬间由Tm表示),而坚直方向表示视点(各视 点由Sn表示)。各视点的图片分组成G0P,例如用于各视点的图1中的图片T1至T8形成 G0P。这一解码顺序布置称为视点优先编码。应当注意,对于一个视点中和一个G0P中的图 片,虽然它们的解码顺序连续而无任何其它图片插入于任何两个图片之间,但是它们的解 码顺序可以内部地改变。
[0007] 也有可能具有与针对优先视点编码而讨论的解码顺序不同的解码顺序。例如,可 以布置图片使得任何时间位置的图片按照解码顺序邻接。在图2中示出了这一布置。这一 解码顺序布置称为时间优先编码。也应当注意,访问单元的解码顺序可以不同于时间顺序。
[0008] 在图2中示出了用于多视点视频编码的典型预测结构(包括各视点内的图片间预 测和视点间预测),其中预测由箭头表示,并且指向去往的(pointed-to)对象将指向来自 (pointed-from)的对象用于预测参考。一个视点内的图片间预测也称为时间预测、视点内 预测或者简称为交互预测。
[0009] 瞬时解码刷新(IDR)图片是内编码图片,该图片造成解码过程紧接在对IDR图片 进行解码之后将所有参考图片标记为"未用于参考"。在IDR图片的解码之后,在没有来自 于在该IDR图片之前解码的图片的交互预测的情况下也可以对按照解码顺序的所有后继 编码图片进行解码。
[0010] 在AVC和MVC中,在序列参数集中包括在整个编码视频序列中保持不变的编码参 数。除了解码过程所必需的参数之外,序列参数集还可以可选地包含视频可用信息(VUI), 该信息包括对于缓存、图片输出定时、表现和资源保留而言重要的参数。指定了用以携带序 列参数集的两种结构--包含用于序列中AVC图片的所有数据的序列参数集NAL单元和用 于MVC的序列参数集扩展。图片参数集包含可能在数个编码图片中不变的此类参数。频繁 改变的图片级数据在各分片报头中重复,并且图片参数集携带其余图片级参数。H. 264/AVC 语法允许多个序列实例和图片参数集,并且各实例用唯一标识符来标识。各分片报头包括 对于包含分片的图片的解码而言活跃的图片参数集的标识符,并且各图片参数集包含活跃 序列参数集的标识符。因而,图片和序列参数集的传输无需与分片的传输准确地同步。代 之以在参考活跃序列和图片参数集之前的任何时刻接收它们就足够了,这允许使用与用于 分片数据的协议相比更可靠的传输机制来传输参数集。例如,可以在用于H. 264/AVC实时 协议(RTP)会话的会话描述中包括参数集作为MME参数。推荐只要在应用中有可能使用 时就使用带外可靠传输机制。如果带内传输参数集,则可以重复它们以提高误差鲁棒性。 [0011] 如这里讨论的那样,锚定(anchor)图片是如下编码图片,在该编码图片中所有分 片仅参考具有相同时间索引的分片、即仅参考其它视点中的分片而不参考当前视点的更早 图片中的分片。通过将anch 〇r_pic_flag设置成1用信号发送锚定图片。在对锚定图片进 行解码之后,可以无需来自于在锚定图片之前解码的任何图片的交互预测就对按照显示顺 序的所有后续编码图片进行解码。如果一个视点中的图片是锚定图片,则其它视点中具有 相同时间索引的所有图片也是锚定图片。因而,可以从与锚定图片对应的时间索引启动任 何视点的解码。
[0012] 在AVC或者MVC比特流的主要部分中没有包括图片输出定时,比如输出时间戳设 置。然而,图片顺序计数(P0C)的值是针对各图片而导出的并且相对于先前IDR图片或者 包含将所有图片标记为"未用于参考"的存储器管理控制操作的图片按照输出顺序没有随 着图片位置增加而减少。P0C因此指示图片的输出顺序。它也被使用在解码过程中以用于 双向预测分片的直接模式中运动向量的隐式缩放、用于加权预测中的隐式导出的权值以及 用于B分片的参考图片列表初始化。另外,P0C也使用于输出顺序一致性的验证中。
[0013] 可以用活跃序列参数集中用信号发送的三种模式之一对P0C值进行编码。在第一 模式中,在各分片报头中包括P0C值的最低有效比特的所选数目。在第二模式中,在序列参 数集中对P0C相对增量(作为按照编码的视频序列中以解码为序的图片位置的函数)进行 编码。此外,可以在分片报头中指示根据序列参数集导出的相对于P0C值而言的偏离。在 第三模式中,通过假设解码和输出顺序相同根据解码顺序导出P0C值。此外,当使用第三模 式时仅一个非参考图片可以连续地出现。
[0014] nal_ref_idc是NAL单元报头中的2比特语法元素。nal_ref_idc的值指示用于 重建样本值的NAL单元的相关度。nal_ref_idc的非零值必须用于参考图片的编码分片和 分片数据分区NAL单元以及用于参数集NAL单元。对于非参考图片的分片和分片数据分区 以及对于不影响样本值重建的NAL单元如补充增强信息NAL单元,nal_ref_idc的值必须 等于0。在H. 264/AVC高级设计中,允许外部规范(即,使用或者参考H. 264/AVC的任何系 统或者规范)以指定对nal_ref_idc的非零值的解释。例如,用于H.264/AVC Request for Comments (RFC) 3984 (可以在 www/ietf. org/rfc/rfc3984. txt 找到并且援引结合于此)的 RTP净荷格式指定对使用nal_ref_idC的强烈推荐。换而言之,一些系统已经建立用于设置 和解释非零 nal_ref_idc值的惯例。例如RTP混合器可以根据NLA单元类型来设置nal_ ref_idc,例如对于IDR NAL单元将nal_ref_idc设置成3。由于MVC是Η· 264/AVC标准的 向后兼容扩展,所以希望现有的理解H. 264/AVC的系统元件也能够处理MVC流。因此不希 望在MVC规范中与nal_ref_idc的任何其它非零值相比不同地指定nal_ref_idc的特定非 零值的语义。
[0015] 在解码图片缓存器(DPB)中缓存用于预测后续编码图片以及用于将来输出的解 码图片。为了有效地利用缓存存储器,应当指定DPB管理过程,这些过程包括将解码图片存 储到DPB中的过程、参考图片的标记过程、从DPB输出和去除解码图片的过程。
[0016] AVC中用于参考图片标记的过程一般如下。在活跃序列参数集中指示被称为Μ的、 用于交叉预测的参考图片的最大数目。当对参考图片进行解码时将它标记为"用于参考"。 如果参考图片的解码造成将多于Μ个图片标记为"用于参考",则必须将至少一个图片标记 为"未用于参考"。然后如果标记为"未用于参考"的图片也无需用于输出,则DPB去除过程 将它们从DPB去除。
[0017] 有用于参考图片标记的两类操作:自适应存储器控制和滑动窗。在图片的基础上 选择用于参考图片标记的操作模式。自适应存储器控制要求比特流中存在存储器管理控制 操作(MMC0)命令。存储器管理控制操作实现用信号显式发送哪些图片标记为"未用于参 考"、向短期参考图片分配长期索引、将当前图片存储为长期图片、将短期图片改变成长期 图片以及为长期图片分配最大允许长期索引(MaxLongTermFrameldx)。如果使用滑动窗操 作模式并且有Μ个图片标记为"用于参考",则将作为被标记为"用于参考"的那些短期参考 图片之中的第一解码图片的短期参考图片标记为"未用于参考"。换而言之,滑动窗操作模 式在短期参考图片之中造成先入/先出缓存操作。
[0018] 各短期图片与根据f rame_num语法元素来导出的可变P i cNum关联。各长期 图片与根据由MMC0命令用信号发送的long_term_frame_idx语法元素来导出的可变 LongTermPi cNum关联。取决于对巾贞或者字段进行编码还是解码,根据FrameNumWrap语 法兀素来导出PicNum。对于PicNum等于FrameNumWrap的巾贞,根据FrameNum来导出 FrameNumWrap,并且直接地根据frame_num来导出FrameNum。例如在AVC巾贞编码中,向 FrameNum指派与frame_hum相同的值,并且FrameNumWrap定义如下:
[0019] 如果(FrameNum > frame_num)
[0020] FrameNumWrap = FrameNum-Max FrameNum
[0021] 否则
[0022] FrameNumWrap = FrameNum
[0023] 根据为图片指派的长期巾贞索引(LongTermFrameldx)来导出LongTermPicNum。对 于中贞,LongTermPicNum等于LongTermFrameldx。frame_num是各分片报头中的语法兀素。 用于巾贞或者互补字段对的frame_num值相对于先前参考巾贞或者参考互补字段对的frame_ num在模算术中实质上递增一。在IDR图片中,frame_num的值为零。对于包含将所有图片 标记为"未用于参考"的存储器管理控制操作的图片,frame_n Um的值在图片的解码之后被 视为零。
[0024] MMC0命令如下使用PicNum和LongTermPicNum用于指示针对该命令的目标图片。 为了将短期图片标记为"未用于参考",在MMC0命令中用信号发送当前图片p与目的地图 片r之间的PicNum差值。为了将长期图片标记为"未用于参考",在MMC0命令中用信号发 送待去除的图片r的LongTermPicNum。为了将当前图片p存储为长期图片,将long_term_ frame_idx与MMC0命令一起用信号发送。这一索引作为LongTermPicNum的值指派给新存 储的长期图片。为了将图片r从短期图片改变成长期图片,在MMC0命令中用信号发送当前 图片P与图片r之间的PicNum差值,在MMC0命令中用信号发送long_term_frame_idx,并 且将该索引指派给这一长期图片。
[0025] 当可以使用多个参考图片时,必须标识各参考图片。在AVC中,用于编码块的参考 图片的标识如下。首先,将存储于DPB中的用于将来图片预测参考的所有参考图片标记为 "用于短期参考"(短期图片)或者"用于长期参考"(长期图片)。当对编码分片进行解码 时,构造参考图片列表。如果编码分片是双向预测分片,则也构造第二参考图片列表。然后 通过参考图片列表中被使用的参考图片的索引来标识用于编码块的参考图片。当可以使用 多于一个的参考图片时,可以在比特流中对索引进行编码。
[0026] 参考图片列表构造过程如下。为求简化,假设仅需要一个参考图片列表。首先构 造包括所有短期和长期图片的初始参考图片列表。然后当分片报头包含参考图片列表重新 排序(RPLR)命令时进行参考图片列表重新排序(RPLR)。PRLR过程可以将参考图片重新排 序成与初始列表中的顺序不同的顺序。最后通过保持可能重新排序的列表的开头中的仅某 一数目(通过分片报头或者由分片参考的图片参数集中的另一语法元素来指示该数目)的 图片来构造最终列表。
[0027] 在初始化过程中,所有短期和长期图片被视为用于当前图片的参考图片列表的候 选。无论当前图片是B图片还是P图片,长期图片都被放置于RefPicListO (而RefPicListl 对B分片而言可用)中的短期图片之后。对于P图片,用于RefPicListO的初始参考图片 列表包含按照PicNum的降序来排序的所有短期参考图片。对于B图片,按照与当前P0C编 号和参考图片的P0C编号有关的规则对从所有短期图片获得的那些参考图片进行排序-- 对于RefPicListO,具有较小P0C(与当前P0C相比)的参考图片被视为优先并且按照P0C 的降序而插入到RefPictListO中。然后按照P0C的升序来追加具有较大P0C的图片。对 于RefPicListl (如果可用),则具有较大P0C(与当前P0C相比)的参考图片被视为优先并 且按照P0C的升序而插入到RefPicListl中。然后按照P0C的降序来追加具有较小P0C的 图片。对于P图片和B图片,都是在考虑所有短期参考图片之后,按照LongTermPicNum的 升序来追加长期图片。
[0028] 通过包括四个类型的连续RPLR命令来调用重新排序过程。第一类型是用以指定 待移动的具有较小PicNum(与临时预测的PicNum相比)的短期图片的命令。第二类型是 用以指定待移动的具有较大PicNum的短期图片的命令。第三类型是用以指定待移动的具 有某一 LongTermPicNum的长期图片以及RPLR循环结束的命令。如果双向预测当前图片, 则有两个循环-一个用于正向参考列表而另一个用于反向参考列表。
[0029] 将称为picNumLXPred的预测PicNum初始化为当前编码图片的PicNum。这在用 于短期图片的每个重新排序过程之后被设置成刚移动的图片的PicNum。将在RPLR命令中 用信号发送在重新排序的当前图片的PicNum与picNumLXPred之间的差值。将指示为被重 新排序的图片移动到参考图片列表的开头。在完成重新排序过程之后,将基于活跃参考图 片列表大小来截短整个参考图片列表,该大小是num_ref_idx_lX_active_minusl+l (等于 〇或者1的X对分别对应于RefPicListO和RefPicListl)。
[0030] 在H. 264/AVC标准的附录C中指定的假想参考解码器(HRD)用来检验比特流和解 码器一致性。HRD包含编码图片缓存器(CPB)、瞬时解码过程、解码图片缓存器(DPB)和输出 图片裁剪块。与任何其它视频编码标准相类似地指定CPB和瞬时解码过程,并且输出图片 裁剪块将那些样本从在用信号发送的输出图片范围以外的解码图片简单地裁剪。在H. 264/ AVC中引入DPB以便控制用于对一致比特流进行解码的所需存储器资源。
[0031] 缓存解码图片有两个原因:为了交叉预测中的参考以及为了将解码图片重新排序 成输出顺序。由于H. 264/AVC标准为参考图片标记和输出重新排序二者都提供了大量灵活 性,所以用于参考图片缓存和输出图片缓存的单独缓存器可能是对存储器资源的浪费。因 此,DPB包括用于参考图片和输出重新排序的统一解码图片缓存过程。当解码图片不再用 作参考和需要输出时将它从DPB去除。在H. 264/AVC标准的级定义(附录A)中指定了允 许比特流使用的DPB最大大小。
[0032] 有用于解码器的两类一致性:输出定时一致性和输出顺序一致性。对于输出定时 一致性,解码器必须在与HRD相比较而言的相同时间输出图片。对于输出顺序一致性,仅将 正确输出图片顺序纳入考虑之中。假设输出顺序DPB包含帧缓存器的最大允许数目。当帧 不再用作参考和需要输出时将它从DPB去除。当DPB变满时,输出按照输出顺序的最早帧, 直至至少一个帧缓存器变为未占用。
[0033] 通过仅使用AVC工具的分层B图片G0P结构来实现时间缩放性。典型时间缩放性 G0P通常包括编码为I或者P帧的关键图片和编码为B图片的其它图片。基于P0C对那些B 图片进行分级编码。除了 G0P中的那些图片之外,G0P的编码还只需先前G0P的关键图片。 相对P0C编号(P0C减去先前锚定图片P0C)在实施中被称为POCIdlnGOP。各POCIdlnGOP 可以具有P0CIdInG0P = 2xy(其中y是奇数)的形式。具有相同X值的图片属于被称为 L-x (其中L= log2(G0P_length))的相同时间级。仅具有最高时间级L的图片没有被存储 为参考图片。通常,时间级中的图片仅能使用较低时间级中的图片作为参考以支持时间缩 放性,即,可以放弃较高时间级的图片而不影响较低时间级的图片的解码。类似地,相同分 级结构可以应用于视点维度中以求视点缩放性。
[0034] 在当前JMVM中,针对各视点对frame_num单独地进行编码并且用信号发送、即 frame_num的值相对于与当前图片相同的视点内的先前参考帧或者参考互补字段对而言递 增。另外,所有视点中的图片共享相同DPB缓存器。为了全局地处理参考图片列表构造和 参考图片管理,FrameNum和P0C生成被重新定义如下:
[0035] FrameNum = frame_num* (l+num_views_minus_l)+view_id
[0036] PicOrderCnt() = PicOrderCnt()*(l+num_views_minus_l)view_id ;
[0037] JMVM基本上遵循与用于AVC的参考图片标记相同的参考图片标记。唯一差异在 于:在JMVM中重新定义FrameNum、从而FrameNumWrap被重新定义如下:
[0038] > 餘賴ej職· I 卜卜 num-辦s-roirnis-I》+. view· jd》 Fr^ieNurnWrap - fr?ieN'um - Max.Framc^N:um # (1 -t- nuin_views__miii.Ps__ I) -r viewjd else FmneNtimWrap ~ FrameNpm
[0039] 在当前JMVM标准中,在SPS(序列参数集)扩展中隐式地指定视点间参考图片,其 中指定视点间参考列表的活跃数目和那些图片的视点id。此信息由参考相同SPS的所有 图片共享。参考图片列表构造过程先以与AVC中相同的方式、但是将DPB中存储的所有参 考图片纳入考虑之中来执行参考图片列表初始化、重新排序和截短。具有SPS中指定的视 点id并且在相同时间轴(即具有相同捕获/输出时间)内的图片然后按照它们在SPS中 被列出的顺序而追加到参考列表。
[0040] 遗憾的是,上述JSVM设计造成诸多问题。首先,有时希望(由解码器)解码的、(由 发送器)传输的或者(由媒体网关或者MANE)转发的视点的切换可以按照与对应于锚定图 片的时间索引不同的时间索引而出现。例如,可以压缩基本视点以求最高编码效率(大量 地使用时间预测)并且不经常对锚定图片进行编码。因而,用于其它视点的锚定图片也不 经常出现,因为它们对于所有视点都是同步的。当前JMVM语法没有包括这样一个图片,其 中该图片是用信号发送某一视点的解码可以从其开始的图片(除非该时间索引的所有视 点包含锚定图片)。
[0041] 其次,针对各视点(并且单独地针对锚定和非锚定图片)指定用于视点间预测的 允许参考视点。然而,取决于在编码的图片与相同时间轴中和潜在参考视点中的潜在图片 之间的相似性,可以在或者可以不在编码器中进行视点间预测。当前JMVM标准使用nal_ ref_idC以指示图片是用于视点内预测还是视点间预测,但是它无法单独地指示图片是否 用于视点内预测和/或视点间预测。此外,根据JMVM1. 0,对于AVC兼容视点,即使图片在它 仅用于视点间预测参考时不用于时间预测,nal_ref_idc也必须设置成不等于0。因而,如 果仅对该视点进行编码和输出,则需要额外的DPB大小以便在一旦对这样的图片进行解码 就可以输出这样的图片时存储它们。
[0042] 第三,注意到在JMVM1. 0中指定的参考图片标记过程与AVC过程基本上相同,不同 在于重新定义FrameNum、FrameNumWrap并且因而重新定义PicNum。因此出现诸多特殊问 题。例如,这一过程无法有效地处理对为了被缓存用于视点间预测而需要的解码图片的管 理,特别是当那些图片未用于时间预测参考时。原因在于在AVC标准中指定的DPB管理过 程旨在于单视点编码。在单视点编码中,比如在AVC标准中,为了时间预测参考或者将来输 出而需要的缓存解码图片可以在它们不再需要用于时间预测参考和将来输出时从缓存器 去除。为了实现一旦参考图片变为不再需要用于时间预测参考和将来输出就去除它,指定 参考图片标记过程使得可以在参考图片变为不再需要用于时间预测参考之后立即得知。然 而,当轮到用于视点间预测参考的图片时,缺乏一种用以在图片变为不再需要用于视点间 预测参考之后立即得知的方式。因而,用于视点间预测参考的图片可能不必要地缓存于DPB 中,这降低了缓存器存储器使用的效率。
[0043] 在另一例子中,在给定用以重新计算PicNum的方式时,如果使用滑动窗操作模式 并且短期和长期图片的数目等于最大值,则将具有最小FrameNumWrap的短期参考图片标 记为"未用于参考"。然而,滑动窗参考图片标记由于如下事实而没有在当前JMVM中最佳 地操作:这一图片并非必然是最早的编码图片,因为当前JMVM中的FrameNum顺序没有遵 循解码顺序。另外,由于根据重新定义和缩放的FrameNumWrap来导出PicNum的这一事实, 所以两个编码图片的PicNum值之差将被平均缩放。例如,有用的是假设有在相同视点中 并且frame_hum分别等于3和5的两个图片。当仅有一个视点、即比特流是AVC流时,两个 PicNum值之差将是2。当对frame_num等于5的图片进行编码时,如果需要MMCO命令以将 PicNum等于3的图片标记为"未用于参考",则两个值之差减去1等于1,这将在MMCO中用 信号发送。这一个值需要3比特。然而,如果有256个视点,则两个PicNum值之差减去1 将变为511。在这一情况下,需要19比特以便用信号发送该值。因而,MMCO命令的编码效 率低得多。通常,与H. 264/AVC的单视点编码相比,增加的比特数对于当前JMVM的MMCO命 令而言等于2 X log2 (视点数目)。
[0044] 第四组问题围绕JMVM1. 0中指定的参考图片列表构造过程。参考图片列表初始化 过程在重新排序过程之前考虑来自所有视点的参考图片。然而,由于来自用于视点间预测 的其它视点的图片在截短列表之后追加到列表这一事实,来自其它视点的参考图片在以任 何方式重新排序和截短之后没有出现在参考图片列表中。因此,无需在初始化过程中考虑 那些图片。另外,非法参考图片(具有与当前图片不同的view_id并且时间上没有与当前 图片对准的此类图片)和重复的视点间参考图片可以出现在最终构造的参考图片列表中。
[0045] 参考图片列表初始化过程如以下步骤中列出的那样来操作:(1)所有参考图片无 论它们的view_id如何以及它们是否时间上与当前图片对准都被包含于初始列表中。换而 言之,初始参考图片列表可能包含某些非法参考图片(具有与当前图片不同的view_id并 且时间上没有与当前图片对准的此类图片)。然而,在视点优先编码中,初始列表的开头包 含来自与当前图片相同的视点的参考图片。(2)可以将视点内参考图片和视点间图片重新 排序。在重新排序之后,列表的开头仍然可能包含非法参考图片。(3)将列表截短,但是截 短的列表仍然可能包含非法参考图片。(4)视点间参考图片按照它们在SPS的MVC扩展中 出现的顺序而追加到列表。
[0046] 此外,在JMVM1. 0中指定的参考图片列表重新排序过程并不允许如下视点间帧的 重新排序,这些帧总是按照它们在SPS的MVC扩展中出现的顺序而被放入列表的末尾。这 造成参考图片列表构造的较低灵活性从而在视点间参考帧的默认顺序不是最优或者某些 视点间参考帧比某些视点内参考帧更可能用于预测时导致较低的压缩效率。另外,与MMC0 命令相似,由于根据重新定义和缩放的FrameNumWrap来导出PicNum的这一事实,与Η. 264/ AVC标准的单视点编码相比需要将更长VLC码字用于涉及将减去1的PicNum值之差用信号 发送的RPLR命令编码。
【发明内容】
[0047] 本发明提供一种用于在多视点视频编码中实施有效解码图片缓存器管理的改进 系统和方法。在一个实施例中,新标志用来指示是否可以从某一图片开始视点的解码。在 一个更具体的实施例中,在NAL单元报头中用信号发送这一标志。在另一实施例中,新标志 用来指示图片是否用于视点间预测参考,而语法元素 nal_ref_idC仅指示图片是否用于时 间预测参考。也可以在NAL单元报头中用信号发送这一标志。在第三实施例中,一组新参 考图片标记方法被用来有效地管理解码图片。这些方法可以包括滑动窗和自适应存储器控 制机制两者。在第四实施例中,使用一组新参考图片列表构造方法,并且这些方法包括参考 图片列表初始化和重新排序。
[0048] 本发明的这些和其它优点及特征以及其组织和操作方式将从与附图结合时的以 下具体描述中变得清楚,附图中相似元件在下文描述的数幅图中通篇地具有相似标号。
【专利附图】
【附图说明】
[0049] 图1是优先视点编码布置中的图片布置;
[0050] 图2是时间优先编码布置中的图片布置;
[0051] 图3是示例MVC时间和视点间预测结构的预测;
[0052] 图4是本发明可以实施于其中的系统的概况图;
[0053] 图5是可以在本发明的实施中使用的移动设备的透视图;并且
[0054] 图6是图5的移动设备的电路的示意表示。
【具体实施方式】
[0055] 图4示出了用于与本发明一起使用的通用多媒体通信系统。如图4中所示,数据 源1〇〇用模拟的、未压缩数字的或者压缩的数字格式或者这些格式的任何组合来提供源信 号。编码器110将源信号编码成编码媒体比特流。编码器110可以能够对多个媒体类型如 语音、音频和视频进行编码,或者可能需要多个编码器110以对不同媒体类型的源信号进 行编码。编码器110也可以获得合成产生的输入,比如图形和文字,或者它可以能够产生合 成媒体的编码比特流。在下文中,仅考虑对一个媒体类型的一个编码媒体比特流的处理以 简化描述。然而应当注意:实时广播服务通常包括数个流(通常至少一个音频、视频和文字 字幕流)。也应当注意:该系统可以包括多个编码器,但是在下文中仅考虑一个编码器110 以简化描述而不失一般性。
[0056] 将编码媒体比特流传送到储存器120。储存器120可以包括用以存储编码媒体比 特流的任一类型的海量存储器。储存器120中的编码媒体比特流的格式可以是基本自给比 特流格式,或者一个或者多个编码媒体比特流可以封装到容器文件中。一些系统"现场"操 作、即省略储存器并且将编码媒体比特流从编码器110直接地传送到发送器130。编码媒体 比特流然后按照需要传送到也称为服务器的发送器130。传送中所使用的格式可以是基本 自给(elementary self-contained)比特流格式、分组流格式,或者一个或者多个编码媒体 比特流可以封装到容器文件中。编码器110、储存器120和发送器130可以驻留于同一物理 设备中,或者它们可以包含于分开的设备中。编码器110和发送器130可以用现场实时内 容来操作,在该情况下编码媒体比特流通常未被持久地存储而是被缓存于内容编码器110 中和/或发送器130中一段短时间以缓解处理延迟、传送延迟和/编码媒体比特速率中的 变化。
[0057] 发送器130使用通信协议栈来发送编码媒体比特流。该栈可以包括但不限于实时 传送协议(RTP)、用户数据报协议(UDP)和互联网协议(IP)。当通信协议栈是面向分组时, 发送器130将编码媒体比特流封装成分组。例如,当使用RTP时,发送器130根据RTP净荷 格式将编码媒体比特流封装成RTP分组。通常,各媒体类型具有专用RTP净荷格式。应当 再次注意:系统可以包含多个发送器130,但是以下描述为求简化仅考虑一个发送器130。
[0058] 发送器130可以或者可以不通过通信网络连接到网关140。网关140可以执行不 同类型的功能,比如将根据一个通信协议栈的分组流转译成另一通信协议栈、合并和分流 数据流、以及根据下行链路和/或接收器能力来操控数据流,比如根据主导下行链路网络 条件来控制转发流的比特速率。网关140的例子包括多点会议控制单元(MCU)、电路交换 与分组交换视频电话之间的网关、蜂窝一键通(P〇C)服务器、数字视频广播手持(DVB-Η)系 统中的IP封装器或者将广播传输本地转发到归属无线网络的机顶盒。当使用RTP时,网关 140被称为RTP混合器并且充当RTP连接的端点。
[0059] 该系统包括通常能够接收发送的信号、将该信号解调和解封装成为编码媒体比特 流的一个或者多个接收器150。编码媒体比特流通常进一步由解码器160处理,该解码器的 输出是一个或者多个未压缩媒体流。最后,呈现器(renderer) 170例如可以用扬声器或者 显示器来再现未压缩媒体比特流。接收器150、解码器160和呈现器170可以驻留于相同物 理设备中,或者它们可以包含于单独设备中。
[0060] 在比特速率、解码复杂度和图片大小方面的缩放性是异构和易错环境所希望的性 质。需要这一性质以便应对比如对比特速率、显示分辨率、网络吞吐量和接收设备中的计算 能力的约束之类的限制。
[0061] 应当理解,虽然这里包含的文字和例子可以具体地描述编码过程,但是本领域技 术人员将容易理解相同概念和原理也适用于对应解码过程并且反之亦然。应当注意可以位 于实质上任一类网络内的远程设备接收待解码的比特流。此外,可以从本地硬件或者软件 接收比特流。
[0062] 本发明的通信设备可以使用各种传输技术来通信,这些传输技术包括但不限于码 分多址(CDMA)、全球移动通信系统(GSM)、通用移动电信系统(UMTS)、时分多址(TDMA)、频 分多址(FDMA)、传输控制协议/互联网协议(TCP/IP)、短消息收发服务(SMS)、多媒体消息 收发服务(MMS)、电子邮件、即时消息收发服务(MS)、蓝牙、IEEE802. 11等。通信设备可以 使用各种介质来通信,这些介质包括但不限于无线电、红外线、激光、线缆连接等。
[0063] 图5和图6示出了本发明可以实施于其中的一个有表示性的移动设备12。然而应 当理解本发明并非意欲局限于一个特定类型的移动设备12或者其它电子设备。图5和图 6中所示的一些或者所有特征可以并入到可以在图4中所示的任何或者所有设备中。
[0064] 图5和图6的移动设备12包括壳30、形式为液晶显不器的显不器32、小键盘34、 麦克风36、耳机38、电池40、红外端口 42、天线44、根据本发明一个实施例的形式为HCC的 智能卡46、读卡器48、无线电接口电路52、编码解码器电路54、控制器56和存储器58。独 立电路和单元都是本领域中、例如Nokia移动设备范围中公知的类型。
[0065] 本发明提供一种用于在多视点视频编码中实施有效解码图片缓存器管理的改进 系统和方法。为了解决围绕当前JMVM语法没有包括用信号发送某个视点的解码可以从其 开始的图片(除非该时间索引的所有视点包含锚定图片)这一事实的问题,用信号发送新 标志,该新标志指示是否可以从某一图片访问视点、即是否可以从某一图片开始视点的解 码。在本发明的一个实施例中,在NAL单元报头中用信号发送这一标志。下文是根据一个 具体实施例的标志的语法和语义的例子。然而,也有可能类似地改变语法元素 anch〇r_pic_ flag的语义而不是添加新语法元素。
[0066]
【权利要求】
1. 一种对场景的多个视点进行编码的方法,所述方法包括: 至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表,以及 提供用于相对于所述初始参考图片列表对视点间参考图片重新排序的第一信令元素, 所述第一信令元素至少部分地基于视点标识符值来导出。
2. 根据权利要求1所述的方法,其中所述第一信令元素表示将向所述参考图片列表中 的当前索引放置的图片的视点索引与视点索引预测值之差。
3. 根据权利要求1所述的方法,包括: 提供第二信令元素,所述第二信令元素指示视点内参考图片的重新排序和视点间参考 图片的重新排序中的哪一项将被执行;以及 假如所述第二信令元素指示视点间参考图片的重新排序,则提供所述第一信令元素。
4. 一种对编码视频比特流进行解码的方法,所述编码视频比特流是场景的多个视点的 编码表示,所述方法包括: 至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表;以及 至少部分地基于从所述编码比特流取回的第一信令元素和视点标识符值,相对于所述 初始参考图片列表对视点间参考图片重新排序。
5. 根据权利要求4所述的方法,其中所述第一信令元素表示将向所述参考图片列表中 的当前索引放置的图片的视点索引与视点索引预测值之差。
6. 根据权利要求4所述的方法,包括: 从所述编码比特流取回第二信令元素,所述第二信令元素指示视点内参考图片的重新 排序和视点间参考图片的重新排序中的哪一项将被执行;以及 假如所述第二信令元素指示视点间参考图片的重新排序,则取回所述第一信令元素。
7. -种设备,包括: 用于至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表的 装置,以及 用于提供用于相对于所述初始参考图片列表对视点间参考图片重新排序的信令元素 的装置,所述信令元素至少部分地基于视点标识符值来导出。
8. 根据权利要求7所述的设备,其中所述信令元素表示将向所述参考图片列表中的当 前索引放置的图片的视点索引与视点索引预测值之差。
9. 根据权利要求7所述的设备,包括: 用于提供第二信令元素的装置,所述第二信令元素指示视点内参考图片的重新排序和 视点间参考图片的重新排序中的哪一项将被执行;以及 用于假如所述第二信令元素指示视点间参考图片的重新排序则提供所述第一信令元 素的装置。
10. -种设备,包括: 用于至少部分地基于视点内参考图片和视点间参考图片来构造初始参考图片列表的 装置;以及 用于至少部分地基于从所述编码比特流取回的信今元素和视点标识符值、相对于所述 初始参考图片列表对视点间参考图片重新排序的装置。
11. 根据权利要求10所述的设备,其中所述信令元素表示将向所述参考图片列表中的 当前索引放置的图片的视点索引与视点索引预测值之差。
12.根据权利要求10所述的设备,包括: 用于从所述编码比特流取回第二信令元素的装置,所述第二信令元素指示视点内参考 图片的重新排序和视点间参考图片的重新排序中的哪一项将被执行;以及 用于假如所述第二信令元素指示视点间参考图片的重新排序则取回所述第一信令元 素的装置。
【文档编号】H04N19/597GK104093031SQ201410348567
【公开日】2014年10月8日 申请日期:2007年10月15日 优先权日:2006年10月16日
【发明者】Y·陈, Y-K·王, M·安尼克塞拉 申请人:诺基亚公司