视频图像编码和解码的方法、编码设备和解码设备与流程

文档序号:16278153发布日期:2018-12-14 22:43阅读:294来源:国知局
视频图像编码和解码的方法、编码设备和解码设备与流程

本发明涉及视频图像处理领域,尤其涉及视频图像编码和解码的方法、编码设备和解码设备。

背景技术

随着互联网科技的迅猛发展以及人们物质精神文化的日益丰富,在互联网中针对视频的应用需求尤其是针对高清视频的应用需求越来越多,而高清视频的数据量非常大,要想高清视频能在带宽有限的互联网中传输,必须首先解决的问题就是高清视频压缩编码问题。目前,国际上有两个国际组织专门进行视频编码标准的制定工作,即国际标准化组织(internationalorganizationforstandardization,简称为“iso”)/国际电工委员会(internationalelectrotechnicalcommission,简称为“iec”)下的运动图像专家组(motionpictureexpertsgroup,简称为“mpeg”)和国际电信联盟电信标准化组(internationaltelecommunicationunion-telecommunicationstandardizationsector,简称为“itu-t”)的视频编码专家组(videocodingexpertsgroup,简称为“vceg”)。成立于1986年的mpeg专门负责制定多媒体领域内的相关标准,主要应用于存储、广播电视、因特网或无线网上的流媒体等。itu-t则主要制定面向实时视频通信领域的视频编码标准,如视频电话、视频会议等应用。

在过去的几十年里,国际上已经成功制定了面向各种应用的视频编码标准,主要包括:用于影音光碟(videocompactdisc,简称为“vcd”)的mpeg-1标准,用于竖直多功能光盘(digitalvideodisc,简称为“dvd”)和数字视频广播(digitalvideobroadcasting,简称为“dvb”)的mpeg-2标准,用于视频会议的h.261标准以及h.263标准、h.264标准,允许对任意形状的对象编码的mpeg-4标准,以及最新的高性能视频编码(highefficiencyvideocoding,简称为“hevc”)标准。

相比于最新的视频编码标准hevc,对于包含旋转、缩放运动的序列,基于线性变化的运动矢量场的运动补偿预测技术可以显著提高编码性能,在现有的基于仿射变换的运动补偿预测技术中,在获得图像块的仿射变换参数后,要计算图像块内每个点的运动矢量,根据每个点的运动矢量做运动补偿预测,从而获取每个点的运动补偿预测信号。由于图像块内每个点的运动矢量都可能不同,需要根据运动矢量为每个点进行不同的操作。基于点的运动补偿预测复杂度很高,为了降低编解码的复杂度,相关技术尝试在图像块内再划分子图像块,求得每个子图像块的运动矢量,再获得每个子图像块的运动补偿预测信号。

但是,相关技术中的子图像块的大小是固定的,子图像块过小会导致较高的编解码的复杂度,子图像块过大会降低编解码性能。



技术实现要素:

本发明提供了一种视频图像编码和解码的方法、编码设备和解码设备,可以通过选取合适大小的子图像块,降低编解码的复杂度,提升编解码性能。

第一方面,提供了一种视频图像编码的方法,包括:确定仿射图像块的运动矢量差异;确定该仿射图像块的运动矢量精度;根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;根据该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理。

结合第一方面,在第一方面的第一种可能的实现方式中,该确定仿射图像块的运动矢量差异,包括:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,该根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量,包括:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;

其中,该根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量,包括:确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,该方法还包括:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值,包括:根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;

其中,该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

结合第一方面的第二种可能的实现方式,在第一方面的第四种可能的实现方式中,该方法还包括:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值,包括:将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;

其中,该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

结合第一方面的第二种可能的实现方式,在第一方面的第五种可能的实现方式中,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:

确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

结合第一方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第一方面的第六种可能的实现方式中,该根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定仿射运动补偿子图像块的大小,包括:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第一方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第一方面的第七种可能的实现方式中,该根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,包括:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第一方面的第一种至第七种可能的实现方式中任一可能的实现方式,在第一方面的第八种可能的实现方式中,该第一控制点与该第三控制点为同一个像素点。

结合第一方面的第一种至第八种可能的实现方式中任一可能的实现方式,在第一方面的第九种可能的实现方式中,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

结合第一方面的第七种可能的实现方式,在第一方面的第十种可能的实现方式中,该第一预设值为4,和/或,该第二预设值为4。

结合第一方面,第一方面的第一种至第十种可能的实现方式中任一可能的实现方式,在第一方面的第十一种可能的实现方式中,该确定该仿射图像块的运动矢量精度,包括:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

结合第一方面,第一方面的第一种至第十一种可能的实现方式中任一可能的实现方式,在第一方面的第十二种可能的实现方式中,该根据该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理,包括:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行编码。

结合第一方面的第十二种可能的实现方式,在第一方面的第十三种可能的实现方式中,该方法还包括:对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

结合第一方面的第十三种可能的实现方式,在第一方面的第十四种可能的实现方式中,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

第二方面,提供了一种视频图像解码的方法,包括:确定仿射图像块的运动矢量差异;确定该仿射图像块的运动矢量精度;根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

结合第二方面,在第二方面的第一种可能的实现方式中,该确定仿射图像块的运动矢量差异,包括:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量,包括:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;

其中,该根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量,包括:确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,该方法还包括:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值,包括:根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;

其中,该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

结合第二方面的第二种可能的实现方式,在第二方面的第四种可能的实现方式中,该方法还包括:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值,包括:将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;

其中,该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

结合第二方面的第二种可能的实现方式,在第二方面的第五种可能的实现方式中,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;该确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值,包括:

确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

