全局运动估计方法和装置与流程

文档序号:15690073发布日期:2018-10-16 21:54阅读:275来源:国知局

本公开涉及视觉处理技术领域,具体地,涉及一种全局运动估计方法和装置。



背景技术:

在视频图像中通常存在两种运动,即全局运动和局部运动。前者是由于摄像机位置变化而引起的整个图像的运动变化,又称为背景运动;后者是由于场景中个别物体的运动而引起的局部图像的运动变化,又称为前景运动。全局运动估计的目的就是为了区分这两种运动,以检测出产生局部运动的运动目标。

现有的全局运动估计方法,通常建立包含多个全局运动参数的全局运动模型,通过对全局运动模型进行求解得到这些全局运动参数。然而,现有的全局运动模型中至少有一个全局运动参数是包含两个或两个以上方向的旋转信息,因而全局运动模型本身就是非线性方程,对于一些特定场景,由于全局运动模型本身就是非线性方程,其中涉及到非齐次旋转矩阵的计算,无法求解得到准确的全局运动参数,导致无法准确区分出全局运动和局部运动。



技术实现要素:

为了克服现有技术中存在的问题,本公开提供一种全局运动估计方法和装置。

为了实现上述目的,本公开提供一种全局运动方法,包括:

获取目标点在双目摄像机中的成像信息;

根据所述成像信息建立全局运动模型;

控制所述双目摄像机运动并获取所述双目摄像机的运动姿态信息;

根据所述全局运动模型和所述运动姿态信息,确定全局运动参数。

可选地,所述双目摄像机包括参数相同的左摄像机和右摄像机,所述左摄像机和所述右摄像机平行设置且所述左摄像机的第一成像平面与所述右摄像机的第二成像平面位于同一平面。

可选地,所述成像信息包括所述目标点在所述第一成像平面上的投影点与在所述第二成像平面上的投影点之间的视差;

所述获取目标点在双目摄像机中的成像信息,包括:

以所述左摄像机的光心为原点,以所述左摄像机的光轴方向为z轴,以与所述第一成像平面平行的平面作为xy平面,建立世界坐标系;

基于所述世界坐标系,根据下列公式获取所述视差:

其中,δ为所述视差;f为所述左摄像机或所述右摄像机的焦距;b为所述左摄像机的光心与所述右摄像机的光心之间的距离;z为所述目标点相对于所述世界坐标系的z轴坐标。

可选地,所述根据所述成像信息建立全局运动模型,包括:

以所述第一成像平面的中心点作为原点且与所述第一成像平面作为uv平面,根据所述视差建立立体坐标系(u,v,δ);

根据下列公式获取所述第一成像平面上的投影点在所述立体坐标系的uv平面,根据所述视差建立立体坐标系(u,v,δ);

根据所述uv平面上的坐标和所述视差,建立所述立体坐标系与所述世界坐标系之间的映射关系:

根据所述映射关系,建立所述全局运动模型:

