多相机系统的相机外参数标定方法与流程

文档序号:11231982阅读:724来源:国知局
多相机系统的相机外参数标定方法与流程

本发明属于计算机视觉技术领域,主要涉及空间目标定位和摄影测量,具体是一种多相机系统的相机外参数标定方法。应用于图像测量、无人机导航、三维重建等领域。



背景技术:

相机标定是从二维图像中恢复物体三维几何结构信息的基本步骤。目前,已经提出了多种相机标定方法。相机标定分为相机内参数标定与相机外参数标定,相机内参数描述的是相机内部几何构造参数,而相机外参数描述的是相机坐标系与建立的世界坐标系之间的旋转、平移关系。目前,相机标定方法主要有:

一类是相机自标定方法。这种方法不采用标定物进行标定,只通过图像之间的对应约束关系,完成相机的标定。此种方法标定步骤简单,自动化程度较高。但是目前还不是十分成熟,主要问题是相机标定的精度较低。

还有是基于标定物的标定。这种方法一般采用已知几何信息的标定物进行标定,早期的相机标定方法采用比较精确的三维标定物体,此类方法标定结果精确度高,但是三维标定物体的制作过程比较困难。随后有人又提出基于二维平面标定板的经典标定方法,该方法标定结果精确度高且标定物制作过程较简单。但是随着越来越多的多相机系统的应用,由于平面标定板对不同方位的相机不能同时可见,邻近的相机可以同时看到同一个平面标定板,可标定出相机相对于该平面标定板的外参数,来描述相机坐标系和建立的世界坐标系之间的旋转、平移关系;而相邻间距较大的相机就不能同时可视一块平面标定板,不能标定出相对于同一个标定板的外参数,需要通过相邻相机之间的位置转换关系获得在统一世界坐标系下的外参数。所以在多相机系统的相机外参数标定中,平面标定法,标定过程较繁琐、标定速度较慢、具有运算累积误差影响相机外参数的标定精度。

针对多相机标定的问题,目前虽然也有一些基于圆球标定物的相机标定方法。但主要是通过研究圆球投影的几何性质例如圆球投影与绝对二次曲线投影之间的关系、圆球投影的对偶与绝对二次曲线的对偶之间的关系等,建立约束方程,完成相机的内参数标定,或者根据前人得到的基于圆球的相机标定方法,搭建实验环境对相机进行标定,然后分析圆球用于相机标定的存在的实际限制问题,给出一些有意义的结论。但是上述基于圆球的相机标定方法和研究,主要研究的是相机内参数标定方法,很少涉及多相机系统的相机外参数标定方法。国内外对多相机系统的相机外参数标定方法研究主要集中于内参数的标定,多相机系统的相机外参数标定是目前一个急需解决的实际问题。

综上,现有关于多相机系统的外参数标定方法中,采用精确三维标定物的方法,存在标定物制作较困难、特征点匹配困难的问题;采用二维平面标定物的方法,需要把多相机系统中的各相机相对不同世界坐标系中的相机外参数,转化为相对同一世界坐标系的相机参数,会造成多相机系统的相机外参数标定过程较繁琐、标定效率较低、运算累积误差直接影响相机外参数的标定精度。目前关于多相机系统的外参数的标定,尚没有一种标定过程效率高、计算过程简便、同时标定精度较高的方法。



技术实现要素:

本发明的目的在于提供一种多相机系统的相机外参数的标定方法,旨在解决现有多相机外参数标定方法存在标定过程复杂,存在累积误差的问题。

本发明是一种多相机系统的相机外参数标定方法,其特征在于,所述多相机系统相机外参数标定方法包括有如下步骤:

(1)拟合得到各相机拍摄圆球投影的二次曲线矩阵:内参数已知的多个相机构成多相机系统,多相机从各自的视角对在三个不同空间位置半径已知的圆球进行拍摄,通过亚像素边缘检测算法得到圆球投影的边缘点,拟合得到多相机系统中各个相机的拍摄圆球投影的二次曲线矩阵;

(2)求解三个球心在相机坐标系中的非齐次坐标:根据拍摄圆球的投影几何关系,利用已知相机内参数、拍摄圆球半径和得到的拍摄圆球投影二次曲线矩阵,求解三个拍摄圆球球心在多相机系统中各个相机的相机坐标系中的非齐次坐标;

(3)建立三个球心同平面的世界坐标系:利用三个拍摄圆球球心构成空间中的一个平面,将这个平面作为三维空间坐标系中的xoy平面,利用矢量分解,建立一个三球心同平面的世界坐标系,该坐标系以其中一个球心为原点,且该作为原点的球心和另外一个球心的连线为x轴,三个球心所在平面为xoy平面;

