帧间预测方法、编码器、解码器以及计算机存储介质技术

技术编号:31077859 阅读:63 留言:0更新日期:2021-12-01 11:29
本申请实施例公开了一种帧间预测方法、编码器、解码器以及计算机存储介质,应用于解码器,该方法包括:解析码流,获取当前块的预测模式参数;当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。当前块的帧间预测值。当前块的帧间预测值。

【技术实现步骤摘要】
帧间预测方法、编码器、解码器以及计算机存储介质


[0001]本申请涉及视频编解码
,尤其涉及一种帧间预测方法、编码器、解码器以及计算机存储介质。

技术介绍

[0002]在视频编解码领域,针对当前块进行编解码的过程,除了采用帧内预测方式外,还可以采用帧间预测方式。其中,帧间预测可以包括帧间几何划分预测模式(Geometric Partitioning Mode,GPM)和角度加权预测模式(Angular Weighted Prediction,AWP)等,通过将帧间的当前块划分为两个非矩形的分区(或两个块)分别进行预测后再加权融合,能够得到当前块的预测值。
[0003]目前,在GPM或AWP的预测过程中,虽然使用了空域相邻块的运动信息和时域同位置块的运动信息来构造运动信息候选列表,但是并不能够保证该运动信息候选列表可以填满。当运动信息候选列表未填满时,通常是利用最后一个有效的运动信息进行复制填满。
[0004]这样,在两个运动不同的区域边缘,比如一些形变,如果空域相邻块的运动信息和时域同位置块的运动信息没有包含这种形变的运动信息,将会导致GPM或AWP无法发挥作用。另外,由于编码器所选择的运动信息和实际的运动信息可能存在偏差,也即当前构建的运动信息候选列表中的运动信息与当前块的实际运动信息可能存在偏差,还会影响到编解码的性能。

技术实现思路

