运动补偿预测方法和设备与流程

文档序号:14267509阅读:266来源:国知局
运动补偿预测方法和设备与流程

本发明涉及图像处理领域,并且更具体地,涉及一种运动补偿预测的方法和设备。



背景技术:

在对球形全景图像(以下简称球形图像)进行处理时,一般是先将球形图像投影为多面体格式的二维平面全景图像(以下简称二维图像),然后再对多面体格式的二维图像进行编解码操作。

在对多面体格式的二维图像进行运动补偿预测时,一般是先确定当前像素点的参考像素点的位置,然后根据参考像素点的像素值对当前像素点的像素值进行预测。在现有技术的运动补偿预测过程中,无论参考像素点是否在当前像素点所在的面,都根据参考像素点所在位置的像素值对当前像素点的像素值进行预测。当参考像素点不在当前像素点所在的面时,由于多面体格式的二维图像中各个面不处于同一个投影平面,各个面的相接区域存在形变,导致根据此时根据参考像素点所在位置的像素值对当前像素点的像素值进行预测的效果较差。



技术实现要素:

本发明提供了一种运动补偿预测方法和运动预测补偿装置,以提高运动补偿预测效果。

第一方面,提供了一种运动补偿预测方法,所述方法包括:确定当前像素点的初始参考像素点在参考图像中的位置,所述当前像素点位于所述当前图像的第一子图像内;当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,根据所述初始参考像素点的位置确定所述当前像素点的目标参考像素点在所述参考图像中的位置,其中,所述目标参考像素点在所述参考图像对应的多面体的表面的位置与所述初始参考像素点在第一平面的位置的连线经过所述多面体的中心点,所述目标参考像素点在所述多面体的表面的位置是根据所述初始参考像素点的位置和所述参考图像对应的所述多面体的布局信息确定的,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面;所述目标参考像素点的位置精度被限制为等于或者低于预设的像素点位置精度。根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

当初始参考像素点位于第二子图像之外时,由于二维图像的子图像边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是根据该初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动补偿预测的准确性。

上述第二子图象是参考图像中与当前图像中的第一子图象处于对应位置的子图象,例如,当前图像和参考图像对应的都是多面体都是正六面体,并且当前图像和参考图像的格式都是4×3,假设当前图像的第一子图象对应于当前图像对应的正六面体的bottom(底)面,那么参考图像的第二子图象也对应于参考图像对应的正六面体的bottom面。

上述参考图像对应多面体可以设置在参考图像上,这时多面体的锚定面为参考图像中的第二子图像的区域所在的面,锚定面是展开多面体时作为基准的面,例如,在展开多面体在时,将多面体的bottom面置于某个平面上,然后将多面体中的其它面翻折到该平面上,这个时候bottom面在该平面上的位置是不变的,而多面体的其它的面会翻折到该平面的其它区域,此时bottom就是多面体的锚定面。

结合第一方面,在第一方面的第一种实现方式中,所述方法还包括:根据所述参考图像的布局信息和所述初始参考像素点的位置判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外。

通过判断初始参考像素点是否在参考图像中的第二子图像之外,能够在初始参考像素点不在第二子图像之内时,直接根据初始参考像素点对当前像素点的像素值进行预测,而不必再根据初始参考像素点来确定目标参考像素点。

结合第一方面,或者第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述根据所述初始参考像素点的位置确定所述当前像素点的目标参考像素点在所述参考图像中的位置,包括:根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置,其中,目标参考像素点在所述多面体的表面的位置为所述初始参考像素点与所述多面体的中心点的连线与所述多面体的表面的交点处;根据所述目标参考像素点在所述多面体的表面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述参考图像中的位置。

结合第一方面的第二种实现方式,在第一方面的第三种实现方式中,根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置,包括:根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述初始参考像素点在所述第一平面的位置;根据所述初始参考像素点在所述第一平面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置。

结合第一方面,以及第一方面的第一种至第三种实现方式中的任意一种,在第一方面的第四种实现方式中,所述布局信息包含所述多面体的面的数量信息,所述参考图像的子图象的排布方式信息,所述参考图像的子图象的排布顺序信息,所述参考图像的子图象的旋转信息中的至少一种。

结合第一方面,以及第一方面的第一种至第四种实现方式中的任意一种,在第一方面的第五种实现方式中,所述根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值,包括:将所述目标参考像素点的像素值确定为所述当前像素点的像素值的预测值。

结合第一方面,以及第一方面的第一种至第四种实现方式中的任意一种,在第一方面的第六种实现方式中,所述根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值,包括:对所述目标参考像素点的像素值以及所述目标参考像素点的临近像素点的像素值进行加权处理;将所述加权处理到的所述目标参考像素点所在位置的像素值确定为所述当前像素点的像素值的预测值。

结合第一方面,以及第一方面的第一种至第四种实现方式中的任意一种,在第一方面的第七种实现方式中,所述根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值,包括根据目标参考像素点的临近像素点的像素值在所述目标参考像素点位置进行插值运算;将所述插值运算得到的像素值确定为所述当前像素点的像素值的预测值。

在某些实现方式中,所述当前图像和所述参考图像均为二维图像。

在某些实现方式中,根据所述参考图像的布局信息和所述初始参考像素点的位置判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外,包括:根据所述初始参考像素点的位置以及所述参考图像的第二子图像所在的区域,判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外,其中,所述参考图像的第二子图像所在的区域是根据所述参考图像的布局信息确定的。

在某些实现方式中,所述二维图像对应的多面体为正多面体。其中,正多面体可以包括正四面体、正六面体、正八面体、正十二面体、正二十面体。

在某些实现方式中,当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像内时,根据所述初始参考像素点的像素值,确定所述当前像素点的像素值的预测值。

当初始参考像素点位于第二子图像内时,不必再根据初始参考像素点去寻找目标参考像素点,而是直接可以根据初始参考像素点的像素值,对当前像素点的像素值进行预测。只有当初始参考像素点不位于第二子图像内时(此时由于在二维图像中的子图像的相邻区域存在形变,不能直接根据该初始参考像素点对当前像素点的像素值进行预测),才需要根据初始参考像素点的位置去寻找目标参考像素点。

第二方面,提供了一种运动补偿预测方法,所述方法包括:确定当前参考像素点的初始参考像素点在参考图像中的位置,所述当前像素点位于所述当前图像的第一子图像内;当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,确定所述当前像素点在所述第二子图像的扩展区域中的目标参考像素点的位置,其中,所述第二子图像的扩展区域位于所述第二子图像之外,所述扩展区域包括多个像素点,所述扩展区域中任意一个第一像素点的像素值是根据所述参考图像中的第二像素点的像素值确定的,所述第二像素点在所述参考图像构成的多面体的表面的位置与所述第一像素点在第一平面的位置的连线经过所述多面体的中心点,所述第二像素点在所述多面体的面的位置是根据所述第一像素点的位置和所述参考图像对应的所述多面体的布局信息确定的,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面,所述第二像素点的位置精度被限制为等于或者低于预设的像素点位置精度;根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

当初始参考像素点位于第二子图像之外时,由于二维图像的面边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是直接根据当前像素点以及当前像素点的运动信息直接在扩展区域中寻找真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,能够快速寻找到目标参考像素点,并且还能提高运动预测估计的准确性。

应理解,上述第二子图像的扩展区域可以是预先根据上述第一方面中的方法确定的。

结合第二方面,在第二方面的第一种实现方式中,所述方法还包括:根据所述第一像素点的位置和所述参考图像的布局信息,确定所述第二像素点在所述多面体的表面的位置,所述第二像素点在所述多面体的表面的位置在所述第一像素点与所述多面体的中心点的连线与所述多面体的表面的交点处;根据所述第二像素点的在所述多面体的表面的位置和所述参考图像的布局信息,确定所述第二像素点在所述参考图像中的位置。

结合第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述方法还包括:根据所述参考图像的布局信息和所述初始参考像素点的位置判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外。