(4)标定多相机系统中的各个相机的外参数:利用得到的三个拍摄圆球球心在各个相机坐标系下的非齐次坐标,建立以三个拍摄圆球球心所在平面为xoy平面的世界坐标系,将各相机坐标系经过旋转、平移与建立的三球心共平面的世界坐标系重合,得到多相机系统中的各个相机的外参数矩阵,完成多相机系统中的各个相机的外参数标定。

本发明在多相机系统的相机外参数标定中,采用圆球作为标定物,圆球标定物制作简单,对相机外参数标定设施要求简单,直接得到各相机外参数相对同一个世界坐标系下的外参数,标定效率高、没有累积误差,相机外参数标定精度高。与现有技术相比,本发明的技术优势:

一、本发明采用三个半径已知的圆球或一个半径已知的圆球作为标定物用于多相机系统中的相机外参数标定。本发明采用的圆球标定物不需要特殊制作,如可采用普通的乒乓球作为标定物,但是所采用圆球的精度,会影响到多相机系统的相机外参数的标定精度。

二、本发明针对多相机系统中相机外参数的标定过程,其中的相机内参数是已知的,每个相机只需同时拍摄一幅三个半径已知的圆球图像或者一个半径已知的圆球在空间三个不同位置的三幅图像,就能够完成多个相机的外参数标定。多相机外参数标定过程操作简便。

三、本发明在对多相机系统的相机外参数标定时,得到的各个相机的外参数是相对于同一三个球心同平面的世界坐标系。在多相机系统的相机外参数应用中如三维重建,常常需要先得到各相机相对不同世界坐标系的外参数,然后将相对不同世界坐标系的外参数转化为相对同一世界坐标系的外参数,本发明不需要把各个相机相对不同世界坐标系的外参数转化为同一世界坐标系的相机外参数的过程,也就是本发明将相机的外参数直接转换为相对同一世界坐标系的外参数。所以本发明不存在累积误差,运算过程简便,多相机的相机外参数标定精度高,标定速度快。

附图说明

图1是本发明多相机系统的相机外参数标定方法的流程图;

图2是本发明的利用多相机对三个圆球进行拍摄的方位示意图;

图3是本发明的空间圆球在图像平面上的投影关系示意图;

图4是本发明的三球心共平面的世界坐标系示意图;

图5是本发明的两个坐标系之间转化关系示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图对本发明详细说明

实施例1

在多相机系统的相机外参数标定方法中,现有的采用圆球作为标定物的方法中,很少涉及对多相机外参数的标定,而早期的方法需要采用精确的三维标定物,该方法的缺点的是需要采用精确的标定物,标定成本较高;采用平面为标定物的标定方法中,由于平面对于各个方向的多相机不能同时可见,所以需要先得到各相机相对不同世界坐标系的外参数,然后将相对不同世界坐标系的外参数转化为相对同一世界坐标系的外参数,计算过程繁杂,且具有累积误差。

为此本发明提出一种标定物简单,标定效率高,没有累积误差、标定精度高的多相机系统的相机外参数标定方法,参见图1,本发明多相机系统相机外参数标定方法包括有如下步骤:

(1)拟合得到多相机系统的各相机拍摄圆球投影的二次曲线矩阵:内参数已知的多个相机,根据应用需要构成多相机系统,多相机从各自的视角,对在三个不同空间位置且半径已知的圆球进行拍摄或者利用一个半径已知圆球进行拍摄,拍摄该圆球在空间三个不同位置的图像,见图2,也可以理解为在空间三个不同位置上放置有三个同样大小的圆球进行拍摄。图2中显示的是拍摄圆球居中,多相机处在外围,实际中并不限于此状况,本发明中只需各个相机之间具有共同视角即可。

本发明中采用的圆球不需要特殊制作,如采用普通的乒乓球也能满足,对相机外参数的标定精度有一定要求的场合,但是采用圆球的精度,会影响多相机系统的相机外参数的标定精度,所以参与拍摄的圆球也应该是边缘光滑、精度较高的圆球。通过亚像素边缘检测算法得到拍摄圆球投影的边缘点,拟合得到多相机系统中各个相机的拍摄圆球投影的二次曲线矩阵。本发明中多相机系统中的各个相机的内参数,需要提前进行标定,从而获得各相机的测定内参数。因为在计算多相机系统的相机外参数过程中,需要利用各相机的内参数,所以各相机内参数测定的越精确,越有助于提高各相机的外参数标定精度。

