插值滤波器在仿射运动补偿中的适应性使用制造技术

技术编号:33521741 阅读:21 留言:0更新日期:2022-05-19 01:30
本发明专利技术提供了一种由解码/编码设备实现的译码方法,用于对视频数据进行译码。所述方法包括以下步骤:确定在仿射模式下译码的块的控制点运动矢量(control point motion vector,CPMV);根据所述确定的CPMV,确定参考图像中与所述仿射译码块中的子块对应的参考区域;如果所述参考区域的大小大于预定义阈值,则将变量clipMVX设置为真(TRUE),否则将变量clipMVX设置为假(FALSE);推导所述仿射译码块的基于像素的运动矢量场,其中,如果所述变量clipMVX为真,则所述推导基于像素的运动矢量场还包括根据第一限幅范围进行运动矢量限幅,其中,所述第一限幅范围是根据所述确定的CPMV和所述仿射译码块的大小确定的。射译码块的大小确定的。射译码块的大小确定的。

【技术实现步骤摘要】
【国外来华专利技术】插值滤波器在仿射运动补偿中的适应性使用
[0001]相关申请交叉引用
[0002]本专利申请要求于2019年9月30日提交的申请号为62/908,594的美国临时专利申请、于2019年10月7日提交的申请号为62/912,049的美国临时专利申请、于2019年10月29日提交的PCT/CN2019/114161、于2019年10月29日提交的申请号为62/927,671的美国临时专利申请以及于2020年1月7日提交的申请号为62/958,291的美国临时专利申请的优先权的权益。上述专利申请的全部内容通过引用结合在本申请中。


[0003]本专利技术实施例大体上涉及图像处理领域,更具体地涉及帧间预测,例如插值滤波器在仿射运动补偿或子块运动补偿中的适应性使用。

技术介绍

[0004]视频译码(视频编码和解码)广泛用于数字视频应用,例如广播数字电视、互联网和移动网络上的视频传输、视频聊天和视频会议等实时会话应用、DVD和蓝光光盘、视频内容采集和编辑系统以及可携式摄像机的安全应用。
[0005]即使视频相对较短,也需要大量的视频数据来描述,当数据要在带宽容量受限的通信网络中进行流式传输或以其它方式传输时,这样可能会造成困难。因此,视频数据通常要先压缩,然后通过现代电信网络进行传输。由于内存资源可能有限,当在存储设备上存储视频时,该视频的大小也可能是一个问题。视频压缩设备通常在源侧使用软件和/或硬件对视频数据进行编码,然后进行传输或存储,从而减少表示数字视频图像所需的数据量。然后,对视频数据进行解码的视频解压缩设备在目的地侧接收压缩数据。在网络资源有限以及对更高视频质量的需求不断增长的情况下,需要改进压缩和解压缩技术,这些改进的技术在几乎不影响图像质量的情况下能够提高压缩比。

技术实现思路

