用于视频编码和解码的方法和技术设备的制造方法_4

文档序号:9494001阅读:来源:国知局
[0118] H. 264/AVC和HEVC的比特流语法指示特定图片是否是用于任何其他图片的帧间 预测的参考图片。任何编码类型(I、P、B)的图片可以是H. 264/AVC和HEVC中的参考图片 或非参考图片。
[0119] H. 264/AVC指定用于解码的参考图片标记的过程,以便控制解码器中的存储器消 耗。用于帧间预测的参考图片的最大数量,被称为M,在序列参数集中被确定。当参考图片 被解码时,其被标记为"用于参考"。如果对参考图片的解码使得多于M个图片被标记为"用 于参考",则至少一个图片被标记为"未用于参考"。存在用于解码的参考图片标记的两种类 型的操作:自适应存储器控制和滑动窗口。用于解码的参考图片标记的操作模式在图片的 基础上被选择。自适应存储器控制使得能够显式信号传送哪些图片被标记为"未用于参考" 并且还可以将长期指数分配到短期参考图片。自适应存储器控制可以要求存储器管理控制 操作(MMCO)参数存在于比特流中。MMCO参数可以被包括在解码的参考图片标记语法结构 中。如果正在使用滑动窗口操作模式并且存在M个图片被标记为"用于参考",则作为被标 记为"用于参考"的那些短期参考图片之中的第一解码的图片的短期参考图片被标记为"未 用于参考"。换言之,滑动窗口操作模式导致短期参考图片之中的先进先出缓冲操作中。
[0120] H. 264/AVC中的存储器管理控制操作之一使得除了当前图片的所有参考图片被标 记为"未用于参考"。瞬时解码刷新(IDR)图片仅仅包含帧内编码的切片并且引起对参考图 片的类似的"重置"。
[0121] 在HEVC标准草案中,不使用参考图片标记语法结构和相关的解码过程,但是相反 出于类似的目的,代替地使用参考图片集(RPS)语法结构和解码过程。针对图片有效或活 动的参考图片集包括被用作针对该图片的参考的所有参考图片以及针对在解码顺序中的 任何随后图片被保持标记为"用于参考"的所有参考图片。存在参考图片集合的六个子集, 其被称为 RefPicSetStCurrO、RefPicSetStCurrl、RefPicSetStFollO、RefPicSetStFolll、 RefPicSetLtCurr和RefPicSetLtFolI。六个子集的符号如下。"Curr "是指包括在当前图片 的参考图片列表中并且因此可以被用作针对当前图片的帧间预测参考的参考图片。"Foil" 是指未被包括在当前图片的参考图片列表中但是可以在解码顺序中的随后图片中用作参 考图片的参考图片。"St"是指短期参考图片,其一般可以通过其POC值的最低有效位的某 数字来标识。"Lt"是指长期参考图片,其被特别标识并且一般具有相对于当前图片的、比能 够由最低有效位的上述某数字表示的更大的POC值的差。"0"是指具有比当前图片的POC值 更小的POC值的那些参考图片。"1"是指具有比当前图片的POC值更大的POC值的那些参 考图片。RefPicSetStCurrO、RefPicSetStCurrl、RefPicSetStFollO 和 RefPicSetStFom 统称为参考图片集的短期子集。RefPicSetLtCurr和RefPicSetLtFoll统称为参考图片集 的长期子集。
[0122] 在HEVC标准草案中,参考图片集可以在序列参数集中被指定并且通过参考图片 集的索引投入到切片头中使用。参考图片集还可以在切片头中被指定。参考图片集的长期 子集一般仅仅在切片头中被指定,同时相同参考图片集的短期子集可以在图片参数集或切 片头中被指定。参考图片集可以被独立地编码或可以从另一参考图片集来预测(被称为 RPS间预测)。当参考图片集被独立地编码时,语法结构包括在不同类型的参考图片上迭 代的多达三个环路;具有比当前图片低的POC值的短期参考图片、具有比当前图片高的POC 值的短期参考图片以及长期参考图片。每个环路入口指定要被标记为"用于参考"的图片。 一般地,利用不同的POC值来指定图片。RPS间预测利用能够从先前解码的图片的参考图 片集来预测当前图片的参考图片集的事实。这是因为当前图片的所有参考图片是先前图片 的参考图片或先前解码的图片本身。仅仅有必要指示这些图片中的哪个图片应当是参考图 片并且用于对当前图片的预测。在两种类型的参考图片集编码中,附加地针对每个参考图 片来发送标记(used_by_curr_pic_X_flag),指示参考图片是用于(被包括在*Curr列表 中)还是未用于(被包括在*Foll列表中)当前图片的参考。包括在由当前切片使用的参 考图片集中的图片被标记为"用于参考",未在由当前切片使用的参考图片集中的图片被标 记为"未用于参考"。如果当前图片是IDR图片,则RefPicSetStCurrO、RefPicSetStCurrl、 RefPicSetStFollO、RefPicSetStFolll、RefPicSetLtCurr 和 RefPicSetLtFoll 全部被设置 为空。
[0123] 解码的图片缓冲器(DPB)可以在编码器中和/或在解码器中被使用。存在对经解 码的图片进行缓冲的两个原因,用于帧间预测中的参考和用于将经解码的图片重新排序成 输出顺序。因为H. 264/AVC和HEVC提供用于参考图片标记和输出重新排序两者的大量灵 活性,用于参考图片缓冲和输出图片缓冲的分离的缓冲器可能浪费存储器资源。因此,DPB 可以包括用于参考图片和输出重新排序的统一的解码的图片缓冲过程。经解码的图片可以 在其不再被用作参考并且不需要用于输出时从DPB被去除。
[0124] 在H. 264/AVC和HEVC的许多编码模式中,利用参考图片列表的索引来指示用于帧 间预测的参考图片。可以利用可变长度编码来编码索引,所述可变长度编码通常使得较小 的索引具有针对对应的语法元素的较短的值。在H. 264/AVC和HEVC中,针对每个双向预测 (B)切片生成两个参考图片列表(参考图片列表0和参考图片列表1),并且针对每个帧间 编码的(P)切片形成一个参考图片列表(参考图片列表0)。另外,对于HEVC标准草案中的 B切片,组合的列表(列表C)可以在已经构建了最终的参考图片列表(列表0和列表1)之 后被构建。组合的列表可以被用于B切片内的单预测(还称为单向预测)。在一些后来的 HEVC标准草案中,去除了组合的列表。
[0125] 诸如参考图片列表0和参考图片列表1的参考图片列表通常在两个步骤中被构 建:第一,生成初始参考图片列表。可以基于frame_num、POC、temporal_id或关于诸如 GOP结构的预测层次的信息或它们的任何组合来生成初始参考图片列表。第二,通过可以 被包含在切片头中的参考图片列表重新排序(RPLR)命令(还称为参考图片列表修改语法 结构)来对初始参考图片列表进行重新排序。在H. 264/AVC中,RPLR命令指示被排序到 相应参考图片列表的开始的图片。该第二步骤还被称为参考图片列表修改过程,并且RPLR 命令可以被包括在参考图片列表修改语法结构中。如果使用了参考图片集,则参考图片列 表〇可以被初始化为首先包含RefPicSetStCurrO,紧接着是RefPicSetStCurrL紧接着是 RefPicSetLtCurr。参考图片列表1可以被初始化为首先包含RefPicSetStCurrl,紧接着是 RefPicSetStCurrO。在HEVC中,可以通过参考图片列表修改语法结构来修改初始参考图片 列表,其中可以通过列表的入口索引来标识初始参考图片列表中的图片。换言之,在HEVC 中,参考图片列表修改被解码到包括最终的参考图片列表中的每个入口上的环路的语法结 构中,其中每个环路入口是初始参考图片列表的固定长度编码的索引并在最终的参考图片 列表中以升序位置顺序指示图片。
[0126] 包括H. 264/AVC和HEVC的许多编码标准可以具有导出参考图片列表的参考图片 索引的解码过程,其可以用于指示多个参考图片中的哪个参考图片被用于针对特定块的帧 间预测。在一些帧间编码模式中参考图片索引可以由编码器编码到比特流中或在一些其他 帧间编码模式中其可以例如使用邻近块(通过编码器和解码器)来导出。
[0127] 为了有效地表示比特流中的运动向量,运动向量可以相对于块特定的预测的运动 向量被不同地编码。在许多视频编解码器中,预测的运动向量可以以预定义方式来创建,例 如通过计算相邻块的经编码或解码的运动向量的中值。创建运动向量预测的另一方式,有 时被称为高级运动向量预测(AMVP),是从时间参考图片中的相邻块和/或共同定位的块来 生成候选预测的列表并将选出的候选者作为运动向量预测符来进行信号传送。除了预测 运动向量值,可以预测先前编码的/解码的图片的参考索引。通常从时间参考图片中的相 邻块和/或共同定位的块来预测参考索引。对运动向量的差分编码通常在切片边界上被禁 用。
[0128] 例如,高级运动向量预测(AMVP)等可以如下来操作,同时还有可能利用不同的候 选位置集合和具有候选位置集合的候选位置来进行对AMVP的其他类似的实现。可以导出 两个空间运动向量预测区(MVP)并且可以导出时间运动向量预测符(TMVP)。它们可以在以 下位置中被选择:位于当前预测块上的三个空间MVP候选位置(B0、Bl、B2)以及左边的两 个(A0、A1)。以每个候选位置集合的预定义顺序可用的(例如,驻留在相同切片中、被帧间 编码的,等等)第一运动向量指示符(B0、B1、B2)或(A0、A1)可以被选择以表示运动向量竞 争中的预测方向(向上或向左)。针对TMVP的参考索引可以在切片头中由编码器指示(例 如,如collocated_ref_idx语法元素)。从共同定位的图片获得的运动向量可以根据TMVP 的参考图片、共同定位的图片以及当前图片的图片顺序计数差的比例被缩放。此外,冗余校 验可以在候选者之中被执行以去除相同的候选者,其能够导致零MV被包括在候选列表中。 运动向量指示符可以例如通过指示空间MVP (向上或向左)的方向或TMVP候选者的选择而 在比特流中被指示。
[0129] 诸如HEVC编解码器草案的许多高效的视频编解码器采用附加的运动信息编码/ 解码机制,通常被称为合并/归并模式/过程/机制,其中块/PU的所有运动信息被预测并 在没有任何修改/校正的情况下被使用。针对PU的前述运动信息可以包括以下的一个或多 个:1) "PU是仅使用参考图片列表0被单预测的"、还是"PU是仅使用参考图片列表1被单 预测的"或是"PU是使用参考图片列表0和列表1两者被双预测的"的信息;2)对应于参考 图片列表0的运动向量值,其可以包括水平运动向量分量和垂直运动向量分量;3)参考图 片列表〇中的参考图片索引和/或由对应于参考图片列表〇的运动向量指向的参考图片的 标识符,其中参考图片的标识符可以例如为图片顺序计数值、(用于层间预测的)层标识符 值、或者图片顺序计数值和层标识符值的对;4)参考图片的参考图片标记的信息,例如参 考图标被标记为"用于短期参考"还是"用于长期参考"的信息;5)-7)分别与2)-4)相同, 但是针对参考图片列表1。类似地,使用时间参考图片中的相邻块和/或共同定位的块的运 动信息来实现对运动信息的预测。通常被称为合并列表的列表可以通过包括与可用向量块 /共同定位的块相关联的运动预测候选者来构建并且所选择的运动预测候选者在列表中的 索引被信号传送,并且所选择的候选者的运动信息被复制到当前PU的运动信息。当合并机 制被用于整个CU并且针对CU的预测信号被用作重建信号时,即预测残差未被处理时,这种 类型的对CU的编码/解码通常被称为跳跃模式或基于合并的跳跃模式。除了跳跃模式,合 并机制还被用于单个PU (不一定是如跳跃模式中的整个CU)并且在这种情况下,可以利用 预测残差来改进预测质量。这种类型的预测模式可以被称为合并间模式。
[0130] 合并列表中的候选者之一可以是TMVP候选者,其可以例如使用collocated_ref_ idx语法元素等从指示的或推测的参考图片(诸如,例如在切片头中指示的参考图片)内的 共同定位的块来导出。
[0131] 在HEVC中,当运动编码模式是合并模式时,针对合并列表中的时间运动向量预测 的所谓的目标参考索引被设置为〇。当HEVC中的利用时间运动向量预测的运动编码模式是 高级运动向量预测模式时,目标参考索引被明确地指示(例如,对于每个PU)。
[0132] 当已经确定了目标参考索引时,时间运动向量预测的运动向量值可以如下被导 出:在与当前预测单元的右下邻居一起共同定位的块处的运动向量被计算。如以上描述的, 共同定位的块所处的图片可以例如根据切片头中的被信号传送的参考索引来确定。在共同 定位的块处的所确定的运动向量关于第一图片顺序计数差和第二图片顺序计数差的比值 被缩放。第一图片顺序计数差在包含共同定位的块的图片和共同定位的块的运动向量的参 考图片之间被导出。第二图片顺序数差在当前图片和目标参考图片之间被导出。如果目标 参考图片和共同定位的块的运动向量的参考图片中的一个而非两者是长期参考图片(同 时另一个是短期参考图片),则TMVP候选者可以被认为是不可用的。如果目标参考图片和 共同定位的块的运动向量的参考图片中的两者都是长期参考图片,则没有基于POC的运动 向量缩放可以被应用。
[0133] 可分级的视频编码是指其中一个比特流能够包含内容的以不同比特率、分辨率或 帧率的多个表示的编码结构。在这些情况下,接收器可以取决于其特性(例如,与显示设备 最好地匹配的分辨率)来提取期望的表示。备选地,服务器或网络元件可以取决于例如接 收器的网络特性或处理能力来提取要被传输到接收器的比特流的部分。可分级的比特流可 以包括提供可获得的最低质量视频的"基本层"和在与更低层一起被接收并解码时增强视 频质量的一个或多个增强层。为了改进增强层的编码效率,该层的编码表示可以取决于更 低层。例如,能够从更低层预测增强层的运动和模式信息。类似地,更低层的像素数据能够 被用于创建针对增强层的预测。
[0134] 在一些可分级的视频编码方案中,视频信号能够被编码到基本层和一个或多个增 强层中。增强层可以增强时间分辨率(即,帧率)、空间分辨率或简单地增强由另一层或其 部分表示的视频内容的质量。每层连同其从属层中的所有层一起是以某空间分辨率、时间 分辨率和质量水平的视频信号的一个表示。在该文档中,我们将可分级的层连同其从属层 中的所有层一起称为"可分级的层表示"。可分级的比特流的对应于可分级的层表示的部分 能够被提取并被解码以产生原始信号的以某保真度的表示。
[0135] -些编码标准允许创建可分级的比特流。有意义的解码的表示能够通过仅仅对可 分级的比特流的某部分进行解码来产生。可分级的比特流能够用于例如在串流服务器中对 预编码的单播流的速率适应并且用于将单个比特流传输到具有不同能力和/或具有不同 网络状况的终端。
[0136] 在一些情况下,增强层中的数据能够在某个位置之后或甚至在任意位置处被截 断,其中每个截断位置可以包括表示越来越增强的视觉质量的附加数据。这种可分级性被 称为细粒度(粒度)可分级性(FGS)。
[0137] SVC使用层间预测机制,其中某信息可以从除了当前重建的层或下一更低层以外 的层来预测。能够被层间预测的信息包括帧内纹理、运动和残差数据。层间运动预测包括对 块编码模式、头信息、块分割等的预测,其中来自较低层的运动可以被用于预测较高层。在 帧内编码的情况下,从周围宏块或从共同定位的更低层的宏块的预测是有可能的。这些预 测技术不采用来自较早编码接入单元的信息并且因此被称为帧内预测技术。另外,来自更 低层的残差数据还能够被用于对当前层的预测。
[0138] SVC指定被称为单环路解码的概念。其通过使用约束的帧内纹理预测模式来实 现,由此层间帧内纹理预测能够被应用到宏块(MB),针对所述宏块,基本层的对应块被定 位在内部MB内。同时,基本层中的那些内部MB使用约束的帧内预测(例如,使语法元素 "constrained_intra_pred_flag"等于1)。在简单的环路解码中,解码器仅仅针对期望用 于回放的可分级的层(被称为"期望层"或"目标层")来执行运动补偿和完全图片重建,从 而大大降低解码复杂度。除了期望层以外的所有层不需要被完全解码,因为未用于层间预 测(其为层间帧内纹理预测、层间运动预测或层间残差预测)的MB的数据中的全部或部分 数据对于重建期望层是不需要的。
[0139] 对于对大多数图片的解码需要单个解码环路,同时第二解码环路选择性地被应用 以重建基本表示,其被需要作为预测参考但是不用于输出或显示,并且仅仅针对所谓的关 键图片(针对"store_ref_base_pic_flag"等于1的图片)而被重建。
[0140] FGS被包括在SVC标准的一些草定版本中,但是其最后从最终的SVC标准被排除。 随后在SVC标准的一些草定版本的上下文中讨论FGS。由那些不能够被截断的增强层提供 的可分级性被称为粗粒度(粒度)可分级性(CGS)。其共同包括传统质量(SNR)可分级性 和空间可分级性。SVC标准支持所谓的中粒度可分级性(MGS),其中质量增强图片与SNR可 分级的层图片类似地被编码但是与FGS层图片类似地由高级语法元素通过使quality_id 语法元素大于0来指示。
[0141] SVC草案中的可分级性结构可以由三个语法元素来表征:" temporal_id"、 "dependency_id"和"quality_id"。语法元素"temporal_id"用于指示时间可分级性层次 或间接地指示帧率。包括具有较小的最大"temporal id"值的图片的可
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1