第三方面,提供一种运动补偿预测方法,该方法包括:确定当前像素点在参考图像中的初始参考像素点位置,所述当前像素点位于所述当前图像的第一子图像内;当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,根据所述初始参考像素点位置确定所述当前像素点的目标参考像素点在所述参考图像对应的多面体的表面的位置,其中,所述目标参考像素点在所述多面体的表面的位置与所述初始参考像素点在第一平面的位置的连线经过所述多面体的中心点,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面;根据所述目标参考像素点在多面体表面的位置确定所述目标参考像素点在所述参考图像中的位置,所述目标参考像素点的位置精度被限制为等于或者低于预设的像素点位置精度;根据所述参考图像中所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

当初始参考像素点位于第二子图像之外时,由于二维图像的子图像边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是根据该初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动补偿预测的准确性。

结合第三方面,在第三方面的第一种实现方式中,所述根据所述初始参考像素点位置确定所述当前像素点的目标参考像素点在所述参考图像对应的多面体的表面的位置,包括:根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述初始参考像素点在所述第一平面的位置;根据所述初始参考像素点在所述第一平面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置。

结合第三方面或者第三方面的第一种实现方式,在第三方面的第二种实现方式中,所述根据所述目标参考像素点在多面体表面的位置确定所述目标参考像素点在所述参考图像中的位置,包括:根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述参考图像中的位置,所述目标参考像素点在所述多面体的表面的位置在所述初始参考像素点与所述多面体的中心点的连线与所述多面体的表面的交点处。

第四方面,提供一种运动补偿预测装置,所述运动补偿预测装置包括用于执行第一方面的方法的模块。

第五方面,提供一种运动补偿预测装置,所述运动补偿预测装置包括用于执行第二方面的方法的模块。

第六方面,提供一种运动补偿预测装置,所述运动补偿预测装置包括用于执行第三方面的方法的模块。

第七方面,提供一种编解码器,包括非易失性存储介质,以及中央处理器,所述非易失性存储介质存储有可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述可执行程序以实现如本发明第一方面所提供的运动补偿预测方法及其扩展内容。

第八方面,提供一种编解码器,包括非易失性存储介质,以及中央处理器,所述非易失性存储介质存储有可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述可执行程序以实现如本发明第二方面所提供的运动补偿预测方法及其扩展内容。

第九方面,提供一种编解码器,包括非易失性存储介质,以及中央处理器,所述非易失性存储介质存储有可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述可执行程序以实现如本发明第三方面所提供的运动补偿预测方法及其扩展内容。

第十方面,提供一种计算机可读介质,所述计算机可读介质存储用于图像处理设备执行的程序代码,所述程序代码包括用于执行第一方面中的方法的指令。

第十一方面,提供一种计算机可读介质,所述计算机可读介质存储用于图像处理设备执行的程序代码,所述程序代码包括用于执行第二方面中的方法的指令。

第十二方面,提供一种计算机可读介质,所述计算机可读介质存储用于图像处理设备执行的程序代码,所述程序代码包括用于执行第三方面中的方法的指令。

本发明中,在初始参考像素点位于第二子图像之外时,根据该初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动补偿预测的准确性。

附图说明

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

图1是球形图像的经纬图。

图2是多面体格式的二维图像。

图3是球形图像投影到正六面体的示意图。

图4是正六面体以及正六面体展开得到的二维图像的示意图。

图5是本发明实施例的运动补偿预测方法的示意性流程图。

图6是当前图像和参考图像的示意图。

图7是不同布局格式的参考图像的示意图.

图8是当前图像和参考图像的示意图。

图9是参考图像对应的正六面体的示意图。

图10是参考图像对应的正六面体的示意图。

图11是参考图像对应的其它多面体的示意图。

图12是不同布局格式的参考图像。

图13是目标参考像素点周围的临近像素点的示意图。

图14是本发明实施例的运动补偿预测方法的示意性流程图。

图15是扩展区域的示意图。

图16是本发明实施例的运动补偿预测方法的示意性流程图。

图17是本发明实施例的运动补偿预测装置的示意性框图。

图18是本发明实施例的运动补偿预测装置的示意性框图。

图19是本发明实施例的运动补偿预测装置的示意性框图。

图20是全景视频解码器的解码过程的示意性流程图。

图21是全景视频解码器的编码过程的示意性流程图。

图22是根据本发明实施例的图像编码器的示意性框图。

具体实施方式

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

为了更好地理解本发明实施例的运动补偿预测方法,下面先结合图1至图3对本发明实施例的运动补偿预测方法所应用的场景进行简单的介绍。

为支持各个方向的视频图像内容呈现,vr视频图像通常包含三维空间上下左右360度全向的视觉信息,可以将vr视频图像想象为从一个地球仪的内部中心位置向外观看地球仪的地图。典型地,我们也将vr视频图像称为全景视频图像(可以简称为球形图像)。

由于球形图像无法方便的表示、存储和索引,因此,在对球形图像进行处理之前,通常要将球形图像展开得到二维图像,再对该二维图像进行压缩、处理、存储、传输等操作。其中,将球形图像展开得到二维图像的过程称为投影。

如图1所示,常见的二维图像称为经纬图,在图1中,邻近南北两极区域的图像经过拉伸幅度较大,存在严重的失真和数据冗余。

为克服经纬图中存在的缺陷,可以将球形图像投影到一个正多面体中,从而将球形图像转换为多面体格式的二维图像。如图2所示,可以将球形图像投影到正四面体(图2(a))、正六面体(图2(b))、正八面体(图2(c))、正十二面体(图2(d))、正二十面体(图2(e)),将球形图像投影到上述各个多面体中得到的二维平面图像依次为图2(f)-图2(k)所示。

将球形图像投影到多面体中的具体过程为:将球形图像置于多面体中,使其成为多面体的内切球;将球心或者多面体体心与球面上某点连线并延长相较于多面体,多面体上交点位置处的位置处的像素点便为球形图像上对应点的像素点。

下面结合图3以将球形图像投影到正六面体的过程为例,将球面内切于正六面体abcdefgh中,为了得到正六面体上m’点处的像素值,将球心o与m’连线,并交于球面的m点,则m点处的像素点即为m’点处的像素点。类似地,可以按照同样的方法得到平面a’b’c’d’上abcd区域内所有像素点,其中,abcd区域内像素点构成abcd面(face),平面a’b’c’d’为abcd面的投影平面(projectionplane)。

将球形图像投影到正多面体,然后再将多面体表面展开为二维图像之后,多面体表面上的每个面图像成为二维图像中一个区域的图像或者球形图像的一个子图像。例如,图4(a)中的正六面体表面展开成为图4(b)的图像,六面体表面上的top面的面图像将会成为图4(b)中左上角的子图像,我们称这个子图像为球形图像的top面的面图像,球形图像中的top面指代top面的面图像覆盖的区域。对于top面中的任意一个像素点,top面称为此像素点的所在面。

应理解,本发明实施例中的面与子图像是对应的,例如,bottom面为某个二维图像的一个面,这个bottom面中的图像是第一子图像,bottom面是第一子图像对应的面,第一子图像是bottom面对应的子图像。如图2(h)所示,其中的每个小的矩形区域就是二维图像的一个面,每个矩形区域中的像素点组成的图像就是二维图像的一个子图像,也就是说面是一个区域的概念,子图像是图像。

另外,在对上述二维图像进行编解码或者压缩等操作时,可以直接对图2(f)-图2(k)所示的图像进行处理,也可以选择将其包围在内的最小面积矩形区域内的图像作为处理对象,对该矩形区域中除了包含二维图像的面的之外的区域都填充为默认内容等,例如,全灰、全黑或者全白等。

应理解,在对图像进行编解码时经常将图像分成大小相等的多个图像块,然后为每个图像块寻找参考块,在为当前图像块寻找参考块的过程中可能存在不同的参考情况。依据参考方向可以分成单向预测和双向预测。单向预测是指当前块存在一个参考图像集合(该集合中的元素为已重建图像中选择的参考图像),编码块可以选用集合中的任意一个参考图像。双向预测是指当前块存在两个参考图像集合(两个集合的元素分别是从已重建图像中独立选取的图像,这两个集合中的参考图像可以部分或者全部相同),编码块可以从两个集合中各选择一个参考图像。具体使用双向还是单向以及参考图像集合的构建方法为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解码结果确定所用方法。当使用双向预测方法时,当前编码块会存在两个参考块,每个参考块各自需要运动信息指示。解码端需要根据解码出的两套运动信息确定两个参考块。根据两个参考块内像素点的像素值确定当前块内像素点像素值的预测值。

