本发明涉及相机标定技术领域,尤其涉及一种多目相机标定方法及系统。
背景技术:
对多目相机进行标定,就是通过标定获得多目相机在同一坐标系下的标定参数以及各相机之间的转换关系。目前,常通过棋盘格标定板或圆形标定板来进行相机标定,通过对拍摄的标定板的图像进行处理,确定相机的内参矩阵和外参矩阵,但是,该方法只适合对单目相机或双目相机进行标定,无法对公共视场小、甚至无公共视场的多目相机进行标定。
技术实现要素:
针对上述现有技术的不足,本发明提供了一种多目相机标定方法、装置及存储介质。
本发明解决上述技术问题的技术方案如下:
第一方面,本发明提供了一种多目相机标定方法,所述方法包括如下步骤:
获取多个相机拍摄的标定板图像。
根据所述标定板图像分别对每个所述相机进行标定,获得每个所述相机的标定参数。
根据所述标定参数,确定多个所述相机的转换关系。
第二方面,本发明提供了一种多目相机标定装置,其特征在于,包括:
获取模块,获取多个相机拍摄的标定板图像。
第一处理模块,根据所述标定板图像分别对每个所述相机进行标定,获得每个所述相机的标定参数。
第二处理模块,根据所述标定参数,确定多个所述相机的转换关系。
第三方面,本发明提供了一种多目相机标定装置,所述装置包括存储器和处理器。
所述存储器,用于存储计算机程序。
所述处理器,用于当执行计算机程序时,实现如上所述的多目相机标定方法。
第四方面,本发明提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的多目相机标定方法。
本发明的一种多目相机标定方法、装置及存储介质的有益效果是:根据拍摄的标定板图像确定每个相机的标定参数,标定参数可包括外参矩阵、内参矩阵和畸变参数,通过各相机的外参矩阵能够确定多个相机之间的转换关系,当多个相机之间没有公共视场时,可通过相机之间的转换关系以及其中一个相机的外参矩阵,就能求出其它相机的外参矩阵,本发明的技术方案能够迅速实现对多目相机的标定,简单高效。
附图说明
图1为本发明实施例的一种多目相机标定方法的流程示意图;
图2为本发明实施例的一种标定板的示意图;
图3为本发明实施例的一种多目相机标定装置的结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,一种多目相机标定方法,所述方法包括如下步骤:
110、获取多个相机拍摄的标定板图像。
120、根据所述标定板图像分别对每个所述相机进行标定,获得每个所述相机的标定参数。
130、根据所述标定参数,确定多个所述相机的转换关系。
本实施例中,根据拍摄的标定板图像确定每个相机的标定参数,标定参数可包括外参矩阵、内参矩阵和畸变参数,通过各相机的外参矩阵能够确定多个相机之间的转换关系,当多个相机之间没有公共视场时,可通过相机之间的转换关系以及其中一个相机的外参矩阵,就能求出其它相机的外参矩阵,本发明的技术方案能够迅速实现对多目相机的标定,简单高效。
优选地,获取多个相机拍摄的标定板图像的步骤之前还包括如下步骤:
将标定板依次设置在多个不同的位置,在每个所述位置控制多个所述相机同时拍摄所述标定板,获得多幅所述标定板图像。
优选地,如图2所示,包括标定板,所述标定板的上表面设有多个黑白交错的三角形图样,一个所述三角形图样的三条边分别与三个不同的所述三角形图样相连,且相连的两个所述三角形图样有且仅有一条边重合,部分所述三角形图样中设有编码,所述编码互不相同,且所述编码的颜色与所述编码所在的所述三角形图样的颜色不同。
具体地,可根据需要设定编码的位置和数量,由于编码互不相同,且编码的位置也不相同,对相机进行标定时,识别出的编码就可知道编码在标定板中所处的位置,根据编码的位置就可知道标定板上每个角点在标定板上的位置,标定板的角点为三角形图样的顶点,在对相机进行标定时,不需要拍摄整个标定板或必须拍摄到标定板中心,即使只拍摄到标定板的局部,只要局部区域中存在编码,就可以根据对应的角点的位置对相机进行标定,结构简单、实用高效。
优选地,所述标定参数包括外参矩阵,所述根据所述标定板图像分别对每个相机进行标定,获得每个所述相机的标定参数具体包括如下步骤:
选取所述标定板设置的任意一个位置为基准位置,所述相机拍摄的所述基准位置处的所述标定板图像为基准帧。
对于任意一个所述相机,基于pnp算法,根据所述相机拍摄的所述基准帧,确定所述相机的所述外参矩阵,所述外参矩阵为基准外参矩阵。
具体地,提取标定板的角点在标定板图像的图像坐标系中的2d坐标,结合角点在标定板所处位置的用户坐标系中的3d坐标,建立2d坐标与3d坐标之间的对应关系,基于pnp算法,根据所述对应关系确定与所述标定板图像对应的外参矩阵。
遍历所有所述相机,分别确定每个所述相机的所述基准外参矩阵。
具体地,采用上述方法,分别求出每个相机相对基准帧的基准外参矩阵。
优选地,所述根据所述标定板图像分别对每个相机进行标定,获得每个所述相机的标定参数的步骤之后还包括如下步骤:
对于任意一个所述相机,遍历所述相机拍摄的所有所述标定板图像,分别确定与每幅所述标定板图像对应的所述相机的所述外参矩阵,获得多个所述外参矩阵。
所述相机的所述基准外参矩阵表示为[r1|t1],根据所述基准外参矩阵确定所述基准位置的用户坐标系w1与所述相机的相机坐标系c1之间的转换关系,所述转换关系由第一公式表示,所述第一公式为:
c1=r1w1+t1,
对于所述基准帧以外的任意一幅所述标定板图像,将与所述标定板图像对应的所述相机的所述外参矩阵表示为[r2|t2],根据所述外参矩阵[r2|t2]确定与所述标定板图像对应的所述标定板的位置所在的用户坐标系w2与所述相机的相机坐标系c1之间的转换关系,所述转换关系由第二公式表示,所述第二公式为:
c1=r2w2+t2,
根据所述第一公式和所述第二公式,确定所述用户坐标系w2与所述用户坐标系w1之间的转换关系,所述转换关系由第三公式表示,所述第三公式为:
w2=r2-1r1w1+r2-1(t1-t2),
根据所述第三公式,确定所述用户坐标系w1和所述用户坐标系w2之间的转换矩阵[rij|tij],其中,rij=r2-1r1,tij=r2-1(t1-t2),rij为旋转矩阵,tij为平移向量。
具体地,一个相机相对两个不同标定板图像具有不同的外参矩阵,根据外参矩阵之间的转换关系,可以得到不同标定板图像对应的标定板位置之间的转换关系,即不同标定板图像之间的关系。用户坐标系为用户定义的空间三维坐标系,用于描述三维空间中的目标物体与相机之间的坐标位置,满足右手法则。世界坐标系是系统的绝对坐标系,在没有建立用户坐标系之前画面上所有点的坐标都是以该坐标系的原点来确定各自的位置的。相机坐标系以相机的光点为原点,z轴与光轴重合,并垂直于成像平面,且取摄像方向为正方向,x、y轴与图像物理坐标系的x、y轴平行,且原点之间的距离为相机的焦距。像素坐标系是以图像的左上方为原点建立的以像素为单位的直接坐标系。
优选地,所述标定参数还包括内参矩阵和畸变参数,所述根据所述标定板图像分别对每个相机进行标定,获得每个所述相机的标定参数具体还包括如下步骤:
对于任意一个所述相机,所述相机为第n个相机,n为正整数,基于张正友标定法,根据所述基准帧确定所述相机的所述内参矩阵和所述畸变参数,所述内参矩阵表示为kn,所述畸变参数为dn;
根据所述标定板上的任一点在世界坐标系中的坐标x以及所述点在图像坐标系中的坐标x,以所述内参矩阵kn、所述畸变参数dn、所述转换矩阵[rij|tij]和转换矩阵[rn|tn]为初始值建立目标函数,其中,[rn|tn]为所述第n个相机与所述基准帧对应的所述外参矩阵,所述目标函数由第四公式表示,所述第四公式为:
f(x)=min||x-dn(kn[rn|tn][rij|tij]x))||,
基于所述目标函数,采用levenberg-marquart算法进行全局优化,获得优化后的所述标定参数和优化后的所述转换矩阵[rij|tij]。
具体地,采用levenberg-marquart算法进行全局优化,能够降低标定过程中的误差,根据不同标定板图像之间的转换关系,得到全局最优的各个参数。
所述确定多个所述相机之间的转换关系具体包括:
对于任意两个所述相机拍摄的同一位置的所述标定板获得的两幅所述标定板图像,将所述位置处的用户坐标系表示为w3,与其中一幅所述标定板图像对应的所述相机的所述外参矩阵为[r3|t3],所述相机的相机坐标系为c2,所述世界坐标系w3与所述相机的所述相机坐标系c2之间的转换关系由第五公式表示,所述第五公式为:
c2=r3w3+t3,
将另外一幅所述标定板图像对应的所述相机的所述外参矩阵为[r4|t4],所述相机的相机坐标系为c3,所述用户坐标系w3与所述相机的所述相机坐标系c3之间的转换关系由第六公式表示,所述第六公式为:
c3=r4w3+t4,
根据所述第一公式和所述第二公式,确定所述相机坐标系c2与所述相机坐标系c3之间的转换关系,所述转换关系由第七公式表示,所述第七公式为:
c2=r4-1r3c3-r4-1r3t4+t3,
根据所述第七公式确定所述相机坐标系c2和所述相机坐标系c3之间的转换矩阵[rk|tk],其中,rk=r4-1r3,tk=-r4-1r3t4+t3。
具体地,相机坐标系之间的转换关系即为相机之间的转换关系,当两个相机没有公共视场或公共视场极小时,通过已知一个相机相对一幅标定板图像的外参矩阵,根据相机之间的转换关系,就可以计算出另一个相机相对该标定板图像的外参矩阵。
如图3所示,本发明实施例提供了一种多目相机标定装置,包括:
获取模块,获取多个相机拍摄的标定板图像。
第一处理模块,根据所述标定板图像分别对每个所述相机进行标定,获得每个所述相机的标定参数。
第二处理模块,根据所述相机的标定参数,确定多个所述相机的相对关系。
优选地,所述所述标定参数包括外参矩阵,所述第一处理模块具体用于:
选取任意一个设置标定板的位置为基准位置,以所述相机拍摄的所述基准位置处的所述标定板图像为基准帧。
对于任意一个所述相机,基于pnp算法,根据所述相机拍摄的所述基准帧,确定所述相机的所述外参矩阵,所述外参矩阵为基准外参矩阵。
遍历所有所述相机,分别确定每个所述相机的所述基准外参矩阵。
本发明另一实施例提供了一种多目相机标定装置,其特征在于,所述装置包括存储器和处理器。
所述存储器,用于存储计算机程序。
所述处理器,用于当执行计算机程序时,实现如上所述的多目相机标定方法。
本发明再一实施例提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现如上所述的多目相机标定方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。