[0006]本申请实施例提供了独立权利要求所述的用于编码和解码的方法和装置。
[0007]上述和其它目的通过独立权利要求所保护的主题实现。其它实现方式在从属权利要求、说明书和附图中是显而易见的。
[0008]特定实施例在所附独立权利要求中概述,其它实施例在从属权利要求中概述。
[0009]根据第一方面,本专利技术提供了一种由解码/编码设备实现的译码方法,用于对视频数据进行译码。所述方法包括以下步骤:确定在仿射模式下译码的块的控制点运动矢量(control point motion vector,CPMV);根据所述确定的CPMV,确定参考图像中与所述仿射译码块(affine coded block)中的子块对应的参考区域;如果所述参考区域的大小大于预定义阈值,则将变量clipMVX设置为真(TRUE),否则将变量clipMVX设置为假(FALSE);推导所述仿射译码块的基于像素的运动矢量场,其中,如果所述变量clipMVX为真,则所述推导基于像素的运动矢量场还包括根据第一运动矢量范围进行运动矢量限幅,其中,所述第
一运动矢量范围是根据所述确定的CPMV和所述仿射译码块的大小确定的。
[0010]所述参考区域是一个矩形区域,包括执行当前块的运动补偿所需的所有参考样本,如图9所示,具有宽度W'和高度H'。
[0011]所述方法的优点是,即使所述参考图像中的所述参考区域很大,内存带宽要求也可以得到满足。
[0012]根据所述第一方面的一种实现方式,所述第一运动矢量范围的确定方式包括:确定所述仿射译码块的中心点的运动矢量;根据所述仿射译码块的中心点的运动矢量和相应块大小的预定义偏移,确定第二运动矢量范围,其中,所述块大小包括所述仿射译码块的大小。这样很方便确定限幅范围,避免在执行垂直方向和水平方向上的不对称缩放的情况下进行不必要的限幅。在提出的条件检查中,MV缩放仅在内存带宽确实大于阈值的情况下进行,所述阈值被设置为基于最坏情况下的理想内存带宽的预定义值。
[0013]根据所述第一方面的另一种实现方式,所述确定所述仿射译码块的中心点的运动矢量是根据以下等式执行的:
[0014]mv_center[0]=(mvBaseScaled[0]+dX[0]*(cbWidth>>1)+dY[0]*(cbHeight>>1)),
[0015]mv_center[1]=(mvBaseScaled[1]+dX[1]*(cbWidth>>1)+dY[1]*(cbHeight>>1)),
[0016]其中,mvBaseScaled表示所述块的左上顶点的运动矢量,cbWidth和cbHeight分别表示所述块的宽度和高度,dX[0]和dX[1]表示水平方向上每一个样本的运动矢量的水平部分和垂直部分的各自差值,dY[0]和dY[1]表示垂直方向上每一个样本的运动矢量的水平部分和垂直部分的各自差值,mv_center[0]和mv_center[1]分别表示所述中心点的运动矢量的水平部分和垂直部分。
[0017]根据所述第一方面的另一种实现方式,所述根据所述仿射译码块的中心点的运动矢量和相应块大小的预定义偏移,确定第二运动矢量范围是根据以下等式执行的:
[0018]mv_hor_min=mv_center[0]–
deviationMV[log2CbWidth

3],
[0019]mv_ver_min=mv_center[1]–
deviationMV[log2CbHeight

3],
[0020]mv_hor_max=mv_center[0]+deviationMV[log2CbWidth

3],
[0021]mv_ver_max=mv_center[1]+deviationMV[log2CbHeight

3],
[0022]其中,deviationMV[]表示为相应块大小预定义的偏移的表,mv_hor_min、mv_ver_min、mv_hor_max和mv_ver_max表示所述第二运动矢量范围。这种根据所述块的中心点的运动矢量和所述预定义偏移计算MV范围几乎不会产生任何额外的复杂度,而且保证内存带宽会小于所述预定义阈值。但是,对于6参数仿射运动模块,如果在水平方向和垂直方向上使用非对称缩放因子,这种方法可能会导致进行不必要的运动矢量限幅。例如,如果所述块在垂直方向使用缩放因子X进行缩放以及在水平方向使用缩放因子1/X进行缩放,根据上述MV范围计算应用MV限幅会导致大部分变换块丢失,因为没有额外条件,只是根据边界框(bounding box)执行限幅。所述边界框是根据所述块的中心点的运动矢量和所述预定义偏移获得的,所述预定义偏移对应于所述块的宽度/高度。因此,预测质量变差。然而,在这个特定的示例中,所述块中的所述参考区域几乎与所述块本身的区域相同,因为(1/X)*X等于1,因此内存带宽接近1(这绝对不是问题所在),所以在这种情况下,不需本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种由解码/编码设备实现的译码方法,用于对视频数据进行译码,其特征在于,所述方法包括:确定在仿射模式下译码的块的控制点运动矢量(control point motion vector,CPMV);根据所述确定的CPMV,确定参考图像中与所述仿射译码块中的子块对应的参考区域;如果所述参考区域的大小大于预定义阈值,则将变量clipMVX设置为真(TRUE),否则将变量clipMVX设置为假(FALSE);推导所述仿射译码块的基于像素的运动矢量场,其中,如果所述变量clipMVX为真,则所述推导基于像素的运动矢量场还包括根据第一运动矢量范围进行运动矢量限幅,其中,所述第一运动矢量范围是根据所述确定的CPMV和所述仿射译码块的大小确定的。2.根据权利要求1所述的方法,其特征在于,所述第一运动矢量范围的确定方式包括:确定所述仿射译码块的中心点的运动矢量;根据所述仿射译码块的中心点的运动矢量和相应块大小的预定义偏移,确定第二运动矢量范围,其中,所述块大小包括所述仿射译码块的大小。3.根据权利要求2所述的方法,其特征在于,所述确定所述仿射译码块的中心点的运动矢量是根据以下等式执行的:mv_center[0]=(mvBaseScaled[0]+dX[0]*(cbWidth>>1)+dY[0]*(cbHeight>>1)),mv_center[1]=(mvBaseScaled[1]+dX[1]*(cbWidth>>1)+dY[1]*(cbHeight>>1)),其中,mvBaseScaled表示所述块的左上顶点的运动矢量,cbWidth和cbHeight分别表示所述块的宽度和高度,dX[0]和dX[1]表示水平方向上每一个样本的运动矢量的水平部分和垂直部分的各自差值,dY[0]和dY[1]表示垂直方向上每一个样本的运动矢量的水平部分和垂直部分的各自差值,mv_center[0]和mv_center[1]分别表示所述中心点的运动矢量的水平部分和垂直部分。4.根据权利要求2或3所述的方法,其特征在于,所述根据所述仿射译码块的中心点的运动矢量和相应块大小的预定义偏移,确定第二运动矢量范围是根据以下等式执行的:mv_hor_min=mv_center[0]