[0005]本申请提出一种帧间预测方法、编码器、解码器以及计算机存储介质,可以增加运动信息候选列表中运动信息的多样性,从而提升编解码性能。r/>[0006]本申请的技术方案是这样实现的:
[0007]第一方面,本申请实施例提供了一种帧间预测方法,应用于解码器,该方法包括:
[0008]解析码流,获取当前块的预测模式参数;
[0009]当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;
[0010]基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;
[0011]基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;
[0012]根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。
[0013]第二方面,本申请实施例提供了一种帧间预测方法,应用于编码器,该方法包括:
[0014]确定当前块的预测模式参数;
[0015]当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;
[0016]基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;
[0017]基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;
[0018]根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。
[0019]第三方面,本申请实施例提供了一种解码器,该解码器包括解析单元、第一确定单元、第一偏移单元、第一构建单元和第一预测单元;其中,
[0020]所述解析单元,配置为解析码流,获取当前块的预测模式参数;
[0021]所述第一确定单元,配置为当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;
[0022]所述第一偏移单元,配置为基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;
[0023]所述第一构建单元,配置为基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;
[0024]所述第一预测单元,配置为根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。
[0025]第四方面,本申请实施例提供了一种解码器,该解码器包括第一存储器和第一处理器;其中,
[0026]所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;
[0027]所述第一处理器,用于在运行所述计算机程序时,执行如第一方面所述的方法。
[0028]第五方面,本申请实施例提供了一种编码器,该编码器包括第二确定单元、第二偏移单元、第二构建单元和第二预测单元;其中,
[0029]所述第二确定单元,配置为确定当前块的预测模式参数;
[0030]所述第二确定单元,还配置为当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;
[0031]所述第二偏移单元,配置为基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;
[0032]所述第二构建单元,配置为基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;
[0033]所述第二预测单元,配置为根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。
[0034]第六方面,本申请实施例提供了一种编码器,该编码器包括第二存储器和第二处理器;其中,
[0035]所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;
[0036]所述第二处理器,用于在运行所述计算机程序时,执行如第二方面所述的方法。
[0037]第七方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,所述计算机程序被第一处理器执行时实现如第一方面所述的方法、或者被第二处理器执行时实现如第二方面所述的方法。
[0038]本申请实施例所提供的一种帧间预测方法、编码器、解码器以及计算机存储介质,解析码流,获取当前块的预测模式参数;当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。这样,在得到至少一个新的单向运动信息之后,可以将新的单向运动信息填入运动信息候选列表中,能够增加运动信息候选列表中运动信息的多样性;另外,对当前块来说,运动信息候选列表中初始运动信息与实际的运动信息可能存在偏差,这时候构造新的单向运动信息将会比初始运动信息具有更好的效本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种帧间预测方法,其特征在于,应用于解码器,所述方法包括:解析码流,获取当前块的预测模式参数;当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。2.根据权利要求1所述的方法,其特征在于,所述运动信息包括运动矢量信息和参考帧信息。3.根据权利要求1所述的方法,其特征在于,所述从所述当前块的多个已知运动信息中确定至少一个单向运动信息,包括:从所述当前块的多个已知运动信息中,选择至少一个初始单向运动信息;确定候选参考帧,将所选择的至少一个初始单向运动信息缩放到所述候选参考帧,得到至少一个缩放后的单向运动信息;将所述至少一个缩放后的单向运动信息确定为所述至少一个单向运动信息,且所述至少一个单向运动信息对应的参考帧信息均为所述候选参考帧。4.根据权利要求1所述的方法,其特征在于,所述从所述当前块的多个已知运动信息中确定至少一个单向运动信息,包括:确定候选参考帧;从所述当前块的多个已知运动信息中选择所述至少一个单向运动信息,且所述至少一个单向运动信息对应的参考帧信息为所述候选参考帧。5.根据权利要求1至4任一项所述的方法,其特征在于,所述基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息,包括:基于至少一个预设方向,按照预设偏移量对所述至少一个单向运动信息进行偏移处理,得到所述至少一个新的单向运动信息;其中,所述至少一个新的单向运动信息与所述至少一个单向运动信息对应的参考帧信息相同。6.根据权利要求5所述的方法,其特征在于,所述预设方向至少包括:向上方向,和/或,向下方向,和/或,向左方向,和/或,向右方向。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:针对所述至少一个单向运动信息,确定每一单向运动信息对应的水平方向矢量值和垂直方向矢量值;在所述预设方向为向上方向和/或向下方向的情况下,判断所述垂直方向矢量值是否等于0;当所述垂直方向矢量值不等于0时,根据所述垂直方向矢量值的绝对值与第一预设值的除法运算,得到每一单向运动信息对应的预设偏移量;或者,在所述预设方向为向左方向和/或向右方向的情况下,判断所述水平方向矢量值是否
等于0;当所述水平方向矢量值不等于0时,根据所述水平方向矢量值的绝对值与第二预设值的除法运算,得到每一单向运动信息对应的预设偏移量。8.根据权利要求6所述的方法,其特征在于,所述方法还包括:针对任意一种预设方向,将每一单向运动信息对应的水平方向矢量值的绝对值和垂直方向矢量值的绝对值进行加法运算,得到计算和值;判断所述计算和值是否等于0;当所述计算和值不等于0时,根据所述计算和值与第三预设值的除法运算,得到每一单向运动信息对应的预设偏移量。9.根据权利要求7或8所述的方法,其特征在于,在所述得到每一单向运动信息对应的预设偏移量之后,所述方法还包括:针对每一单向运动信息,将所得到的预设偏移量与最小预设偏移量和最大预设偏移量分别比较;在所得到的预设偏移量小于最小预设偏移量时,将所述最小预设偏移量确定为所述预设偏移量;在所得到的预设偏移量大于最小预设偏移量时,将所述最大预设偏移量确定为所述预设偏移量。10.根据权利要求1所述的方法,其特征在于,所述方法还包括:基于所述当前块的相邻块的运动信息,确定初始运动信息候选列表;相应地,所述基于所述至少一个新的单向运动信息,构建新的运动信息候选列表,包括:将所述至少一个新的单向运动信息填入所述初始运动信息候选列表中,得到所述新的运动信息候选列表。11.根据权利要求10所述的方法,其特征在于,所述将所述至少一个新的单向运动信息填入所述初始运动信息候选列表中,包括:判断所述至少一个新的单向运动信息与所述初始运动信息候选列表内的运动信息是否重复;在所述至少一个新的单向运动信息与所述初始运动信息候选列表内的运动信息不重复的情况下,将所述至少一个新的单向运动信息填入所述初始运动信息候选列表中。12.根据权利要求10所述的方法,其特征在于,所述方法还包括:在所述初始运动信息候选列表不包括重复的单向运动信息且所述初始运动信息候选列表内的单向运动信息数量小于预设数量时,执行所述从所述当前块的多个已知运动信息中确定至少一个单向运动信息;以及基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息的步骤。13.根据权利要求10所述的方法,其特征在于,所述当前块的多个已知运动信息至少包括:所述初始运动信息候选列表内的运动信息,和/或,所述当前块的空域运动信息,和/或,所述当前块的时域运动信息,和/或,所述当前块的历史运动信息。14.根据权利要求13所述的方法,其特征在于,所述方法还包括:从所述初始运动信息候选列表内任意选择一个运动信息,根据所述一个运动信息的偏
移处理,获得所述至少一个新的单向运动信息;或者,从所述初始运动信息候选列表内顺序选择至少一个运动信息,根据所述至少一个运动信息的偏移处理,获得所述至少一个新的单向运动信息;或者,从所述当前块的空域运动信息和/或所述当前块的时域运动信息和/或所述当前块的历史运动信息内顺序选择至少一个运动信息,根据所述至少一个运动信息的偏移处理,获得所述至少一个新的单向运动信息。15.根据权利要求1所述的方法,其特征在于,所述预设的帧间预测模式包括:几何划分预测模式GPM或角度加权预测模式AWP。16.根据权利要求11所述的方法,其特征在于,所述方法还包括:当所述预测模式参数指示使用GPM或AWP确定当前块的帧间预测值时,确定所述当前块的两个分区;其中,所述两个分区包括第一分区和第二分区;相应地,所述根据所述新的运动信息候选列表,确定所述当前块的帧间预测值,包括:解析码流,确定所述第一分区对应的第一运动信息索引值和所述第二分区对应的第二运动信息索引值;基于所述新的运动信息候选列表,将所述第一运动信息索引值指示的所述新的运动信息候选列表中的运动信息确定为所述第一分区的运动信息,将所述第二运动信息索引值指示的所述新的运动信息候选列表中的运动信息确定为所述第二分区的运动信息;利用所述第一分区的运动信息计算所述第一分区的第一预测值,利用所述第二分区的运动信息计算所述第二分区的第二预测值;对所述第一预测值和所述第二预测值进行加权融合,得到所述当前块的帧间预测值。17.一种帧间预测方法,其特征在于,应用于编码器,所述方法包括:确定当前块的预测模式参数;当所述预测模式参数指示使用预设的帧间预测模式确定当前块的帧间预测值时,从所述当前块的多个已知运动信息中确定至少一个单向运动信息;基于预设偏移量对所述至少一个单向运动信息进行偏移处理,获得至少一个新的单向运动信息;其中,所述预设偏移量是根据所述至少一个单向运动信息对应的水平方向矢量值和垂直方向矢量值计算得到;基于所述至少一个新的单向运动信息,构建新的运动信息候选列表;根据所述新的运动信息候选列表,确定所述当前块的帧间预测值。18.根据权利要求17所述的方法,其特征在于,所述运动信息包括运动矢量信息和参考帧信息。19.根据权利要求17所述的方法,其特征在于,所述确定当前块的预测模式参数,包括:利用多种预测模式对所述当前块进行预编码处理,获得每一种预测模式对应的率失真代价值;从所获得的多个率失真代价值中选择最小率失真代价值,将所述最小率失真代价值对应的预测模式确定为当前块的预测模式参数。20.根据权利要求17所述的方法,其特征在于,所述从所述当前块的多个已知运动信息中确定至少一个单向运动信息,包括:从所述当前块的多个已知运动信息中,选择至少一个初始单向运动信息;
确定候选参考帧,将所选择的至少一个初始单向运动信息缩放到所述候选参考帧,得到至少一个缩放后的单向运动信息;将所述至少一个缩放后的单向运动信息确定为...

【专利技术属性】
技术研发人员:唐海
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1