基于仿射运动模型的运动矢量预测方法及设备技术

技术编号:23514988 阅读:32 留言:0更新日期:2020-03-18 01:29
本申请公开了基于仿射运动模型的运动矢量预测方法以及设备,该方法包括:获取待处理图像块的一个空域参考块;确定所述空域参考块中多个预设子块位置;根据所述预设子块位置对应的运动矢量,插值计算出所述待处理图像块预设像素点位置对应的运动矢量;根据所述预设像素点位置对应的运动矢量,插值计算出所述待处理图像块中多个子块位置对应的运动矢量。实施本申请能够提高编解码中的预测准确性,提升编码效率。

Method and equipment of motion vector prediction based on affine motion model

【技术实现步骤摘要】
基于仿射运动模型的运动矢量预测方法及设备
本专利技术涉及视频编解码领域,尤其涉及基于仿射运动模型的运动矢量预测方法及设备。
技术介绍
视频编码(视频编码和解码)广泛用于数字视频应用,例如广播数字电视、互联网和移动网络上的视频传播、视频聊天和视频会议等实时会话应用、DVD和蓝光光盘、视频内容采集和编辑系统以及可携式摄像机的安全应用。随着1990年H.261标准中基于块的混合型视频编码方式的发展,新的视频编码技术和工具得到发展并为新的视频编码标准形成基础。其它视频编码标准包括MPEG-1视频、MPEG-2视频、ITU-TH.262/MPEG-2、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高级视频编码(AdvancedVideoCoding,AVC)、ITU-TH.265/高效视频编码(HighEfficiencyVideoCoding,HEVC)…以及此类标准的扩展,例如可扩展性和/或3D(three-dimensional)扩展。随着视频创建和使用变得越来越广泛,视频流量成为通信网络和数据存储的最大负担。因此大多数视频编码标准的目标之一是相较之前的标准,在不牺牲图片质量的前提下减少比特率。即使最新的高效视频编码(HighEfficiencyvideocoding,HEVC)可以在不牺牲图片质量的前提下比AVC大约多压缩视频一倍,仍然亟需新技术相对HEVC进一步压缩视频。
技术实现思路
本专利技术实施例提供了基于仿射运动模型的运动矢量预测方法及设备,能够提高视频编解码中预测的准确性,提升编码效率。第一方面,本专利技术提供了一种基于仿射运动模型的运动矢量预测方法,从编码端或解码端的角度进行描述,包括:获取待处理图像块的一个空域参考块,其中,待处理图像块为通过对视频图像进行分割而得到的,空域参考块为与所述待处理图像块空域相邻的已解码块。在编码端,待处理图像块为当前仿射编码块,空域参考块为相邻仿射编码块。在解码端,待处理图像块为当前仿射解码块,空域参考块为相邻仿射解码块。为了便于描述,可将待处理图像块统称为当前块,将空域参考块统称为相邻块;然后,确定所述空域参考块中两个或两个以上的子块的预设子块位置,每个子块都有相应的预设子块位置,该预设子块位置与编解码中计算该子块的运动矢量时所采用的位置一致,即相邻仿射解码块的子块采用该子块中预设位置像素点的运动矢量来表示该子块内所有像素点的运动矢量;然后,根据所述两个或两个以上的子块的预设子块位置对应的运动矢量,插值计算出所述待处理图像块的预设像素点位置对应的运动矢量,所述预设像素点位置即为所述待处理图像块的控制点;然后,根据所述预设像素点位置对应的运动矢量组成当前块的仿射运动模型,插值计算出所述待处理图像块中多个子块位置对应的运动矢量。其中,所述多个子块位置对应的运动矢量分别用于所述多个子块的运动矢量的预测。可以看到,实施本专利技术实施例,不需要利用到相邻块控制点的运动矢量,而是采用相邻块至少两个子块的运动矢量,推导当前块的控制点的运动矢量,进而根据控制点的运动矢量推导得到当前块的各个子块的运动矢量。当前块的控制点的运动矢量后续将不需要进行存储,即当前块的控制点的运动矢量只用于该当前解码块的子块的运动矢量的推导,不用于相邻块的运动矢量预测。因此,本专利技术方案只需要保存子块的运动矢量,并且均采用子块的运动矢量进行运动补偿,解决运动矢量存储的问题的同时,避免了控制点所在的子块使用了与其他子块不一致的运动矢量进行运动补偿,提高了预测的准确性。基于第一方面,在可能的实施方式中,可确定所述空域参考块中两个子块,两个子块对应的两个预设子块位置之间的距离为S,S为2的K次幂,K为非负整数,这样有利于后续在进行运动矢量推导时,能够通过移位的方式进行实现,从而降低了实现的复杂度。基于第一方面,在可能的实施方式中,预设子块位置可以是子块内左上角像素点的位置;或者,子块的几何中心的位置,或者,子块内距离几何中心位置最近的一个像素点的位置;或者子块内右上角像素点的位置,等等。基于第一方面,在可能的实施方式中,可按照预设顺序确定当前块的一个或多个预设空域位置的候选参考块的可用性,然后,获得在所述预设顺序中第一个可用的候选参考块作为所述空域参考块。其中,所述预设空域位置的候选参考块包括:位于所述待处理图像块正上方、正左方、右上方、左下方和左上方的相邻图像块。比如,按照正左方相邻图像块、正上方相邻图像块、右上方相邻图像块、左下方相邻图像块、左上方相邻图像块的顺序依次检查所述候选参考块的可用性,直到确定所述第一个可用的候选参考块。具体的,可根据以下方法来确定候选参考块是否可用:当所述候选参考块与所述待处理图像块位于同一图像区域内,并且所述候选参考块基于所述仿射运动模型获得运动矢量时,确定所述候选参考块可用。基于第一方面,在可能的实施方式中,如果当前块的仿射运动模型为4参数仿射运动模型,那么所述空域参考块的多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2)和第二预设位置(x4+M/2+P,y4+N/2),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,P为2的K次幂,K为非负整数,K小于U,U为所述空域参考块的宽度。这样可有利于后续在进行运动矢量推导时,能够通过移位的方式进行实现,降低了实现的复杂度。基于第一方面,在可能的实施方式中,如果当前块的仿射运动模型为4参数仿射运动模型,所述多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2)和第三预设位置(x4+M/2,y4+N/2+Q),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,Q为2的R次幂,R为非负整数,Q小于V,V为所述空域参考块的高度。这样有利于后续在进行运动矢量推导时,能够通过移位的方式进行实现,降低了实现的复杂度。在一实例中,如果当前块的仿射运动模型为6参数仿射运动模型,所述多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2),第二预设位置(x4+M/2+P,y4+N/2)和第三预设位置(x4+M/2,y4+N/2+Q),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,P为2的K次幂,Q为2的R次幂,K和R为非负整数,P小于U,Q小于V,U为所述空域参考块的宽度,V为所述空域参考块的高度。这样有利于后续在进行运动矢量推导时,能够通过移位的方式进行实现,降低了实现的复杂度。在又一实例中,如果当前块的上边缘所在的直线和当前块所在的编码树单元(CTU)的上边缘所在的直线重合,且所述空域参考块位于所述待处理图像块的正上方、左上方或右上方时,所述多个预设子块位置对应的子块中的至少两个子块与当前块的上边缘邻接。基于第一方面,在可能的实施方式中,如果当前块的左边缘所在的直线和当前块所在的编码树单元(CTU)本文档来自技高网...