结合第二方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第二方面的第六种可能的实现方式中,该根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定仿射运动补偿子图像块的大小,包括:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第二方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第二方面的第七种可能的实现方式中,该根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,包括:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第二方面的第一种至第七种可能的实现方式中任一可能的实现方式,在第二方面的第八种可能的实现方式中,该第一控制点与该第三控制点为同一个像素点。

结合第二方面的第一种至第八种可能的实现方式中任一可能的实现方式,在第二方面的第九种可能的实现方式中,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

结合第二方面的第七种可能的实现方式,在第二方面的第十种可能的实现方式中,该第一预设值为4,和/或,该第二预设值为4。

结合第二方面,第二方面的第一种至第十种可能的实现方式中任一可能的实现方式,在第二方面的第十一种可能的实现方式中,该确定该仿射图像块的运动矢量精度,包括:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

结合第二方面,第二方面的第一种至第十一种可能的实现方式中任一可能的实现方式,在第二方面的第十二种可能的实现方式中,该根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理,包括:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行解码。

结合第二方面的第十二种可能的实现方式,在第二方面的第十三种可能的实现方式中,该方法还包括:对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

结合第二方面的第十三种可能的实现方式,在第二方面的第十四种可能的实现方式中,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

第三方面,提供了一种编码设备,包括:第一确定模块,用于确定仿射图像块的运动矢量差异;第二确定模块,用于确定该仿射图像块的运动矢量精度;第三确定模块,用于根据该第一确定模块确定的该运动矢量差异、该第二确定模块确定的该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;编码模块,用于根据该第三确定模块确定的该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理。

结合第三方面,在第三方面的第一种可能的实现方式中,该第一确定模块具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,该第一确定模块具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,该第一确定模块具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

结合第三方面的第二种可能的实现方式,在第三方面的第四种可能的实现方式中,该第一确定模块具体用于:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

结合第三方面的第二种可能的实现方式,在第三方面的第五种可能的实现方式中,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该第一确定模块具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

结合第三方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第三方面的第六种可能的实现方式中,该第三确定模块具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第三方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第三方面的第七种可能的实现方式中,该第三确定模块具体用于:在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第三方面的第一种至第七种可能的实现方式中任一可能的实现方式,在第三方面的第八种可能的实现方式中,该第一控制点与该第三控制点为同一个像素点。

结合第三方面的第一种至第八种可能的实现方式中任一可能的实现方式,在第三方面的第九种可能的实现方式中,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

结合第三方面的第七种可能的实现方式,在第三方面的第十种可能的实现方式中,该第一预设值为4,和/或,该第二预设值为4。

结合第三方面,第三方面的第一种至第十种可能的实现方式中任一可能的实现方式,在第三方面的第十一种可能的实现方式中,该第二确定模块具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

结合第三方面,第三方面的第一种至第十一种可能的实现方式中任一可能的实现方式,在第三方面的第十二种可能的实现方式中,该编码模块具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行编码。

结合第三方面的第十二种可能的实现方式,在第三方面的第十三种可能的实现方式中,该编码设备还包括:滤波模块,用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

结合第三方面的第十三种可能的实现方式,在第一方面的第十四种可能的实现方式中,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

第四方面,提供了一种解码设备,包括:第一确定模块,用于确定仿射图像块的运动矢量差异;第二确定模块,用于确定该仿射图像块的运动矢量精度;第三确定模块,用于根据该第一确定模块确定的该运动矢量差异、该第二确定模块确定的该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;解码模块,用于根据该第三确定模块确定的该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

结合第四方面,在第四方面的第一种可能的实现方式中,该第一确定模块具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

结合第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,该第一确定模块具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

结合第四方面的第二种可能的实现方式,在第四方面的第三种可能的实现方式中,该第一确定模块具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

结合第四方面的第二种可能的实现方式,在第四方面的第四种可能的实现方式中,该第一确定模块具体用于确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

结合第四方面的第二种可能的实现方式,在第四方面的第五种可能的实现方式中,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该第一确定模块具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

结合第四方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第四方面的第六种可能的实现方式中,该第三确定模块具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第四方面的第三种至第五种可能的实现方式中任一可能的实现方式,在第四方面的第七种可能的实现方式中,该第三确定模块具体用于:在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

结合第四方面的第一种至第七种可能的实现方式中任一可能的实现方式,在第四方面的第八种可能的实现方式中,该第一控制点与该第三控制点为同一个像素点。

结合第四方面的第一种至第八种可能的实现方式中任一可能的实现方式,在第四方面的第九种可能的实现方式中,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

结合第四方面的第七种可能的实现方式,在第四方面的第十种可能的实现方式中,该第一预设值为4,和/或,该第二预设值为4。

结合第四方面,第四方面的第一种至第十种可能的实现方式中任一可能的实现方式,在第四方面的第十一种可能的实现方式中,该第二确定模块具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

结合第四方面,第四方面的第一种至第十一种可能的实现方式中任一可能的实现方式,在第四方面的第十二种可能的实现方式中,该解码模块具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行解码。

结合第四方面的第十二种可能的实现方式,在第四方面的第十三种可能的实现方式中,该解码设备还包括:滤波模块,用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

结合第四方面的第十三种可能的实现方式,在第四方面的第十四种可能的实现方式中,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

基于上述技术方案,本发明实施例的视频图像编码和解码的方法、编码设备和解码设备,根据仿射图像块的运动矢量差异、仿射图像块的运动矢量精度和仿射图像块中的控制点之间的距离,确定仿射图像块中的仿射运动补偿子图像块的大小,由此,在编解码过程中能够通过选取合适大小的子图像块,降低编解码的复杂度,提升编解码性能。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的视频图像编码的方法的示意性流程图;

图2是根据本发明实施例的视频图像编码的方法的另一示意性流程图;

图3是根据本发明实施例的视频图像编码的方法的再一示意性流程图;