实际上在确定当前块的参考块,并根据参考块对当前块进行预测时实际上确定当前块中的当前像素点在参考块中的参考像素点,然后根据参考像素点的像素值来预测当前像素点的像素值的预测值。下面就对本发明实施例的运动补偿预测方法进行详细的介绍。

图5是本发明实施例的运动补偿预测方法的示意性流程图。该方法包括:

110、确定当前像素点的初始参考像素点在参考图像中的位置,当前像素点位于当前图像的第一子图像内。

应理解,上述当前图像和参考图像均为球形图像转换得到的多面体格式的二维图像。

应理解,在对当前图像进行预测处理时可以将该当前图像划分为多个图像块,然后对每个图像块进行处理,上述当前像素点可以是当前图像中的某个图像块中的像素点。具体地,上述待处理的当前像素点可以位于第一子图像内的某个图像块内。

具体地,在解码器中,可以根据当前像素点的位置以及通过解码运动信息码流得到的当前像素点的运动信息确定初始参考像素点在参考图像中的位置。例如,根据运动信息中的参考图像指示信息确定参考图像,根据运动信息中的运动矢量信息以及当前像素点的位置确定参考图像中初始参考像素点的位置。在编码器中,在运动搜索过程中,当在一个参考图像中为当前块搜索参考块时,或者在为当前像素点搜索参考像素点时,当前参考像素点的位置即为初始参考像素点的位置。

假设当前图像和参考图像对应的多面体为正六面体,图6(a)为当前图像(当前像素点在当前图像上),图6(b)为参考图像(初始参考像素点在参考图像上),当前图像和参考图像均由六个子图像,这六个子图像分别是top(上)、front(前)、right(右)、rear(后)、left(左)、bottom(下)。这里的子图像可以认为是一些像素点组成的阵列,这些像素点在球面投影到多面体上时处于同一个投影平面。将多面体展开为二维图像之后,多面体的各个面则成为二维图像中的一部分。假设当前像素点为p,p在当前图像中的bottom子图像内,假设初始参考像素点为t,t在参考图像中的front子图像内,也就是说t不在参考图像中的bottom子图像内。应理解,在图6(a)中,第一子图像就是bottom子图像,在图6(b)中,第二子图像是bottom子图像,第一子图像和第二子图像是当前图像和参考图像中处于对应位置的子图像。

120、当初始参考像素点位于参考图像中与第一子图像对应位置的第二子图像之外时,根据初始参考像素点的位置确定当前像素点在参考图像中的目标参考像素点的位置,其中,目标参考像素点在参考图像对应的多面体的表面的位置与初始参考像素点在第一平面的位置的连线经过多面体的中心点,目标参考像素点在多面体的表面的位置是根据初始参考像素点的位置和参考图像对应的多面体的布局信息确定的,第一平面为多面体中与所述第二子图像对应的面所在的平面。

应理解,当初始参考像素点位于参考图像中与第一子图像对应位置的第二子图像之内时,可以根据直接根据初始参考像素点对当前像素点进行预测,而不用再寻找目标参考像素点。

参考图像对应的多面体可以是由该参考图像构成的多面体,也就是将该参考图像的各个子图像按照一定的规则折叠起来形成的多面体。

可选地,上述方法还包括:根据参考图像的布局信息和初始参考像素点的位置判断初始参考像素点是否位于参考图像中的第二子图像之外。

在判断初始参考像素点是否在第二子图像之外时,首先要先判断初始参考像素点在参考图像中的位置,在确定初始参考像素点的位置时,对于解码器和编码器,具体确定过程如下:

对于解码器,可以根据当前像素点的位置以及通过解码运动信息码流得到的当前像素点的运动信息确定初始参考像素点在参考图像中的位置。例如,解码器可以根据运动信息中的参考图像指示信息确定参考图像,根据运动信息中的运动矢量信息以及当前像素点的位置确定参考图像中初始参考像素点的位置。

对于编码器,在为当前块搜索参考块,或者在为当前像素点搜索参考像素点时,当前参考像素点的位置即为初始参考像素点的位置。

可选地,上述参考图像对应的多面体的布局信息包含参考图像对应的多面体的面的数量信息,参考图像的子图象的排布方式信息,参考图像的子图象的排布顺序信息,参考图像的子图象的旋转信息中的至少一种。

具体地,参考图像对应的多面体的面的数量信息具体可以为参考图像对应的是什么样的多面体,具体地,多面体的面的数量信息可以指示参考图像的对应的是正六面体。

参考图像的子图像的排布方式信息是指参考图像中的各个子图像的排布方式,如图7所示,参考图像对应的是正六面体,那么参考图像包含6个子图像,这6个子图像的排布可以是4×3型(图7(b))、3×2型(图7(c)、图7(d))、6×1型(图7(e)、图7(f))。

参考图像的子图像的排布顺序信息是指参考图像的各个子图像在参考图像中的排列顺序,例如,图7(c)和图7(d)都是3×2型的图像,在图7(c)中,front面对应的子图像排列在图像的左下角,而在图7(d)中,front面对应的子图像排列在第一列的中间位置。

参考图像的子图像的旋转信息可以指参考图像的子图像的旋转角度,假设以图7(c)中各个子图像的放置位置为基准,那么在图7(d)中,front面对应的子图像的旋转角度为-90度。

上述步骤中确定了目标参考像素点在参考图像对应多面体表面上的位置。此时确定的像素点位置按照公式计算得到,其精度较高。较高的像素点位置精度会增加后续插值操作的复杂度,为了降低后续插值操作的复杂度,这里对目标参考像素点在参考图像对应多面体表面上的位置的精度进行受限。

可选地,在确定当前像素点所对应的目标参考像素点的位置过程中,目标参考像素点的位置精度以及目标参考像素点对应的多面体的表面的位置精度较高,为了降低编解码系统的复杂度,提高运算的速度,可以在上述步骤中对所述目标参考像素点的位置精度和/或目标参考像素点对应的多面体的表面的位置精度(以下简称位置精度)进行限制,具体的位置精度限值,即,允许的最高位置精度可以由编码端及解码端共同约定,例如,将精度限值限制为1/16像素精度,或者1/8像素精度或者其他像素精度。以1/2n像素精度为例,如果通过计算得到的目标参考像素点在参考图像对应多面体表面上的位置为(xf,yf),精度受限之后的位置为(xb,yb),则xb,yb可由下式得到

其中,round表示取整操作,(xb,yb)为按照1/2n像素精度表示的整数形式的目标参考像素点对应在参考图像对应的多面体表面上的位置。若转换为带有小数的表示形式,则为

(xc,yc)=(xb/2n,yb/2n)

通过上述的精度限制操作之后,可以使得目标参考像素点的位置精度被限制为等于或者低于预设的像素精度值。

130、根据目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,根据初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动补偿预测的准确性。

可选地,作为一个实施例,根据初始参考像素点的位置和参考图像的布局信息,确定当前像素点的目标参考像素点在参考图像中的位置,包括:根据初始参考像素点的位置和参考图像的布局信息,确定目标参考像素点在多面体的表面的位置,其中,目标参考像素点在多面体的表面的位置为初始参考像素点与多面体的中心点的连线与多面体的表面的交点处;根据目标参考像素点在多面体的表面的位置和参考图像的布局信息,确定目标参考像素点在参考图像中的位置。所述目标参考像素点的位置精度被限制为等于或者低于预设的像素点位置精度。

下面结合实例一和实例二对根据初始参考像素点的位置和参考图像的布局信息确定目标像素点在多面体的表面的位置进行详细的说明。

实例一:

在图8中,图8(a)为当前图像,图8(b)为参考图像,p为当前图像中的当前像素点,p位于当前图像的bottom面,p′为参考图像中与p处于同位置的像素点,p′位于参考图像的bottom面,t1、t2和t3均为当前像素点的初始参考像素点,它们均位于参考图像的bottom面之外。

