视频编码系统中用于决定储存用运动向量的视频处理方法和装置与流程

文档序号:26013249发布日期:2021-07-23 21:34阅读:65来源:国知局
交叉申请本申请要求在2018年11月30日提出的申请号为62/773,223,标题为“methodstoderivingmotionvectorfortriangularpredictionunitmodeinvideocoding””的美国临时专利申请的优先权。上述美国临时专利申请整体以引用方式并入本文中。本发明关于在视频编码与解码系统中的视频处理方法和装置。尤其,本发明关于储存以运动补偿编解码块的运动向量推导。
背景技术
::高效率视频编码(highefficiencyvideocoding,hevc)的标准,是由来自国际电信联盟电信标准化部门研究组(itu-tstudygroup)的视频编码专家的视频编码联合协作小组(jointcollaborativeteamonvideocoding,jct-vc)所开发的最新视频编解码标准。hevc标准改进其之前标准h.264/avc的视频压缩效果,以达到更高画面分辨率、更高帧速率、与更好视频质量的要求。hevc标准依赖基于块的编解码结构,其将每一视频切片(slice)分割为多个方型的编解码树单元(codingtreeunit,ctu),其中ctu是hevc中用于视频压缩的基本单元。光栅扫描顺序(rasterscanningorder)被用来编码或解码每一切片中的ctu。每一ctu可以包含编解码单元(codingunit,cu),或依据四叉树分割结构来递归式地分割为四个较小cu,直到达到事先定义的最小cu尺寸。预测的决定是在cu层作出的,其中每一cu是使用帧间预测或是帧内预测来加以编解码。一旦cu层级化树的分割完成时,依据用于预测的pu分割类型来将每一cu作进一步分割成一或多个预测单元(predictionunit,pu)。pu作为用于共享预测信息的基本代表块,相同的预测流程被应用于pu中的所有像素。预测信息以pu为基础传送给解码器。在帧间画面预测的运动估计会在一或二个参考画面中识别出一个(单向预测)或二个(双向预测)用于当前块的最佳参考块,并且在帧间画面预测的运动补偿会依据一或二个运动向量(mv)来定位出此一或二个最佳参考块。在当前块与相对应预测子之间的差异被称为预测残差。当使用单向预测时,相对应预测子是最佳参考块。当使用双向预测时,二个参考块会被结合以形成该预测子。跳过与合并模式跳过与合并模式被提出并采用于hevc标准中,以通过从多个空间相邻块之一或从时间并位块来继承运动信息来增进运动信息的编解码效率。为了以跳过或合并模式编解码pu,不是发信运动信息,而仅发信代表自候选组所选择的最终候选的索引。由以跳过或合并模式所编解码的pu所再使用的运动信息包括mv、帧间预测指示子(indicator)、以及所选择最终候选的参考画面索引。要注意的是,如果所选择最终候选是时间运动候选,则参考画面索引总是被设定为零。当pu是以合并模式来编解码时,预测残差会被编解码;然而,跳过模式进一步跳过预测残差的发信,这是由于以跳过模式编解码的pu的残差数据被强制为零。合并候选组是由空间相邻块与并位块所推导的四个空间运动候选与时间运动候选所组成。如图1所示,第一合并候选是左方预测子a1112,第二合并候选是上方预测子b1114,第三合并候选是右上方预测子b0113,以及第四合并候选是左下方预测子a0111。左上方预测子b2115被纳入合并候选组中以取代不可用的空间预测子。第五合并候选是从tbr121与tctr122中所选择的第一可用的时间预测子。基于例如通过率失真优化(rate-distortionoptimization,又称rdo)决策的运动向量补偿,编码器从候选组中选择最终候选来用于以跳过或合并模式所编解码的每一个pu,而且代表所选择最终候选的索引会被发信到解码器。依据视频比特流中所传输的索引,解码器从候选组中选择相同的最终候选。子块运动补偿被应用在许多最新发展的编解码工具,例如子块时间运动向量预测(subblocktemporalmotionvectorprediction,又称subblocktmvp或sbtmvp)、空间-时间运动向量预测(stmvp)、基于形态的mv推导(pmvd)、与仿射运动补偿预测。cu或pu被分割为二或多个子块,而且这些子块可以有不同参考画面与不同mv。在通过视频编码器或视频解码器所进行的运动补偿流程中,对于每一块而言,一或多个参考块必须依据运动信息被取得。被编解码块的运动信息被储存于缓冲器中,因此运动信息可以被空间或时间相邻块所参考。当子块运动预测编解码工具被使用时,在当前块中与每一子块相关联的运动向量可以是不同的,而且并非所有运动向量都被储存作为后续参考。因此,当当前块被分割为二或多个子块时,有需要发展方法来推导代表性的运动向量以储存作为后续参考。技术实现要素:在视频处理方法的示例性实施例中,视频编解码系统:接收当前画面中与当前块相关联的输入视频数据;分割当前块为第一子块与第二子块;推导用于第一子块的第一运动向量与用于第二子块的第二运动向量;使用第一与第二运动向量于当前块中对于第一与第二子块进行运动补偿,来推导用于当前块的最终预测子;对于当前块的每一格栅推导与储存代表性运动向量以用于后续参考;以及依据当前块的最终预测子来编码或解码当前块。当前块中的每一格栅是在非-权重区域或权重区域。在一例子中,每一格栅的尺寸大小等于4x4亮度样本。权重区域包括位于当前块中的第一子块与第二子块之间的格栅,而且非-权重区域包括当前块中的剩余格栅。例如,权重区域中每一格栅包括在第一子块之中的一或多个样本以及在第二子块之中的一或多个样本,而非-权重区域中每一格栅仅包括在第一与第二子块其中之一的样本。推导用于当前块中每一格栅的代表性mv以用来储存的流程包括:对于第一子块之内非-权重区域中的格栅设定第一mv为代表性mv,以及对于第二子块之内非-权重区域中的格栅设定第二mv为代表性mv。对于权重区域中的格栅,本视频编码或解码系统决定第一mv与第二mv是否来自于不同列表或是来自于相同列表。如果第一mv与第二mv是来自于不同列表时,结合第一mv与第二mv以设定mv来作为权重区域中的格栅的代表性mv。如果第一mv与第二mv是来自于相同列表时,设定第一mv与第二mv其中之一来作为权重区域中的格栅的代表性mv。而且依据一实施例,代表性mv可以是事先定义的mv;或是依据另一实施例,代表性mv可以适应性地加以选择。第一mv与第二mv可以是推导自一个相同的候选列表或是两个不同的候选列表。在一些实施例中,第一mv与第二mv是单向预测mv,而结合第一mv与第二mv的mv是结合不同列表中二个单向预测mv的双向预测mv。在一实施例中,第一子块与第二子块是在当前块中的三角预测单元,而且当前块是由对角线方向或逆对角线方向分割的cu。在一些实施例中,块是通过事先定义的分割类型来分割为第一与第二子块。在另一实施例中,当前块被分割为多于二个子块。在一实施例中,当第一与第二mv二者皆来自列表0或是二者皆来自列表1时,第二mv直接被设定为权重区域中的格栅的代表性mv。在一些其他实施例中,当第一与第二mv二者皆来自列表0或是列表1时,在权重区域中的格栅的代表性mv是依据下列之一或其中的组合,从第一mv与第二mv中来适应性地加以选择:第一与该第二mv的参考索引,第一与该第二mv的参考画面,当前块的分割方向,当前块的块高度,当前块的块宽度,以及当前块的面积区域。在一实施例中,具有较小参考索引的mv被选择作为代表性mv;而在另一实施例中,具有较小画面顺序计数差异的的mv被选择作为代表性mv。依据一些实施例,当前块是以跳过或合并模式加以编码或解码,而且当前块的尺寸大小大于或等于8x8亮度样本。在一些实施例中,推导用于当前块中每一格栅的代表性mv以用来储存的流程包括:对于第一子块之内非-权重区域中的格栅设定第一mv为代表性mv,并且对于第二子块之内非-权重区域中的格栅设定第二mv为代表性mv;以及当第一mv与第二mv是来自于不同列表时,设定一双向预测mv以作为权重区域中的格栅的代表性mv,或是当第一mv与第二mv是来自于相同列表时,设定单向预测mv以作为权重区域中的格栅的代表性mv。在一实施例中,设定为权重区域中的代表性运动向量的双向预测mv,是从结合第一mv与第二mv所推导出来;而且设定为权重区域中的代表性mv的单向预测mv是第一mv或是第二mv。例如,当二个mv皆来自列表0或是列表1时,单向预测直接被设定为第二mv。本揭示的一些部分进一步提供在视频编解码系统中进行视频处理的装置。此装置包括一或多个电子电路配置用来:接收当前画面中当前块的输入视频数据;分割当前块为第一子块与第二子块;推导用于第一子块的第一mv与用于该第二子块的第二mv;使用第一与第二mv在当前块中对于第一与第二子块进行运动补偿,来推导用于当前块的最终预测子;对于当前块的每一格栅推导与储存代表性mv以用于后续参考;以及依据当前块的最终预测子来编码或解码当前块。对于第一子块之内非-权重区域中的格栅设定第一mv为代表性mv,以及对于第二子块之内非-权重区域中的格栅设定第二mv为代表性mv。本装置进一步决定第一mv与第二mv是否来自于不同列表或相同列表;以及当第一mv与第二mv是来自于不同列表时,将结合第一与第二mv的mv设定作为权重区域中的格栅的代表性mv。当第一mv与第二mv是来自于相同列表时,将第一mv与第二mv其中之一设定为权重区域中的格栅的代表性mv。本揭示的一些部分进一步提供一种用来储存程序指令的非暂时性计算机可读取媒介,所述程序指令使得装置的处理电路进行视频处理的方法来编码或解码当前块。当前画面中与当前块相关联的输入视频数据被接收以进行编码或解码;当前块被分割为多个子块;依据源mv对于子块进行运动补偿,来推导出最终预测子;对于当前块的每一格栅推导与储存代表性mv;以及使用最终预测子来编码或解码当前块。用于非-权重区域中的格栅的代表性mv是基于格栅位置而被设定为多个源mv中之一。如果这些源mv是来自于不同列表时,用于权重区域中的格栅的代表性mv被设定为结合这些源mv的mv;如果源mv是来自于相同列表时,用于该权重区域中的格栅的代表性mv被设定为这些源mv中之一。通过阅读以下具体实施例的描述,本发明的其他方面和特征对于本领域通常知识者将变得明显易懂。附图说明在本揭示被提出当例子的各种实施例将会参照下列图式被更详细地解说,其中相似的数字用来参照相似的组件,而且其中:图1绘示空间预测子与时间预测子的位置,以用于建构hevc标准中所定义的跳过或合并模式的候选组。图2a与2b依据三角预测单元模式绘示分割块为两个子块的二个例子。图3绘示用于建构单向预测候选列表的相邻块位置的一个例子。图4a绘示一个例子,将第一权重因子群组应用在以三角预测单元模式所编解码的亮度块的两个子块之间的对角线边缘。图4b绘示一个例子,将第一权重因子群组应用在以三角预测单元模式所编解码的色度块的两个子块之间的对角线边缘。图5a与5b绘示运动向量储存的一个例子,用于分别由对角线方向与逆对角线方向所分割的三角预测单元所编解码的块。图6a到6d显示在四个不同状况下推导代表性运动向量的例子。图7a到7c依据本发明的实施例绘示当两个源运动向量是来自于相同列表时,通过三种不同分割类型所分割的块的运动向量储存的例子。图8a为依据本发明的实施例的流程图,其绘示通过视频编码或解码系统来处理当前块的一个例子。图8b为依据本发明的实施例的流程图,其绘示推导代表性运动向量以用于当前块的当前格栅的例子。图9为根据本发明的实施例绘示的示例性系统方块图,以用于体现视频处理方法的视频编码系统。图10为根据本发明实施例绘示的示例性系统方块图,以用于体现视频处理方法的视频解码系统。具体实施方式容易理解的是,如本文附图中一般描述和说明的本发明的组件可以以各种不同的配置来布置和设计。因此,如附图所示,本发明的系统和方法的实施例的以下更详细的描述并非旨在限制所要求保护的本发明的范围,而仅仅代表本发明的所选实施例。三角预测单元模式三角预测单元模式是一种通过三角分割,将当前块分割为二个子块的子块运动补偿编解码工具。图2a与2b绘示三角预测单元模式的二个例子,沿着对角线或逆对角线方向将每一当前编解码单元(cu)分割为两个三角预测单元。通过从左上角落到右下角落的分割,图2a中的当前cu被分割为第一三角预测单元pu1与第二三角预测单元pu2;而且通过从右上角落到左下角落的分割,图2b中的当前cu被分割为第一三角预测单元pu1与第二三角预测单元pu2。如果cu是从左上角落到右下角落被分割,第一三角预测单元包含右上角落;而且如果cu是从右上角落到左下角落被分割,第一三角预测单元包含左上角落。在当前cu中的每一三角预测单元是使用其自己的单向预测运动向量以及从单向预测候选列表所推导出的参考帧索引来被帧间预测。在预测当前cu中的二个三角预测单元之后,会进行适应性权重处理流程来产生最终预测子以用于在对角线边缘处的边界样本。在预测流程之后,在视频编码器中会应用转换与量化流程于当前cu。依据一些实施例,三角预测单元模式只被应用于跳过与合并模式。每一三角预测单元从由五个单向预测运动向量候选所组成的单向预测候选列表中来推导运动信息。用于当前cu的三角预测单元的单向预测候选列表是从图3所示的当前cu的七个相邻块而推导出来。七个相邻块包括图3中标示1到5的五个空间相邻块,以及图3中标示6到7的两个时间并位块。七个相邻块的运动向量被依据下列顺序收集与放入单向预测候选列表中:单向预测运动向量、双向预测运动向量的列表0运动向量、双向预测运动向量的列表1运动向量、以及双向预测运动向量的列表0与列表1运动向量的平均运动向量。如果候选的数目小于5,零运动向量会被加入于单向预测候选列表中。用于三角预测单元模式的适应性权重流程在依据运动信息取得当前cu中每一三角预测单元的预测子之后,适应性权重流程被应用在两个三角预测单元之间对角线边缘处的边界样本,以推导出用于整个cu的最终预测子。以下列出两个权重因子群组。在第一权重因子群组中,权重因子{7/8,6/8,4/8,2/8,1/8}与{7/8,4/8,1/8}分别被用于亮度(luma)样本与色度(chroma)样本。在第二权重因子群组中,权重因子{7/8,6/8,5/8,4/8,3/8,2/8,1/8}与{6/8,4/8,2/8}分别被用于亮度样本与色度样本。基于两个三角预测单元的运动信息的比较结果,其中一个权重因子群组会被选择。例如,当两个三角预测单元的参考画面不同或运动向量差异大于16个像素时,第二权重因子群组会被使用;否则,第一权重因子群组会被使用。图4a绘示一个例子,将适应性权重流程应用在用于亮度样本的两个三角预测单元之间对角线边缘处的边界样本。图4b绘示一个例子,将适应性权重流程应用在用于色度样本的两个三角预测单元之间对角线边缘处的边界样本。图4a与4b所显示的样本展示在适应性权重流程中使用第一权重因子群组。用于每一边界样本的最终预测子是推导自第一三角预测单元的第一预测子p1以及第二三角预测单元的第二预测子p2的权重加总。用于标示为1的样本的第一与第二预测子p1与p2的相对应权重因子分别为1/8与7/8,用于标示为2的样本的p1与p2的相对应权重因子分别为2/8与6/8。用于标示为1的每一样本的最终预测子是1/8*p1+7/8*p2,而且用于标示为2的每一样本的最终预测子是2/8*p1+6/8*p2。标示为4的样本位于对角线边缘的中间,因此用于p1与p2的权重因子二者皆为4/8,相当于将相同权重应用于二个预测子p1与p2。因此标示为4的每一样本的最终预测子是4/8*p1+4/8*p2。相似地,标示为6的样本的权重因子为6/8与2/8而且标示为7的样本的权重因子为7/8与1/8,因此标示为6的每一样本的最终预测子是6/8*p1+2/8*p2而且标示为7的每一样本的最终预测子是7/8*p1+1/8*p2。在三角预测单元模式的权重区域的代表性运动信息推导在视频编码器或解码器对于当前cu进行三角预测单元模式的预测流程之后,对于每一4x4格栅,当前cu中三角预测单元的代表性运动信息被储存以被其他块来参考。在以下描述中,代表性运动信息可以被代表性运动向量所取代,然而“代表性运动向量”一词:当代表性运动向量是单向预测运动向量时,包括一组的运动向量、参考帧索引、与参考方向;当代表性运动向量是双向预测运动向量时,包括两组的运动向量、参考帧索引、与参考方向。图5a与5b绘示用于以三角预测单元模式所编解码的二个16x16当前块的运动向量储存的例子;图5a中的16x16当前块被对角线方向所分割,而图5b中的16x16当前块被逆对角线方向所分割。用于每一16x16当前cu中第一三角预测单元的第一预测子p1是从单向预测运动向量mv1所推导出来,而且用于每一16x16当前cu中第二三角预测单元的第二预测子p2是从单向预测运动向量mv2所推导出来。第一预测子p1与第二预测子p2也是当前块中非-权重区域的最终预测子,而且通过适应性权重平均,这两个预测子产生当前块中权重区域的最终预测子。运动向量mv1被储存以作为第一三角预测单元中非-权重区域的代表性运动向量,而且运动向量mv2被储存以作为第二三角预测单元中非-权重区域的代表性运动向量。双向预测运动向量被储存以作为二个三角预测单元之间权重区域的代表性运动向量。换言之,取决于当前cu中4x4格栅所在位置,单向预测运动向量或双向预测运动向量被储存以作为4x4格栅的代表性运动向量。如图5a与5b所示,单向预测运动向量(mv1或mv2)被储存以用于位于非-权重区域的每一个4x4格栅,而且双向预测运动向量被储存以用于位于权重区域的每一个4x4格栅。双向预测运动向量是通过结合运动向量mv1与mv2所推导出。当运动向量mv1与mv2是来自于不同参考画面列表的情况时(即不同参考方向),例如,一个mv是来自于列表0(即指向列表0的参考画面)而且另一个mv是来自于列表1(即指向列表1的参考画面),这两个运动向量mv1与mv2则简单地结合以形成储存用的双向预测运动向量。当mv1与mv2二者都是来自于相同列表的情况时,例如,mv1与mv2二者都是来自于列表0方向,mv2的参考画面首先被列表1参考画面列表来检查,以及如果mv2的该参考画面与列表1参考画面列表中的画面相同时,mv2被缩放到列表1的该画面,而且通过结合列表0中的mv1与被缩放到列表1的mv2来形成双向预测运动向量。相似地,如果mv1与mv2二者都是来自于列表1方向时,mv2的参考画面被列表0参考画面列表来检查,以及如果mv2的该参考画面与列表0参考画面列表中的画面相同时,mv2被缩放到列表0的该画面,而且通过结合列表1中的mv1与被缩放到列表0的mv2来形成双向预测运动向量。如果mv2的参考画面与其他参考画面列表中的任何画面都不匹配,mv1的参考画面会被检查。例如,如果mv1与mv2二者都是来自于列表0方向而且mv1的参考画面被列表1参考画面列表来检查,以及如果mv1的该参考画面与列表1参考画面列表中的画面相同时,mv1被缩放到列表1参考画面列表中的该画面。被缩放的mv1与mv2被结合以形成储存用的双向预测运动向量。如果mv1与mv2二者的参考画面在其他参考画面列表中无法找到匹配的参考画面,仅将第一单向预测运动向量mv1储存以用于权重区域,而不是储存双向预测运动向量。图6a、6b、6c、与6d绘示四个不同状况下推导代表性运动向量来用于以三角预测单元模式所编解码的当前块的权重区域中每一个4x4格栅。用于每一个4x4格栅的代表性运动向量被储存以用于后续参考。在图6a到6d中,当前画面中的当前块是以三角预测单元模式所编解码,其中该当前画面具有画面顺序计数(pictureordercount,或称poc)等于4。列表0参考画面列表包含两个参考画面:poc0与poc8,以及列表1参考画面列表包含两个参考画面:poc8与poc16。在图6a中,第一三角预测单元的非-权重区域是通过指向在列表0中具有索引0(poc0)的参考画面的第一源运动向量mv1来加以预测,而且第二三角预测单元的非-权重区域是通过指向在列表1中具有索引0(poc8)的参考画面的第二源运动向量mv2来加以预测。由于mv1与mv2是在不同列表,用于权重区域中每一个4x4格栅的代表性mv是从mv1与mv2所结合的双向预测mv。在图6b中,第一三角预测单元的非-权重区域是通过指向在列表0中具有索引0(poc0)的参考画面的mv1来加以预测,而且第二三角预测单元的非-权重区域是通过指向在列表0中具有索引1(poc8)的参考画面的mv2来加以预测。在此案例中,虽然两个mv是来自列表0,被mv2所指向的参考画面poc8也是包含于列表1参考画面列表中,因此mv2被缩放到列表1中具有索引0的参考画面。因此用于权重区域的代表性mv是从列表0的mv1与列表1缩放后的mv2所结合的双向预测mv。在图6c中,第一三角预测单元的非-权重区域是通过指向在列表1中具有索引0(poc8)的参考画面的mv1来加以预测,而且第二三角预测单元的非-权重区域是通过指向在列表1中具有索引1(poc16)的参考画面的mv2来加以预测。在此案例中,两个mv都是来自列表1,但是mv1的参考画面也是包含于列表0参考画面列表中,因此mv1被缩放到列表0中具有索引1的参考画面。用于权重区域的代表性mv是从列表0缩放后的mv1与列表1的mv2所结合的双向预测mv。在图6d中,第一三角预测单元的非-权重区域是通过指向在列表1中具有索引1(poc16)的参考画面的mv1来加以预测,而且第二三角预测单元的非-权重区域是通过指向在列表1中具有索引1的相同参考画面的mv2来加以预测。这二个mv是来自相同列表,而且它们的参考画面没有一个是包含于列表0参考画面列表中,因此用于权重区域的代表性mv是单向预测运动向量mv1。用于三角预测单元模式的约束与语法三角预测单元模式只应用于以跳过或合并模式加以编解码的cu。应用三角预测单元模式的块尺寸大小不能小于8x8。对于以跳过或合并模式所编解码的当前cu而言,cu水平旗标(culevelflag)被发信来指示出三角预测单元模式是否被应用于当前cu。当应用三角预测单元模式于当前cu时,指示分割当前cu为二个三角预测单元的方向的索引以及二个三角预测单元的运动向量会被发信。索引范围从0到39。对照表(look-uptable)被用来从视频比特流中所发信的索引来推导分割方向与运动向量。具有降低复杂度的代表性运动向量推导对于以子块运动补偿编解码工具(例如三角预测单元模式或几何分割)所编解码的当前块中的权重区域所进行的代表性运动向量推导,可以被简化来降低编码器与解码器的复杂度。权重区域包括位于当前块中的多个子块之间的格栅,而剩余格栅是包括于非-权重区域,例如每一格栅的尺寸大小为4x4亮度样本。三角预测单元模式将当前块分割为二个三角预测单元,而几何分割通过在块边界上的二个坐标点来分割当前块以便更贴近地跟随着对象的边界。在以下实施例中,依据三角预测单元模式、几何分割、或子块运动补偿编解码工具中的其他分割方法,来将当前块分割为第一子块与第二子块。第一子块与第二子块是通过第一运动向量mv1与第二运动向量mv2来加以预测。在一些实施例中,第一与第二运动向量是从一或二个候选列表中所推导出的单向预测运动向量。例如,第一运动向量是从建构来用于第一子块的第一候选列表中所推导出来,而且第二运动向量是从建构来用于第二子块的第二候选列表中所推导出来。在另一例子中,第一运动向量与第二运动向量都是从单一候选列表中所推导出来。在二个子块之间的边界样本可以依据该两个运动向量来加以预测。例如,用于边界样本的最终预测子是由推导自第一运动向量的第一预测子以及推导自第二运动向量的第二预测子的权重平均。在预测当前块之后,用于当前块中每一格栅的代表性运动向量被决定与储存以用于后续参考。当前块中的格栅被分为两个区域:权重区域与非-权重区域。权重区域包括位于当前块中的二个子块之间的格栅,而且非-权重区域包括当前块中的剩余格栅。例如,权重区域中每一格栅包括在第一子块以及在第二子块之中的样本,而非-权重区域中每一格栅仅包括在第一与第二子块其中之一的样本。取决于格栅所在位置,被储存用于非-权重区域中的格栅的代表性运动向量是第一运动向量mv1或第二运动向量mv2。例如,被储存用于仅包含第一子块之中样本的格栅的代表性运动向量是第一运动向量mv1,而被储存用于仅包含第二子块之中样本的格栅的代表性运动向量是第二运动向量mv2。在一实施例中,当源运动向量mv1与mv2二者都是来自于一相同列表或相同方向时,被储存用于权重区域的代表性运动向量被直接设定为源运动向量mv1与mv2其中之一。在一实施例中,当运动向量mv1与mv2二者都是列表0的单向预测mv或二者都是列表1的单向预测mv时,第二运动向量mv2总是被储存用于权重区域中的格栅。在另一实施例中,当mv1与mv2都是来自于相同列表时,第一运动向量mv2总是被储存用于权重区域中的格栅。图7a、7b、与7c依据本发明的一实施例绘示当两个源运动向量是来自于相同列表时,用于分割为二个子块的当前块的代表性运动向量推导的一些例子。图7a中的当前块是由对角线方向所分割,并且图7b中的当前块是由逆对角线方向所分割,而图7c中的当前块是从最左下方格栅的中间点到当前块右方边界的中间点所分割。在此一实施例中,第二运动向量mv2被指定为代表性运动向量以用于包含该两个子块的权重区域中的任何格栅。在先前所描述的实施例中,当前块被分割为两个子块;然而,推导用于储存的代表性运动信息的方法也是适用于分割为多于两个子块的块中。权重区域可以被定义为包括包含属于二或多个子块的样本的任何格栅。源mv被推导来预测当前块中的子块,依据一实施例,权重区域中格栅的代表性运动信息被事先定义为多个源mv中之一,而且依据另一实施例,权重区域中格栅的代表性运动信息被适应性地选择自多个源mv中。在本发明的一些实施例中,在当前块的非-权重区域中的每一格栅的代表性运动向量总是单向预测运动向量,并且在子块之内的非-权重区域中的格栅的代表性运动向量是用来作为子块运动补偿的运动向量。对于在当前块的权重区域而言,如果两个源mv是来自于不同列表时,用于权重区域中的格栅的代表性mv是双向预测运动向量,例如,一个源mv指向在列表0的参考画面而且另一个源mv指向在列表1的参考画面。如果所有源mv都是来自于相同列表时,用于权重区域中的格栅的代表性运动向量是单向预测运动向量,例如,所有源mv都是来自于列表0或来自于列表1。依据一个实施例,被储存用于权重区域的单向预测运动向量是事先定义为源mv其中之一,例如,此事先定义的单向预测运动向量是用来预测第二子块的源mv。在另一实施例中,被储存用于权重区域的单向预测运动向量是由源mv中加以适应性决定。对于分割为两个子块的块而言,源运动向量mv1与mv2其中之一被选择用于权重区域中的格栅的代表性运动向量。依据一些实施例,代表性运动向量是由mv1与mv2中加以适应性地选择;在一实施例中,具有较小参考索引的mv被选择作为代表性mv;在另一实施例中,具有较小画面顺序计数差异的参考索引的mv被选择作为代表性mv。一般而言,当所有源mv都是来自于相同列表时,被储存用于权重区域的代表性运动向量可以依据下列之一或其中一组合由源mv中加以适应性选择:当前块的分割方向,源mv的参考索引,源mv的参考画面,cu高度,cu宽度,以及cu面积区域。例如,当分割方向是从左上到右下时,第一运动向量mv1被储存用为权重区域的代表性运动向量;而且当分割方向是从右上到左下时,第二运动向量mv2被储存用为权重区域的代表性运动向量。在另一例子中,当分割方向是从左上到右下时,mv2被储存用为权重区域的代表性运动向量;而且当分割方向是从右上到左下时,mv1被储存用为权重区域的代表性运动向量。在一实施例中,当两个源mv都是来自于相同列表时,储存在权重区域的代表性运动向量被设定为两个源mv的平均mv。例如,此平均mv是通过将mv1以及缩放到被mv1所指向的参考画面的mv2加以平均所计算出,并且此平均mv的参考索引被设为mv1的参考索引。在另一例子中,此平均mv是通过将mv2以及缩放到被mv2所指向的参考画面的mv1加以平均所计算出,并且此平均mv的参考索引被设为mv2的参考索引。在又一例子中,此平均mv是通过将mv1以及mv2直接加以平均而不进行缩放所计算出,并且此平均mv的参考索引被设为mv1或mv2的参考索引。例如,此平均mv的参考索引被选择为较小参考画面索引或是被选择为具有较小画面顺序计数差异的参考索引。包括代表性运动信息推导的编码或解码流程的示例性流程图图8a为依据本发明的一实施例,绘示视频编码或解码系统来处理将通过运动补偿编解码工具所编码或解码的块的流程图。在步骤s810,视频编码或解码系统接收当前画面中与当前块相关联的输入数据。在编码器侧,此输入数据相对应于将被编码入视频比特流的像素数据;在解码器侧,此输入数据相对应于被编码的数据或将被解码的预测残差。在步骤s820,当前块被分割为第一子块与第二子块。在步骤s830,视频编码或解码系统推导用于第一子块的第一mv与推导用于第二子块的第二mv。在一实施例中,第一mv是从建构来用于第一子块的候选列表所推导出来,而且第二mv是从建构来用于第二子块的另一候选列表所推导出来。在另一实施例中,第一与第二mv二者都是从单一候选列表所推导出来。在步骤s840,通过使用第一mv与第二mv对于第一与第二子块进行运动补偿,而推导出用于当前块的最终预测子。在步骤s850,对于当前块的每一格栅推导与储存代表性mv以用于后续参考。格栅尺寸大小的一个例子是4x4亮度样本,例如,在32x32亮度块中有64个4x4格栅。在步骤s860,视频编码或解码系统依据当前块的最终预测子来编码或解码当前块。推导代表性mv以用于图8a步骤s850的当前块的每一当前格栅的详细流程则绘示于图8b的流程图。在步骤s851,视频编码或解码系统检查当前块中的当前格栅是否位于权重区域之内。权重区域包括位于当前块中的第一子块与第二子块之间的格栅,而且非-权重区域包括当前块中的剩余格栅。例如,权重区域中每一格栅包括在第一子块之中的一或多个样本以及在第二子块之中的一或多个样本,而非-权重区域中每一格栅仅包括在第一与第二子块其中之一的样本。在步骤s852,如果当前格栅是位于权重区域之内,视频编码或解码系统检查第一与第二mv是否来自于不同列表;而且在步骤s853,如果这二mv是来自于不同列表时,将结合第一mv与第二mv的mv设定为当前格栅的代表性mv。在步骤s854,如果第一mv与第二mv是来自于相同列表时,将第一mv与第二mv其中之一设定为当前格栅的代表性mv。在步骤s855,如果当前格栅是位于非-权重区域之内,编码或解码系统检查当前格栅是否位于第一子块之内;而且在步骤s856,如果当前格栅是在第一子块之内,将第一mv设定为当前格栅的代表性mv。在步骤s857,如果当前格栅是在第二子块之内,将第二mv设定为当前格栅的代表性mv。视频编码器与解码器的实作前述所提出的视频处理方法可以在视频编码器或解码器上来实施实作,例如:所提出的视频处理方法可以在编码器的帧间预测模块与/或解码器的帧间预测模块上来实施实作。备选地,任何所提出的方法可以在编码器的帧间预测模块与/或解码器的帧间预测模块上所耦合的电路来实施实作,以提供帧间预测模块所需的信息。图9示出了实作本发明多种实施例的视频编码器900的示例性系统方块图。帧内预测模块910基于当前画面的重构后视频数据来提供帧内预测子。帧间预测模块912实施运动估计(motionestimation,me)和运动补偿(motioncompensation,mc),以基于来自其他一或多个画面的视频数据而提供帧间预测子。当前块被分割为二或多个子块,而且帧间预测模块912决定用于每一子块的运动信息以及使用决定后的运动信息来推导用于当前块的最终预测子。对于当前块的每一格栅推导出代表性的运动信息并且储存起来作为后续参考。每一格栅是在非-权重区域或权重区域,而且在非-权重区域中的格栅的代表性运动信息会依据其位置加以设定。例如,将第一子块的第一mv设定为该第一子块之内的非-权重区域中的格栅的代表性mv,而且将第二子块的第二mv设定为该第二子块之内的非-权重区域中的格栅的代表性mv。对于权重区域中的格栅而言,如果子块的运动信息是来自于不同列表时,将结合的运动信息设定为该代表性运动信息;或是如果运动信息是来自于相同列表时,将子块的运动信息中的一个直接设定为该代表性mv。例如,如果子块的源mv是来自于不同列表时,双向预测mv被设定为用于该权重区域的代表性mv;而且如果子块的源mv是来自于相同列表时,单向预测mv被设定为用于该权重区域的代表性mv。内预测模块910或帧间预测模块912将所选择的预测子提供给加法模块916以形成预测误差,也称为预测残差。当前块的预测残差通过转换模块(t)918进一步处理,接着是量化模块(q)920处理。然后,转换后和量化后的残差信号由熵编码器932编码以形成视频比特流。视频比特流然后与边信息(sideinformation)一起打包。然后,当前块的转换后和量化后的残差信号由逆量化模块(iq)922和逆转换模块(it)924处理以还原预测残差。如图9所示,通过在重构模块(rec)926处加回所选择的预测子来还原预测残差,以产生重构后的视频数据。重构后的视频数据可以被储存在参考画面缓冲器(ref.pict.buffer)930中,并用于其它画面的预测。从rec926还原的重构后的视频数据可能由于编码处理而受到各种损害,因此,在储存于参考画面缓冲器930之前,内环路处理滤波器(in-loopprocessingfilter)928被应用于重构后的视频数据,以进一步提高画面质量。用于解码图9的视频编码器900所产生视频比特流的相应视频解码器1000如图10所示。视频比特流是视频解码器1000的输入,并由熵解码器1010加以解码以剖析与还原变换后和量化后的残差信号和其他系统信息。除了解码器1000仅需要帧间预测模块1014中的运动补偿预测之外,解码器1000的解码处理流程类似于编码器900处的重构环路。每个块由帧内预测模块1012或帧间预测模块1014来加以解码。开关模块1016依据解码后的模式信息,自帧内预测模块1012选择帧内预测子或自帧间预测模块1014选择帧间预测子。帧间预测模块1014基于子块mv对于当前块进行运动补偿编解码工具。依据一些实施例,在当前块的权重区域中的每一格栅的代表性mv,是依据多个子块的mv是在不同列表还是在相同列表中来决定。例如,如果多个子块的mv是在不同列表时,在权重区域中的每一格栅的代表性mv是结合这多个子块mv的mv;如果多个子块的mv是在相同列表时,在权重区域中的每一格栅的代表性mv是这多个子块mv中之一。与每个块相关联的已转换和已量化的残差信号,可通过逆量化(inversequantization,iq)模块1020和逆转换(inversetransformation,it)模块1022来加以还原。通过在重构模块rec1018中加回预测子来重构还原后的残差信号,以产生重构后的视频。重构后的视频由环内处理滤波器(filter)1024进一步处理以产生最终解码后的视频。如果当前解码后的画面是用于解码顺序中后续画面的一参考画面,则当前解码后画面的重构后视频也被储存在参考画面缓冲器1026中。图9和图10中的视频编码器900和视频解码器1000的各种组件可以由硬件组件,一个或多个处理器被配置为执行存储在存储器中的程序指令,或硬件和处理器的组合来实现。例如,处理器执行程序指令以控制与当前画面中的当前块相关联的输入数据的接收。处理器配备有单个或多个处理核心。在一些示例中,处理器执行程序指令以在编码器900和解码器1000中的一些组件中执行功能,并且与处理器电耦合的存储器用于存储程序指令,对应于块的已重构影像的信息和/或编码或解码过程中的中间数据。在一些实施例中的存储器包括非暂时性计算器可读介质,诸如半导体或固态存储器,随机存取存储器(ram),只读存储器(rom),硬盘,光盘或其他合适的存储介质。存储器还可以是上面列出的两个或更复多个非暂时性计算器可读介质的组合。如图9和图10所示,编码器900和解码器1000可以在相同的电子设备中实现,因此如果在相同的电子设备中实现,则编码器900和解码器1000的各种功能组件可以被共享或重用。用于编码或解码的视频处理方法的实施例,可以在集成于视频压缩芯片的电路来实作,或集成于视频压缩软件中执行以上描述的处理的程序代码来实作。例如,决定用于当前块中每一格栅的代表性运动向量,可以实现于计算器处理器上执行的程序代码、数字信号处理器(dsp)、微处理器、或现场可程序门阵列(fieldprogrammablegatearray,fpga)上。可以透过执行定义本发明所体现的特定方法的机器可读软件代码或韧体代码,来将这些处理器配置成执行依据本发明的特定任务。在本说明书通篇所提及的“实施例”、“一些实施例”或类似语言,意味着结合实施例描述的特定特性、结构或特征可以包括在本发明的至少一个实施例中。因此,贯穿本说明书的各个地方的用语“在一个实施例中”或“在一些实施例中”的出现不一定全部指相同的实施例,这些实施例可以单独地或结合一个或多个其他实施例来实现。此外,所描述的特性、结构或特征可以以任何合适的方式组合在一个或多个实施例中。然而,本领域普通技术人员将认识到,在没有一个或多个具体细节,或其他方法、组件等的情况下,仍可以实施本发明。在其他情况下,对于已知的结构或操作则并未示出或详细描述,以避免模糊本发明的各个重点。在不脱离本发明的精神或基本特征的情况下,本发明可以以其他具体形式实施。所描述的例子仅在所有方面被认为是说明性的而不是限制性的。因此,本发明的范围由权利要求书而不是前面的描述来指示。属于权利要求书范围的等同物的含义和范围内的所有变化将被包括在其范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1