图4是根据本发明实施例的视频图像编码的方法的再一示意性流程图;

图5是根据本发明实施例的仿射图像块及控制点的示意图;

图6是根据本发明实施例的仿射图像块中三个不重合像素点的示意图;

图7是根据本发明实施例的仿射图像块的另一示意图;

图8是根据本发明实施例的视频图像编码的方法的再一示意性流程图;

图9是根据本发明实施例的视频图像编码的方法的再一示意性流程图;

图10是根据本发明实施例的视频图像编码的方法的再一示意性流程图;

图11是根据本发明实施例的仿射图像块的再一示意图;

图12是根据本发明实施例的视频图像解码的方法的示意性流程图;

图13是根据本发明实施例的视频图像解码的方法的另一示意性流程图;

图14是根据本发明实施例的视频图像解码的方法的再一示意性流程图;

图15是根据本发明实施例的视频图像解码的方法的再一示意性流程图;

图16是根据本发明实施例的视频图像解码的方法的再一示意性流程图;

图17是根据本发明实施例的视频图像解码的方法的再一示意性流程图;

图18是根据本发明实施例的视频图像解码的方法的再一示意性流程图;

图19是根据本发明实施例的编码设备的示意性框图;

图20是根据本发明实施例的编码设备的另一示意性框图;

图21是根据本发明实施例的解码设备的示意性框图;

图22是根据本发明实施例的解码设备的另一示意性框图;

图23是根据本发明另一实施例的编码设备的示意性框图;

图24是根据本发明另一实施例的解码设备的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了根据本发明实施例的视频图像编码的方法的示意性流程图。图1所示的方法可以由编码设备执行,例如编码器,具体地,如图1所示,方法1000包括:

s1100,确定仿射图像块的运动矢量差异;

s1200,确定该仿射图像块的运动矢量精度;

s1300,根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;

s1400,根据该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理。

具体而言,编码设备根据确定的控制点,确定仿射图像块的运动矢量差异,并确定该仿射图像块的运动矢量精度,根据确定的运动矢量差异、运动矢量精度和控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行编码处理。

因此,本发明实施例的视频图像编码的方法,编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

应理解,在本发明实施例中,该仿射图像(affine)块为图像块内所有单元的运动矢量符合相同的仿射模型,例如,同一个仿射模型,并可以用相同的参数,例如同一组参数来表示的图像块。其中单元是指一组像素,例如,可以是一个像素点,也可以是1×3,2×4等的块结构,本发明对此不作限定。

应理解,在本发明实施例中,仿射运动补偿子图像(affinemotioncompensation,简称为“affine-mc”)块为affine块内部划分出来的用来做运动补偿预测的子图像块,每个affine-mc块的大小可以相同也可以不同,本发明对此不作限定。

还应理解,在本发明实施例中,可以选择任意不重合的像素点作为控制点来确定affine块的运动矢量差异,本发明对此不作限定。

优选地,如图2所示,s1100包括:

s1101,根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;

s1102,根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

应理解,在本发明实施例中,该运动矢量差异的第一分量指该运动矢量差异的水平分量,该运动矢量差异的第二分量指该运动矢量差异的竖直分量。

还应理解,在本发明实施例中,第一、第二、第三和第四只是为了区分像素点,而不应该对本发明的保护范围构成任何限定,例如,第一控制点也可以称为第二控制点,第二控制点可以成为第一控制点等。

在本发明实施例中,可选地,该第一控制点和该第三控制点为同一个像素点,也就是说,选取的控制点的个数为3个,并且3个控制点中的一个控制点与其他2个控制点中的一个控制点位于同一水平线上,与其他2个控制点中的另一个控制点位于同一竖直线上。

在本发明实施例中,可选地,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该affine块的顶点,假设一个affine块的4个顶点分别标记为左上角顶点、左下角顶点、右上角顶点和右下角顶点,可以选择位于两个正交方向上的任意三个顶点来确定该affine块的运动矢量差异,例如,可以选择左上角顶点、左下角顶点和右上角顶点,可以选择左上角顶点、右上角顶点和右下角顶点,本发明对此不作限定。

在本发明实施例中,可选地,可以将第一控制点与第二控制点的运动矢量的两个方向上的分量中任意一个方向上的分量的差值确定为该affine块的运动矢量差异的第一分量,可以将第三控制点与第四控制点的运动矢量的两个方向上的分量中任意一个方向上的分量的差值确定为该affine块的运动矢量差异的第二分量;还可以根据实际对编码复杂度和编码性能的要求,选择介于第一控制点与第二控制点的运动矢量的两个方向上的分量的两个差值之间的数值确定为该第一分量,选择介于第三控制点与第四控制点的运动矢量的两个方向上的分量的两个差值之间的数值确定为该第二分量,本发明对此不作限定。

可选地,如图3所示,s1101具体包括:

s1103,确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;

s1104,将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;

相应的,如图4所示,s1102具体包括:

s1105,确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;

s1106,将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

也就是说,如果用vx(x,y)和vy(x,y)表示位置为(x,y)的像素点的运动矢量的水平分量和竖直分量,则可以根据公式(1)和(2)确定affine块的运动矢量差异:

δmvhor=max(vx(x+w,y)-vx(x,y),vy(x+w,y)-vyx,y)(1)

δmvver=max(vx(x',y'+h)-vx(x',y'),vy(x',y'+h)-vy(x',y'))(2)

其中,max表示取最大值,δmvhor表示affine块的运动矢量差异的水平分量,δmvver表示affine块的运动矢量差异的竖直分量,w表示第一控制点与第二控制点的第一水平距离,h表示第三控制点与第四控制点的第一竖直距离。

在本发明实施例中,可选地,可以确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;

相应地,s1103具体为:根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;