图9中的正六面体以参考图像的bottom面为底面构建的与参考图像对应的多面体,图9示出了图8(b)中的t1、t2和t3三个当前参考像素点,由图9可知,三个目标参考像素点在该正六面体上的对应像素点分别为h1、h2和h3,它们分别位于t1、t2和t3与o点连线与正六面体的交点的位置,这样就可以根据t1、t2和t3的位置确定h1、h2和h3的位置。应理解,在图9中,t1、t2和t3只是示出了初始参考像素点位于不同位置的情况,事实上,同一时间只会存在一个参考像素点。

下面以图10为例,详细介绍如何根据初始参考像素点的位置确定目标参考像素点在多面体的对应像素点的位置。

具体以t1为例,对根据t1在的位置确定目标像素点投影到多面体的表面的投影像素点的位置进行详细的说明。

图10中的正六面体以参考图像的bottom面为底面构建的与参考图像对应的多面体,也就是说该正六面体的锚定面(锚定面可以理解为构建多面体时的底面,例如,以参考图像的某个面作为构建的多面体的底面,那么该底面就是多面体的锚定面)该参考图像的bottom面。该正六面体的棱长为a,o为正六面体的体心,t位置为初始参考像素点的位置,abcd面为参考图像中与当前像素点处于同位置的像素所在的面,o’为o在当前像素点所在面abcd所在投影平面上沿着面法线方向投影abcd面上的垂直投影,j为bc边的中点,k为t在o’j延长线上的垂直投影,ot交bcgf面于h点(h点所在的位置就是初始参考像素点的投影像素点所在的位置),h点在bc上的垂直投影为s,i为t在bc边上的垂直投影。由于正六面体的棱长为a,因此,oo’和o’j的长度均为假设jk线段的长度为x,kt线段长度为y,则根据相似三角形可得:

其中,lsj为sj的长度,lsh为sh的长度,在根据公式(1)和(2)得到sj和sh的长度后就可以确定h点在正六面体的表面的位置。应理解,可以根据初始参考像素的位置坐标确定sj和sh的长度,进而得到h点在正六面体的表面的位置。其中,公式(2)根据相似三角形的关系也可以简化为如下形式:

上述公式2(a)也可以根据图10中所示的相似三角形的几何关系得到,具体过程如下:

在三角形oo’t内,

三角形o’kt内,

组合上述公式(a)及(b)得到

oo’的长度为jk长度为x,o’k长度为将上述值代入上述公式(c)中即可得到公式(2a)。

实例二:

如图11所示,参考图像对应的多面体包含两个面acb和dbc(多面体还可以包含其它的面,这里不一一列出),其中,面acb为参考图像中与当前像素点处于同位置的像素点所在的面,o为多面体的体心,o’为o在abc面上的垂直投影,t位置为初始参考像素点所在的位置,o’t与bc边交于s点,ot与面bcd交于h点,h”为h在o’k上的垂直投影,l为h”在o’k上的垂直投影,i为t在bc上的垂直投影。

如图11(a)所示,已知oo’的长度为loo',o’j的长度为lo'j,jk的长度为ljk,kt的长度为lkt,面acb与面bcd的夹角为α(α大于90°),∠o'sh=θ,

那么可以得到:

lo'k=lo'j+ljk(3)

lo'h'=lo's+lsh'(10)

当多面体的相邻面的夹角大于90°时,根据上述公式(4)和(13)最终可以得到得到了lsj和lh"j,进而可以确定目标像素点投影到多面体的表面的位置。

在图11(b)中,面acb与面bcd的夹角α小于90°。那么:

lo'h'=lo's-lsh'(15)

当多面体的相邻面的夹角小于90°时,根据上述公式(4)和(18)最终可以得到得到了lsj和lh"j,进而可以确定目标像素点投影到多面体的表面的位置。

在一般的正多面体中,四面体相邻面夹面角小于90°,正六面体相邻面夹面角为90°,正八面体以及更复杂的多面体相邻面夹面角大于90°。对于其他多面体格式的图像,可以按照类似方法得到相应参数,最终得到lsj和lh"j,进而确定目标参考像素点投影到多面体的表面的投影像素点的位置。应理解,这里的投影像素点的位置为指初始参考像素点与多面体体心的连线与多面体表面的交点的位置。

可选地,作为一个实施例,根据初始参考像素点的位置和参考图像的布局信息,确定目标参考像素点在多面体的表面的位置包括:根据初始参考像素点的位置和参考图像的布局信息,确定初始参考像素点在第一平面的位置;根据初始参考像素点在第一平面的位置和参考图像的布局信息,确定目标参考像素点在多面体的表面的位置。

可选地,可以将目标参考像素点在多面体的表面的位置的点理解为目标参考像素点的投影像素点,这样在根据初始参考像素点的位置确定当前像素点的目标参考像素点在参考图像中的位置时,具体包括:根据初始参考像素点的位置和参考图像的布局信息,确定初始参考像素点的投影像素点在多面体的表面的位置,投影像素点在多面体的表面的位置在初始参考像素点与多面体的中心点的连线与多面体的表面的交点处;根据投影像素点在多面体的表面的位置和参考图像的布局信息,确定目标参考像素点在参考图像中的位置。

下面结合图12,以正六面体格式的二维图像为例,具体描述如何确定目标参考像素点在参考图像中的位置,如图12(a)所示,假设参考图像对应的正六面体的边长为a,参考图像的布局格式为4x3,当前像素点的目标参考像素点投影到正六面体的front面的h1点,h1相对于front面左上角顶点的距离分别为△x、△y。下面确定不同的局部格式的二维图像中目标参考像素点在参考图像中的位置。

在图12(b)中,图像的的宽度为4a,高度为3a,front面位于左下角,并且没有旋转,那么h1在参考图像中相对于参考图像左上角顶点q的位置为(△x,a+△y)。

在图12(c)中,front面仍位于左下角与图12(b)相同的位置,但是顺时针旋转了90度,则h1在参考图像中相对于参考图像左上角顶点q的位置为(a-△y,2a+△x)。

可选地,作为一个实施例,根据目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值,包括:将目标参考像素点的像素值确定为当前像素点的像素值的预测值。

上述目标参考像素点的像素值可以是该目标参考像素点所在位置的像素值,将目标参考像素点的像素值直接确定为当前像素点的预测值,能够减少计算流程。

可选地,作为一个实施例,根据目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值,包括:根据初始参考像素点的位置和参考图像的布局信息,确定初始参考像素点在第一平面的位置;根据初始参考像素点在第一平面的位置和参考图像的布局信息,确定目标参考像素点在多面体的表面的位置。

上述加权处理可以是对目标参考像素点以及周围的像素点进行平滑滤波处理,也就是对包含目标参考像素点在内的多个像素点的像素值进行平均处理,将得到的像素值的平均值作为当前像素点的像素值的预测值。

在对当前像素点的像素值进行预测时可以直接将将目标参考像素点的像素值作为当前像素点的像素值的预测值,或者,不单独适用当前像素点的像素值对当前像素点的像素值进行预测,而是根据目标参考像素点以及目标参考像素点周围临近的像素点共同对当前像素点的像素值进行预测。

可选地,作为一个实施例,根据目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值,包括:根据目标参考像素点的临近像素点的像素值在目标参考像素点位置进行插值运算;将插值运算得到的像素值确定为当前像素点的像素值的预测值。

在确定了目标参考像素点的位置之后,若该位置处无像素值,则需要对其进行插值操作。

具体地,如图13所示,投影点h的坐标为(i+u,j+v),其中i,j均为非负整数,u,v均为[0,1)区间的小数,h周围临近四个整数像素所在的位置坐标分别为p(i,j)、p(i,j+1)、p(i,j+1)和p(i+1,j+1)。

如果采用双线性内插算法,那么可以得到h处的像素值为:ph=p(i,j)(1-u)(1-v)+p(i,j+1)(u)(1-v)+p(i,j+1)(1-u)(v)+p(i+1,j+1)(u)(v)(19)

而如果采用双三次插值算法,投影点h的坐标仍为(i+u,j+v),h点周

围的16个相邻点的坐标分别为p(i-1,j-1)、p(i-1,j+0)、p(i-1,j+1)、p(i-1,j+2)、p(i+0,j-1)、

p(i+0,j+0)、p(i+0,j+1)、p(i+0,j+2)、p(i+1,j-1)、p(i+1,j+0)、p(i+1,j+1)、p(i+1,j+2)、p(i+2,j-1)、