(2)求解三个球心在各个相机的相机坐标系中的非齐次坐标:根据拍摄圆球的投影几何关系,见图3,虽然图中描述的是空间圆球投影几何关系,但是拍摄圆球的投影关系与空间圆球投影几何关系是一致的。利用已知多相机系统中各个相机的相机内参数矩阵、拍摄圆球的半径和得到的拍摄圆球投影二次曲线矩阵,求解三个拍摄圆球球心在多相机系统中各个相机的相机坐标系中的非齐次坐标。本发明求解的三个拍摄圆球球心在各相机坐标系中的非齐次坐标,是用于计算各相机相对同一个三个球心共平面的世界坐标系的相机外参数一个必要过程。

(3)建立三个球心同平面的世界坐标系:在空间中三个不同位置分别放置一个圆球即三个拍摄圆球,或者说同一个圆球在空间三个不同位置上被拍摄,得到三个拍摄圆球球心在相机坐标系下的非齐次坐标,该三个拍摄圆球球心构成的空间中的一个平面,将这个平面作为三维空间坐标系中的xoy平面,利用三个拍摄圆球球心在相机坐标系下的非齐次坐标矢量分解,建立一个三球心同平面的世界坐标系,见图4,该坐标系是以其中一个球心为原点,且该作为原点的球心和另外一个球心的连线为x轴,三个球心所在平面为xoy平面的世界坐标系。本发明建立了一个三球心同平面的世界坐标系,则能够直接得到多相机系统中的各相机相对建立的同一世界坐标系的相机外参数。避免了把各相机相对不同世界坐标系的相机外参数,转化为相对同一世界坐标系的相机外参数。

(4)求解相对三个球心同平面的世界坐标系下的外参数矩阵,完成标定多相机系统中的各个相机的外参数:对于多相机系统中各个相机,利用得到的三个拍摄圆球球心在各个相机坐标系下的非齐次坐标,建立以三个拍摄圆球球心所在平面为xoy平面的世界坐标系,然后将各个相机的相机坐标系经过旋转、平移与建立的三球心共面的世界坐标系重合,得到多相机系统中的各个相机的外参数矩阵,完成多相机系统中的各个相机的外参数标定。

三个球心同平面的世界坐标系:参见图4,在三个球心同平面的世界坐标系中以其中一个球心为原点,且作为原点的球心和另外一个球心的连线为x轴,通过矢量分解,建立三个球心共平面的世界坐标系;本发明中相机坐标系和世界坐标系的重合,空间任意一点在相机坐标系下的非齐次坐标经过旋转、平移,直接得到在三个球心同平面的世界坐标系下的非齐次坐标。

本发明中两个坐标系的重合过程:首先把相机坐标系的原点即光心,平移到三个球心同平面的世界坐标原点重合,然后旋转已经平移的相机坐标系,使得相机坐标系x、y、z三个坐标轴与三个球心同平面的世界坐标系的三个轴重合。

本发明针对多相机系统的各个相机外参数标定问题,以三个圆球作为标定物,利用圆球对于多相机系统中的不同方位的各相机能够同时可见的几何特性,解决多相机系统的外参数标定中需要标定物同时可见的问题。以三个拍摄圆球球心,建立三个球心同平面的世界坐标系,直接计算出各个相机相对于该世界坐标系下的外参数,使多个相机的外参数建立于同一世界坐标系下。

实施例2

多相机系统的相机外参数标定方法同实施例1,其中,步骤(1)中拟合得到多相机系统中的各个相机拍摄圆球投影的二次曲线矩阵,包括有:

设多相机系统中有m个相机,多相机系统中的各个相机,从各自不同视角拍摄三个不同空间位置且半径已知的圆球图像,参见图2,其中第i个相机对应的图像平面上,得到三个拍摄圆球投影边缘,采用亚像素边缘提取算法提取这三个拍摄圆球投影的边缘点,通过二次曲线拟合算法,得到第i个相机拍摄的三个圆球投影的二次曲线矩阵,依次记为对于多相机系统中其他相机,也按照第i个相机求解拍摄三个圆球投影的二次曲线方法,求解出各自相机拍摄圆球投影的二次曲线矩阵,最终得到多相机系统中各相机针对三个拍摄圆球投影的二次曲线矩阵。