s1105具体为:根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在本发明实施例中,可选地,仿射变换模型可以采用现有技术中的6参数仿射变换模型,也可以采用4参数或2参数仿射变换模型,在6参数仿射变换模型中,假设(x,y)为像素点p在当前图像中的坐标,(x′,y′)为像素点p在参考图像中匹配的像素点p'的坐标,a,b,c,d,e,f为仿射变换参数。若已知仿射变换参数,即可求得像素点(x,y)在参考图像中的位置(x′,y′),从而可以从参考图像中获得像素点的预测信号:

x′=ax+by+e(3)

y′=cx+dy+f(4)

通常情况下,仿射变换参数可以根据图像块中部分像素点的运动矢量计算得到,运动矢量的水平分量和竖直分量可分别表示为公式(5)和(6):

vx=x-x'(5)

vy=y-y'(6)

将公式(3)带入公式(5)中,将公式(4)带入公式(6)中,得到坐标为(x,y)的像素点的运动矢量的水平分量和竖直分量分别为公式(7)和(8):

vx=(1-a)x-by-e(7)

vy=(1-d)y-cx-f(8)

将公式(7)带入公式(1)中,将公式(8)带入公式(2)中,公式(1)和(2)分别转变为公式(9)和(10):

δmvhor=max((1-a)w,-cw)

(9)

δmvver=max(-bh,(1-d)h)(10)

通过确定仿射变换参数a、b、c和d,以及控制点之间的距离就可以确定affine块的运动矢量差异的第一分量和第二分量。

应理解,在采用4参数仿射变换模型或2参数仿射变换模型时,确定运动矢量差异的方法和采用6参数仿射变换模型时的确定方法本质上是相同的,为了简便,在此不再赘述。

在本发明实施例中,可选地,在编码过程中,仿射变换参数可以通过对各个系数进行迭代计算得到,比如将系数a加1,判断在该模型下运动补偿预测信号是否是最优。仿射变换参数也可以是根据邻近affine块的仿射变换系数推导得到的。但本发明并不限于此。

在本发明实施例中,可选地,可以确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;

相应地,s1103具体为:将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;

s1105具体为:将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

具体而言,可以直接确定出控制点的运动矢量,通过将运动矢量的各分量分别作差,就可以直接得到affine块的运动矢量差异的第一分量和第二分量。

例如,图5是根据本发明实施例的仿射图像块及控制点的示意图。其中两个控制点a和b在同一水平线上,距离为w,两个控制点c和d在同一竖直线上,距离为h,如果已知控制点a、b、c和d点的运动矢量,则可以根据公式(11)和(12)确定affine块的运动矢量差异的第一分量和第二分量:

δmvhor=max(vxb-vxa,vyb-vya)(11)

δmvver=max(vxc-vxd,vyc-vyd)(12)

在本发明实施例中,可选地,控制点a和c可以为同一个像素点。

在本发明实施例中,可选地,控制点a、b、c和d可以为affine块的顶点,此时,控制点a和b的距离为affine块的宽度w,控制点c和d的间距为affine块的高度h。

在本发明实施例中,可选地,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该s1103和s1105具体为:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

具体而言,假设a、b和c是图像块中任意互相不重合的三个像素点,三个像素点的位置如图6所示,三个点的运动矢量分别为(vxa,vya)、(vxb,vyb)和(vxc,vyc)。点a与点b在水平方向的距离是w1,竖直方向的距离是h1,点a与点c在水平方向的距离是w2,竖直方向的距离是h2,点b与点c的在水平方向的距离为w2-w1,竖直方向的距离是h1+h2。假设在水平方向上相邻的两个像素点的运动矢量在水平方向的各分量的差异分别为δmvxhor和δmvyhor,在竖直方向上相邻的两个像素点的运动矢量在竖直方向的各分量的差异分别为δmvxver和δmvyver,由于图像块内运动矢量是线性变化的,则可以通过确定a、b和c点的运动矢量确定δmvxhor、δmvyhor、δmvxver和δmvyver,从而可以确定图像块的相邻像素点的运动矢量差异。具体可以根据公式(13)~(16)确定:

vxb=vxa+w1·δmvxhor+h1·δmvxver(13)

vyb=vya+w1·δmvyhor+h1·δmvyver(14)

vxc=vxa+w2·δmvxhor+h2·δmvxver(15)

vyc=vya+w2·δmvyhor+h2·δmvyver(16)

还可以根据公式(13)和(14)以及公式(17)和(18)确定:

vxc=vxb+(w2-w1)·δmvxhor+(h2+h1)·δmvxver(17)

vyc=vyb+(w2-w1)·δmvyhor+(h2+h1)·δmvyver(18)

在本发明实施例中,可选地,编码设备可以从通过运动估计搜索得到所有控制点的运动矢量;可以从周围图像块获得所有控制点的运动矢量;可以根据仿射变换模型计算出所有控制点的运动矢量;可以通过运动估计搜索得到部分控制点的运动矢量,从邻近图像块获得其他控制点的运动矢量;可以通过仿射运动估计搜索得到部分控制点的运动矢量,根据仿射变换模型计算得到其他控制点的运动矢量;可以从邻近图像块获得部分控制点的运动矢量,根据仿射变换模型计算出其他控制点的运动矢量;但本发明并不限于此。

可选地,在s1200中,可以将第三预设值确定为该仿射图像块的运动矢量精度;或根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

具体而言,affine块的运动矢量的值可以是整数,此时称运动矢量是整像素精度,即像素精度为1;运动矢量的值也可以是非整数的,此时称运动矢量是亚像素精度,包括1/2、1/4、1/8等精度。图7所示的是一个4×4的图像块,其中×表示的是整像素位置的像素,采集得到的图像只有整像素位置的像素。o表示的是1/2精度位置的像素,需要通过整像素位置的像素进行插值来得到。其他精度位置的像素值需要使用整像素精度像素或1/2精度像素进一步插值来获得。若当前像素点的运动矢量是整数,则指向参考图像中×所在的位置,若当前像素点的运动矢量是1/2精度,则指向参考图像中o所在的位置。