p(i+2,j+0)、p(i+2,j+1)以及p(i+2,j+2)。

采用双三次插值算法,得到h处的像素值为:

ph=[a]*[b]*[c](20)

[a]=[s(u+1)s(u+0)s(u-1)s(u-2)](21)

以上仅仅以双线性插值算法和双三次插值算法为例对本发明实施例中如何利用插值算法确定投影像素位置处的像素进行了详细的说明,实际上还可以采用lanczos插值算法、最邻近插值算法以及一些基于图像结构等信息的非解析插值方法等。

应理解,在确定了目标参考像素点的像素值后,可以不考虑目标参考像素点的像素值是否满足相应的要求,而是直接将目标参考像素点的像素值确定为当前像素点的像素值。另外,还可以先在确定了目标参考像素点的像素值后,对目标参考像素点的像素值是否满足预设要求进行判断,当目标参考像素点的像素值不满足要求时,可以根据目标参考像素点的临近像素点的像素值对所述目标参考像素点进行插值运算,将得到的像素值作为当前像素点的像素值的预测值,或者,还可以对目标参考像素点的像素值以及目标参考像素点的临近像素点的像素值进行加权处理,将加权处理得到的结果作为当前像素点的像素值的预测值。

图14是本发明实施例的运动补偿预测方法的示意性流程图。图14所示的方法包括:

210、确定当前参考像素点的初始参考像素点在参考图像中的位置,当前像素点位于当前图像的第一子图像内;

220、当初始参考像素点位于参考图像中与第一子图像对应位置的第二子图像之外时,确定当前像素点在第二子图像的扩展区域中的目标参考像素点的位置,其中,第二子图像的扩展区域位于第二子图像之外,扩展区域包括多个像素点,扩展区域中任意一个第一像素点的像素值是根据参考图像中的第二像素点的像素值确定的,第二像素点在参考图像构成的多面体的表面的位置与第一像素点在第一平面的位置的连线经过多面体的中心点,第二像素点在多面体的面的位置是根据第一像素点的位置和参考图像对应的多面体的布局信息确定的,第一平面为多面体中与第二子图像对应的面所在的平面。所述第二像素点的位置精度被限制为等于或者低于预设的像素点位置精度。

230、根据目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,直接根据当前像素点以及当前像素点的运动信息直接在扩展区域中寻找真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,能够快速寻找到目标参考像素点,并且还能提高运动预测估计的准确性。

应理解,上述扩展区域中的像素点的像素值可以根据上文中图5所示的方法进行计算,这样在对当前像素点的像素值进行预测时,能够直接从扩展区域中找到目标参考像素点,能够快速地实现对当前像素点的像素值的预测。

可选地,作为一个实施例,图14所示的方法还包括:根据第一像素点的位置和参考图像的布局信息,确定第二像素点在多面体的表面的位置,第二像素点在多面体的表面的位置在第一像素点与多面体的中心点的连线与多面体的表面的交点处;根据第二像素点的在多面体的表面的位置和参考图像的布局信息,确定第二像素点在参考图像中的位置。所述第二像素点的位置精度被限制为等于或者低于预设的像素点位置精度。

可选地,作为一个实施例,图14所示的方法还包括:

具体来说,图14所示的运动补偿预测方法是先确定参考图像的某个子图像的扩展区域,然后确定参考像素点在扩展区域中的位置,这样就可以在对当前像素点进行预测时能够直接从扩展区域中寻找参考像素点,并根据该参考像素点的像素值对当前像素点进行预测。下面结合图15对上述过程进行详细说明,具体步骤如下:

201、在参考图像中为与当前像素点处于对应位置的面构建扩展区域。

根据参考图像对应的多面体的布局信息(一般情况下,参考图像对应的多面体的布局信息与当前图像的相同,因此,可以用来确定当前图像中的像素点所在的面)以及当前像素点的位置确定当前像素点的所在面,找到参考图像中与前像素点对应的面,并为该对应面构建扩展区域,并确定扩展区域中的像素点的像素值。扩展区域的具体效果类似于在面的周围对该面进行扩充或者填补,如图15(a)所示,当前像素点p处于bottom面,那么接下来需要为参考图像中的bottom面构建扩展区域,该扩展区域的范围如15(b)中的bottom面外的虚线区域所示,在计算扩展区域中的像素点的像素值时可以以参考图像的bottom为底面构建一个如图15(c)所示与该参考图像对应的多面体,如果将该多面体展开,那么多面体的rear面、front面、left面、right面等分别落在扩展区域的位置如图15(d)所示。对于扩展区域中的任一第一像素点,可以按照上文中图5所示的本发明实施例的运动补偿预测方法,根据其位置、第一像素点对应的当前像素点所在面以及参考图像对应的多面体的布局信息最终可以确定第一像素点对应的第二像素点在当前参考图像中的位置,并确定第二像素点位置上的像素值,最后将第二像素点位置的像素值作为第一像素点的像素值。这里,第一像素点类似于图5所示的本发明实施例的运动补偿预测方法中的初始参考像素点,第二像素点类似于图5所示的本发明实施例的运动补偿预测方法中的目标参考像素点。

202、确定当前像素点的在扩展区域中的目标参考像素点的位置。

首先确定当前像素点的参考像素点,并根据当前像素点所在的面以及参考像素点的位置判断参考像素点是否处于与当前像素点处于同位置的面。如果处于,那么就可以直接将参考像素点位置的像素值作为当前像素点像素值的预测值。否则,则需要执行以下操作:首先根据参考像素点与当前像素点的相对位置偏移,确定参考像素点在扩展区域中的对应位置。如图15(b)所示,参考像素点t不处于与当前像素点p处于同位置的面,根据参考像素点与当前像素点的相对位置偏移,可知参考像素点t应位于扩展区域中rear面对应的区域。如果扩展区域按照实际的相对空间位置进行放置,如图15(d),则按照相对位置偏移确定参考像素点在扩展区域中的位置。否则,需要根据具体扩展区域的放置方法来确定参考像素点在扩展区域中的位置。

203、确定当前像素点的像素值的预测值。

确定参考像素点在扩展区域中的对应位置之后,将此位置上的像素值作为当前像素点像素值的预测值。

应理解,上述扩展区域内的像素点以为整数像素,也可以为分数像素,如果为分数像素时,具体像素值可以是1/2精度,1/4精度,1/8精度等。

另外,在确定了参考像素点在扩展区域位置之后,如果此位置没有像素值,则需要对该参考像素点进行插值运算。具体的插值运算方法可以使用dct插值,双线性插值或者其他插值方法。

应理解,图14中所示的方法与图5所示的方法的区别在于,图14中是先计算出当前像素点在扩展区域中的位置,这样在对当前像素点进行预测时就能够更方便地找到目标参考像素点,省去了根据初始参考像素点的位置确定目标参考像素点的位置的计算过程。而图5所示的方法是在对当前像素点的像素值进行预测时,再根据初始参考像素点的位置确定目标参考像素点的位置,与图14所示的方法相比多了一个计算过程。另外,图14所示的方法其它步骤与图5所示的方法的其它步骤基本相同,为了简洁,适当省略重复的描述。

图16是本发明实施例的运动补偿预测方法的示意性流程图。图16所示的方法包括:

310、确定当前像素点在参考图像中的初始参考像素点位置,当前像素点位于当前图像的第一子图像内;

320、当初始参考像素点位于参考图像中与第一子图像对应位置的第二子图像之外时,根据初始参考像素点位置确定当前像素点的目标参考像素点在参考图像对应的多面体的表面的位置,其中,目标参考像素点在多面体的表面的位置与初始参考像素点在第一平面的位置的连线经过多面体的中心点,第一平面为多面体中与第二子图像对应的面所在的平面;

330、根据目标参考像素点在多面体表面的位置确定目标参考像素点在参考图像中的位置;

340、根据参考图像中目标参考像素点的像素值和/或目标参考像素点的临近像素点的像素值,确定当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,根据初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动补偿预测的准确性。