deviationMV[log2CbWidth

3],mv_ver_min=mv_center[1]

deviationMV[log2CbHeight

3],mv_hor_max=mv_center[0]+deviationMV[log2CbWidth

3],mv_ver_max=mv_center[1]+deviationMV[log2CbHeight

3],其中,deviationMV[]表示为相应块大小预定义的偏移的表,mv_hor_min、mv_ver_min、mv_hor_max和mv_ver_max表示所述第二运动矢量范围。5.根据权利要求2至4中任一项所述的方法,其特征在于,所述为相应块大小预定义的偏移与{64,128,272,560,1136}成正比,其中,64对应于尺寸等于8的块大小,128对应于尺寸等于16的块大小,272对应于尺寸等于32的块大小,560对应于尺寸等于64的块大小,或者1136对应于尺寸等于128的块大小。
6.根据上述权利要求中任一项所述的方法,其特征在于,在所述第一运动矢量范围确定之后,所述第一运动矢量范围是根据子采样参数SubWidthC和SubHeightC进行缩放的:hor_min=hor_min/SubWidthC,hor_max=hor_max/SubWidthC,ver_min=ver_min/SubHeightC,ver_max=ver_max/SubHeightC,其中,hor_min、ver_min、hor_max和ver_max表示所述缩放后的第一运动矢量范围。7.根据上述权利要求中任一项所述的方法,其特征在于,所述方法还包括以下步骤:根据所述推导出的运动矢量场,通过双线性插值获得所述参考图像中的插值后样本;将高通滤波器应用于所述插值后样本。8.根据上述权利要求中任一项所述的方法,其特征在于,所述仿射译码块中的所述子块的大小为4
×
4。9.根据上述权利要求中任一项所述的方法,其特征在于,所述预定义阈值为72。10.根据上述权利要求中任一项所述的方法,其特征在于,如果仿射帧间预测包括双向预测,则所述设置变量clipMVX包括:推导列表0的变量clipMV0;推导列表1的变量clipMV1;将所述变量clipMV推导为clipMV0|clipMV1,其中,“|”表示或(OR)。11.一种编码器(20),其特征在于,所述编码器(20)包括处理电路,用于执行根据权利要求1至10中任一项所述的方法。12.一种解码器(30),其特征在于,所述解码器(30)包括处理电路,用于执行根据权利要求1至10中任一项所述的方法。13.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当计算机执行所述指令时,所述指令使得所述计算机执行根据权利要求1至10中任一项所述的方法。14.一种解码器(30),其特征在于,所述解码器(30)包括:一个或多个处理器;非瞬时性计算机可读存储介质,与所述一个或多个处理器耦合并存储由所述一个或多个处理器执行的指令,其中,所述一个或多个处理器执行所述指令时,所述指令配置所述解码器执行根据权利要求1至10中任一项所述的方法。15.一种编码器(20),其特征...

【专利技术属性】
技术研发人员:蒂莫菲
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1