其中,(x,y,z)为所述双目摄像机运动前所述目标点在所述世界坐标系中的坐标;(ul,vl,δ)为所述双目摄像机运动前所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;(ul',vl',δ')为所述双目摄像机运动后所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;r为全局运动中的旋转矩阵;t为全局运动中的平移向量。

可选地,所述控制所述双目摄像机运动,包括:

控制所述左摄像机绕其光心转动;

所述运动姿态信息包括所述左摄像机在运动前相对于所述世界坐标系的第一姿态和在运动后相对于所述世界坐标系的第二姿态;

所述根据所述全局运动模型和所述运动姿态信息,确定全局运动参数,包括:

根据所述第一姿态和所述第二姿态,计算所述旋转矩阵r:

根据所述旋转矩阵r和所述全局运动模型,确定所述平移向量t:

其中,(α,β,γ)为所述第一姿态;(α',β',γ')为所述第二姿态。

可选地,所述根据所述旋转矩阵r和所述全局运动模型,确定所述平移向量t,包括:

设置指标函数f(t);

基于递归的最小二乘法,根据所述指标函数f(t)计算所述平移向量t;

其中,为预设角点相对于所述第一成像平面的中心点的坐标。

可选地,所述获取所述双目摄像机的运动姿态信息,包括:

通过设置在所述双目摄像机上的陀螺仪获取所述运动姿态信息。

本公开还提供一种全局运动估计装置,包括:

双目摄像机,用于获取目标点的图像;

驱动元件,与所述双目摄像机连接,用于驱动所述双目摄像机运动;

控制器,分别与所述双目摄像机和所述驱动元件连接,用于根据所述图像获取目标点的成像信息;根据所述成像信息建立全局运动模型;控制所述驱动元件工作并获取所述双目摄像机的运动姿态信息;根据所述全局运动模型和所述运动姿态信息,确定全局运动参数。

可选地,所述双目摄像机包括参数相同的左摄像机和右摄像机,所述左摄像机与所述右摄像机平行设置且所述左摄像机的第一成像平面与所述右摄像机的第二成像平面位于同一平面。

可选地,所述成像信息包括所述目标点在所述第一成像平面上的投影点与在所述第二成像平面行的投影点之间的视差;

所述控制器用于:

以所述左摄像机的光心作为原点,以所述左摄像机的光轴方向为z轴,以与所述左摄像机的成像平面平行的平面作为xy平面,建立世界坐标系;

基于所述世界坐标系,根据下列公式获取所述视差:

其中,δ为所述视差;f为所述左摄像机或所述右摄像机的焦距;b为所述左摄像机的光心与所述右摄像机的光心之间的距离;z为所述目标点相对于所述世界坐标系的z轴坐标。

可选地,所述控制器用于:

以所述第一成像平面的中心点作为原点且以所述第一成像平面作为uv平面,根据所述视差建立立体坐标系(u,v,δ);

根据下列公式获取所述第一成像平面上的投影点在所述立体坐标系的uv平面上的坐标(ul,vl):

根据所述uv平面上的坐标和所述视差,建立所述立体坐标系与所述世界坐标系之间的映射关系:

根据所述映射关系,建立所述全局运动模型:

其中,(x,y,z)为所述双目摄像机运动前所述目标点在所述世界坐标系中的坐标;(ul,vl,δ)为所述双目摄像机运动前所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;(ul',vl',δ')为所述双目摄像机运动后所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;r为全局运动中的旋转矩阵;t为全局运动中的平移向量。

可选地,所述运动姿态信息包括所述左摄像机在运动前相对于所述世界坐标系的第一姿态和在运动后相对于所述世界坐标系的第二姿态;

所述控制器用于:

控制所述驱动元件驱动所述左摄像机绕其光心转动;

根据所述第一姿态和所述第二姿态,计算所述旋转矩阵r:

根据所述旋转矩阵r和所述全局运动模型,确定所述平移向量t:

其中,(α,β,γ)为所述第一姿态;(α',β',γ')为所述第二姿态。

可选地,所述控制器用于:

设置指标函数f(t);

基于递归的最小二乘法,根据所述指标函数f(t)计算所述平移向量t;

其中,为预设角点相对于所述第一成像平面的中心点的坐标。

可选地,所述装置还包括:

陀螺仪,设置在所述双目摄像机上,用于获取所述运动姿态信息。

通过上述技术方案,通过目标点在双目摄像机中的成像信息建立全局运动模型,控制双目摄像机运动并获取双目摄像机的运动姿态信息,并根据全局运动模型和所述运动姿态信息确定全局运动参数,可以将全局运动模型中的非线性方程变为线性方程,进而得到全局运动参数的唯一真值,从而可以提升全局运动估计的准确性。

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据本公开一示例性实施例示出的一种全局运动估计方法的流程图;

图2是根据本公开一示例性实施例示出的一种世界坐标系和立体坐标系的示意图;

图3是根据本公开一示例性实施例示出的一种全局运动估计装置的框图;

图4是根据本公开另一示例性实施例示出的一种全局运动估计装置的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

在本公开中,在未作相反说明的情况下,使用的方位词如“左、右”通常是指相应附图的图面方向的左、右,这些方位词的使用仅是为了便于描述,不能视为对本公开的限制。

本公开的说明书和权利要求书以及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必被用于描述特定的顺序或先后次序。

图1是根据本公开一示例性实施例示出的全局运动估计方法的流程图,如图1所示,该方法可以包括以下步骤:

在步骤s101中,获取目标点在双目摄像机中的成像信息。

在本公开的实施例中,目标点可以是真实空间中的任意一点。如图2所示,双目摄像机可以包括参数相同的左摄像机10和右摄像机20,其中,左摄像机10和右摄像机20平行设置且左摄像机的第一成像平面11与右摄像机的第二成像平面21位于同一平面。

在一个实施例中,成像信息可以包括目标点在第一成像平面上的投影点与第二成像屏幕上的投影点之间的视差,其反应了目标点到达第一成像平面/第二成像平面的距离。示例地,如图2所示,以真实空间中的p点作为目标点,首先,可以以左摄像机10的光心o1作为原点、以左摄像机10的光轴方向为z轴且以与第一成像平面11平行的平面作为xy平面,建立世界坐标系。接着,基于该世界坐标系,可以根据式(1)获取p点在第一成像平面上的投影点pl与在第二成像平面上的投影点pr之间的视差δ:

其中,f为左摄像机10或右摄像机20的焦距;b为左摄像机10的光心o1与右摄像机20的光心o2之间的距离;z为目标点相对于世界坐标系的z轴坐标。

在步骤s102中,根据成像信息建立全局运动模型。

在一个实施例中,如图2所示,可以以左摄像机10为参考,以其第一成像平面11的中心点ol作为原点且以第一成像平面11作为uv平面,根据视差δ可以建立立体坐标系(u,v,δ)。根据式(2)可以获取目标点p点在第一成像平面11上的投影点pl在该立体坐标系的uv平面上的坐标(ul,vl):

其中,(x,y,z)为目标点p点相对于世界坐标系的坐标。

根据得到的坐标(ul,vl)和视差δ可以建立立体坐标系与世界坐标系之间的映射关系,如式(3)所示。

由于左摄像机和右摄像机的参数(包括焦距f和光心距离b)通常是维持不变的,因而引起图像的全局运动也就是双目摄像机(左摄像机和/或右摄像机)的真实空间运动,这类运动可以分别的描述为世界坐标系和立体坐标系两个坐标系中的运动。以这两个坐标系为参照,在真实空间中的目标点就产生了相对运动,这种相对运动也就是本公开实施例中的全局运动。

对于目标点p点,其相对于世界坐标系的坐标可以表示为(x,y,z),相应地,以世界坐标系为参考,其相对运动可以被描述为沿着x,y,z轴方向的旋转及平移运动,如式(4)所示:

其中,(x,y,z)为双目摄像机运动前目标点p点在世界坐标系中的坐标;(x',y',z')为双目摄像机运动后目标点p点在世界坐标系中的坐标;r为全局运动中的旋转矩阵,其为3×3的矩阵;t为全局运动中的平移向量,其为3×1的向量。

对于立体坐标系,目标点p点在立体坐标系中的坐标也产生了变化,根据立体坐标系与世界坐标系之间的映射关系,可以得到目标点p点在立体坐标系中的相对运动,即基于立体坐标系的全局运动模型,如式(5)所示。

其中,(ul,vl,δ)为双目摄像机运动前目标点在第一成像平面上的投影点在立体坐标系中的坐标;(ul',vl',δ')为双目摄像机运动后目标点在第一成像平面上的投影点在立体坐标系中的坐标。

可见,通过在双目摄像机的二维成像平面中增加了视差,可以更准确地反映真实世界的三维运动。

在步骤s103中,控制双目摄像机运动并获取双目摄像机的运动姿态信息。

在一个实施例中,可以仅控制双目摄像机中的左摄像机绕其光心转动,而使右摄像机保持不变。相应地,双目摄像机的运动姿态信息可以包括左摄像机在运动前相对于世界坐标系的第一姿态以及在运动后相对于世界坐标系的第二姿态。示例地,可以在左摄像机上设置一陀螺仪,左摄像机在转动时带动陀螺仪转动,陀螺仪的姿态变化即为左摄像机的姿态变化,从而可以通过陀螺仪获取左摄像机运动前后的姿态。

在步骤s104中,根据全局运动模型和运动姿态信息,确定全局运动参数。

在一个实施例中,可以控制左摄像机绕x轴旋转-α度,并绕y轴旋转-β度,以使左摄像机旋转至xy平面。接着,控制左摄像机绕z轴旋转γ'-γ度。最后,控制左摄像机绕y轴旋转β'度并绕x轴旋转α'角度。由此,可以根据式(6)计算旋转矩阵r。

接着,根据计算出的旋转矩阵r和上述基于立体坐标系的全局运动模型,可以确定平移向量t,如式(7)所示:

其中,(α,β,γ)为左摄像机在运动前相对于世界坐标系的第一姿态;(α',β',γ')为左摄像机在运动后相对于世界坐标系的第二姿态。

在确定出平移向量t后,即可得到全局运动参数(rx,ry,rz,tx,ty,tz)。

在一个实施例中,可以通过角点跟踪(cornertracking)、块匹配、像素法等算法来获得角点对(cornerpairs),并根据获取到的角点对的信息和式(7)计算出平移向量t。

在另一个实施例中,为了避免获取到的角点对的信息不正确,可以基于一系列角点对,采用最小二乘法来估计平移向量t。

此外,考虑到采用角点跟踪的方法获得角点对时,无法保证图像中所有角点的运动矢量都准确。为了消除角点对运动矢量不准确对全局运动估计结果的影响,可采用递归的最小二乘法来估计平移向量t,即将每一步递归中得到的平移向量t作为已知量来重新计算角点的运动矢量并与角点跟踪得到的角点运动矢量进行比较,误差超过预设阈值的角点对将被剔除,剩余的角点对再被用来重新估计平移向量t。以上过程循环进行,直到平移向量t收敛至一个稳定的结果,由此可得到更准确的全局运动参数(rx,ry,rz,tx,ty,tz)。

考虑到在人为拍摄的图像中,运动目标通常都处于图像的中部,而图像边缘区域通常都是背景区域,基于此,在另一个实施例中,可在现有的指标函数中加大图像边缘区域角点的权值,以使得全局运动估计结果更符合边缘区域角点的运动,由此可设置指标函数其中,为预设角点相对于所述第一成像平面的中心点的坐标。基于递归的最小二乘法,根据该指标函数f(t)可以计算出平移向量t。

可见,通过在指标函数f(t)中引入角点坐标作为权值,可以增大边缘角点在全局运动估计中的作用,进而可以使全局运动估计结果更符合边缘区域参考点的运动,即更符合背景运动。

通过本公开实施例提供的全局运动估计方法,可以将全局运动模型中的非线性方程r变为线性方程,进而得到全局运动参数的唯一真值,从而可以提升全局运动估计的准确性。

图3是根据本公开一示例性实施例示出的一种全局运动估计装置。如图3所示,该装置30包括:双目摄像机31、驱动元件32和控制器33。

该双目摄像机31用于获取目标点的图像。

该驱动元件32与双目摄像机31连接,用于驱动双目摄像机31运动。

该控制器33分别与双目摄像机31和驱动元件32连接,用于根据图像获取目标点的成像信息;根据所述成像信息建立全局运动模型;控制所述驱动元件32工作并获取所述双目摄像机31的运动姿态信息;根据所述全局运动模型和所述运动姿态信息,确定全局运动参数。

在一个实施例中,如图4所示,双目摄像机包括参数相同的左摄像机311和右摄像机312,其中,左摄像机311与右摄像机312平行设置且左摄像机311的第一成像平面与右摄像机312的第二成像平面位于同一平面。

在一个实施例中,成像信息包括所述目标点在所述第一成像平面上的投影点与在所述第二成像平面行的投影点之间的视差。

所述控制器33用于,以所述左摄像机的光心作为原点,以所述左摄像机的光轴方向为z轴,以与所述左摄像机的成像平面平行的平面作为xy平面,建立世界坐标系;

基于所述世界坐标系,根据下列公式获取所述视差:

其中,δ为所述视差;f为所述左摄像机或所述右摄像机的焦距;b为所述左摄像机的光心与所述右摄像机的光心之间的距离;z为所述目标点相对于所述世界坐标系的z轴坐标。

在另一个实施例中,控制器33用于,以所述第一成像平面的中心点作为原点且以所述第一成像平面作为uv平面,根据所述视差建立立体坐标系(u,v,δ);

根据下列公式获取所述第一成像平面上的投影点在所述立体坐标系的uv平面上的坐标(ul,vl):

根据所述uv平面上的坐标和所述视差,建立所述立体坐标系与所述世界坐标系之间的映射关系:

根据所述映射关系,建立所述全局运动模型:

其中,(x,y,z)为所述双目摄像机运动前所述目标点在所述世界坐标系中的坐标;(ul,vl,δ)为所述双目摄像机运动前所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;(ul',vl',δ')为所述双目摄像机运动后所述目标点在所述第一成像平面上的投影点在所述立体坐标系中的坐标;r为全局运动中的旋转矩阵;t为全局运动中的平移向量。

在另一个实施例中,所述运动姿态信息包括所述左摄像机在运动前相对于所述世界坐标系的第一姿态和在运动后相对于所述世界坐标系的第二姿态;

所述控制器33用于,控制所述驱动元件驱动所述左摄像机绕其光心转动;

根据所述第一姿态和所述第二姿态,计算所述旋转矩阵r:

根据所述旋转矩阵r和所述全局运动模型,确定所述平移向量t:

其中,(α,β,γ)为所述第一姿态;(α',β',γ')为所述第二姿态。

在另一个实施例中,所述控制器330用于,设置指标函数f(t);

基于递归的最小二乘法,根据所述指标函数f(t)计算所述平移向量t;

其中,为预设角点相对于所述第一成像平面的中心点的坐标。

在另一个实施例中,如图4所示,所述装置30还包括:

陀螺仪34,设置在所述双目摄像机31上,用于获取所述运动姿态信息。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

通过本公开实施例提供的全局运动估计装置,通过建立的全局运动模型和双目摄像机的运动姿态信息,可以将全局运动模型中的非线性方程变为线性方程,进而得到全局运动参数的唯一真值,从而可以提升全局运动估计的准确性。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

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