统一的帧内块复制和帧间预测模式的制作方法
【专利说明】统一的帧内块复制和帧间预测模式
[0001] 背景
[0002] 工程师使用压缩(也叫做源编码或源编码)来降低数字视频的比特率。压缩通过将 视频信息转换成较低比特率的形式来降低存储和传送该信息的成本。解压(也被称为解码) 从压缩的形式中重构一种版本的原始信息。"编解码器"是编码器/解码器系统。
[0003] 在过去的二十年中,已采用了各种视频编解码器标准,包括ITU-T H.26UH.262 (MPEG-2或IS0/IEC13818-2)、H.263和H.264(MPEG-4AVC或IS0/IEC14496-10)标准、MPEG-1(IS0/IEC 11172 1 172-2)和MPEG-4可视(IS(VlEC14496-2)标准W及SMPTE 421M(VC-1) 标准。最近,肥VC标准(ITU-T Η. 265或IS0/IEC 23008-2)已被批准。当前,正在开发(例如, 针对可缩放视频编码/解码、针对在样本比特深度或色度采样率方面具有较高保真度的视 频的编码/解码、或针对多视图编码/解码的)肥VC标准的扩展。视频编解码器标准通常定义 针对经编码的视频比特流的句法的选项,从而详述当在编码和解码时使用特定特征时该比 特流中的参数。在许多情况下,视频编解码器标准还提供关于解码器应当执行W在解码时 取得一致的结果的解码操作的细节。除了编解码器标准外,各种专用编解码器格式定义针 对经编码的视频比特流的句法的其他选项W及相应的解码操作。
[0004] -般而言,视频压缩技术包括"图像内"压缩和"图像间"压缩。图片内压缩技术压 缩各个体图片,且图片间压缩技术参考前导和/或跟随图片(通常被称为参考或错图片)来 压缩图片。
[000引图片间压缩技术通常使用运动估计和运动补偿通过利用视频序列中的时间冗余 来降低比特率。运动估计是用于估计图片之间的运动的过程。在一个常用技术中,使用运动 估计的编码器尝试将当前图片中的当前样本值块与另一图片(参考图片)中的捜索区域中 的相同尺寸的候选块匹配。当编码器在参考图片的捜索区域中找到精确或"足够接近"的匹 配时,编码器将当前和候选块之间的位置改变参数化为运动数据(诸如运动矢量("MV"))。 MV常规上是二维值,其具有指示左或右空间位移的水平MV分量和指示上或下空间位移的垂 直MV分量。MV可指示整数像素位移,或在一些编解码器格式中指示分数像素位移。一般来 说,运动补偿是使用运动数据从(诸)参考图片中重构图片的过程。
[0006] 帖内块复制("BC")是Η.265/肥V讶广展的处于开发中的预测模式。对于帖内BC预测 模式,图片的当前块的样本值是使用同一图片中的先前重构的样本值来预测的。块矢量 ("BV")指示从当前块到当前图片的包括用于预测的先前重构的样本值的区域的位移。通 常,BV指示整数像素位移。BV被信号化在比特流中。帖内BC预测是一种形式的图片内预测-针对图片的块的帖内BC预测不使用除了同一图片中的样本值W外的任何样本值。
[0007] 如当前在H. 265/皿VC标准中规定并在针对H. 265/皿VC标准的某一参考软件中实 现的,帖内BC预测模式具有若干问题。具体地,(除常规的帖内预测模式和帖间预测模式外) 在编码和解码期间实现帖内BC预测模式所增加的复杂性可能没有证明将帖内BC预测包括 为编码/解码工具是有道理的。
[0008] 概述
[0009]总之,详细描述呈现了统一的帖内块复制("BC")和帖间预测模式方面的创新。在 一些示例实现中,针对帖间预测模式的比特流句法、句法元素语义及许多编码/解码处理被 重新使用或略微修改W允许针对帖的各个块的帖内BC预测。例如,为了提供针对当前图片 的当前块的帖内BC预测,运动补偿过程应用指示当前图片内的位移的运动向量("MV"),其 中当前图片被用作针对该运动补偿过程的参考图片。随着句法、语义及编码/解码处理的运 种统一,在使用帖内BC预测时也可应用针对帖间预测所模式设计的各种编码/解码工具,运 简化了帖内BC预测的实现。
[0010] 根据本文中描述的运些创新中的一个方面,视频编码器对当前图片进行编码W产 生经编码的数据。作为编码的一部分,编码器对当前图片的当前块执行帖内BC预测,其中该 帖内BC预测使用帖间预测模式且当前图片作为参考图片。编码器在比特流中输出经编码的 数据。作为帖内BC预测和帖间预测模式的统一的一部分,编码器可按一下方式中的任何一 种或多种方式来适配。
[0011] 首先,编码器可确定启用还是禁用帖内BC预测模式,随后在比特流中设置指示帖 内BC预测模式被启用还是禁用的标志的值。例如,编码器确定对序列启用还是禁用帖内BC 预测模式,并且标志是序列参数集合("SPS")的一部分。替换地,编码器可在逐图片的基础 上、逐片的基础上或在某一其他基础上确定启用还是禁用BC预测模式。
[0012] 第二,作为编码的一部分,编码器可设置比特流中的各句法元素的值,使得没有一 个句法元素导致在对当前图片进行编码期间参考当前图片的非重构部分。也就是说,即使 在使用帖间预测模式的句法、语义、处理等来实现帖内BC预测的功能时,编码器仍可将各句 法元素的值设置为使得帖内BC预测仅参考当前图片的先前重构的部分。
[0013] 第Ξ,作为编码的一部分,编码器可使用若干不同方法中的任一者来信号化用于 帖内BC预测的运动矢量("MV")信息(其中MV在编码期间被用作块矢量("BV"))。例如,编码 器可标识当前块的MV,其中该MV指示整数像素偏移。编码器W整数像素精度来信号化比特 流中的MV。或者,作为另一示例,编码器可标识出当前块的MV(其中该MV指示整数像素偏 移),但W分数像素精度(例如,1/4像素精度)来信号化该比特流中的该MV。即使在亮度MV具 有整数像素精度时,相应的色度MV仍可具有分数像素精度。在编码器从指示整数像素偏移 的亮度MV中推导出色度MV后,编码器可对该色度MV进行四舍五入或截短W指示整数像素偏 移。
[0014] 第四,对于当前图片的编码,编码器可最初将当前图片标记为长期参考图片,随后 在对当前图片的编码结束后,将当前图片标记为短期参考图片。在一些示例实现中,运使得 帖内BC预测能够在帖间预测模式中使用当前图片作为参考图片,同时对当前图片如何影响 其他过程(诸如MV预测和MV缩放)进行限制。
[0015] 第五,作为该编码的一部分,编码器可设置适用于当前块的编码模式(从多个可用 的编码模式中进行选择),其中运些编码模式包括帖内预测模式、帖间预测模式和帖内BC预 测模式。例如,编码器设置当前编码单元的编码模式。比特流包括指示适用于当前块的编码 模式的句法元素。如果适用于当前块的编码模式是帖内BC预测模式,则针对当前块的句法 元素遵循针对帖间预测模式的句法,除了帖间预测方向和参考图片索引是推断出的。在该 情况下(适用于当前块的编码模式是帖内BC预测模式),预测方向不被需要,并且参考图片 已知为当前图片。
[0016] 第六,作为该编码的一部分,在当前块是作为I片的当前片的一部分时,编码器可 设置计数器,该计数器指示对当前片有效的参考图片的数目。具体地,在该情况下(当前片 为I片),该计数器指示在帖内BC预测模式被启用时,单个参考图片是有效的。比特流中的句 法元素的值可指示对当前片有效的参考图片的数目。
[0017] 第屯,作为该编码的一部分,编码器可将当前图片添加到参考图片列表("RPL") 中。例如,编码器将当前图片添加在WL的最后位置处,并且使计数器递增,该计数器指示对 于包括当前块的当前片有效的参考图片的数目。如果当前片是P片或B片,则编码器可在调 用将一个或多个其他参考图片添加到RPL中的列表构造过程后将当前图片添加到RP帥。替 换地,如果当前片是P片或B片,则编码器在将一个或多个其他参考图片添加到WL中的列表 构造过程期间将当前图片添加到WL中。
[0018] 第八,作为该编码的一部分,在当前块是作为B片的当前片的一部分时,编码器可 将针对当前块的帖内BC预测的结果与针对当前块的运动补偿的预测的结果组合来作为来 自两个不同的参考图片的预测结果。运允许编码器将针对当前块的帖内BC预测的结果和运 动补偿的预测的结果混合。替换地,帖内BC预测的结果和运动补偿的预测的结果的组合不 被允许。
[0019] 第九,作为针对当前块的帖间预测模式处理的一部分,编码器可执行对4x4块的帖 内BC预测。例如,如果(a)参考图片是当前图片并且(b)预测方向是(来自包括当前图片的 R化的)单向预测,则编码器可(对帖内BC预巧m吏用4x4块尺寸。在一些示例实现中,运准许 帖内BC预测下降到空间帖内预测所允许的最小块尺寸。当帖间预测模式的块尺寸在参考图 片指示符之前被信号化时(例如,当块尺寸(分区模式)是针对CU来信号化的,但预测方向和 参考图片索引是针对CU的各PU来信号化的时),编码器可作出关于块尺寸的判定,从而考虑 对各块使用的参考图片和预测方向W及其他因素。随后,当适用于当前块的块尺寸为4x4 时,编码器可跳过信号化预测方向的句法元素 W及当前块的参考图片索引,因为预测方向 可能仅是(来自包括当前图片的WL的)单向预测,并且参考图片可仅仅是当前图片。替换 地,在该情况下,编码器针对帖内BC预测禁用4x4块尺寸。
[0020] 第十,作为该编码的一部分,编码器可使用高级MV预测模式、合并模式、跳跃模式 和/或作为帖间预测模式的一部分的另一编码工具。通过重新使用运样的编码工具,帖内BC 预测的实现被简化了。
[0021] 第十一,作为针对当前块的帖间预测模式处理的一部分,编码器可执行对当前块 的合并模式处理。例如,对于一个或多个合并模式候选中的每一者,编码器获取该合并模式 候选并检查该合并模式候选是否参考当前图片。如果是,则编码器保留该合并模式候选.否 贝1J,该编码器排除该合并模式候选。随后,如果保留的合并模式候选的数目少于允许的合并 模式候选的数目,则编码器可添加一个或多个预定义的合并模式候选。
[0022] 第十二,在当前块是作为I片的当前片的一部分时,编码器可设置各句法元素的 值,并取决于帖内BC预测模式是否被启用来按不同的方式输出运些句法元素。例如,如果帖 内BC预测模式被启用,则针对当前I片的句法元素遵循针对P片或B片的句法,但是如果帖内 BC预测模式没有被启用,则针对当前I片的句法元素遵循针对I片的默认句法。通过运种方 式,帖间预测模式的句法可被重用于帖内BC预测,运简化了实现。
[0023] 第十Ξ,在当前块是作为I片的当前片的一部分时,如果帖内BC预测模式被启用, 则编码器可禁用针对当前I片的时间MV预测。运可通过简化MV预测并避免MV缩放W及通过 避免在对当前I片进行编码时使用另一图片/片中的信息来使编码流水线化。
[0024] 第十四,在当前块是作为B片的当前片的一部分,并且当前图片被添加到第一RPL 和第二WL之一时,除了当前图片外,编码器还可评估(a)第一 WL中的参考图片的数目是否 匹配第二WL中的参考图片的数目,W及(b)第一WL中的每一参考图片是否也被表示在第 二WL中的相应位置处。取决于该评估的结果,编码器可在比特流中设置指示当在针对B片 的各块的双向帖间预测中使用第二WL时是否仅允许零值MC差分的句法元素的值。
[0025] 根据本文中所描述的各创新的另一个方面,视频解码器接收比特流中经编码的数 据。视频解码器使用经编码的数据来对当前图片进行解码。作为该解码的一部分,视频解码 器执行针对当前图片的当前块的帖内BC预测,其中该帖内PC预测使用帖间预测模式且当前 图片作为参考图片。作为帖内BC预测和帖间预测模式的统一的一部分,解码器可用一下方 式中的任何一者或多者中来适配。
[0026] 第一,解码器可接收比特流中指示帖内BC预测模式是被启用还是被禁用的标志, 随后据此启用或禁用帖内BC预测模式。例如,该标志是SI^的一部分,并且解码器为序列启 用或禁用帖内预测模式。替换地,解码器可在逐图片的基础上、逐片的基础上或在某一其他 基础上启用或禁用BC预测模式,其中该标志被信号化在比特流句法的合适层处。
[0027] 第二,比特流可被约束为不包括导致在对当前图片进行解码期间参考当前图片的 非重构部分的句法元素。也就是说,即使在使用帖间预测模式的句法、语义、处理等来实现 帖内BC预测的功能时,句法元素的值仍被设置为使得帖内BC预测仅参考当前图片的先前重 构的部分。
[0028] 第Ξ,作为该解码的一部分,解码器可使用若干不同方法中的任一者来重构用于 帖内BC预测的MV信息(其中MV在解码期间被用作BV)。例如,解码器可重构当前块的MV,其中 该MV指示整数像素偏移并W整数像素精度被信号化在比特流中。作为该重构的一部分,在 运动补偿过程中使用该MV之前,解码器将该MV缩放到分数像素精度。或者,作为另一示例, 解码器可重构当前块的MV,其中该MV指示整数像素偏移但W分数像素精度(例如,1/4像素 精度)被信号化在该比特流中。即使在亮度MV具有整像素精度时,相应的色度MV仍可具有分 数像素精度。在解码器从指示整数像素偏移的亮度MV中推导出色度MV后,解码器可对该色 度MV进行四舍五入或截短W指示整数像素偏移。
[0029] 第四,对于当前图片的解码,解码器可最初将当前图片标记为长期参考图片,随后 在对当前图片的解码结束后,将当前图片标记为短期参考图片。在一些示例实现中,运使得 帖内BC预测能够在帖间预测模式中使用当前图片作为参考图片,同时对当前图片如何影响 其他过程(诸如MV预测和MV缩放)进行限制。
[0030] 第五,作为该解码的一部分,解码器可从比特流中解析出指示适用于当前块的编 码模式的句法元素,随后设置该编码模式。该编码模式可W是从多个可用的编码模式(包括 帖内预测模式、帖间预测模式和帖内BC预测模式)中选择出的。例如,解码器设置当前编码 单元的编码模式。如果适用于当前块的编码模式是帖内BC预测模式,则当前块的句法元素 遵循帖间预测模式的句法,除了帖间预测方向和参考图片索引是推断出的。在该情况下(适 用于当前块的编码模式是帖内BC预测模式),预测方向不被需要,并且参考图片已知为当前 图片。
[0031] 第六,作为该解码的一部分,在当前块是作为I片的当前片的一部分时,解码器可 设置计数器,该计数器指示对当前片有效的参考图片的数目。具体地,在该情况下(当前片 为I片),计数器指示当帖内BC预测模式被启用时,单个参考图片是有效的。比特流中的句法 元素的值可指示对当前片有效的参考图片的数目。
[0032] 第屯,作为该解码的一部分,解码器可将当前图片添加到WL中。例如,解码器将当 前图片添加在WL的最后位置处,并且使计数器递增,该计数器指示对包括当前块的当前片 有效的参考图片的数目。如果当前片是P片或B片,则在调用将一个或多个其他参考图片添 力巧化化中的列表构造过程后,解码器可将当前图片添加到RPL中。替换地,如果当前片是P 片或B片,则解码器在将一个或多个其他参考图片添加到WL中的列表构造过程期间将当前 图片添加到RPL中。
[0033] 第八,作为该解码的一部分,在当前块是作为B片的当前片的一部分时,解码器可 将针对当前块的帖内BC预测的结果与针对当前块的运动补偿的预测的结果组合来作为来 自两个不同的参考图片的预测结果。运允许解码器将针对当前块的帖内BC预测的结果和运 动补偿的预测的结果混合。替换地,帖内BC预测的结果和运动补偿的预测的结果的组合不 被允许。
[0034] 第九,作为针对当前块的帖间预测模式处理的一部分,解码器可执行对4x4块的帖 内BC预测。例如,如果(a)参考图片是当前图片并且(b)预测方向是(来自包括当前图片的 R化的)单向预测,则解码器可(对帖内BC预巧m吏用4x4块尺寸。在一些示例实现中,运准许 帖内BC预测下降到空间帖内预测所允许的最小块尺寸。当帖间预测模式的块尺寸在参考图 片指示符之前被信号化时(例如,在块尺寸(分区模式)是针对CU来信号化的,但预测方向和 参考图片索引是针对CU的各PU来信号化的时),则解码器解析块尺寸的句法元素,而无需知 道当前块的预测方向或参考图片索引,并且因此无需知道该块使用了帖内BC预测还是图片 间预测。然而,如果块尺寸为4x4,则解码器可跳过解析当前块的预测方向和参考图片索引 的句法元素。当适用于当前块的块尺寸为4x4时,当前块的预测方向可仅仅是(来自包括当 前图片的RPL的)单向预测,并且当前块的参考图片可仅仅是当前图片,使得当前块的预测 方向和参考图片索引的句法元素被从比特流中省略。替换地,在该情况下,解码器针对帖内 BC预测禁用4x4块尺寸。
[0035] 第十,作为该解码的一部分,解码器可使用高级MV预测模式、合并模式、跳跃模式 和/或作为帖间预测模式的一部分的另一编码/解码工具。通过重新使用运样的编码/解码 工具,帖内BC预测的实现被简化了。
[0036] 第十一,作为针对当前块的帖间预测模式处理的一部分,解码器可执行针对当前 块的合并模式处理。例如,对于一个或多个合并模式候选中的每一者,解码器获取该合并模 式候选并检查该合并模式候选是否参考当前图片。如果是,则解码器保留该合并模式候选. 否则,该解码器排除该合并模式候选。随后,如果保留的合并模式候选的数目少于允许的合 并模式候选的数目,则解码器可添加一个或多个预定义的合并模式候选。
[0037] 第十二,在当前块是作为I片的当前片的一部分时,解码器可取决于帖内BC预测模 式是否被启用来按不同的方式解析句法元素。例如,如果帖内BC预测模式被启用,则针对当 前I片的句法元素遵循针对P片或B片的句法,但是如果帖内BC预测模式没有被启用,则针对 当前I片的句法元素遵循针对I片的默认句法。通过运种方式,帖间预测模式的句法可被重 用于帖内BC预测,运简化了实现。
[0038] 第十Ξ,在当前块是作为I片的当前片的一部分时,如果帖内BC预测模式被启用, 则解码器可禁用针对当前I片的时间MV预测。运可通过简化MV预测并避免MV缩放W及通过 避免在对当前I片进行解码时使用另一图片/片中的信息来使解码流水线化。
[0039] 第十四,作为该解码的一部分,在当前块是作为I片的当前片的一部分时,如果帖 内BC预测模式被启用,则解码器对当前片(如P片或B片)进行解码。通过重新使用编码/解码 工具,帖内BC预测的实现被简化了。
[0040] 针对统一的帖内BC和帖间预测模式的创新可W被实现为方法的一部分、被适配成 执行该方法的计算系统的一部分或存储用于使计算系统执行该方法的计算机可执行指令 的有形计算机可读介质的一部分。各创新可W结合地或分开地使用。例如,选择性地启用/ 禁用帖内BC预测模式可与本文中描述的任何参考图片管理方法(用于R化构造和/或参考图 片标记)结合使用,或者帖内BC预测模式的选择性启用/禁用或参考图片管理方法可被分开 地使用。本文中描述的用于信号化或重构MV信息的方法中的任一者可被分开地使用或与前 述工具或组合结合使用。本文中描述的用于复合预测的方法中的任一者可被分开地使用或 与前述工具或组合结合使用。本文中描述的用于对4x4块进行帖内BC预测的方法中的任一 者可被分开地使用或与前述工具或组合结合使用。本文中描述的用于使用高级MV预测模 式、合并模式、跳跃模式或另一帖内预测模式编码/解码工具(其中时间MV预测被启用或禁 用)的帖内BC预测的方法中的任一者可被分开地使用或与前述工具或组合结合使用。本文 中描述的用于使用帖内预测模式的句法、语义或编码/结果过程的帖内BC预测的方法中的 任一者可被分开地使用或与前述工具或组合结合使用。
[0041] 参考附图阅读W下详细描述,将更清楚本发明的前述和其他目标、特征和优点。
[0042] 附图简述
[0043] 图1是其中可实现所描述的一些实施例的示例计算系统的示图。
[0044] 图2a和化是其中可实现所描述的一些实施例的示例网络环境的示图。
[0045] 图3是结合其可实现所描述的一些实施例的示例编码器系统的示图。
[0046] 图4是结合其可实现所描述的一些实施例的示例解码器系统的示图。
[0047] 图5a和化是示出结合其可实现所描述的一些实施例的示例视频编码器的示图。
[0048] 图6是示出结合其可实现所描述的一些实施例的示例视频解码器的示图。
[0049] 图7是示出包括统一的帖内BC和帖间预测模式的用于编码的一般化技术的流程 图。
[0050] 图8是示出包括统一的帖内BC和帖间预测模式的用于编码的示例技术的流程图。
[0051] 图9是示出包括统一的帖内BC和帖间预测模式的用于解码的一般化技术的流程 图。
[0052] 图10是示出包括统一的帖内BC和帖间预测模式的用于解码的示例技术的流程图。 [0053 ]图11 a-11C是示出在一些示例实现中的针对统一的帖内BC和帖间预测模式的示例 句法结构的示图。
[0054] 图12是示出包括选择性地启用针对序列的帖内BC预测的用于编码或解码的一般 化技术的流程图。
[0055] 图13是示出用于构造包括当前图片的WL的示例技术的流程图。
[0056] 图14a-14c是示出用于在构造 WL的过程期间添加当前图片的方式的伪代码列表。
[0057] 详细描述
[0058] 本详细描述呈现在视频编码或视频解码期间的统一的帖内块复制"BC"和帖间预 测模式方面的创新。
[0059] 本文中描述的一些创新是参考专用于皿VC标准的句法元素和操作来示出的。本文 中描述的各创新还可W被实现为针对其它标准或格式。虽然本文中描述的操作被适当描述 为由视频编码器或视频解码器来执行,但在许多情况中,运些操作可由另一类型的媒体处 理工具来执行。
[0060] 更一般地,本文中描