【技术保护点】
1.一种基于仿射运动模型的运动矢量预测方法,其特征在于,包括:/n获取待处理图像块的一个空域参考块;/n确定所述空域参考块中多个预设子块位置;/n根据所述预设子块位置对应的运动矢量,插值计算出所述待处理图像块预设像素点位置对应的运动矢量;/n根据所述预设像素点位置对应的运动矢量,插值计算出所述待处理图像块中多个子块位置对应的运动矢量。/n

【技术特征摘要】
20180910 CN 20181105166261.一种基于仿射运动模型的运动矢量预测方法,其特征在于,包括:
获取待处理图像块的一个空域参考块;
确定所述空域参考块中多个预设子块位置;
根据所述预设子块位置对应的运动矢量,插值计算出所述待处理图像块预设像素点位置对应的运动矢量;
根据所述预设像素点位置对应的运动矢量,插值计算出所述待处理图像块中多个子块位置对应的运动矢量。


2.根据权利要求1所述的方法,其特征在于,所述获取待处理图像块的一个空域参考块,包括:
按照预设顺序确定所述待处理图像块的一个或多个预设空域位置的候选参考块的可用性;
获得在所述预设顺序中第一个可用的候选参考块作为所述空域参考块。


3.根据权利要求2所述的方法,其特征在于,当所述候选参考块与所述待处理图像块位于同一图像区域内,并且所述候选参考块基于所述仿射运动模型获得运动矢量时,确定所述候选参考块可用。


