图像预测方法和相关设备与流程

文档序号:12628359阅读:235来源:国知局
图像预测方法和相关设备与流程
本发明涉及视频编码和视频解码领域,具体涉及一种图像预测方法和相关设备。
背景技术
:随着光电采集技术的发展及不断增长的高清数字视频需求,视频数据量越来越大,有限异构的传输带宽、多样化的视频应用不断地对视频编码效率提出了更高的需求,高性能视频编码(英文:highefficientvideocoding,缩写:HEVC)标准的制定工作因需启动。视频编码压缩的基本原理是利用空域、时域和码字之间的相关性,尽可能去除冗余。目前流行做法是采用基于块的混合视频编码框架,通过预测(包括帧内预测和帧间预测)、变换、量化、熵编码等步骤实现视频编码压缩。这种编码框架,显示了很强的生命力,HEVC也仍沿用这种基于块的混合视频编码框架。在各种视频编/解码方案中,运动估计/运动补偿是一种影响编/解码性能的关键技术。其中,现有很多视频编/解码方案中,一般假设物体的运动是满足平动运动,整个物体的各个部分有相同的运动。现有的运动估计/运动补偿算法基本都是建立在平动运动模型(英文:translationalmotionmodel)的基础上的块运动补偿算法。现有帧间预测主要采用基于平动运动模型的基于块的运动补偿预测(英文:motioncompensation)。针对非平动运动设计的一些非平动运动模型(例如彷射运动模型)也在逐步提出。在基于彷射运动模型进行预测的机制中,现有技术利用当前图像块的2个控制点的低精度运动矢量和彷射运动模型进行像素值预测可获得当前图像块的低精度的像素预测值,上述像素值预测的过程中需要利用插值滤波器执行插值滤波操作,这次获得的当前图像块的像素预测值的精度与2个控制点的运动矢量的精度相同。若需获得当前图像块的更高精度的像素预测值,还需要进一步的利用双线性插值滤波器来对已获得的当前图像块的较低精度像素预测值 进行二次插值滤波。由于现有技术中若利用2个控制点的低精度运动矢量和彷射运动模型来获得当前图像块的高精度像素预测值,那么其间就需要经过至少两步的插值滤波操作(每步插值滤波操作所需中间缓存和内存操作次数都比较多),这使得整体图像预测过程所需中间缓存和内存操作次数可能相对多,计算复杂度变得相对较高。技术实现要素:本发明实施例提供应图像预测方法和相关设备,以期能够降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,降低图像预测过程的计算复杂度。本发明实施例第一方面提供一种图像预测方法,包括:确定当前图像块中的W个控制点的运动矢量;利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量,其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度,所述P个像素单元为所述当前图像块的部分或全部像素单元,其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元,其中,所述W、所述n和所述N为大于1的整数,所述N大于所述n,所述P为正整数;利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值,所述Q为大于所述n的整数。结合第一方面,在第一方面的第一种可能的实施方式中,所述N的取值为预设的固定大小的取值,所述Q小于或等于所述N。结合第一方面或第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,在所述运动模型中利用所述N对所述W个控制点的运动矢量中的一个运动矢量的水平分量或者竖直分量放大N倍;或在所述运动模型中利用所述N对所述W个控制点中的任意两个控制点的运动矢量分量差值放大N 倍。结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,包括:利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1);Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1);其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。结合第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,所述相位包括水平相位和竖直相位,其中,所述基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,包括:基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应 像素单元的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用的滤波器系数与所述水平相位对应,其中,所述竖直插值滤波器使用的滤波器系数与所述竖直相位对应。结合第一方面的第五种可能的实施方式,在第一方面的第六种可能的实施方式中,所述利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波,包括:利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。结合第一方面或第一方面的第一种至六种可能的实施方式中的任意一种可能的实施方式,在第一方面的第七种可能的实施方式中,所述运动模型为平动运动模型、仿射运动模型、旋转运动模型、抛物线运动模型、剪切运动模型、缩放运动模型、透视运动模型或双线性运动模型。结合第一方面或第一方面的第一种至七种可能的实施方式中的任意一种可能的实施方式,在第一方面的第八种可能的实施方式中,在所述W等于2的情况下,所述运动模型表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。结合第一方面或第一方面的第一种至七种可能的实施方式中的任意一种可能的实施方式,在第一方面的第九种可能的实施方式中,在所述W等于3的情况下,所述运动模型表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。结合第一方面或第一方面的第一种至九种可能的实施方式中的任意一种可能的实施方式,在第一方面的第十种可能的实施方式中,所述W个控制点的 运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。结合第一方面或第一方面的第一种至十种可能的实施方式中的任意一种可能的实施方式,在第一方面的第十一种可能的实施方式中,所述图像预测方法应用于视频编码过程中或应用于视频解码过程中。本发明实施例第二方面提供一种图像预测装置,包括:第一确定单元,用于确定当前图像块中的W个控制点的运动矢量;计算单元,用于利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量,其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度,所述P个像素单元为所述当前图像块的部分或全部像素单元,其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元,所述W、所述n和所述N为大于1的整数,所述N大于所述n,所述P为正整数;插值滤波单元,用于利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值,所述Q为大于所述n的整数。结合第二方面,在第二方面的第一种可能的实施方式中,所述N的取值为预设的固定大小的取值,所述Q小于或等于所述N。结合第二方面或第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,在所述运动模型中利用所述N对所述W个控制点的运动矢量中的一个运动矢量的水平分量或者竖直分量放大N倍;或在所述运动模型中利用所述N对所述W个控制点中的任意两个控制点的运动矢量分量差值放大N倍。结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,所述插值滤波单元具体用于,利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所 述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器,对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,在利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位的方面,所述插值滤波单元具体用于按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1);Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1);其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。结合第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施方式中,所述相位包括水平相位和竖直相位,其中,在基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器的方面,所述插值滤波单元具体用于,基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,所述水平插值滤波器使用的滤波器系数与所述水平相位对应,所述竖直插值滤波器使用的滤波器系数与所述竖直相位对应。结合第二方面的第五种可能的实施方式,在第二方面的第六种可能的实施方式中,在所述利用确定的所述每个像素单元对应的相位数为Q的插值滤波器 对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波的方面,所述插值滤波单元具体用于,利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。结合第二方面或第二方面的第一种至六种可能的实施方式中的任意一种可能的实施方式,在第二方面的第七种可能的实施方式中,所述运动模型为平动运动模型、仿射运动模型、旋转运动模型、缩放运动模型、抛物线运动模型、剪切运动模型、透视运动模型或双线性运动模型。结合第二方面或第二方面的第一种至七种可能的实施方式中的任意一种可能的实施方式,在第二方面的第八种可能的实施方式中,在所述W等于2的情况下,所述运动模型表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。结合第二方面或第二方面的第一种至七种可能的实施方式中的任意一种可能的实施方式,在第二方面的第九种可能的实施方式中,在所述W等于3的情况下,所述运动模型表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。结合第二方面或第二方面的第一种至九种可能的实施方式中的任意一种可能的实施方式,在第二方面的第十种可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。结合第二方面或第二方面的第一种至十种可能的实施方式中的任意一种可能的实施方式,在第二方面的第十一种可能的实施方式中,所述图像预测装 置应用于视频编码装置中或者所述图像预测装置应用于视频解码装置中。可以看出,本发明实施例提供应图像预测方法中,利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利于图像预测过程的计算复杂度。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。图1-a~图1-b为本发明实施例提供的几种图像块的划分示意图;图2-a为本发明实施例提供的一种图像预测方法的流程示意图;图2-b为本发明实施例提供的一种控制点的运动矢量预测示意图;图3-a为本发明实施例提供的另一种图像预测方法的流程示意图;图3-b为本发明实施例提供的一种整像素位置和亚像素位置的示意图;图4为本发明实施例提供的另一种图像预测方法的流程示意图;图5为本发明实施例提供的一种图像预测装置的示意图;图6为本发明实施例提供的另一种图像预测装置的示意图;具体实施方式本发明实施例提供应图像预测方法和相关设备,以期能够降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,降低图像预测过程的计算复杂度。为了使本
技术领域
的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。本发明说明书、权利要求书和附图中出现的术语“第一”、“第二”和“第三”等是用于区别不同的对象,而并非用于描述特定的顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。下面先对本发明实施例可能涉及的一些概念进行简单介绍。在多数编码框架中,视频序列包括一系列图像(英文:picture),图像被进一步划分为切片(英文:slice),slice再被划分为块(英文:block)。视频编码以块为单位,可从picture的左上角位置开始从左到右从上到下一行一行进行编码处理。在一些新的视频编码标准中,block的概念被进一步扩展。在H.264标准中有宏块(英文:macroblock,缩写:MB),MB可进一步划分成多个可用于预测编码的预测块(英文:partition)。其中,在HEVC标准中,采用编码单元(英文:codingunit,缩写:CU),预测单元(英文:predictionunit,缩写:PU)和变换单元(英文:transformunit,缩写:TU)等基本概念,从功能上划分了多种Unit,并采用全新的基于树结构进行描述。比如CU可以按照四叉树进行划分为更小的CU,而更小的CU还可以继续划分,从而形成一种四叉树结构。对于PU和TU也有类似的树结构。无论CU,PU还是TU,本质上都属于块block的概念,CU类似于宏块MB或者编码块,是对编码图像进行划分 和编码的基本单元。PU可以对应预测块,是预测编码的基本单元。对CU按照划分模式进一步划分成多个PU。TU可以对应变换块,是对预测残差进行变换的基本单元。高性能视频编码(英文:highefficiencyvideocoding,缩写:HEVC)标准中则可以把它们统一称之为编码树块(英文:codingtreeblock,缩写:CTB)等等。在HEVC标准中,编码单元的大小可包括64×64,32×32,16×16和8×8等四个级别,每个级别的编码单元按照帧内预测和帧间预测由可以划分为不同大小的预测单元。其中,例如图1-a和图1-b所示,图1-a举例示出了一种与帧内预测对应的预测单元划分方式,图1-b举例示出了几种与帧间预测对应的预测单元划分方式。在视频编码技术发展演进过程中,视频编码专家们想了各种方法来利用相邻编解码块之间的时空相关性来努力提高编码效率。在H264/高级视频编码(英文:advancedvideocoding,缩写:AVC)标准中,跳过模式(skipmode)和直接模式(directmode)成为提高编码效率的有效工具,在低码率时使用这两种编码模式的块能占到整个编码序列的一半以上。当使用跳过模式时,只需要在码流中传递一个跳过模式标记,就可以利用周边运动矢量推导得到当前图像块的运动矢量,根据该运动矢量来直接的拷贝参考块的值作为当前图像块的重建值。此外,当使用直接模式时,编码器可以利用周边运动矢量推导得到当前图像块的运动矢量,根据该运动矢量直接拷贝参考块的值作为当前图像块的预测值,在编码端利用该预测值对当前图像块进行编码预测。目前最新的高性能视频编码(英文:highefficiencyvideocoding,缩写:HEVC)标准中,通过引进一些新编码工具,进一步提高视频编码性能。融合编码(merge)模式和自适应运动矢量预测(英文:advancedmotionvectorprediction,缩写:AMVP)模式是两个重要的帧间预测工具。融合编码(merge)利用当前编码块周边已编码块的运动信息(包括运动矢量(英文:motionvector,缩写:MV)和预测方向和参考帧索引等)构造一个候选运动信息集合,通过比较,可选择出编码效率最高的候选运动信息作为当前编码块的运动信息,在参考帧中找到当前编码块的预测值,对当前编码块进行预测编码,同时,可以把表示选择来自哪 个周边已编码块的运动信息的索引值写入码流。当使用自适应运动矢量预测模式时,利用周边已编码块的运动矢量作为当前编码块运动矢量的预测值,可以选定一个编码效率最高的运动矢量来预测当前编码块的运动矢量,并可把表示选定哪个周边运动矢量的索引值写入视频码流。下面继续探讨本发明实施例的技术方案。下面先介绍本发明实施例提供的图像预测方法,本发明实施例提供的图像预测方法的执行主体是视频编码装置或视频解码装置,其中,该视频编码装置或视频解码装置可以是任何需要输出或存储视频的装置,如笔记本电脑、平板电脑、个人电脑、手机或视频服务器等设备。本发明图像预测方法的一个实施例,一种图像预测方法可以包括:确定当前图像块中的W个控制点的运动矢量;利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量,其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度,所述P个像素单元为所述当前图像块的部分或全部像素单元,其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元,其中,所述W、所述n和所述N为大于1的整数,所述N大于所述n,所述P为正整数;利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值,所述Q为大于所述n的整数。请参见图2-a,图2-a为本发明的一个实施例提供的一种图像预测方法的流程示意图。其中,图2-a举例所示,本发明的一个实施例提供的一种图像预测方法可以包括:201、确定当前图像块中的W个控制点的运动矢量。202、利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量。其中,所述P个像素单元为所述当前图像块的部分或全部像素单元。其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素 单元在参考图像中的对应参考像素单元。因此,可以利用所述P个像素单元中的每个像素单元的运动矢量,确定相应像素单元在参考图像中的对应参考像素单元。其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度。其中,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度。其中,所述W、所述n和所述N为大于1的整数。其中,所述N大于所述n。所述P为正整数。其中,由于N大于n,即计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度高于所述确定的所述W个控制点的运动矢量的精度。即获得了所述当前图像块的P个像素单元的相对较高精度的运动矢量。其中,在本发明一些可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。例如参见图2-b举例所示,所述W个控制点包括控制点LT、控制点RT和控制点LB。其中,控制点LT的运动矢量预测自可预测自图像块A、B和C的精度为1/n像素精度的运动矢量。控制点RT的运动矢量预测自可预测自图像块D和E的精度为1/n像素精度的运动矢量。控制点LB的运动矢量预测自可预测自图像块F和G的精度为1/n像素精度的运动矢量。其中,在本发明的一些可能的实施方式中,当W个控制点的运动矢量来自于预测值时,该预测值的精度也是1/n像素精度,可把1/n像素精度的控制点的运动矢量和相应预测值的差值写到码流中。其中,在本发明一些可能的实施方式中,所述运动模型例如可为平动运动模型、仿射运动模型、旋转运动模型、抛物线运动模型、剪切运动模型、缩放运动模型、透视运动模型或双线性运动模型等。203、利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值。其中,所述Q为大于所述n的整数。在本发明一些可能的实施方式中,所述N的取值可以为预设的固定大小的取值,所述Q可大于或等于所述N。其中,当N的取值可以为预设的固定大小的取值,表示利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量的精度,与所述当前图像块的尺寸之间没有必然关系。也就是说,基于本实施例的方案,例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程,便可以获得的预设的固定精度的像素预测值。例如所述W可等于2、3、4、5、6、8或者其他值。例如所述P可等于1、2、3、4、5、6、8、10、15、16、21、32、64或者其他值。例如所述Q可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述N可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述n可等于8、2、4或者其他值。在本发明一些可能的实施方式中,所述N可为2的整数次幂,当然所述N也可为其它正整数。其中,本发明各实施例中的像素单元可包括一个或多个像素,例如像素单元可以为2*2的像素块、2*1的像素块、2*1的像素块、4*4的像素块或者4*2的像素块等。其中,本发明各实施例中的控制点可以包括一个或多个像素,例如控制点可以为2*2的像素块、2*1的像素块、2*1的像素块、4*4的像素块或者4*2的像素块等。由上可见,本实施例提供应图像预测方法中,利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量 的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利于图像预测过程的计算复杂度。其中,在本发明一些可能的实施方式中,在所述运动模型中利用所述N对所述W个控制点的运动矢量中的一个运动矢量的水平分量或者竖直分量放大N倍;或在所述运动模型中利用所述N对所述W个控制点中的任意两个控制点的运动矢量分量差值放大N倍。举例来说,在本发明一些可能的实施方式中,在所述W等于2的情况下所述运动模型例如可表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。又举例来说,在本发明一些可能的实施方式中,在所述W等于3的情况下 所述运动模型例如可表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。其中,上述举例中是以使用彷射运动模型为例来说明的,对于使用平动运动模型、旋转运动模型、剪切运动模型、缩放运动模型、透视运动模型、抛物线运动模型或双线性运动模型等的情况,可基于相应运动模型以此类推,此处不在赘述。例如,运动模型的一种一般性表现形式可如下:(vNx,vNy)=f({(vix,viy)|i=0,1,...,M},N,(x,y))。其中,控制点的运动矢量(vix,viy)的精度是1/n像素精度,为了平衡效果和比特开销,可取n=4,N可表示预先设定的滤波器的相位数,(x,y)是图像块中任意像素单元的坐标值,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元,可包括:利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;利用所述P个像素单元中的每个像素单元的运动矢量,在参考图像中查找与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,为所述P个像素单元中的每个像素单元在参考图像中的参考像素单元。具体例如,可以利用所述P个像素单元中的像素单元i的运动矢量计算得到像素单元i的整像素位置;利用像素单元i的运动矢量,在参考图像中查找与所述像素单元i的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与像素单元i的整像素位置对应的参考像素单元,为像素单元i在参考图像中的参考像素单元。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式,确定其在参考图像中相应的参考像素单元。其中,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;xInt=[vNx/N],或xInt=vNx>>M;yInt=[vNy/N],或yInt=vNy>>M;当N为2的整数次幂的情况下所述M=log2N,(xInt,yInt)表示当前图像块中坐标为(x,y)的像素单元的整像素位置坐标,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。在本发明一些可能的实施方式中,利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波包括:利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。具体例如,可利用所述P个像素单元中的像素单元i的运动矢量,计算得到像素单元i的相位,基于像素单元i的相位确定像素单元i对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的像素单元i对应的相位数为Q的插值滤波器对像素单元i在参考图像中的相应参考像素单元的像素进行插值滤波。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式进行插值滤波。在本发明一些可能实施方式中,利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1)。Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1)。其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述相位包括水平相位和竖 直相位,其中,所述基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,包括:基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用滤波器系数与所述水平相位对应,其中,所述竖直插值滤波器使用滤波器系数与所述竖直相位对应。具体例如,可基于像素单元i的水平相位确定像素单元i的相位数为Q的水平插值滤波器,基于所述像素单元i的竖直相位确定像素单元i的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用的滤波器系数与所述像素单元i的水平相位对应,其中,所述竖直插值滤波器使用的滤波器系数与像素单元i的竖直相位对应。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式确定相位数为Q的插值滤波器。可选的,在本发明的一些可能的实施方式中,利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波,包括:利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。此外,对于像素单元的相位为单相位(即只有水平相位或者竖直相位)的 情况,则对像素单元的参考像素单元的像素执行一次插值滤波即可得到该像素单元的像素预测值。可选的,在本发明一些可能实施方式中,所述确定当前图像块中的W个控制点的运动矢量包括:确定当前图像块中的W个控制点,确定所述W个控制点之中的每个控制点所对应的候选运动信息单元集;其中,所述每个控制点所对应的候选运动信息单元包括候选的至少一个运动信息单元;确定包括W个运动信息单元的合并运动信息单元集e,其中,所述合并运动信息单元集e中的每个运动信息单元分别选自所述W个控制点中的每个控制点所对应的候选运动信息单元集中的至少部分运动信息单元,所述合并运动信息单元集e中每个合并运动信息单元包含运动矢量;对所述合并运动信息单元集e中的W个运动矢量进行预测或运动估计以得到所述W个控制点的运动矢量,或所述合并运动信息单元集e中包括的W个运动矢量为所述W个控制点的运动矢量。其中,在本发明一些可能实施方式中,候选运动信息单元集中的各运动矢量的精度可为1/n像素精度。其中,所述图像预测方法可应用于视频编码过程中或者所述图像预测方法可应用于视频解码过程中。为便于更好的理解本发明实施例的技术方案,下面从编码端和解码端的角度进行举例介绍。下面先从编码端的角度进行方案描述。请参见图3-a,图3-a为本发明的另一个实施例提供的另一种图像预测方法的流程示意图。其中,图3-a举例所示,本发明的另一个实施例提供的另一种图像预测方法可以包括:301、视频编码装置确定当前图像块中的W个控制点。302、视频编码装置确定W个控制点的运动矢量。其中,视频编码装置确定W个控制点的运动矢量,可包括:确定所述W个控制点之中的每个控制点所对应的候选运动信息单元集;其中,所述每个控制 点所对应的候选运动信息单元包括候选的至少一个运动信息单元;确定包括W个运动信息单元的合并运动信息单元集e,其中,所述合并运动信息单元集e中的每个运动信息单元分别选自所述W个控制点中的每个控制点所对应的候选运动信息单元集中的至少部分运动信息单元,所述合并运动信息单元集e中每个合并运动信息单元包含运动矢量;对所述合并运动信息单元集e中的W个运动矢量进行预测或运动估计以得到所述W个控制点的运动矢量,或所述合并运动信息单元集e中包括的W个运动矢量为所述W个控制点的运动矢量。其中,在本发明一些可能实施方式中,候选运动信息单元集中的各运动矢量的精度可为1/n像素精度。303、视频编码装置利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量。其中,所述P为正整数,所述W和所述N为大于1的整数。其中,所述P个像素单元为所述当前图像块的部分或全部像素单元。其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元。因此,可以利用所述P个像素单元中的每个像素单元的运动矢量,确定相应像素单元在参考图像中的对应参考像素单元。其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度。其中,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度。其中,所述W、所述n和所述N为大于1的整数。其中,所述N大于所述n。所述P为正整数。其中,由于N大于n,即计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度高于所述确定的所述W个控制点的运动矢量的精度。即获得了所述当前图像块的P个像素单元的相对较高精度的运动矢量。其中,在本发明一些可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。在本发明的一些可能的实施方式中,当W个控制点的运动矢量来自于预测值时,该预测值的精度也是1/n像素精度,可把1/n像素精度的控制点的运动矢量和相应预测值的差值写到码流中。相应的,在解码端可利用码流中得到的该W个运动矢量预测差值和当前图像块周边已解码图像块的精度为1/n像素精度的运动矢量预测得到这W个控制点的1/n像素精度的运动矢量。其中,在本发明一些可能的实施方式中,所述运动模型例如可为平动运动模型、仿射运动模型、旋转运动模型、抛物线运动模型、剪切运动模型、缩放运动模型、透视运动模型或双线性运动模型等。举例来说,在本发明一些可能的实施方式中,在所述W等于2的情况下所述运动模型例如可表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。又举例来说,在本发明一些可能的实施方式中,在所述W等于3的情况下所述运动模型例如可表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。其中,上述举例中是以使用彷射运动模型为例来说明的,对于使用平动运动模型、旋转运动模型、剪切运动模型、缩放运动模型、透视运动模型、抛物线运动模型或双线性运动模型等的情况,可基于相应运动模型以此类推,此处不在赘述。304、视频编码装置利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元。可选的,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元,可包括:利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;利用所述P个像素单元中的每个像素单元的运动矢量,在参考图像中查找与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,为所述P个像素单元中的每个像素单元在参考图像中的参考像素单元。具体例如,可以利用所述P个像素单元中的像素单元i的运动矢量计算得到像素单元i的整像素位置;利用像素单元i的运动矢量,在参考图像中查找与所述像素单元i的整像素位置对应的参考像素单元,其中,在参考图像中查找到 的与像素单元i的整像素位置对应的参考像素单元,为像素单元i在参考图像中的参考像素单元。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式,确定其在参考图像中相应的参考像素单元。其中,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;xInt=[vNx/N],或xInt=vNx>>M。yInt=[vNy/N],或yInt=vNy>>M。当N为2的整数次幂的情况下所述M=log2N,(xInt,yInt)表示当前图像块中坐标为(x,y)的像素单元的整像素位置坐标,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。如参见图3-b,图3-b中方块表示当前位置其相邻整像素位置的点,三角形表示亚像素点。305、视频编码装置利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值。其中,所述Q为大于所述n的整数。在本发明一些可能的实施方式中,所述N的取值可以为预设的固定大小的取值,所述Q可大于或等于所述N。其中,当N的取值可以为预设的固定大小的取值,表示利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量的精度,与所述当前图像块的尺寸之间没有必然关系。也就是说,基于本实施例的方案,例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程,便可以获得的预设的固定精度的像素 预测值。例如所述W可等于2、3、4、5、6、8或者其他值。例如所述P可等于1、2、3、4、5、6、8、10、15、16、21、32、64或者其他值。例如所述Q可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述N可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述n可等于8、2、4或者其他值。在本发明一些可能的实施方式中,所述N可为2的整数次幂,当然所述N也可为其它正整数。在本发明一些可能的实施方式中,所述利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,包括:利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。具体例如,可利用所述P个像素单元中的像素单元i的运动矢量,计算得到像素单元i的相位,基于像素单元i的相位确定像素单元i对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的像素单元i对应的相位数为Q的插值滤波器对像素单元i在参考图像中的相应参考像素单元的像素进行插值滤波。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式进行插值滤波。在本发明一些可能实施方式中,利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位包括:按照 如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1);Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1);其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述相位包括水平相位和竖直相位,其中,所述基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,包括:基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用滤波器系数与所述水平相位对应,其中,所述竖直插值滤波器使用滤波器系数与所述竖直相位对应。具体例如,可基于像素单元i的水平相位确定像素单元i的相位数为Q的水平插值滤波器,基于所述像素单元i的竖直相位确定像素单元i的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用的滤波器系数与所述像素单元i的水平相位对应,其中,所述竖直插值滤波器使用的滤波器系数与像素单元i的竖直相位对应。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式确定相位数为Q的插值滤波器。可选的,在本发明的一些可能的实施方式中,所述利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波,包括:利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单 元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。此外,对于像素单元的相位为单相位(即只有水平相位或者竖直相位)的情况,则对像素单元的参考像素单元的像素执行一次插值滤波即可得到该像素单元的像素预测值。306、视频编码装置可利用当前图像块的P个像素单元的原始像素值和P个像素单元的像素值预测得到当前图像块的预测残差。视频编码装置可将当前图像块的预测残差写入视频码流。由上可见,在本实施例的方案中,视频编码装置利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利 于图像预测过程的计算复杂度。下面从解码端的角度进行方案描述。请参见图4,图4为本发明的另一个实施例提供的另一种图像预测方法的流程示意图。其中,图4举例所示,本发明的另一个实施例提供的另一种图像预测方法可以包括:401、视频解码装置确定当前图像块中的W个控制点。402、视频解码装置确定W个控制点的运动矢量。其中,视频解码装置确定W个控制点的运动矢量,可包括:确定所述W个控制点之中的每个控制点所对应的候选运动信息单元集;其中,所述每个控制点所对应的候选运动信息单元包括候选的至少一个运动信息单元;确定包括W个运动信息单元的合并运动信息单元集e,其中,所述合并运动信息单元集e中的每个运动信息单元分别选自所述W个控制点中的每个控制点所对应的候选运动信息单元集中的至少部分运动信息单元,所述合并运动信息单元集e中每个合并运动信息单元包含运动矢量;对所述合并运动信息单元集e中的W个运动矢量进行预测或运动估计以得到所述W个控制点的运动矢量,或所述合并运动信息单元集e中包括的W个运动矢量为所述W个控制点的运动矢量。其中,在本发明一些可能实施方式中,候选运动信息单元集中的各运动矢量的精度可为1/n像素精度。403、视频解码装置利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量。其中,所述P为正整数,所述W和所述N为大于1的整数。其中,所述P个像素单元为所述当前图像块的部分或全部像素单元。其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元。因此,可以利用所述P个像素单元中的每个像素单元的运动矢量,确定相应像素单元在参考图像中的对应参考像素单元。其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度。其中,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的 精度为1/N像素精度。其中,所述W、所述n和所述N为大于1的整数。其中,所述N大于所述n。所述P为正整数。其中,由于N大于n,即计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度高于所述确定的所述W个控制点的运动矢量的精度。即获得了所述当前图像块的P个像素单元的相对较高精度的运动矢量。其中,在本发明一些可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量,其中,所述n为正整数且所述n小于所述N。在本发明的一些可能的实施方式中,当W个控制点的运动矢量来自于预测值时,该预测值的精度也是1/n像素精度,可把1/n像素精度的控制点的运动矢量和相应预测值的差值写到码流中。其中,在本发明一些可能的实施方式中,所述运动模型例如可为平动运动模型、仿射运动模型、旋转运动模型、抛物线运动模型、剪切运动模型、缩放运动模型、透视运动模型或双线性运动模型等。举例来说,在本发明一些可能的实施方式中,在所述W等于2的情况下所述运动模型例如可表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐 标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。又举例来说,在本发明一些可能的实施方式中,在所述W等于3的情况下所述运动模型例如可表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。其中,上述举例中是以使用彷射运动模型为例来说明的,对于使用平动运动模型、旋转运动模型、剪切运动模型、缩放运动模型、透视运动模型、抛物线运动模型或双线性运动模型等的情况,可基于相应运动模型以此类推,此处不在赘述。404、视频解码装置利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元。可选的,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元,可包括:利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;利用所述P个像素单元中的每个像素单元的运动矢量,在参考图像中查找与所述P 个像素单元中的每个像素单元的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,为所述P个像素单元中的每个像素单元在参考图像中的参考像素单元。具体例如,可以利用所述P个像素单元中的像素单元i的运动矢量计算得到像素单元i的整像素位置;利用像素单元i的运动矢量,在参考图像中查找与所述像素单元i的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与像素单元i的整像素位置对应的参考像素单元,为像素单元i在参考图像中的参考像素单元。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式,确定其在参考图像中相应的参考像素单元。其中,在本发明一些可能的实施方式中,所述利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;xInt=[vNx/N],或xInt=vNx>>M;yInt=[vNy/N],或yInt=vNy>>M;当N为2的整数次幂的情况下所述M=log2N,(xInt,yInt)表示当前图像块中坐标为(x,y)的像素单元的整像素位置坐标,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。405、视频解码装置利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值。其中,所述Q为大于所述n的整数。在本发明一些可能的实施方式中,所述N的取值可以为预设的固定大小的 取值,所述Q可大于或等于所述N。其中,当N的取值可以为预设的固定大小的取值,表示利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量的精度,与所述当前图像块的尺寸之间没有必然关系。也就是说,基于本实施例的方案,例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程,便可以获得的预设的固定精度的像素预测值。例如所述W可等于2、3、4、5、6、8或者其他值。例如所述P可等于1、2、3、4、5、6、8、10、15、16、21、32、64或者其他值。例如所述Q可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述N可等于128、9、18、24、256、8、10、15、16、21、32、64或者其他值。例如所述n可等于8、2、4或者其他值。在本发明一些可能的实施方式中,所述N可为2的整数次幂,当然所述N也可为其它正整数。在本发明一些可能的实施方式中,所述利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,包括:利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。具体例如,可利用所述P个像素单元中的像素单元i的运动矢量,计算得到像素单元i的相位,基于像素单元i的相位确定像素单元i对应的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的像素单元i对应的相位数为Q的插值滤波器对像素单元i在参考图像中的相应参考 像素单元的像素进行插值滤波。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述像素单元i类似的方式进行插值滤波。在本发明一些可能实施方式中,利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1)。Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1)。其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述相位包括水平相位和竖直相位,其中,所述基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,包括:基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用滤波器系数与所述水平相位对应,其中,所述竖直插值滤波器使用滤波器系数与所述竖直相位对应。具体例如,可基于像素单元i的水平相位确定像素单元i的相位数为Q的水平插值滤波器,基于所述像素单元i的竖直相位确定像素单元i的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用的滤波器系数与所述像素单元i的水平相位对应,其中,所述竖直插值滤波器使用的滤波器系数与像素单元i的竖直相位对应。其中,上述像素单元i可为所述P个像素单元中的任意一个像素单元。例如,对于所述P个像素单元中的每个像素单元,均可按照与上述 像素单元i类似的方式确定相位数为Q的插值滤波器。可选的,在本发明的一些可能的实施方式中,所述利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波,包括:利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。此外,对于像素单元的相位为单相位(即只有水平相位或者竖直相位)的情况,则对像素单元的参考像素单元的像素执行一次插值滤波即可得到该像素单元的像素预测值。406、视频解码装置利用当前图像块的预测像素值和视频码流中的当前图像块的预测残差对当前图像块进行重建。由上可见,在本实施例的方案中,视频解码装置利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波 以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利于图像预测过程的计算复杂度。下面针对上述实施例中涉及到的确定包括W个运动信息单元的合并运动信息单元集e的一些可能的具体实施方式进行举例。其中,确定包括W个运动信息单元的合并运动信息单元集e可包括:从A个候选合并运动信息单元集之中确定出包含W个运动信息单元的合并运动信息单元集e;其中,所述A个候选合并运动信息单元集中的每个候选合并运动信息单元集所包含的每个运动信息单元,分别选自所述W个控制点中的每个控制点所对应的候选运动信息单元集中的符合约束条件的至少部分运动信息单元,所述A为正整数,其中,所述A个候选合并运动信息单元集互不相同,所述A个候选合并运动信息单元集中的每个候选合并运动信息单元集包括W个运动信息单元。可选的,在本发明一些可能实施方式中,所述A个候选合并运动信息单元集满足第一条件、第二条件、第三条件、第四条件和第五条件之中的至少一个条件,其中,所述第一条件包括所述A个候选合并运动信息单元集中的任意一个候选合并运动信息单元集中的运动信息单元所指示出的所述当前图像块的运动方式为非平动运动。所述第二条件包括所述A个候选合并运动信息单元集中的任意一个候选合并运动信息单元集中的2个运动信息单元对应的预测方向相同。所述第三条件包括所述A个候选合并运动信息单元集中的任意一个候选合并运动信息单元集中的2个运动信息单元对应的参考帧索引相同。所述第四条件包括所述A个候选合并运动信息单元集中的任意一个候选合并运动信息单元集中的2个运动信息单元的运动矢量水平分量的差值的绝对值小于或等于水平分量阈值,或者,所述A个候选合并运动信息单元集中的任 意一个候选合并运动信息单元集中的其中1个运动信息单元和控制点Z的运动矢量水平分量之间的差值的绝对值小于或等于水平分量阈值,所述当前图像块的所述控制点Z不同于所述W个控制点中的任意一个控制点。所述第五条件包括所述A个候选合并运动信息单元集中的任意一个候选合并运动信息单元集中的2个运动信息单元的运动矢量竖直分量的差值的绝对值小于或等于竖直分量阈值,或者,所述A个候选合并运动信息单元集中的其中一个候选合并运动信息单元集中的任意1个运动信息单元和控制点Z的运动矢量竖直分量之间的差值的绝对值小于或等于水平分量阈值,所述当前图像块的所述控制点Z不同于所述W个控制点中的任意一个控制点。可选的,在本发明一些可能的实施方式中,视频编码装置从A个候选合并运动信息单元集之中确定出包含W个运动信息单元的合并运动信息单元集e可以包括:基于失真或者率失真代价从A个候选合并运动信息单元集之中确定出包含W个运动矢量的合并运动信息单元集e。可选的,合并运动信息单元集e对应的率失真代价,小于或等于上述A个候选合并运动信息单元集中除合并运动信息单元集e之外的任意一个合并运动信息单元集对应的率失真代价。可选的,合并运动信息单元集e对应的失真,小于或者等于上述A个候选合并运动信息单元集中除合并运动信息单元集e之外的任意一个合并运动信息单元集对应的失真。其中,上述A个候选合并运动信息单元集之中的某个候选合并运动信息单元集(例如上述A个候选合并运动信息单元集中的合并运动信息单元集e)对应的率失真代价例如可以为利用该某个候选合并运动信息单元集(例如合并运动信息单元集e)对图像块(例如当前图像块)进行像素值预测而得到的该图像块的预测像素值所对应的率失真代价。其中,上述A个候选合并运动信息单元集之中的某个候选合并运动信息单元集(例如上述A个候选合并运动信息单元集中的合并运动信息单元集e)对应的失真,例如可为图像块(如当前图像块)的原始像素值与利用该某个候选合并运动信息单元集(如合并运动信息单元集e)对该图像块进行像素值预测 而得到的该图像块的预测像素值之间的失真(即,图像块的原始像素值与预测像素值之间的失真)。在本发明一些可能的实施方式中,图像块(如当前图像块)的原始像素值与利用该某个候选合并运动信息单元集(例如合并运动信息单元集e)对该图像块进行像素值预测而得到的该图像块的预测像素值之间的失真,具体例如可以为该图像块(例如当前图像块)的原始像素值与利用该某个候选合并运动信息单元集(例如合并运动信息单元集e)对该图像块进行像素值预测而得到的该图像块的预测像素值之间的平方误差和(SSD)或绝对误差和(SAD)或误差和或能够衡量失真的其他失真参量。下面举例一些确定当前图像块的W个控制点的可能方式。可选的,在本发明一些可能实施方式中,所述W个控制点包括所述当前图像块的左上控制点、右上控制点、左下控制点和中心控制点a1中的其中W个控制点。其中,所述当前图像块的左上控制点为所述当前图像块的左上顶点或所述当前图像块中的包含所述当前图像块的左上顶点的像素块;所述当前图像块的左下控制点为所述当前图像块的左下顶点或所述当前图像块中的包含所述当前图像块的左下顶点的像素块;所述当前图像块的右上控制点为所述当前图像块的右上顶点或者所述当前图像块中的包含所述当前图像块的右上顶点的像素块;所述当前图像块的中心素样本a1为所述当前图像块的中心像素点或所述当前图像块中的包含所述当前图像块的中心像素点的像素块。可选的,在本发明的一些可能实施方式中,所述当前图像块的左上控制点所对应的候选运动信息单元集包括x1个像素单元的运动信息单元,其中,所述x1个像素单元包括至少一个与所述当前图像块的左上控制点空域相邻的像素单元(例如图2-b中的图形块A、B和C)和/或至少一个与所述当前图像块的左上控制点时域相邻的像素单元,所述x1为正整数。例如,所述x1个像素单元可包括与所述当前图像块所属的视频帧时域相邻的视频帧之中的与所述当前图像块的左上控制点位置相同的像素单元、所述当前图像块的左边的空域相邻像素单元、所述当前图像块的左上的空域相邻像素 单元和所述当前图像块的上边的空域相邻像素单元中的至少一个。可选的,在本发明的一些可能实施方式中,所述当前图像块的右上控制点所对应的候选运动信息单元集包括x2个像素单元的运动信息单元,其中,所述x2个像素单元包括至少一个与所述当前图像块的右上控制点空域相邻的像素单元(例如图2-b中的图形块E和D等)和/或至少一个与所述当前图像块的右上控制点时域相邻的像素单元,其中,所述x2为正整数。例如,所述x2个像素单元可包括与所述当前图像块所属的视频帧时域相邻的视频帧之中的与所述当前图像块的右上控制点位置相同的像素单元、所述当前图像块的右边的空域相邻像素单元、所述当前图像块的右上的空域相邻像素单元和所述当前图像块的上边的空域相邻像素单元中的至少一个。可选的,在本发明一些可能实施方式中,所述当前图像块的左下控制点所对应的候选运动信息单元集包括x3个像素单元的运动信息单元,其中,所述x3个像素单元包括至少一个与所述当前图像块的左下控制点空域相邻的像素单元和/或至少一个与所述当前图像块的左下控制点时域相邻的像素单元,所述x3为正整数。例如,所述x3个像素单元可包括与所述当前图像块所属的视频帧时域相邻的视频帧之中的与所述当前图像块的左下控制点位置相同的像素单元、所述当前图像块的左边的空域相邻像素单元、所述当前图像块的左下的空域相邻像素单元和所述当前图像块的下边的空域相邻像素单元中的至少一个。可选的,在本发明一些可能实施方式中,所述当前图像块的中心控制点a1所对应的候选运动信息单元集包括x5个像素单元的运动信息单元,其中,所述x5个像素单元中的其中一个像素单元为像素单元a2。其中,所述中心控制点a1在所述当前图像块所属视频帧中的位置,与所述像素单元a2在所述当前图像块所属视频帧的相邻视频帧中的位置相同,所述x5为正整数。下面通过表举例像素单元相位和滤波器系数之间的一种对应关系。其中,表1举例的是增益缩放因子是256的64相位的插值滤波器的滤波器系数和像素单元相位之间的对应关系。表2举例的是增益缩放因子是64的64相位的插值滤波器的滤波器系数和像素单元相位之间的对应关系。表1相位滤波器系数0{0,0,0,256,0,0,0,0}1{0,1,-3,256,4,-2,0,0}2{0,2,-7,255,8,-3,1,0}3{-1,3,-10,255,12,-4,1,0}4{-1,4,-13,254,16,-5,2,-1}5{-1,5,-16,253,20,-7,2,0}6{-1,6,-18,251,25,-9,3,-1}7{-2,7,-21,250,29,-10,4,-1}8{-2,8,-23,248,34,-12,4,-1}9{-2,8,-25,246,38,-13,5,-1}10{-2,9,-27,244,43,-15,5,-1}11{-2,10,-30,242,48,-16,6,-2}12{-2,10,-31,239,52,-17,5,0}13{-2,10,-32,237,57,-18,6,-2}14{-2,11,-34,234,63,-21,7,-2}15{-2,11,-35,231,68,-21,6,-2}16{-3,13,-38,228,74,-24,9,-3}17{-2,12,-38,224,78,-24,7,-1}18{-3,14,-40,221,84,-27,10,-3}19{-2,12,-39,217,88,-27,8,-1}20{-3,13,-40,213,94,-28,9,-2}21{-3,15,-43,210,100,-31,11,-3}22{-3,13,-41,205,104,-30,9,-1}23{-3,12,-41,201,110,-31,9,-1}24{-3,15,-43,197,116,-35,12,-3}25{-3,14,-43,192,121,-35,12,-2}26{-2,13,-42,187,126,-35,10,-1}27{-3,14,-43,183,132,-37,12,-2}28{-2,13,-42,178,137,-38,12,-2}29{-3,14,-42,173,143,-39,12,-2}30{-3,15,-43,169,148,-41,14,-3}31{-3,13,-41,163,153,-40,13,-2}32{-3,13,-40,158,158,-40,13,-3}33{-2,13,-40,153,163,-41,13,-3}34{-3,14,-41,148,169,-43,15,-3}35{-2,12,-39,143,173,-42,14,-3}36{-2,12,-38,137,178,-42,13,-2}37{-2,12,-37,132,183,-43,14,-3}38{-1,10,-35,126,187,-42,13,-2}39{-2,12,-35,121,192,-43,14,-3}40{-3,12,-35,116,197,-43,15,-3}41{-1,9,-31,110,201,-41,12,-3}42{-1,9,-30,104,205,-41,13,-3}43{-3,11,-31,100,210,-43,15,-3}44{-2,9,-28,94,213,-40,13,-3}45{-1,8,-27,88,217,-39,12,-2}46{-3,10,-27,84,221,-40,14,-3}47{-1,7,-24,78,224,-38,12,-2}48{-3,9,-24,74,228,-38,13,-3}49{-2,6,-21,68,231,-35,11,-2}50{-2,7,-21,63,234,-34,11,-2}51{-2,6,-18,57,237,-32,10,-2}52{0,5,-17,52,239,-31,10,-2}53{-2,6,-16,48,242,-30,10,-2}54{-1,5,-15,43,244,-27,9,-2}55{-1,5,-13,38,246,-25,8,-2}56{-1,4,-12,34,248,-23,8,-2}57{-1,4,-10,29,250,-21,7,-2}58{-1,3,-9,25,251,-18,6,-1}59{0,2,-7,20,253,-16,5,-1}60{-1,2,-5,16,254,-13,4,-1}61{0,1,-4,12,255,-10,3,-1}62{0,1,-3,8,255,-7,2,0}63{0,0,-2,4,256,-3,1,0}表2相位滤波器系数0{0,0,0,64,0,0,0,0}1{0,0,-1,64,1,0,0,0}2{0,0,-2,64,3,-1,0,0}3{0,1,-2,64,3,-2,0,0}4{0,1,-3,63,4,-1,0,0}5{0,1,-4,63,5,-2,1,0}6{0,1,-4,63,6,-2,1,-1}7{0,1,-5,62,7,-2,1,0}8{0,2,-6,62,8,-3,1,0}9{0,1,-6,62,10,-3,1,-1}10{0,2,-7,61,11,-3,1,-1}11{-1,3,-7,60,12,-4,1,0}12{0,2,-8,60,13,-4,1,0}13{0,2,-8,59,14,-4,1,0}14{0,3,-8,58,16,-5,1,-1}15{0,3,-9,58,17,-5,1,-1}16{-1,3,-9,57,18,-6,2,0}17{-1,3,-9,56,19,-6,2,0}18{-1,3,-10,55,21,-6,2,0}19{-1,3,-10,54,22,-7,2,1}20{0,3,-10,53,23,-7,2,0}21{-1,3,-10,52,25,-7,2,0}22{-1,3,-10,51,26,-8,2,1}23{0,3,-10,50,27,-8,2,0}24{-1,3,-10,49,29,-8,2,0}25{-1,3,-10,48,30,-8,2,0}26{-1,3,-10,47,32,-9,2,0}27{-1,3,-11,46,33,-9,3,0}28{-1,3,-10,44,34,-9,3,0}29{-1,3,-10,43,36,-9,3,-1}30{-1,3,-10,42,37,-10,3,0}31{-1,4,-10,41,38,-10,3,-1}32{-1,4,-11,40,40,-11,4,-1}33{-1,3,-10,38,41,-10,4,-1}34{0,3,-10,37,42,-10,3,-1}35{-1,3,-9,36,43,-10,3,-1}36{0,3,-9,34,44,-10,3,-1}37{0,3,-9,33,46,-11,3,-1}38{0,2,-9,32,47,-10,3,-1}39{0,2,-8,30,48,-10,3,-1}40{0,2,-8,29,49,-10,3,-1}41{0,2,-8,27,50,-10,3,0}42{1,2,-8,26,51,-10,3,-1}43{0,2,-7,25,52,-10,3,-1}44{0,2,-7,23,53,-10,3,0}45{1,2,-7,22,54,-10,3,-1}46{0,2,-6,21,55,-10,3,-1}47{0,2,-6,19,56,-9,3,-1}48{0,2,-6,18,57,-9,3,-1}49{-1,1,-5,17,58,-9,3,0}50{-1,1,-5,16,58,-8,3,0}51{0,1,-4,14,59,-8,2,0}52{0,1,-4,13,60,-8,2,0}53{0,1,-4,12,60,-7,3,-1}54{-1,1,-3,11,61,-7,2,0}55{-1,1,-3,10,62,-6,1,0}56{0,1,-3,8,62,-6,2,0}57{0,1,-2,7,62,-5,1,0}58{-1,1,-2,6,63,-4,1,0}59{0,1,-2,5,63,-4,1,0}60{0,0,-1,4,63,-3,1,0}61{0,0,-2,3,64,-2,1,0}62{0,0,-1,3,64,-2,0,0}63{0,0,0,1,64,-1,0,0}举例来说,当像素单元的水平相位x=12,如果使用增益缩放因子是256的64相位的插值滤波器,则水平插值滤波结果S可表示如下:S=((-2)×x0+10×x1+(-31)×x2+239×x2+52×x4+(-17)×x5+5×x6+0×x7)+offset)/256可插值滤波结果S来得到像素单元的预测像素值,其中,offset可以是任意整数。下面通过一些测试数据来体现本发明实施例方案的技术效果。其中,表3和表4给出了传统方案和本发明实施例方案的一些测试性能的对比。表3给出了传统方案测试性能,表4给出了本发明一些实施例方案的测试性能。表3表4对比上面的两个表可以发现,本发明实施例的技术方案相对于现有技术在编解码性能上有较大的提高。下面还提供用于实施上述方案的相关装置。参见图5,本发明实施例提供一种图像预测装置500,可以包括:第一确定单元510、计算单元520和插值滤波单元540。第一确定单元510,用于确定当前图像块中的W个控制点的运动矢量。计算单元520,用于利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量,其中,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度,所述P个像素单元为所述当前图像块的部分或全部像素单元。其中,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元,其中,所述W、所述n和所述N为大于1的整数,所述N大于所述n,所述P为正整数。插值滤波单元540,用于利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值。其中,图像预测装置500还可包括:第二确定单元530,用于利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元。可选的,在本发明的一些可能的实施方式中,所述N的取值为预设的固定大小的取值,所述Q小于或等于所述N。可选的,在本发明的一些可能的实施方式中,在所述运动模型中利用所述N对所述W个控制点的运动矢量中的一个运动矢量的水平分量或者竖直分量放大N倍;或在所述运动模型中利用所述N对所述W个控制点中的任意两个控制点的运动矢量分量差值放大N倍。可选的,在本发明的一些可能的实施方式中,所述第二确定单元530具体用于:利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;利用所述P个像素单元中的每个像素单元的运动矢量,在参考图像中查找与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,为所述P个像素单元中的每个像素单元在参考图像中的参考像素单元。可选的,在本发明的一些可能的实施方式中,在利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置的方面,所述第二确定单元530具体用于:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;xInt=[vNx/N],或xInt=vNx>>M;yInt=[vNy/N],或yInt=vNy>>M;其中,当N为2的整数次幂的情况下所述M=log2N,(xInt,yInt)表示当前图像块中坐标为(x,y)的像素单元的整像素位置坐标,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述插值滤波单元具体用于,利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,所述插值滤波器使用滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器,对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。可选的,在本发明的一些可能的实施方式中,在利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位的方面,所述插值滤波单元具体用于按照如下公式,所述利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1);Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1);其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述相位包括水平相位和竖 直相位,其中,在基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器的方面,所述插值滤波单元具体用于,基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,所述水平插值滤波器使用的滤波器系数与所述水平相位对应,所述竖直插值滤波器使用滤波器系数与所述竖直相位对应。可选的,在本发明的一些可能的实施方式中,在所述利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波的方面,所述插值滤波单元具体用于,利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元;可选的,在本发明的一些可能的实施方式中,所述运动模型为平动运动模型、仿射运动模型、旋转运动模型、缩放运动模型、抛物线运动模型、剪切运动模型、透视运动模型或双线性运动模型。可选的,在本发明的一些可能的实施方式中,在所述W等于2的情况下,所述运动模型表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,在所述W等于3的情况下,所述运动模型表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h 表示所述当前图像块的高。可选的,在本发明的一些可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。可选的,在本发明的一些可能的实施方式中,所述图像预测装置500应用于视频编码装置中或者所述图像预测装置500应用于视频解码装置中。可以理解的是,本实施例的图像预测装置600的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。图像预测装置600可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机等设备。可以看出,本实施例提供应图像预测方法中,图像预测装置500利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利于图像预测过程的计算复杂度。参见图6,图6是本发明的另一实施例提供的图像预测装置600的结构框图。其中,图像预测装置600可包括:至少1个处理器601,存储器605和至少1个通信总线602。其中,通信总线602用于实现这些组件之间的连接通信。其中,该图像预测装置600可选的可以包含至少1个网络接口604和/或用户接口603,用户接口603可以包括显示器(例如全息成像(Holographic)、阴极 射线管或者投影(Projector)等)、点击设备(例如鼠标或轨迹球(trackball)触感板或触摸屏等)、摄像头和/或拾音装置等。其中,存储器605可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器605中的一部分还可以包括非易失性随机存取存储器。在一些实施方式中,存储器605存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统6051,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。应用程序模块6052,包含各种应用程序,用于实现各种应用业务。在本发明的实施例中,通过调用存储器605存储的程序或指令,处理器601用于,确定当前图像块中的W个控制点的运动矢量;利用运动模型和所述W个控制点的运动矢量计算得到所述当前图像块的P个像素单元的运动矢量,所述确定的所述W个控制点的运动矢量的精度为1/n像素精度,所述计算得到的所述P个像素单元中的每个像素单元的运动矢量的精度为1/N像素精度,所述P个像素单元为所述当前图像块的部分或全部像素单元,所述P个像素单元中的每个像素单元的运动矢量用于确定相应像素单元在参考图像中的对应参考像素单元,其中,所述W、所述n和所述N为大于1的整数,所述N大于所述n,所述P为正整数;利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波,以得到所述P个像素单元中的每个像素单元的像素预测值,所述Q为大于所述n的整数。可选的,在本发明的一些可能的实施方式中,所述N的取值为预设的固定大小的取值,所述Q小于或等于所述N。可选的,在本发明的一些可能的实施方式中,在所述运动模型中利用所述N对所述W个控制点的运动矢量中的一个运动矢量的水平分量或者竖直分量放大N倍;或在所述运动模型中利用所述N对所述W个控制点中的任意两个控制点的运动矢量分量差值放大N倍。可选的,在本发明的一些可能的实施方式中,处理器利用所述P个像素单元中的每个像素单元的运动矢量确定所述P个像素单元中的每个像素单元在参 考图像中的参考像素单元包括:利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;利用所述P个像素单元中的每个像素单元的运动矢量,在参考图像中查找与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,其中,在参考图像中查找到的与所述P个像素单元中的每个像素单元的整像素位置对应的参考像素单元,为所述P个像素单元中的每个像素单元在参考图像中的参考像素单元。可选的,在本发明的一些可能的实施方式中,处理器利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的整像素位置;xInt=[vNx/N],或xInt=vNx>>M;yInt=[vNy/N],或yInt=vNy>>M;其中,当N为2的整数次幂的情况下所述M=log2N,(xInt,yInt)表示当前图像块中坐标为(x,y)的像素单元的整像素位置坐标,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,处理器利用相位数为Q的插值滤波器对所述P个像素单元中的每个像素单元在参考图像中的参考像素单元的像素进行插值滤波,包括:利用所述P个像素单元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位,基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,所述插值滤波器使用的滤波器系数与所述相位对应;利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波。可选的,在本发明的一些可能的实施方式中,处理器利用所述P个像素单 元中的每个像素单元的运动矢量,计算得到所述P个像素单元中的每个像素单元的相位包括:按照如下公式,利用所述P个像素单元中的每个像素单元的运动矢量计算得到所述P个像素单元中的每个像素单元的相位,X’=abs(vNx)%N,或X’=vNx&((1<<M)-1);Y’=abs(vNy)%N,或Y’=vNy&((1<<M)-1);其中,当N为2的整数次幂的情况下所述M=log2N,其中,所述X’表示当前图像块中坐标为(x,y)的像素单元的水平相位,所述Y’表示当前图像块中坐标为(x,y)的像素单元的竖直相位,其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,所述相位包括水平相位和竖直相位,其中,处理器基于所述每个像素单元的相位确定相应像素单元的相位数为Q的插值滤波器,包括:基于所述每个像素单元的水平相位确定相应像素单元的相位数为Q的水平插值滤波器,基于所述每个像素单元的竖直相位确定相应像素单元的相位数为Q的竖直插值滤波器,其中,所述水平插值滤波器使用的滤波器系数与所述水平相位对应,其中,所述竖直插值滤波器使用的滤波器系数与所述竖直相位对应。可选的,在本发明的一些可能的实施方式中,处理器利用确定的所述每个像素单元对应的相位数为Q的插值滤波器对相应像素单元在参考图像中的相应参考像素单元的像素进行插值滤波,包括:利用确定的像素单元i对应的相位数为Q的水平插值滤波器,对所述像素单元i在参考图像中的相应参考像素单元的像素进行水平插值滤波,以得到水平插值滤波结果;利用确定的所述像素单元i对应的相位数为Q的竖直插值滤波器对所述水平插值滤波结果进行竖直插值滤波,以得到所述像素单元i的像素预测值,其中,所述像素单元i为所述P像素单元中的任意1个像素单元;或者,利用确定的像素单元j对应的相位数为Q的竖直插值滤波器,对所述像素单 元j在参考图像中的相应参考像素单元的像素进行竖直插值滤波,以得到竖直插值滤波结果;利用确定的所述像素单元j对应的相位数为Q的水平插值滤波器对所述水平插值滤波结果进行水平插值滤波,以得到所述像素单元j的像素预测值,其中,所述像素单元j为所述P个像素单元中的任意1个像素单元。可选的,在本发明的一些可能的实施方式中,所述运动模型为平动运动模型、仿射运动模型、旋转运动模型、抛物线运动模型、剪切运动模型、缩放运动模型、透视运动模型或双线性运动模型。可选的,在本发明的一些可能的实施方式中,在所述W等于2的情况下,所述运动模型表示为:vNx=((v1x-v0x)×NLx-(v1y-v0y)×NLy+Nv0x)/nvNy=((v1y-v0y)×NLx+(v1x-v0x)×NLy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)Lx-(v1y-v0y)×(N/n)Ly+(N/n)v0xvNy=(v1y-v0y)×(N/n)Lx+(v1x-v0x)×(N/n)Ly+(N/n)v0y;]]>其中,所述L表示所述当前图像块的宽或高,(v0x,v0y)和(v1x,v1y)表示2个控制点的1/n像素精度的运动矢量,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量。可选的,在本发明的一些可能的实施方式中,在所述W等于3的情况下,所述运动模型表示为:vNx=((v1x-v0x)×Nwx+(v2x-v0x)×Nhy+Nv0x)/nvNy=((v1y-v0y)×Nwx+(v2y-v0y)×Nhy+Nv0y)/n;]]>或,vNx=(v1x-v0x)×(N/n)wx+(v2x-v0x)×(N/n)hy+(N/n)v0xvNy=(v1y-v0y)×(N/n)wx+(v2y-v0y)×(N/n)hy+(N/n)v0y;]]>其中,所述vNx表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量水平分量,所述vNy表示当前图像块中坐标为(x,y)的像素单元的1/N像素精度的运动矢量竖直平分量,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)表示3个控制点的1/n像素精度的运动矢量,所述w表示所述当前图像块的宽,所述h表示所述当前图像块的高。可选的,在本发明的一些可能的实施方式中,所述W个控制点的运动矢量预测自所述当前图像块周边的已编码图像块或已解码图像块的精度为1/n像素精度的运动矢量。可选的,在本发明的一些可能的实施方式中,所述N的取值为预设的固定取值。可选的,在本发明的一些可能的实施方式中,所述图像预测装置600应用于视频编码装置中或者所述图像预测装置600应用于视频解码装置中。可以理解的是,本实施例的图像预测装置600的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。图像预测装置600可为任何需要输出、播放视频的装置,如笔记本电脑,平板电脑、个人电脑、手机等设备。可以看出,本实施例提供应图像预测方法中,图像预测装置600利用运动模型和所述W个控制点的1/n像素精度的运动矢量,计算得到所述当前图像块的每个像素单元的1/N像素精度的运动矢量,N大于n,也就是说,计算得到的所述当前图像块的每个像素单元的运动矢量的精度,高于所述确定的所述W个控制点的运动矢量的精度。由于先得到了较高精度的运动矢量,当前图像块的每个像素单元的较高精度的运动矢量用于确定所述当前图像块的每个像素单元在参考图像中的对应参考像素单元,利用相位数为Q(Q大于n)的插值滤波 器对所述当前图像块的每个像素单元在参考图像中的对应参考像素单元的像素进行插值滤波以得到当前图像块的每个像素单元的像素预测值,可见通过上述方式有利于减少预测获得当前图像块较高精度的像素预测值所需插值滤波的次数(例如可无需执行通过低精度插值滤波来得到低精度像素预测值的中间过程),进而有利于降低图像预测过程中插值滤波所需要的中间缓存和内存操作次数,进而有利于图像预测过程的计算复杂度。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或 者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,以上实施例仅用以说明本发明技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,其中,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1