多相机从各自的视角对三个不同空间位置且半径已知的圆球进行拍摄,这只是一种方案描述,实际操作中也可以通过拍摄一个圆球,让该圆球分别处于空间不同位置,拍摄它的三幅图像,然后通过边缘检测得到圆球投影边缘点,拟合得到圆球投影二次曲线。

本发明采用的相机标定物十分简单,只需采用三个半径已知的圆球分别置于不同位置,或者一个半径已知的圆球先后置于三个不同位置;拍摄过程简单,每个相机只需拍摄一幅三个半径已知的圆球图像或者拍摄一个半径已知圆球在三个不同空间位置的三幅图像,然后合成一幅图像中;通常在图像领域里拍摄到图像中的圆球也称为拍摄圆球投影,采用亚像素边缘算法提取三个拍摄圆球投影的边缘,能够提高圆球投影边缘的提取精度,进而有助于提高相机外参数标定精度。

本例中采用普通乒乓球作为标定物,乒乓球使用广泛,且边缘光滑,制作精度较高。拍摄乒乓球的图像,利用亚像素边缘提取算法提取乒乓球的投影边缘,拟合得到乒乓球投影的二次曲线矩阵。利用得到的乒乓球投影二次矩阵,多相机系统中的各相机外参数的标定精度较高。

实施例3

多相机系统的相机外参数标定方法同实施例1-2,步骤(2)所述的三个拍摄圆球球心在多相机系统中各个相机的相机坐标系中的非齐次坐标的具体步骤包括有:

2.1明确空间圆球投影与相机内参数的关系:参见图3,利用平面单应关系,得到拍摄圆球投影二次曲线与相机内参数的关系,相机坐标系和世界坐标系的关系,相机坐标系的原点即为相机光心oc,设世界坐标系的原点为ow,该世界坐标系以ow-xwywzw表示,其中owzw轴,通过形成相机图像平面投影的空间投影圆球的球心,圆球球心记为o,直线oco为世界坐标系的z轴;空间圆球投影关系,该空间投影圆球在相机图像平面的投影为c,该投影c同时也是以相机光心oc为顶点、且与空间投影圆球相切的正圆锥的投影,因此,投影c视为该正圆锥底面的投影;记正圆锥底面的圆为c,其圆心记为o1,其半径记为rc,其所在平面记为ii2,空间投影圆球球心o和正圆锥底面圆的圆心o1以及相机光心oc在同一条直线上,且oco1垂直正圆锥底面的圆c,记oco1的距离为h。这里提到的世界坐标系以ow-xwywzw表示的世界坐标系,是为了说明空间投影圆球和相机内参数的关系而建立的坐标系,并非本发明中构建的三球心同平面的世界坐标系。

根据圆球投影关系、正圆锥底面圆c的方程以及平面ii2与图像平面的单应关系,得到空间圆球投影二次曲线c与相机内参数k的关系为:

其中相机内参数fx、fy分别表示相机图像平面的水平和垂直方向上的尺度因子,(u0,v0)表示相机主点的图像坐标,s表示相机的倾斜因子;r表示由世界坐标系到相机坐标系的旋转矩阵;也就是获得了空间圆球投影与相机内参数的关系。

2.2获得空间投影圆球球心与相机光心之间的距离:根据圆球投影几何关系,包括三角形形式关系,获得空间投影圆球球心o与相机光心oc之间的距离d。

参见图3,设相机光心oc,空间投影圆球球心o,相机光心oc和空间投影圆球形成的正圆锥的底面c,其圆心记为o1,oco1垂直正圆锥底面的圆c。根据圆球投影的几何关系,设圆c上有一点p,因为圆c是由相机光心oc与空间投影圆球表面点相切形成的,则射线ocp与空间投影圆相切于点p,三角形ocop为直角三角形;因为oco1垂直正圆锥底面的圆c,则线段po1垂直于oco1,则三角形oco1p也是直角三角形;容易得到三角形ocop与oco1p是相似垂直三角形,则由三角形的相似性可以得到空间投影圆球球心o与相机光心oc之间的距离d为:

其中d为相机光心oc到空间投影圆球球心o的距离,rs为空间投影圆球的半径,rc为相机光心oc和空间投影圆球形成的正圆锥的底面圆c的半径,其圆心记为o1,h为oco1的距离;

2.3求解空间投影圆球球心在相机坐标系下的非齐次坐标:

利用圆球投影与相机内参数的关系,设矩阵a为

再设矩阵m为