affine块的运动矢量精度指affine块内所有像素点的运动矢量的最高精度。affine块的运动矢量精度可以是预先设定好的,例如整像素精度、1/2、1/4、1/8、1/16等精度。也可以是根据图affine块邻近图像块的特性来确定,例如若周围的图像较为平滑,可以预测当前affine块也较为平滑,则可以选用较高的运动矢量精度,例如1/8、1/16精度等,反之选用较低的运动矢量精度,例如整像素精度、1/2精度等。获得的精度用mvac来表示。

可选地,如图8所示,s1300具体包括:

s1301,将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;

s1302,将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

具体而言,通常获得的运动矢量差异δmvhor和δmvver较小,表示每个像素点的运动矢量的精度过高,例如1/32,1/64等。过高的运动矢量精度对视频的压缩性能贡献不大,且会带来巨大的计算量。因此,根据之前获得的期望的运动矢量精度mvac,来对affine块进行划分,划分成多个affine-mc块,保证每个affine-mc块的运动矢量精度达到mvac。

在本发明实施例中,可选地,假设第一控制点与第二控制点之间的水平距离为w,第三控制点与第四控制点之间的竖直距离为h,假设affine-mc块的宽度为amcw,高度为amch,则可以根据公式(19)确定amcw和amch:

等同于:

在本发明实施中,可选地,在该第一控制点、该第二控制点、该第三控制点和该第四控制点为affine块的顶点时,该第一控制点与该第二控制点之间的水平距离为affine块的宽度w,该第三控制点与该第四控制点之间的竖直距离为affine块的高度h。则affine-mc块的宽度amcw和高度amch,可以根据公式(20)确定:

等同于:

在本发明实施例中,可选地,在该第一控制点与该第二控制点为相邻的控制点,该第三控制点与该第四控制点为相邻的控制点时,该第一控制点与该第二控制点之间的第一水平距离为1,即第一控制点与第二控制点之间间隔一个整数的像素间隔;该第三控制点与该第四控制点之间的第一竖直距离为1,即第三控制点与第四控制点之间间隔一个整数的像素间隔。则公式(19)可以简化为公式(21):

等同于:

因此,本发明实施例的视频图像编码的方法,编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,在保持仿射变换运动补偿预测性能的前提下,降低编码的复杂度,提高编码性能。

可选地,如图9所示,s1300包括:

s1303,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

s1304,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

具体而言,为了编码过程中的硬件实现,可以对affine-mc块的宽度和高度设置一个下限值,在计算出的宽度或高度小于该预设的下限值时,将该预设的下限值确定为affine-mc块的宽度或高度,优选地,可以将该下限值均设定为4,但也可以根据实际需要设置为其他数值,例如,可以将宽度的下限值设定为2,高度的设定值设定为3,或者宽度的下限值设定为1,高度的设定值设定为2,本发明对此不作限定。

可选地,如图10所示,s1400包括:

s1401,确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;

s1402,根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;

s1403,根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;

s1404,对该每个仿射运动补偿子图像块的预测残差信号进行编码。

应理解,在本发明实施例中,每个affine-mc块可能包含多个像素点,需要从每个affine-mc中选取一个像素点的运动矢量作为该affine-mc块的运动矢量。

可选地,在s1401中,可以选取affine-mc块的中心位置处的像素点的运动矢量作为该affine-mc块的运动矢量,可以将affine-mc块内所有像素点的运动矢量的平均值作为该affine-mc块的运动矢量,可以选取位于affine-mc块的左上角的像素点的运动矢量作为该affine-mc块的运动矢量,但本发明并不限于此。

在本发明实施例中,可选地,对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

在本发明实施例中,可选地,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

具体而言,如图11所示,粗实线块表示affine块,细实线块表示affine-mc块,虚线框表示相邻的affine-mc块的边界的像素,交叉点表示像素。其中,图11中虚线框的区域包含相邻affine-mc块各自在边界的两行或者两列像素,也可以包含各自边界的一行或一列,三行或三列等。由于相邻的affine-mc块的运动矢量可能不同,那么从参考图像中取得的预测信号在参考图像中不相邻,这会导致相邻affine-mc块边界的预测信号之间的不连续,从而导致残差的不连续,影响残差的编码性能,因此考虑对affine-mc块边界处的运动补偿预测信号进行滤波。

重建信号一般是将运动补偿预测信号与重建的残差信号相加而得到。残差信号一般使用有损编码,这会导致重建的残差信号与原始的残差信号之间存在失真。相邻affine-mc块的边界处的像素的失真方向可能不一致,例如第一个affine-mc块右边的像素由于失真变大,右边相邻的affine-mc块左边的像素由于失真变小,这会导致在affine-mc块的重建像素的边界处像素值不连续,影响主观和客观的效果。因此需要对重建信号进行滤波。

在本发明实施例中,可选地,可以通过低通滤波器进行滤波,使得边界区域的像素值变化的更平缓,例如使用高斯滤波器进行滤波,但本发明并不限于此。