应理解,本发明实施例中,图5所示的运动补偿预测方法与图16所示的运动补偿预测方法的区别在于图5中是直接根据初始参考像素点位置来确定目标参考像素点在参考图像中的位置,而图15是先根据初始参考像素点的位置确定目标参考像素点在参考图像对应的多面体的表面的位置,然后再根据目标参考像素点在多面体表面的位置确定目标参考像素点在参考图像中的位置。对图5中所示的运动补偿预测方法的解释和说明同样适用于对图16所示的运动补偿预测方法,因此,为了简洁,此处适当省去重复的描述。

可选地,作为一个实施例,根据初始参考像素点位置确定当前像素点的目标参考像素点在参考图像对应的多面体的表面的位置,包括:根据初始参考像素点的位置和参考图像的布局信息,确定初始参考像素点在第一平面的位置;根据初始参考像素点在第一平面的位置和参考图像的布局信息,确定目标参考像素点在多面体的表面的位置。

可选地,作为一个实施例,根据目标参考像素点在多面体表面的位置确定目标参考像素点在参考图像中的位置,包括:根据初始参考像素点的位置和参考图像的布局信息,确定目标参考像素点在参考图像中的位置,目标参考像素点在多面体的表面的位置在初始参考像素点与多面体的中心点的连线与多面体的表面的交点处。

应理解,本发明实施例的运动补偿预测方法适用于各种多面体格式的二维图像,而且对于多面体格式的二维图像的面发生了旋转,面的排列次序发生了变化,以及面的空间布局格式发生了改变的情况,本发明实施例的运动补偿预测方法也都适用。

应理解,在本发明实施例中,可以在对当前像素点的像素值进行预测时去计算目标参考像素点的位置的像素值。也可以预先计算出待处理像素的目标参考像素点的像素值,这样在对待处理像素进行处理时可以直接获取待处理像素的目标参考响度点的像素值,节省了处理图像的时间。

应理解,虽然上述文中的以六面体格式的二维图像为例,但是对于其他多面体格式二维图像,本方法同样适用。包括四面体,八面体以及其他多面体格式。

应理解,上文中是以4x3格式的二维图像对本发明实施例的运动补偿预测方法进行了详细的说明,对于其他类型格式的多面体二维图像,本发明实施例的运动补偿预测方法同样适用,其中,二维图像的面带有部分或者全部旋转,不同面的排布顺序和排布方法等情况也都适用本发明实施例的运动补偿预测方法。

应理解,在本实施例中可以直接将参考图像中参考像素点的像素值作为当前像素点像素值的预测值,也可以利用参考像素点的像素值及其周围像素点的像素值的加权值或者进行其他运算得到的像素值作为当前像素点的像素值的预测值。

上文结合图1-16详细的描述了本发明实施例的运动补偿预测方法,下面结合图17-22,详细描述本发明实施例的运动补偿预测装置。应理解,图17-22中的运动补偿预测装置能够执行图1-16中的运动补偿预测方法的各个步骤,为了避免重复,适当省略重复的描述。

图17是本发明实施例的运动补偿预测装置的示意性框图。该运动补偿预测装置400包括:

第一确定单元410,用于确定当前像素点的初始参考像素点在参考图像中的位置,所述当前像素点位于所述当前图像的第一子图像内。

第二确定单元420,用于当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,根据所述初始参考像素点的位置确定所述当前像素点的目标参考像素点在所述参考图像中的位置,其中,所述目标参考像素点在所述参考图像对应的多面体的表面的位置与所述初始参考像素点在第一平面的位置的连线经过所述多面体的中心点,所述目标参考像素点在所述多面体的表面的位置是根据所述初始参考像素点的位置和所述参考图像对应的所述多面体的布局信息确定的,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面;所述目标参考像素点的位置精度被限制为等于或者低于预设的像素点位置精度。

预测单元430,用于根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,由于二维图像的面边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是根据该初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动预测估计的准确性。

可选地,作为一个实施例,所述运动补偿预测装置400还包括:

判断单元440,用于根据所述参考图像的布局信息和所述初始参考像素点的位置判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外。

可选地,作为一个实施例,所述第二确定单元420具体用于:

根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置,所述目标参考像素点在所述多面体的表面的位置为所述初始参考像素点与所述多面体的中心点的连线与所述多面体的表面的交点处;

根据所述目标参考像素点在所述多面体的表面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述参考图像中的位置。

可选地,作为一个实施例,第二确定单元420具体用于:

根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述初始参考像素点在所述第一平面的位置;

根据所述初始参考像素点在所述第一平面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置。

可选地,作为一个实施例,所述布局信息包含所述多面体的面的数量信息,所述参考图像的子图象的排布方式信息,所述参考图像的子图象的排布顺序信息,所述参考图像的子图象的旋转信息中的至少一种。

可选地,作为一个实施例,所述预测单元430具体用于:

将所述目标参考像素点的像素值确定为所述当前像素点的像素值的预测值。

可选地,作为一个实施例,所述预测单元430具体用于:

对所述目标参考像素点的像素值以及所述目标参考像素点的临近像素点的像素值进行加权处理;

将所述加权处理到的所述目标参考像素点所在位置的像素值确定为所述当前像素点的像素值的预测值。

可选地,作为一个实施例,所述预测单元430具体用于:

根据目标参考像素点的临近像素点的像素值在所述目标参考像素点位置进行插值运算;

将所述插值运算得到的像素值确定为所述当前像素点的像素值的预测值。

图18是本发明实施例的运动补偿预测装置的示意性框图。该运动补偿预测装置500包括:

第一确定单元510,用于确定当前参考像素点的初始参考像素点在参考图像中的位置,所述当前像素点位于所述当前图像的第一子图像内;

第二确定单元520,用于当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,确定所述当前像素点在所述子图像的扩展区域中的目标参考像素点的位置,

其中,所述第二子图像的扩展区域位于所述第二子图像之外,所述扩展区域包括多个像素点,所述扩展区域中任意一个第一像素点的像素值是根据所述参考图像中的第二像素点的像素值确定的,所述第二像素点在所述参考图像构成的多面体的表面的位置与所述第一像素点在第一平面的位置的连线经过所述多面体的中心点,所述第二像素点在所述多面体的面的位置是根据所述第一像素点的位置和所述参考图像对应的所述多面体的布局信息确定的,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面;所述第二像素点的位置精度被限制为等于或者低于预设的像素点位置精度;

预测单元530,用于根据所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,由于二维图像的面边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是直接根据当前像素点以及当前像素点的运动信息直接在扩展区域中寻找真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,能够快速寻找到目标参考像素点,并且还能提高运动预测估计的准确性。

可选地,作为一个实施例,所述运动补偿预测装置还包括:

第三确定单元540,所述第三确定单元540具体用于:

根据所述第一像素点的位置和所述参考图像的布局信息,确定所述第二像素点在所述多面体的表面的位置,所述第二像素点在所述多面体的表面的位置在所述第一像素点与所述多面体的中心点的连线与所述多面体的表面的交点处;

根据所述第二像素点的在所述多面体的表面的位置和所述参考图像的布局信息,确定所述第二像素点在所述参考图像中的位置。

可选地,作为一个实施例,所述运动补偿预测装置还包括:

判断单元550,用于根据所述参考图像的布局信息和所述初始参考像素点的位置判断所述初始参考像素点是否位于所述参考图像中的所述第二子图像之外。

图19是本发明实施例的运动补偿预测装置的示意性框图。该运动补偿预测装置600包括:

第一确定单元610,用于确定当前像素点在参考图像中的初始参考像素点位置,所述当前像素点位于所述当前图像的第一子图像内;

第二确定单元620,当所述初始参考像素点位于所述参考图像中与所述第一子图像对应位置的第二子图像之外时,根据所述初始参考像素点位置确定所述当前像素点的目标参考像素点在所述参考图像对应的多面体的表面的位置,其中,所述目标参考像素点在所述多面体的表面的位置与所述初始参考像素点在第一平面的位置的连线经过所述多面体的中心点,所述第一平面为所述多面体中与所述第二子图像对应的面所在的平面;

第三确定单元630,用于根据所述目标参考像素点在多面体表面的位置确定所述目标参考像素点在所述参考图像中的位置;

预测单元640,用于根据所述参考图像中所述目标参考像素点的像素值和/或所述目标参考像素点的临近像素点的像素值,确定所述当前像素点的像素值的预测值。