其中r为旋转矩阵,且为单位正交矩阵则rrt=e,rc为相机光心oc和空间投影圆球形成的正圆锥的底面圆c的半径,h为oc到c圆心的距离,根据矩阵理论,可知m为实对称矩阵,则通过矩阵正交分解可求出r和因为空间投影圆球球心在建立的世界坐标系的z轴上,且球心到相机光心的距离为d,所以球心在世界坐标系下的非齐次坐标为(0,0,d)t,r为旋转矩阵而因为建立世界坐标系与相机坐标系原点是重合的,所以平移矢量为(0,0,0)t,则空间投影圆球球心在世界坐标系非齐次坐标,利用两个坐标系下旋转、平移关系,可得到空间投影圆球球心在相机坐标系下的非齐次坐标为

本发明计算空间投影圆球球心在相机坐标系下的非齐次坐标的方法,可用于计算三个拍摄圆球球心在各个相机的相机坐标系中的非齐次坐标。

2.4得到三个拍摄圆球球心在相机坐标下的非齐次坐标:第i个相机所拍摄的三个位置的拍摄圆球投影二次曲线矩阵为利用已知的相机内参数、圆球投影和相机内参数的关系,得到三个拍摄圆球球心在第i个相机的相机坐标系下的非齐次坐标分别为

其中,为三个拍摄圆球球心在第i个相机坐标系下的球心非齐次坐标,是原点在光心且z轴为球心到光心连线的世界坐标系到相机坐标系的旋转矩阵,是三个球心到相机光心的距离,按照第i个相机求解三个拍摄圆球球心的在相机坐标系中的非齐次坐标的方法,可得三个拍摄圆球球心在多相机系统中的各个相机的相机坐标系下的非齐次坐标。

本发明根据圆球投影和相机内参数的关系,实际标定过程中只需利用圆球的投影的二次曲线和已知的相机内参数,就能够得到三个拍摄圆球球心在各个相机坐标系下的非齐次坐标,该计算过程简便。

实施例4

多相机系统的相机外参数标定方法同实施例1-3,参见图4,步骤(3)所述的建立三个球心同平面的世界坐标系的具体步骤为:

3.1放置三个半径已知的拍摄圆球在空间不同位置,三个拍摄圆球球心记为o1、o2、o3。

3.2由于空间任意三点可以构成一个平面,以三个拍摄圆球球心构成空间的一个平面。

3.3利用矢量分解,建立三球心同平面的世界坐标系。设其中一个拍摄圆球球心o1为该世界坐标系原点,球心o1与另一个球心o2连线为世界坐标系的x轴,建立矢量o1o2与o1o3,该两个矢量叉乘,得到该世界坐标系的z轴。

3.4由x轴与z轴的两个坐标轴进行叉乘,得到三个球心同平面的世界坐标系的y轴,从而建立三个球心同平面的世界坐标系;同时得到该世界坐标系三个坐标轴在相机坐标系下的单位方向矢量a、b、c,还得到三个拍摄圆球球心在该三个球心同平面的世界坐标系下的非齐次坐标分别为ow1、ow2、ow3。

本发明利用三个拍摄圆球球心在相机坐标系下的非齐次坐标,根据矢量分解,建立了以三个拍摄圆球球心所在的平面为xoy平面的世界坐标系。

实施例5

多相机系统的相机外参数标定方法同实施例1-4,步骤(4)所述的求解出多个相机相对同一个三个球心同平面的世界坐标系下的外参数矩阵具体步骤包括:

4.1建立两个坐标系之间的旋转、平移关系:设空间一点x在三个球心同平面的世界坐标系下的非齐次坐标记为在第i个相机坐标系中的非齐次坐标记为它们之间的平移、旋转关系为

其中rc为泛指的旋转矩阵,tc为泛指的平移矢量。

4.2得到第i个相机的外参数:参见图5,利用三个拍摄圆球投影、已知相机内参数、已知三个拍摄圆球的半径以及拍摄圆球和相机内参数的投影关系,得到三个拍摄圆球球心在第i个相机坐标系下的非齐次坐标然后利用这三个拍摄圆球球心在第i个相机坐标系下的非齐次坐标建立三个球心同平面的世界坐标系,其中该坐标系中的三个坐标轴在相机坐标系下的方向单位矢量为a、b、c,三个拍摄圆球球心在建立的空间世界坐标系下的非齐次坐标为ow1、ow2、ow3,将建立三个球心同平面的空间世界坐标系,三个坐标轴单位矢量合成一个r1矩阵为:

r1=[a,b,c]t