在本发明实施例中,可选地,可以采用重叠分块运动补偿(overlappedblockmotioncompensation,简称为“obmc”方法进行滤波。对待滤波的像素使用其邻近的affine-mc块的运动矢量做运动补偿预测,将获得的运动补偿预测信号与使用待滤波像素自己的运动矢量获得的运动补偿预测信号进行加权平均,得到最终的运动补偿预测信号。

为了更好的证明本发明实施例相对于现有技术的有益效果,采用ldp测试结构测试了采用本发明实施例的方法和现有技术中的方法进行编码时的编码复杂度和编码性能,结果如表1所示:

表1

通过表1可以看写出,采用本发明实施例的视频图像编码的方法,能够提升编码性能,节约编码时间。

因此,本发明实施例的视频图像编码的方法,编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

以上结合图1至图11详细描述了根据本发明实施例的视频图像编码的方法,下面将结合图12至图18详细描述根据本发明实施例的视频图像解码的方法。应注意,解码端的有关操作本质上与编码端的一致,为了避免重复,在此不再赘述。

图12示出了根据本发明实施例的视频图像解码的方法的示意性流程图。图12所示的方法可以由解码设备执行,例如解码器,具体地,如图12所示,方法2000包括:

s2100,确定仿射图像块的运动矢量差异;

s2200,确定该仿射图像块的运动矢量精度;

s2300,根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;

s2400,根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

具体而言,解码设备根据确定的控制点,确定仿射图像块的运动矢量差异,并确定该仿射图像块的运动矢量精度,根据确定的运动矢量差异、运动矢量精度和控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行解码处理。

因此,本发明实施例的视频图像解码的方法,解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行解码处理。由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

优选地,如图13所示,s2100包括:

s2101,根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;

s2102,根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

应理解,在本发明实施例中,该运动矢量差异的第一分量指该运动矢量差异的水平分量,该运动矢量差异的第二分量指该运动矢量差异的竖直分量。

可选地,如图14所示,s2101具体包括:

s2103,确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;

s2104,将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;

相应的,如图15所示,s2102具体包括:

s2105,确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;

s2106,将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

在本发明实施例中,可选地,可以确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;

相应地,s2103具体为:根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;

s2105具体为:根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,可以确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;

相应地,s2103具体为:将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;

s2105具体为:将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值。

在本发明实施例中,可选地,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该s2103和s2105具体为:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,解码设备可以从码流中解析得到所有控制点的运动矢量;可以从周围图像块获得所有控制点的运动矢量;可以根据仿射变换模型计算出所有控制点的运动矢量;可以从码流中解析得到部分控制点的运动矢量,从邻近图像块获得其他控制点的运动矢量;可以码流中解析得到部分控制点的运动矢量,根据仿射变换模型计算得到其他控制点的运动矢量;可以从邻近图像块获得部分控制点的运动矢量,根据仿射变换模型计算出其他控制点的运动矢量;但本发明并不限于此。

可选地,在s2200中,可以将第三预设值确定为该仿射图像块的运动矢量精度;或根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

可选地,如图16所示,s2300具体包括:

s2301,将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;

s2302,将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,如图17所示,s2300包括:

s2303,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的水平分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

s2304,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的竖直分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的竖直分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,如图18所示,s2400包括:

s2401,确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;

s2402,根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;

s2403,根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;

s2404,对该每个仿射运动补偿子图像块的预测残差信号进行解码。

在本发明实施例中,可选地,对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

在本发明实施例中,可选地,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。因此,本发明实施例的视频图像解码的方法,解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行解码处理。由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

可选地,本发明中解码方法也可以是:

解析码流,以获取仿射图像块的运动矢量差异以及该仿射图像块的运动矢量精度,其中,该仿射图像块内的像素点具有相同的仿射变换参数;

根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;

根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

或者;

解析码流,获取仿射图像块信息;

根据该仿射图像块信息确定该仿射图像块中的仿射运动补偿子图像块的大小;

根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

通过这种方式解码端可以无需重新计算,而直接用编码端传至解码端的参数来确定仿射运动补偿子图像块的大小,从而进一步降低计算的复杂度。

下面将结合图19和图20详细描述本发明实施例的编码设备。如图19所示,该编码设备10包括:

第一确定模块11,用于确定仿射图像块的运动矢量差异;

第二确定模块12,用于确定该仿射图像块的运动矢量精度;

第三确定模块13,用于根据该第一确定模块11确定的该运动矢量差异、该第二确定模块12确定的该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;

编码模块14,用于根据该第三确定模块13确定的该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理。

具体而言,编码设备根据确定的控制点,确定仿射图像块的运动矢量差异,并确定该仿射图像块的运动矢量精度,根据确定的运动矢量差异、运动矢量精度和控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行编码处理。

因此,本发明实施例的编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

在本发明实施例中,可选地,该第一确定模块11具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

在本发明实施例中,可选地,该第一确定模块11具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

在本发明实施例中,可选地,该第一确定模块11具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,该第一确定模块11具体用于:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值;

在本发明实施例中,可选地,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该第一确定模块11具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,该第三确定模块13具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

在本发明实施例中,可选地,该第三确定模块13具体用于:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

在本发明实施例中,可选地,该第一控制点与该第三控制点为同一个像素点。

在本发明实施例中,可选地,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

在本发明实施例中,可选地,该第一预设值为4,和/或,该第二预设值为4。

在本发明实施例中,可选地,该第二确定模块12具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

在本发明实施例中,可选地,该编码模块14具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行编码。

在本发明实施例中,可选地,如图20所示,该编码设备10还包括:

滤波模块15,用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

在本发明实施例中,可选地,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

应理解,根据本发明实施例的编码设备10可对应于执行本发明实施例中的视频图像编码的方法1000,并且编码设备10中的各个模块的上述和其它操作和/或功能分别为了实现图1至图11中的各个方法的相应流程,为了简洁,在此不再赘述。

因此,本发明实施例的编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

下面将结合图21和图22详细描述本发明实施例的解码设备。如图21所示,该解码设备20包括:

第一确定模块21,用于确定仿射图像块的运动矢量差异;

第二确定模块22,用于确定该仿射图像块的运动矢量精度;

第三确定模块23,用于根据该第一确定模块21确定的该运动矢量差异、该第二确定模块22确定的该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;

解码模块24,用于根据该第三确定模块23确定的该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

具体而言,解码设备根据确定的控制点,确定仿射图像块的运动矢量差异,并确定该仿射图像块的运动矢量精度,根据确定的运动矢量差异、运动矢量精度和控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,根据确定的该大小,对该仿射图像块进行解码处理。

因此,本发明实施例的解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行解码处理,由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

在本发明实施例中,可选地,该第一确定模块21具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

在本发明实施例中,可选地,该第一确定模块21具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

在本发明实施例中,可选地,该第一确定模块21具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,该第一确定模块21具体用于:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值;

在本发明实施例中,可选地,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该第一确定模块21具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

在本发明实施例中,可选地,该第三确定模块23具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

在本发明实施例中,可选地,该第三确定模块23具体用于:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

在本发明实施例中,可选地,该第一控制点与该第三控制点为同一个像素点。

在本发明实施例中,可选地,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

在本发明实施例中,可选地,该第一预设值为4,和/或,该第二预设值为4。

在本发明实施例中,可选地,该第二确定模块22具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

在本发明实施例中,可选地,该解码模块24具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行解码。

在本发明实施例中,可选地,如图22所示,该解码设备20还包括:

滤波模块25,用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

在本发明实施例中,可选地,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

应理解,根据本发明实施例的解码设备20可对应于执行本发明实施例中的视频图像解码的方法2000,并且解码设备20中的各个模块的上述和其它操作和/或功能分别为了实现图12至图18中的各个方法的相应流程,为了简洁,在此不再赘述。

因此,本发明实施例的解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该大小对该仿射图像块进行解码处理,由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

如图23所示,本发明实施例还提供了一种编码设备30,包括处理器31、存储器32和总线系统33。其中,处理器31和存储器32通过总线系统33相连,该存储器32用于存储指令,该处理器31用于执行该存储器32存储的指令。编码设备30的存储器32存储程序代码,且处理器31可以调用存储器32中存储的程序代码执行以下操作:确定仿射图像块的运动矢量差异;确定该仿射图像块的运动矢量精度;根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;根据该仿射运动补偿子图像块的大小,对该仿射图像块进行编码处理。

因此,本发明实施例的编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

应理解,在本发明实施例中,该处理器31可以是中央处理单元(centralprocessingunit,简称为“cpu”),该处理器31还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器32可以包括只读存储器和随机存取存储器,并向处理器31提供指令和数据。存储器32的一部分还可以包括非易失性随机存取存储器。例如,存储器32还可以存储设备类型的信息。

该总线系统33除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统33。

在实现过程中,上述方法的各步骤可以通过处理器31中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器32,处理器31读取存储器32中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。

可选地,作为一个实施例,该处理器31具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

可选地,作为一个实施例,该处理器31具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

可选地,作为一个实施例,该处理器31具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

可选地,作为一个实施例,该处理器31具体用于:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值;

可选地,作为一个实施例,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该处理器31具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

可选地,作为一个实施例,该处理器31具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,作为一个实施例,该处理器31具体用于:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,作为一个实施例,该第一控制点与该第三控制点为同一个像素点。

可选地,作为一个实施例,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

可选地,作为一个实施例,该第一预设值为4,和/或,该第二预设值为4。

可选地,作为一个实施例,该处理器31具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

可选地,作为一个实施例,该处理器31具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行编码。

可选地,作为一个实施例,该处理器31:还用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

可选地,作为一个实施例,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

应理解,根据本发明实施例的编码设备30可对应于本发明实施例中的编码设备10,并可以对应于执行根据本发明实施例的方法1000中的相应主体,并且编码设备30中的各个模块的上述和其它操作和/或功能分别为了实现图1至图11中的各个方法的相应流程,为了简洁,在此不再赘述。

因此,本发明实施例的编码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该仿射运动补偿子图像块的大小对该仿射图像块进行编码处理,由此,在编码过程中能够通过选取合适大小的子图像块,降低编码的复杂度,提高编码性能。

如图24所示,本发明实施例还提供了一种解码设备40,包括处理器41、存储器42和总线系统43。其中,处理器41和存储器42通过总线系统43相连,该存储器42用于存储指令,该处理器41用于执行该存储器42存储的指令。解码设备40的存储器42存储程序代码,且处理器41可以调用存储器42中存储的程序代码执行以下操作:确定仿射图像块的运动矢量差异;确定该仿射图像块的运动矢量精度;根据该运动矢量差异、该运动矢量精度和该仿射图像块中的控制点之间的距离,确定该仿射图像块中的仿射运动补偿子图像块的大小,该控制点为用于确定该运动矢量差异的像素点;根据该仿射运动补偿子图像块的大小,对该仿射图像块进行解码处理。

因此,本发明实施例的解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该大小对该仿射图像块进行解码处理。由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

应理解,在本发明实施例中,该处理器41可以是中央处理单元(centralprocessingunit,简称为“cpu”),该处理器41还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

该存储器42可以包括只读存储器和随机存取存储器,并向处理器41提供指令和数据。存储器42的一部分还可以包括非易失性随机存取存储器。例如,存储器42还可以存储设备类型的信息。

该总线系统43除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统43。

在实现过程中,上述方法的各步骤可以通过处理器41中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器42,处理器41读取存储器42中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。

可选地,作为一个实施例,该处理器41具体用于:根据位于同一水平线上的第一控制点与第二控制点的运动矢量的差值,确定该运动矢量差异的第一分量;根据位于同一竖直线上的第三控制点与第四控制点的运动矢量的差值,确定该运动矢量差异的第二分量;

其中,该第一控制点与该第二控制点之间具有第一水平距离,该第三控制点与该第四控制点之间具有第一竖直距离。

可选地,作为一个实施例,该处理器41具体用于:确定该第一控制点与该第二控制点的运动矢量的第一水平分量差值和第一竖直分量差值;将该第一水平分量差值和该第一竖直分量差值中的最大值确定为该运动矢量差异的第一分量;确定该第三控制点与该第四控制点的运动矢量的第二水平分量差值和第二竖直分量差值;将该第二水平分量差值和该第二竖直分量差值中的最大值确定为该运动矢量差异的第二分量。

可选地,作为一个实施例,该处理器41具体用于:确定该仿射图像块内的像素点的仿射变换参数,该仿射图像块内的像素点具有相同的仿射变换参数;根据该仿射变换参数和该第一水平距离,确定该第一水平分量差值和该第一竖直分量差值;根据该仿射变换参数和该第一竖直距离,确定该第二水平分量差值和该第二竖直分量差值。

可选地,作为一个实施例,该处理器41具体用于:确定该第一控制点的运动矢量、该第二控制点的运动矢量、该第三控制点的运动矢量和该第四控制点的运动矢量;将该第一控制点的运动矢量的水平分量与该第二控制点的运动矢量的水平分量的差值确定为该第一水平分量差值;将该第一控制点的运动矢量的竖直分量和该第二控制点的运动矢量的竖直分量的差值,确定为该第一竖直分量差值;将该第三控制点的运动矢量的水平分量与该第四控制点的运动矢量的水平分量的差值确定为该第二水平分量差值;将该第三控制点的运动矢量的竖直分量和该第四控制点的运动矢量的竖直分量的差值,确定为该第二竖直分量差值;

可选地,作为一个实施例,该第一控制点与该第二控制点为相邻的两个像素点,该第三控制点与该第四控制点为相邻的两个像素点;

其中,该处理器41具体用于:确定第一像素点的运动矢量、第二像素点的运动矢量和第三像素点的运动矢量,该第一像素点、该第二像素点和该第三像素点为互相不重合的像素点;确定该第一像素点与该第二像素点之间的第二水平距离和第二竖直距离;确定该第一像素点与该第三像素点之间的第三水平距离和第三竖直距离;根据该第一像素点的运动矢量、该第二像素点的运动矢量、该第三像素点的运动矢量、该第二水平距离、该第二竖直距离、该第三水平距离和该第三竖直距离,确定该第一水平分量差值、该第一竖直分量差值、该第二水平分量差值和该第二竖直分量差值。

可选地,作为一个实施例,该处理器41具体用于:将该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值确定为该仿射运动补偿子图像块的水平方向的长度;将该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,作为一个实施例,该处理器41具体用于:

在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值大于或等于第一预设值时,将该比值确定为该仿射运动补偿子图像块的水平方向的长度,或,在该运动矢量精度与该第一水平距离的乘积与该运动矢量差异的第一分量的比值小于该第一预设值时,将该第一预设值确定为该仿射运动补偿子图像块的水平方向的长度;

在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值大于或等于第二预设值时,将该比值确定为该仿射运动补偿子图像块的竖直方向的长度,或,在该运动矢量精度与该第一竖直距离的乘积与该运动矢量差异的第二分量的比值小于该第二预设值时,将该第二预设值确定为该仿射运动补偿子图像块的竖直方向的长度。

可选地,作为一个实施例,该第一控制点与该第三控制点为同一个像素点。

可选地,作为一个实施例,该第一控制点、该第二控制点、该第三控制点和该第四控制点为该仿射图像块的顶点。

可选地,作为一个实施例,该第一预设值为4,和/或,该第二预设值为4。

可选地,作为一个实施例,该处理器41具体用于:将第三预设值确定为该仿射图像块的运动矢量精度;或,根据该仿射图像块的邻近图像块的特性确定该仿射图像块的运动矢量精度,该邻近图像块为与该仿射图像块在空间上和/或时间上相邻的图像块。

可选地,作为一个实施例,该处理器41具体用于:确定该仿射运动补偿子图像块中每个仿射运动补偿子图像块的运动矢量;根据该每个仿射运动补偿子图像块的运动矢量,确定该每个仿射运动补偿子图像块的运动补偿预测信号;根据该每个仿射运动补偿子图像块的运动补偿预测信号,确定该每个仿射运动补偿子图像块的预测残差信号;对该每个仿射运动补偿子图像块的预测残差信号进行解码。

可选地,作为一个实施例,该处理器41:还用于对该每个仿射运动补偿子图像块的边界像素点的信号进行滤波,该边界像素点为位于每个仿射运动补偿子图像块的边界的一行或多行像素点。

可选地,作为一个实施例,该边界像素点的信号包括运动补偿预测信号和/或重建信号,该重建信号为运动补偿预测信号与重建的残差信号之和。

应理解,根据本发明实施例的解码设备40可对应于本发明实施例中的解码设备20,并可以对应于执行根据本发明实施例的方法2000中的相应主体,并且解码设备40中的各个模块的上述和其它操作和/或功能分别为了实现图12至图18中的各个方法的相应流程,为了简洁,在此不再赘述。

因此,本发明实施例的解码设备通过确定的仿射图像块的运动矢量差异、运动矢量精度和控制点之间的距离,确定仿射运动补偿子图像块的大小,根据该大小对该仿射图像块进行解码处理。由此,在解码过程中能够通过选取合适大小的子图像块,降低解码的复杂度,提高解码性能。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。

在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

另外,本文中术语“系统”和“网络”在本文中常可互换使用。应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

在本申请所提供的实施例中,应理解,“与a相应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,简称为“rom”)、随机存取存储器(randomaccessmemory,简称为“ram”)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1