本发明实施例中,当初始参考像素点位于第二子图像之外时,由于二维图像的面边界的几何形变的影响,导致直接根据初始参考像素点对当前像素点进行预测是不准确的,因此,在这种情况下,本发明是根据该初始参考像素点的位置寻找到真正能够起到参考作用的目标参考像素点,然后根据目标参考像素点对当前像素点的像素值进行预测,提高了运动预测估计的准确性。所述目标参考像素点的位置精度被限制为等于或者低于预设的像素点位置精度。

可选地,作为一个实施例,所述第二确定单元620具体用于:

根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述初始参考像素点在所述第一平面的位置;

根据所述初始参考像素点在所述第一平面的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述多面体的表面的位置。

可选地,作为一个实施例,所述第三确定单元具体用于:

根据所述初始参考像素点的位置和所述参考图像的布局信息,确定所述目标参考像素点在所述参考图像中的位置,所述目标参考像素点在所述多面体的表面的位置在所述初始参考像素点与所述多面体的中心点的连线与所述多面体的表面的交点处。

上文结合图1-19对本发明实施例的运动补偿预测方法和运动补偿预测装置进行了详细的说明,事实上,本发明实施例的运动补偿预测方法可以看成是编码或者解码过程中的一个中间过程或者步骤,全景视频编码器或者全景视频解码器可以实现本发明实施例的运动补偿预测方法。下面结合图20和图21分别对全景视频解码器的解码过程和全景视频编码器的编码过程进行详细的介绍。

在结合图20介绍全景视频解码器的解码过程之前,首先对编码器和解码器对图像进行编解码时的一些机制进行简单的介绍。

在对当前图像进行编码之前,一般是当前图像分成大小相等的若干块,然后再对每个块进行编码操作。在对当前图像进行编码过程中,当前图像的布局信息一般作为头信息传输到解码端。头信息为先导信息,解码器在接收到编码码流后会先解码该头信息,然后根据该头信息对后续的码流进行解码。假设,在编码时当前图像被划分成多个图像块依次进行编码,解码则按照同样的顺序依次进行解码。对于当前块,如果已确定其为帧间编码方式,为了得到其重建信息,要得到当前块内像素点的像素值的重建值。

图20是全景视频解码器的解码过程的示意性流程图。具体包括:

710、确定当前图像中的当前块的运动信息。

具体来说,解码器可以解码运动信息码流,根据解析结果确定当前快的运动信息。

应理解,在步骤710中,还可以通过解码预测运动信息的指示信息以及预测运动信息与运动信息的差值信息来确定当前块的运动信息,也就是说可以不直接解析运动信息的编码码流就可以确定当前块的运动信息。例如,解码端可以构建一个运动信息集合(例如,该运动信息集合包含与当前块的时间或者空间相邻的已重建块的运动信息,该集合的构建方法由编解码端共同约定),那么解码端可以解析预测运动信息的指示信息,然后从该集合中确定预测运动信息,并根据预测运动信息以及预测运动信息与运动信息的差值信息获得当前块的运动信息。此外,应理解,解码端还以将根据预测运动信息的指示信息确定的预测运动信息作为当前块的运动信息,具体使用哪一种方法由编解码端约定,或者编码端将所用的方式信息传输到解码端,解码端根据接收到的方式信息确定使用哪种方式来确定当前块的运动信息。

另外,在步骤710中,如果是单向参考,需解析一套运动信息。如果是双向参考,需解析两套运动信息。具体解析几套运动信息为编解码端共同约定,或者编码端将所用套数相关信息传输到解码端,解码端依据解析结果确定。

720、确定当前块内像素点的像素值的预测值。

解码器可以根据当前块的运行信息来确定当前块所在的当前图像的参考图像,并确定参考块在参考图像中的位置。事实上,确定当前块内像素点的像素值的预测值就是确定当前块内的每个像素点的像素值的预测值,确定像素点的像素值的预测值具体可以根据本发明实施例中的运动补偿预测方法来确定。

应理解,在得到当前块每个像素点的像素值的预测值之后,可以根据每个像素点的像素值的预测值得到当前块的预测块,预测块包含当前块内每个像素点的像素值的预测值。

在步骤720中,如果是单向参考,则只需要确定一个参考块在所在参考图像中的位置,对于当前块内的一个像素点,只需要确定一个参考像素点的位置,然后可以根据本发明实施例的运动补偿预测方法来确定当前块内像素点像素值的预测值。

如果是双向参考,则需要确定当前块的两个参考块在各自参考图像中的位置,对于当前块内的一个像素点,需要分别确定两个参考像素点在两个参考块中的位置。然后可以根据本发明实施例的运动补偿预测方法来确定当前块内像素点的像素值的两个预测值。然后将这两个预测值进行加权或者其他操作得到当前块内像素点像素值的预测值。具体操作方式为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。

此外,在得到当前块中的像素点的像素值的预测值之后,可以先对该预测值进行其他的操作,将操作得到的预测值作为当前像素点的像素值的最终预测值。例如,可以将得到的预测值经过平滑滤波后得到预测值作为当前像素点的像素值的最终预测值。具体是否使用以及使用哪一种方式为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。另外,还可以对当前像素点的像素值进行双向预测,也就是说可以对当前像素点进行两次预测,再将得到的两个预测值进行加权得到当前像素点的像素值的预测值。

730、确定当前块内像素点的像素值的残差信息。

解码器解码当前块内像素点的像素值的残差信息的编码码流,并利用反量化和反变换方法得到当前块内像素点的像素值的残差信息。也就是说编码器解码当前块的残差块的编码码流,然后利用反量化和反变换方法得到当前块的残差块。

应理解,在步骤730中,为了确定当前块内像素点的像素值的残差信息,也可以仅使用反变换或者仅使用反量化方法,具体使用何种方法为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。

740、确定当前块内像素点的像素值的重建值。

可以根据步骤720中得到的当前块内像素点的像素值与步骤730中得到的当前块内像素点的像素值的残差信息,得到当前块内每个像素点的像素值的重建值。另外,还可以根据步骤720得到当前块的预测块,然后将该预测块与步骤730中得到的残差块相加即可得到当前块的重建块,该重建块包括当前块内每个像素点的像素值的重建值。

应理解,在步骤740中,为了得到当前块内像素点的像素值的重建值,在使用预测信息加上残差信息之后,也可以需要做一些其他操作,例如去块滤波等。具体是否需要其他操作以及其他何种操作为编解码端共同约

定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。

上文结合图20对全景视频解码器的解码过程进行了详细的说明,实际上解码过程一般是对编码得到的编码码流进行的,下面结合图21以全景视频编码器为例,对编码过程进行详细的说明。

球形图像的布局信息一般在球形图像的采集或者生成之后便可确定了。因此,在编码器对全景视频进行编码之前,编码器便已获知了球形图像的布局信息。球形图像的布局信息一般作为头信息进行传输。头信息是一种先导信息,这样解码器在接收到编码码流之前,先解码头信息,根据头信息获取了球形图像的布局信息后就可以对后续的码流进行解码。

图21是全景视频编码器的编码过程的示意性流程图。具体包括:

810、确定当前块的运动信息。

编码器首先确定当前块的运动信息,然后对运动信息进行编码。具体来说,编码器在重建图像中为当前图像选择一个参考图像,并在参考图像的规定区域内为当前块寻找一个匹配块,并将该匹配块作为当前块的参考块,并在这个过程中所用的参考图像以及指示参考块相对于当前块的位置偏移的运动矢量信息作为运动信息,并对其进行编码。

在参考图像中的规定区域内为当前块寻找参考块时,可以先为当前块选择多个块,最后选用哪一个块作为参考块可以使用率失真优化准则来确定。例如,确定候选参考块作为匹配块时需要编码的运动信息的比特数,以及使用当前候选参考块内像素点的像素值来预测当前块内像素点的像素值时的失真值,利用拉格朗日优化方法确定该候选参考块的代价。然后选择代价最小的候选参考块作为匹配块。而对于多个参考图像的情况,需要对每一个图像均执行上述操作。