因为在三维坐标系中任意点的坐标,可表示该点的向量,在三个坐标轴下的投影,则向量表示在相机系下,点的向量,该与向量a、b、c分别相乘,得到在世界坐标系三个坐标轴的投影,即点x在三个球心同平面的世界坐标系下非齐次坐标,则和第i个相机坐标系中的非齐次坐标转化关系为:

设ri是第i个相机相对三个球心同平面的世界坐标系的旋转矩阵、ti是第i个相机相对三个球心同平面的世界坐标系平移矢量,其中:

ri=r1

计算得到第i个相机,相对建立的三个球心同平面的世界坐标系的相机外参数矩阵。

4.3得到多相机系统中的各个相机外参数:按照第i个相机得到相机外参数的方法,得到多相机系统各个相机相对同一个三个球心同平面的世界坐标系旋转矩阵、平移关系,即完成多相机的各个相机外参数标定。

本发明利用三个拍摄圆球球心,在多个相机的相机坐标系中的非齐次坐标,建立以三个球心共平面的世界坐标系,利用空间一点在各个相机坐标系的非齐次坐标,以及在建立的三个球心共面的世界坐标系的非齐次坐标,经过几何转化关系,得到多相机系统中的各相机相对同一个三个球心共平面的世界坐标系的位置关系,即本发明直接得到相对同一世界坐标系的相机的外参数。本发明不存在累积误差,运算过程简便,多相机的相机外参数标定精度较高。

下面给出一个更详尽的例子对本发明进一步说明

实施例6

多相机系统的相机外参数标定方法同实施例1-5,本发明多相机系统的相机外参数标定方法的具体步骤描述如下:

步骤一、标定相机的内参数矩阵:设需要标定的多相机系统中的多个相机依次记为ca,cb,cc,…。本例中利用张正友平面标定法,通过多个相机分别拍摄多幅二维平面标定版的图像,得到多个相机的内参数矩阵,依次记为ka,kb,kc,…。本发明采用的张正友平面标定法,是目前普遍采用的相机标定方法。多相机系统中的各相机内参数精度越高,计算得到多相机系统的相机外参数精度越高。

步骤二、拍摄圆球图像,提取拍摄圆球轮廓:参见图2,多个相机同时拍摄放置在空间三个不同位置且半径已知的三个圆球的一幅图像或者利用一个半径已知的圆球进行拍摄,拍摄该圆球在空间三个不同位置的图像三幅图像,并将三个拍摄圆球投影绘制到同一幅图像中;得到三个拍摄圆球在相机图像平面的投影,将三个拍摄圆球记为q1,q2,q3,相应的球心记为o1,o2,o3。在多相机系统中,其中第i个相机拍摄的三个拍摄圆球投影,利用亚像素边缘提取算法,提取出三个拍摄圆球的边缘点,并拟合得到三个拍摄圆球投影的二次曲线矩阵,依次记为多相机系统中的其他相机,按照第i个相机得到三个拍摄圆球投影边缘的二次曲线矩阵的方法,得到在各相机图像平面的三个拍摄圆球投影边缘的二次曲线矩阵。本发明在标定多相机系统中的各个相机外参数过程中,各相机只需拍摄一幅拍摄圆球图像或三幅拍摄圆球图像,所需标定物简单,标定过程操作简便。

步骤三、空间投影圆球投影几何关系:参见图3,设相机坐标系和世界坐标系的原点为相机光心,并设光心oc到空间投影圆球球心o的距离为d,且连线oco为世界坐标系的z轴。根据空间投影圆球的投影几何特性,空间投影圆球的投影可以视为一个正圆锥,该正圆锥的顶点为相机光心,底部圆为空间投影圆球投影轮廓构成的圆,记为c,圆心记o1。其中o和o1以及光心oc在同一条直线上,空间投影圆球球心在图像上的投影记为o',且oco1垂直c。记oco1的距离为h,oco距离为d,rs为空间投影圆球的半径,rc底面圆c的半径,c所在的平面为π,其上的点齐次坐标为则根据相机投影矩阵p,可得对应的图像像点记为

其中k为相机内参数,r为相机外参数。

得到圆c所在平面和图像平面之间的单应关系:

其中h为所在平面π到图像平面的单应矩阵,且平面上点的齐次坐标为(x,y,1)。记c的圆半径为rc,则可以得到空间投影圆的矩阵表示为:

推导出c的投影c方程为:

本发明明确了空间投影圆球的投影几何关系,利用空间圆球投影几何关系,能够计算出相机光心到空间投影圆球球心的距离。