4.根据权利要求2或3所述的方法,其特征在于,所述预设空域位置的候选参考块包括:位于所述待处理图像块正上方、正左方、右上方、左下方和左上方的相邻图像块;
对应的,所述按照预设顺序确定所述待处理图像块的一个或多个预设空域位置的候选参考块的可用性,包括:
按照正左方相邻图像块、正上方相邻图像块、右上方相邻图像块、左下方相邻图像块、左上方相邻图像块的顺序依次检查所述候选参考块的可用性,直到确定所述第一个可用的候选参考块。


5.根据权利要求1至4任一项所述的方法,其特征在于,所述子块位置包括:
所述子块内左上角像素点的位置;或者,
所述子块的几何中心的位置,或者,
所述子块内距离几何中心位置最近的一个像素点的位置。


6.根据权利要求1至5任一项所述的方法,其特征在于,所述多个预设子块位置中的两个预设子块位置之间的距离为S,S为2的K次幂,K为非负整数。


7.根据权利要求1至6任一项所述的方法,其特征在于,所述仿射运动模型为4参数仿射运动模型,所述多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2)和第二预设位置(x4+M/2+P,y4+N/2),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,P为2的K次幂,K为非负整数,K小于U,U为所述空域参考块的宽度。


8.根据权利要求1至6任一项所述的方法,其特征在于,所述仿射运动模型为4参数仿射运动模型,所述多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2)和第三预设位置(x4+M/2,y4+N/2+Q),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,Q为2的R次幂,R为非负整数,Q小于V,V为所述空域参考块的高度。


9.根据权利要求7所述的方法,其特征在于,所述预设像素点位置包括所述待处理图像块内左上角像素点位置,所述待处理图像块内右上角像素点位置和所述待处理图像块内左下角像素点位置中的至少两个,所述根据所述预设子块位置对应的运动矢量,插值计算出所述待处理图像块预设像素点位置对应的运动矢量,包括根据如下公式计算出所述待处理图像块预设像素点位置对应的运动矢量:









其中,vx0为所述待处理图像块内左上角像素点位置对应的运动矢量的水平分量,vy0为所述待处理图像块内左上角像素点位置对应的运动矢量的竖直分量,vx1为所述待处理图像块内右上角像素点位置对应的运动矢量的水平分量,vy1为所述待处理图像块内右上角像素点位置对应的运动矢量的竖直分量,vx2为所述待处理图像块内左下角像素点位置对应的运动矢量的水平分量,vy2为所述待处理图像块内左下角像素点位置对应的运动矢量的竖直分量,vx4为所述第一预设位置对应的运动矢量的水平分量,vy4为所述第一预设位置对应的运动矢量的竖直分量,vx5为所述第二预设位置对应的运动矢量的水平分量,vy5为所述第二预设位置对应的运动矢量的竖直分量,x0为所述待处理图像块内左上角像素点位置横坐标,y0为所述待处理图像块内左上角像素点位置纵坐标,x1为所述待处理图像块内右上角像素点位置横坐标,y1为所述待处理图像块内右上角像素点位置纵坐标,x2为所述待处理图像块内左下角像素点位置横坐标,y2为所述待处理图像块内左下角像素点位置纵坐标。


10.根据权利要求9所述的方法,其特征在于,所述预设像素点位置包括所述待处理图像块内左上角像素点位置和所述待处理图像块内右上角像素点位置,所述根据所述预设像素点位置对应的运动矢量,插值计算出所述待处理图像块中多个子块位置对应的运动矢量,包括根据如下公式计算出所述待处理图像块中多个子块位置对应的运动矢量:



其中,W为所述待处理图像块的宽度,vx为所述多个子块位置中位于(x,y)的一个对应的运动矢量的水平分量,vy为所述多个子块位置中位于(x,y)的一个对应的运动矢量的竖直分量。


11.根据权利要求1至6任一项所述的方法,其特征在于,所述仿射运动模型为6参数仿射运动模型,所述多个预设子块位置包括第一预设位置(x4+M/2,y4+N/2),第二预设位置(x4+M/2+P,y4+N/2)和第三预设位置(x4+M/2,y4+N/2+Q),其中,x4为所述空域参考块内左上角像素的位置横坐标,y4为所述空域参考块内左上角像素的位置纵坐标,M为子块宽度,N为子块高度,P为2的K次幂,Q为2的R次幂,K和R为非负整数,P小于U,Q小于V,U为所述空域参考块的宽度,V为所述空域参考块的高度。


12.根据权利要求11所述的方法,其特征在于,所述预设像素点位置包括所述待处理图像块内左上角像素点位置,所述待处理图像块内右上角像素点位置和所述待处理图像块内左下角像素点位置,所述根据所述预设子块位置对应的运动矢量,插值计算出所述待处理图像块预设像素点位置对应的运动矢量,包括根据如下公式计算出所述待处理图像块预设像素点位置对应的运动矢量:









其中,vx0为所述待处理图像块内左上角像素点位置对应的运动矢量的水平分量,vy0为所述待处理图像块内左上角像素点位置对应的运动矢量的竖直分量,vx1为所述待处理图像块内右上角像素点位置对应的运动矢量的水平分量,vy1为所述待处理图像块内右上角像素点位置对应的运动矢量的竖直分量,vx2为所述待处理图像块内左下角像素点位置对应的运动矢量的水平分量,vy2为所述待处理图像块内左下角像素点位置对应的运动矢量的竖直分量,vx4为所述第一预设位置对应的运动矢量的水平分量,vy4为所述第一预设位置对应的运动矢量的竖直分量,vx5为所述第二预设位置对应的运动矢量的水平分量,vy5为所述第二预设位置对应的运动矢量的竖直分量,vx6为所述第三预设位置对应的运动矢量的水平分量,vy6为所述第三预设位置对应的运动矢量的竖直分量,x0为所述待处理图像块内左上角像素点位置横坐标,y0为所述待处理图像块内左上角像素点位置纵坐标,x1为所述待处理图像块内右上角像素点位置横坐标,y1为所述待处理图像块内右上角像素点位置纵坐标,x2为所述待处理图像块内左下角像素点位置横坐标,y2为所述待处理图像块内左下角像素点位置纵坐标。


13.根据权利要求12所述的方法,其特征在于,所述根据所述预设像素点位置对应的运动矢量,插值计算出所述待处理图像块中多个子块位置对应的运动矢量,包括根据如下公式计算出所述待处理图像块中多个子块位置对应的运动矢量:



其中,W为所述待处理图像块的宽度,H为所述待处理图像块的高度,vx为所述多个子块位置中位于(x,y)的一个对应的运动矢量的水平分量,vy为所述多个子块位置中位于(x,y)的一个对应的运动矢量的竖直分量。


14.根据权利要求1至13任一项所述的方法,其特征在于,当所述待处理图像块的上边缘所在的直线和所述待处理图像块所在的编码树单元CTU的上边缘所在的直线重合,且所述空域参考块位于所述待处理图像块的正上方、左上方或右上方时,所述多个预设子块位置对应的子块中的至少两个子块与所述待处理图像块的上边缘邻接。


15.根据权利要求1至13任一项所述的方法,其特征在于,当所述待处理图像块的左边缘所在的直线和所述待处理图像块所在的编码树单元CTU的左边缘所在的直线重合,且所述空域参考块位于所述待处理图像块的正左方、左上方或左下方时,所述多个预设子块位置对应的子块中的至少两个子块与所述待处理图像块的左边缘邻接。

<...

【专利技术属性】
技术研发人员:陈焕浜杨海涛
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1