应理解,在步骤810中,还可以不直接对运动信息进行编码,而是对预测运动信息的指示信息,或者预测运动信息与运行信息的差值信息进行编码。例如,编码端可以构建一个运动信息集合(例如,该运动信息集合包含与当前块的时间或者空间相邻的已重建块的运动信息,该集合的构建方法由编解码端共同约定),那么编码端可以选定其中一个运动信息作为预测运动信息,然后得到当前块的运动信息与预测运动信息的差值信息,对预测运动信息的指示信息以及差值信息进行编码。另外,也可以只对预测运动信息的指示信息进行编码,使得解码端能够根据指示信息从所构建的运动信息集合中确定运动信息,并将其作为当前块的运动信息。具体使用哪一种方法为编解码端共同约定,也可以通过率失真方法选用,并将选用的方法传输到解码端。

在步骤810中,如果是单向参考,则只需编码一套运动信息。如果是双向参考,需编码两套运动信息。具体编码几套运动信息由编解码端共同约定,也可以通过率失真方法确定,并由编码端将相应信息传输到解码端。

在单向参考时,需要确定一个参考块在所在参考图像中的位置,对于当前块内的一个当前像素点,需要确定一个参考像素点的位置,然后根据本发明实施例的运动补偿预测方法来确定参考像素点的像素值的预测值。如果是双向参考,则需要确定当前块的两个参考块在各自参考图像中的位置,也就是说对于当前块内的一个像素点,需要分别确定两个参考像素点在两个参考块中的位置。然后可以根据本发明实施例的运动补偿预测方法来确定当前块内像素点的像素值的两个预测值。然后将这两个预测值进行加权或者其他操作得到当前块内像素点像素值的预测值。具体操作方式为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。

820、确定当前块内像素点的像素值的预测值

编码器可以根据当前块的运行信息来确定当前块所在的当前图像的参考图像,并确定参考块在参考图像中的位置。事实上,确定当前块内像素点的像素值的预测值就是确定当前块内的每个像素点的像素值的预测值,确定像素点的像素值的预测值具体可以根据本发明实施例中的运动补偿预测方法来确定。

此外,在得到当前块中的像素点的像素值的预测值之后,可以先对该预测值进行其他的操作,将操作得到的预测值作为当前像素点的像素值的最终预测值。例如,可以将得到的预测值经过平滑滤波后得到预测值作为当前像素点的像素值的最终预测值。具体是否使用以及使用哪一种方式为编解码端共同约定,或者编码端将所用方法传输到解码端,解码端依据解析结果确定所用方法。另外,还可以对当前像素点的像素值进行双向预测,也就是说可以对当前像素点进行两次预测,再将得到的两个预测值进行加权得到当前像素点的像素值的预测值。

830、确定当前块内像素点的像素值的残差信息。

编码器使用当前块内像素点的像素值减去其预测值,得到当前块内像素点像素值的残差信息,然后根据变换量化方法对当前块内像素点的像素值的残差信息进行处理,并对处理之后的结果进行编码。

应理解,在对当前块内像素点的像素值的残差信息进行编码时,也可以仅使用变换或者仅使用量化方法,具体使用何种方法为编解码端共同约定,也可以编码端通过通过率失真方法确定,并将信息传输到解码端。

图22是根据本发明实施例的图像编码器900的示意性框图,包括预测模块910、变换量化模块920、熵编码模块930、重建模块940以及滤波模块950,各个模块的具体作用如下的:

预测模块910用于产生预测数据。预测模块910可产生每一不再分割cu的一个或多个预测单元(pu)。cu的每一个pu可与cu的像素块内的不同像素块相关联。预测模块910可针对cu的每一个pu产生预测性像素块。预测模块910可使用帧内预测或帧间预测来产生pu的预测性像素块。如果预测模块910使用帧内预测来产生pu的预测性像素块,则预测模块910可基于与pu相关联的图片的解码后的像素来产生pu的预测性像素块。如果预测模块910使用帧间预测来产生pu的预测性像素块,则预测模块910可基于不同于与pu相关联的图片的一个或多个图片的解码后的像素来产生pu的预测性像素块。预测模块910可基于cu的pu的预测性像素块来产生cu的残余像素块。cu的残余像素块可指示cu的pu的预测性像素块中的采样值与cu的初始像素块中的对应采样值之间的差。

变换量化模块920用于对经过预测的残差数据进行处理。图像编码器900可对cu的残余像素块执行递归四叉树分割以将cu的残余像素块分割成与cu的变换单元(tu)相关联的一个或多个较小残余像素块。因为与tu相关联的像素块中的像素各自对应一个亮度采样及两个色度采样,所以每一个tu可与一个亮度的残余采样块及两个色度的残余采样块相关联。图像编码器900可将一个或多个变换应用于与tu相关联的残余采样块以产生系数块(即,系数的块)。变换可以是dct变换或者它的变体。采用dct的变换矩阵,通过在水平和竖直方向应用一维变换计算二维变换,获得所述系数块。图像编码器900可对系数块中的每一个系数执行量化程序。量化一般指系数经量化以减少用以表示系数的数据量,从而提供进一步压缩的过程。

图像编码器900可产生表示量化后系数块中的系数的语法元素的集合。图像编码器900通过熵编码模块930可将熵编码操作(例如,上下文自适应二进制算术译码(cabac)操作)应用于上述语法元素中的部分或者全部。为将cabac编码应用于语法元素,熵编码模块930可将语法元素二进制化以形成包括一个或多个位(称作“二进位”)的二进制序列。熵编码模块930可使用规则(regular)编码来编码二进位中的一部分,且可使用旁通(bypass)编码来编码二进位中的其它部分。

除熵编码系数块的语法元素外,图像编码器900通过重建模块940,可将逆量化及逆变换应用于变换后的系数块,以从变换后的系数块重建残余采样块。图像编码器900可将重建后的残余采样块加到一个或多个预测性采样块的对应采样块,以产生重建后的采样块。通过重建每一色彩分量的采样块,图像编码器900可重建与tu相关联的像素块。以此方式重建cu的每一tu的像素块,直到cu的整个像素块重建完成。

在图像编码器900重建构cu的像素块之后,图像编码器900通过滤波模块950,执行消块滤波操作以减少与cu相关联的像素块的块效应。在图像编码器900执行消块滤波操作之后,图像编码器900可使用采样自适应偏移(sao)来修改图片的ctb的重建后的像素块。在执行这些操作之后,图像编码器900可将cu的重建后的像素块存储于解码图片缓冲器中以用于产生其它cu的预测性像素块。

在一个或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,则功能可作为一个或多个指令或代码而存储于计算机可读媒体上或经由计算机可读媒体而发送,且通过基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体(其对应于例如数据存储媒体等有形媒体)或通信媒体,通信媒体包含(例如)根据通信协议促进计算机程序从一处传送到另一处的任何媒体。以此方式,计算机可读媒体大体上可对应于(1)非瞬时的有形计算机可读存储媒体,或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一个或多个计算机或一个或多个处理器存取以检索指令、代码及/或数据结构以用于实施本发明中所描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。

通过实例而非限制,某些计算机可读存储媒体可包括ram、rom、eeprom、cd-rom或其它光盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器,或可用以存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。而且,任何连接可适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光缆、双绞线、数字用户线(dsl)或无线技术(例如,红外线、无线电及微波)而从网站、服务器或其它远程源发送指令,则同轴电缆、光缆、双绞线、dsl或无线技术(例如,红外线、无线电及微波)包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它瞬时媒体,而是有关非瞬时有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字影音光盘(dvd)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘通过激光以光学方式复制数据。以上各物的组合还应包含于计算机可读媒体的范围内。

可由例如一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程逻辑阵列(fpga)或其它等效集成或离散逻辑电路等一个或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可将本文中所描述的功能性提供于经配置以用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编解码器中。而且,所述技术可完全实施于一个或多个电路或逻辑元件中。

本发明的技术可以广泛地由多种装置或设备来实施,所述装置或设备包含无线手持机、集成电路(ic)或ic集合(例如,芯片组)。在本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必要求通过不同硬件单元来实现。确切地说,如上文所描述,各种单元可组合于编解码器硬件单元中,或通过交互操作性硬件单元(包含如上文所描述的一个或多个处理器)的集合结合合适软件及/或固件来提供。

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

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

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

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

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

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

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

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

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

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

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

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