步骤四、计算相机光心到球心的距离d:根据空间圆球投影关系,见图3。设c上有一点p,因为圆c是由相机光心oc与空间投影圆球表面点相切形成的,则射线ocp与空间投影圆相切于点p,三角形ocop为直角三角形;因为oco1垂直正圆锥底面的圆c,则线段po1垂直于oco1,则三角形oco1p也是直角三角形;容易得到三角形ocop与oco1p是相似垂直三角形,则由三角形的相似性可以得到空间投影圆球球心o与相机光心oc之间的距离d为:

其中,rs为空间投影圆球的半径,rc底面圆c的半径。

步骤五、计算球心在相机坐标系下的坐标:相机的内参数k已知,根据空间圆球投影几何关系,见图3。

设矩阵a为

其中为r单位正交矩阵则rrt=e。

再设矩阵m为:

其中m为实对称矩阵,通过svd正交分解,可得到:

m=[svd]

可知s=r-t,d=r-1,v为对角矩阵,可以求出r和因为空间投影圆球球心在建立的世界坐标系的z轴上,且球心到相机光心的距离为d,所以球心在世界坐标系下的非齐次坐标为(0,0,d)t,r为旋转矩阵。因为建立世界坐标系与相机坐标系原点是重合的,所以平移矢量为(0,0,0)t,则空间投影圆球球心在世界坐标系非齐次坐标,利用两个坐标系下旋转、平移关系,可得到空间投影圆球球心在相机坐标系下的非齐次坐标为:

本发明通过空间投影圆的几何关系得到了空间投影圆球球心,在相机坐标系下的非齐次坐标。因为拍摄圆球投影几何关系与空间投影圆球的投影几何关系是类似的,所以按照计算空间投影圆球球心的在相机坐标系下的非齐次坐标方法,可计算出三个拍摄圆球球心在各相机坐标系下的非齐次坐标。

步骤六、建立三个球心共平面的世界坐标系:拍摄放置在空间三个不同位置、半径已知的圆球或者利用一个半径已知的圆球进行拍摄,拍摄该圆球在空间三个不同位置的图像三幅图像。三个球的拍摄圆球球心依次记为o1,o2,o3。因为空间中任意三点可以构成一个空间平面,设其中一个拍摄圆球球心o1为世界坐标系原点,球心o1与另一个球心o2连线为世界坐标系的x轴,建立矢量o1o2与o1ο3,该两个矢量叉乘,得到世界坐标系的z轴;由x轴与z轴的两个坐标轴进行叉乘,得到三个球心同平面的世界坐标系的y轴,从而建立三个球心同平面的世界坐标系。

步骤七、建立两个坐标系之间的旋转、平移关系:设空间一点x在三个球心同平面的世界坐标系下的非齐次坐标记为在第i个相机坐标系中的非齐次坐标记为它们之间的平移、旋转关系为

其中rc为泛指的旋转矩阵,tc为泛指的平移矢量;

步骤八、得到多相机系统中的各个相机外参数:利用三个拍摄圆球投影、已知相机内参数、已知三个拍摄圆球的半径以及拍摄圆球和相机内参数的投影关系,得到三个拍摄圆球球心在第i个相机坐标系下的非齐次坐标然后利用这三个拍摄圆球球心在第i个相机坐标系下的非齐次坐标建立三个球心同平面的世界坐标系,其中该坐标系中的三个坐标轴在相机坐标系下的方向单位矢量为a、b、c,三个拍摄圆球球心在建立的空间世界坐标系下的非齐次坐标为ow1、ow2、ow3,将建立三个球心同平面的空间世界坐标系,三个坐标轴单位矢量合成一个r1矩阵为:

r1=[a,b,c]t

因为在三维坐标系中任意点的坐标,可表示该点的向量,在三个坐标轴下的投影,则向量表示在相机系下,点的向量,该向量与向量a、b、c分别进行向量相乘,得到在三个球心共平面的世界坐标系三个坐标轴下的投影,即点x在三个球心同平面的世界坐标系下非齐次坐标,则和第i个相机坐标系中的非齐次坐标转化关系为:

其中ri是第i个相机相对三个球心同平面的世界坐标系的旋转矩阵、ti是第i个相机相对三个球心同平面的世界坐标系平移矢量;其中:

ri=r1

计算得到第i个相机,相对建立的三个球心同平面的世界坐标系的相机外参数矩阵。按照第i个相机得到相机外参数的方法,得到多相机系统各个相机相对同一个三个球心同平面的世界坐标系旋转矩阵、平移关系,即完成多相机的各个相机外参数标定。本发明直接得到多相机系统中各个相机的外参数是相对同一个三个球心共平面的世界坐标系,不需要把各相机相对不同世界坐标系的相机外参数转化为各相机相对同一个世界坐标系下的外参数,所以本发明不存在累积误差,运算过程简便,且多相机系统的相机外参数标定精度较高。

现有技术中,相机的外参数标定在多相机系统的应用中,如三维重建中,系统中的各个相机的外参数需要进行两次或者多次转换过程,而本发明直接得到各个相机相对同一个三个球心共平面的世界坐标系的外参数,不需要转换,没有累积误差,相机外参数标定精度高。

下面结合附图及具体的实验结果对本发明的技术效果再作说明。

实施例7

多相机系统的相机外参数标定方法同实施例1-6,本例中,多相机系统中一个相机,相机型号为baslara640,使用张正友平面标定算法,利用标定板图像计算拍摄相机的内参数,并作为理想值。因为试验中相机外参数真值未知,不能直接验证所求的相机外参数的正确性,故采用间接验证的办法。

将三个乒乓球固定在平面标定板上,乒乓球半径为20mm,移动相机,拍摄图像。以平面标定板的一个角点作为原点,过角点的两条直线分别作为x轴和y轴,x轴和y轴叉乘后得到z轴,张成标定板坐标系。标定板坐标系与相机坐标系之间满足如下旋转和平移关系

xc=rb·xb+tb

其中rb和tb通过平面单应矩阵以及已知的相机内参数求出。

利用本发明方法,得到拍摄相机相对三个乒乓球球心共平面的世界坐标系的外参数为式

xc=rs·xs+ts

其中rs和ts也可以求解出来,但rs和ts的真值未知,无法比较。为解决该问题,我们从上述两式推导出三个乒乓球球心共平面的世界坐标系与标定板坐标系之间的关系满足

当相机运动时,相机外参数在变化,但是圆球与标定板之间不存在相对运动。若拍摄相机的外参数求解精确,即理想情况下,从各幅图像中,所求得的旋转矩阵rr和平移向量tr值应该为定值,但是由于拍摄相机的外参数求解精度受噪声等因素的影响,从各幅图像中所计算出的rr值和tr值是不同的,存在波动。但波动越小,说明外参数求解越精确。

用10幅拍摄图像,分别得到三个拍摄乒乓球球心世界坐标系和标定板坐标系之间的旋转矩阵rr和平移矢量tr。用欧拉角αx、αy和αz,表示rr中的三个旋转角度;再用坐标分量tx,ty和tz表示标定板坐标系与三个拍摄乒乓球球心世界坐标系之间的平移矢量tr。实验结果表明,rr中的三个欧拉角αx、αy和αz,方差分别为2.25×10-5、3.23×10-5和4.20×10-5,单位为弧度;平移矢量tr中的三个坐标分量tx,ty和tz,方差分别为1.1319、0.1219和0.0401,单位为mm2。参见表1和表2,表1是两个坐标系之间的旋转矩阵实验结果,表2是两个坐标系之间的平移矢量实验结果。

表1两个坐标系之间的旋转矩阵实验结果

表2两个坐标系之间的平移矢量实验结果

实验结果表明本发明利用圆球作为标定物求解相机外参数,可以获得较为理想的标定精度。多相机系统的相机外参数标定实验中,多个不同视角的相机可同时拍摄圆球,标定过程效率高,采用乒乓球或者其它类型的圆球作为标定物,标定物简单。

简而言之,本发明公开的一种多相机系统的相机外参数标定方法,解决了现有方法中存在的相机标定物制作困难、需要把相对不同世界坐标系的外参数转换为相对于同一个世界坐标系的相机外参数,造成多相机外参数标定过程效率低且具有累积误差的问题。其实现包括:拟合得到各相机拍摄圆球投影的二次曲线矩阵,由圆球的各向可视性,多相机系统中的各个相机可对同一圆球进行拍摄,拍摄该圆球处于空间三个不同位置的图像,提取圆球投影边缘,拟合圆球投影二次曲线;求解三个球心在相机坐标系中的非齐次坐标;以三个球心所在平面和球心位置建立三个球心同平面的世界坐标系;求解多个相机在三个球心共平面的世界坐标系中的外参数矩阵,两个坐标系重合,完成多相机系统中的各个相机的外参数标定。本发明快速、简便、精确计算多个相机在同一世界坐标系下的外参数矩阵,不需要更多转换,没有累积误差,相机外参数标定精度高。用图像测量、无人机导航、三维重建等。

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