多镜头相机标定方法、装置及存储介质与流程

文档序号:24408197发布日期:2021-03-26 18:12阅读:121来源:国知局
多镜头相机标定方法、装置及存储介质与流程

1.本发明涉及数据处理领域,具体涉及一种多镜头相机标定方法、装置及存储介质。


背景技术:

2.随着科技的发展,具有多镜头的相机系统的应用领域越来越广泛。由于多镜头的相机系统在拍摄时,每个镜头都是在独立拍摄,但是拍摄的多张画面却需要进行交互的拼接,如相邻镜头的外部参数不匹配,可能导致拼接的画面质量下降。
3.因此在使用多镜头的相机系统进行画面拍摄前,需要对多镜头的相机系统中的各个镜头之间的相对外部参数(旋转偏移量以及平移偏移量)进行设定,以使得每个镜头拍摄的画面可以进行完美的画面拼接,从而有效的提高拼接画面的画面质量。
4.故需要提供一种多镜头相机标定方法以及装置来解决上述问题。


技术实现要素:

5.本发明实施例提供一种可有效提高拼接画面的画面质量的多镜头相机标定方法及标定装置,以解决现有的多镜头相机标定方法及标定装置的镜头外部参数兼容性太差导致的拼接画面的画面质量较差的技术问题。
6.本发明实施例提供一种多镜头相机标定方法,其包括:
7.s1、获取相机的相机参考平面以及相机同步图片,其中相邻相机的相机同步图片具有重叠区域;
8.s2、基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面;
9.s3、根据相邻两个相机的相机同步图片上的随机像素点在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点;
10.s4、基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算所述匹配特征点的三维坐标;
11.s5、基于所述匹配特征点在对应相机的相机同步图片上的映射二维坐标、与所述匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对所述相机的内部参数和外部参数进行修正;
12.重复步骤s3

s5,直至所有相邻相机的匹配特征点的映射二维坐标和实际二维坐标的差异值小于第一设定值或所述相机的内部参数和外部参数的修正次数大于第二设定值。
13.在本发明实施例所述的多镜头相机标定方法中,所述步骤s1之前还包括步骤:根据所述相机的外部参数获取所述相机的相机参考平面,其中外部参数包括相机的旋转偏移量以及平移偏移量。
14.在本发明实施例所述的多镜头相机标定方法中,所述步骤s2中还包括:
15.基于相邻两个相机的相机参考平面,通过插值算法计算所述两个相机的重叠参考
平面;或
16.基于相邻三个相机的相机参考平面,通过插值算法计算其中相邻相机的两个过渡参考平面;再基于相邻三个相机的两个过渡参考平面,通过插值算法计算所述三个相机的重叠参考平面。
17.在本发明实施例所述的多镜头相机标定方法中,所述步骤s3具体为:
18.获取相邻两个相机中的一个相机的相机同步图片上的第一随机像素点,并计算所述第一随机像素点在对应重叠参考平面上的第一位置;
19.获取相邻两个相机中的另一个相机的相机同步图片上与所述第一随机像素点对应的第二随机像素点,并计算所述第二随机像素点在对应重叠参考平面上的第二位置;
20.如所述第一位置和所述第二位置之间的距离小于第三设定值,则将所述第一随机像素点和所述第二随机像素点设定为相邻两个相机的相机同步图片的匹配特征点。
21.在本发明实施例所述的多镜头相机标定方法中,所述步骤s4包括:
22.基于相邻两个相机中一个相机的光心位置以及所述相机对应匹配特征点的位置,确定所述匹配特征点的第一定位射线;
23.基于相邻两个相机中另一个相机的光心位置以及所述相机对应匹配特征点的位置,确定所述匹配特征点的第二定位射线;
24.如所述第一定位射线与所述第二定位射线存在交点,则将所述交点的三维坐标作为所述匹配特征点的三维坐标;
25.如所述第一定位射线与所述第二定位射线不存在交点,则将所述第一定位射线与所述第二定位射线的垂直连线的中点的坐标作为所述匹配特征点的三维坐标;其中所述垂直连线为分别垂直于所述第一定位射线和所述第二定位射线,且分别与所述第一定位射线和所述第二定位射线相交的线段。
26.在本发明实施例所述的多镜头相机标定方法中,所述步骤s5包括:
27.通过以下公式计算所述匹配特征点在对应相机的相机同步图片上的映射二维坐标:
28.x=k[r|t]x;
[0029]
其中k为相机的内部参数矩阵,r用于表示相机的旋转偏移量的旋转矩阵,t用于表示相机的平移偏移量的平移向量,[r|t]为相机的外部参数矩阵,x为匹配特征点的三维坐标,x为匹配特征点在对应相机的相机同步图片上的映射二维坐标;
[0030]
基于所述匹配特征点在对应相机的相机同步图片上的映射二维坐标、与所述匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对所述相机的外部参数进行修正,以使得所述差异值减小。
[0031]
在本发明实施例所述的多镜头相机标定方法中,所述对所述相机的外部参数进行修正具体包括:
[0032]
如多个所述相机为处于同一水平面的多个相机,则将所述相机的平移向量锁定,对所述相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得所述差异值减小;
[0033]
如多个所述相机包括多组处于不同水平面的相机组,每个相机组中的相机处于同一水平面;在同一相机组中,通过将所述相机的平移向量锁定,对所述相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得所述差异值减小;在其他相机组中的外部参数和内
部参数锁定的情况下,对设定相机组中的相机的平移向量进行调整,以使得所述差异值减小。
[0034]
在本发明实施例所述的多镜头相机标定方法中,在所述对所述相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得所述差异值减小的步骤中,所述相机的旋转矩阵以及相机焦距的调整优先级高于所述相机的相机光心的优先级,以提高参数修正效率。
[0035]
本发明实施例还提供一种多镜头相机标定装置,其包括:
[0036]
相机参数以及图片获取模块,用于获取相机的相机参考平面以及相机同步图片,其中相邻相机的相机同步图片具有重叠区域;
[0037]
重叠参考平面计算模块,用于基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面;
[0038]
匹配特征点获取模块,用于根据相邻两个相机的相机同步图片上的随机像素点在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点;
[0039]
三维坐标计算模块,用于基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算所述匹配特征点的三维坐标;
[0040]
修正模块,用于基于所述匹配特征点在对应相机的相机同步图片上的映射二维坐标、与所述匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对所述相机的内部参数和外部参数进行修正。
[0041]
本发明实施例还提供一种计算机可读存储介质,其内存储有处理器可执行指令,所述指令由一个或一个以上处理器加载,以执行上述的多镜头相机标定方法。
[0042]
相较于现有技术,本发明的多镜头相机标定方法及标定装置通过重叠参考平面来获取匹配特征点的三维坐标,从而进一步对相机的内部参数和外部参数进行修正,有效了提高了多镜头相机的外部参数的兼容性,进而提高了对应拼接画面的画面质量,有效解决了现有的多镜头相机标定方法及标定装置的镜头外部参数兼容性太差导致的拼接画面的画面质量较差的技术问题。
附图说明
[0043]
图1为本发明的多镜头相机标定方法的一实施例的流程图;
[0044]
图2为本发明的多镜头相机标定方法的一实施例的步骤s103的流程图;
[0045]
图3为本发明的多镜头相机标定方法的一实施例的步骤s104的流程图;
[0046]
图4为本发明的多镜头相机标定装置的一实施例的结构示意图;
[0047]
图5a为本发明对应多镜头相机系统的一实施例的示意图;
[0048]
图5b为本发明对应多镜头相机系统的另一实施例的示意图;
[0049]
图5c为本发明的多镜头相机标定方法及标定装置的具体实施例的流程图;
[0050]
图6为本发明的多镜头相机标定装置所在的电子设备的工作环境结构示意图。
具体实施方式
[0051]
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
[0052]
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行之作业的步骤及符号来说明,除非另有述明。因此,其将可了解到这些步骤及操作,其中有数次提到为由计算机执行,包括了由代表了以一结构化型式中的数据之电子信号的计算机处理单元所操纵。此操纵转换该数据或将其维持在该计算机之内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机之运作。该数据所维持的数据结构为该内存之实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
[0053]
本发明的多镜头相机标定方法及标定装置可设置在任何的电子设备中,用于对具有多镜头相机的相机系统进行内部参数和外部参数的标定操作。该电子设备包括但不限于可穿戴设备、头戴设备、医疗健康平台、个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(pda)、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。该多镜头相机标定装置优选为多深度相机系统,可对多个深度相机的外部参数和内部参数进行有效修正,提高多深度相机系统的相机外部参数的兼容性,进而提高对应的拼接画面的画面质量。
[0054]
请参照图1,图1为本发明的多镜头相机标定方法的一实施例的流程图,本实施例的多镜头相机标定方法可使用上述的电子设备进行实施,本实施例的多镜头相机标定方法包括:
[0055]
步骤s101,获取相机的相机参考平面以及相机同步图片,其中相邻相机的相机同步图片具有重叠区域;
[0056]
步骤s102,基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面;
[0057]
步骤s103,根据相邻两个相机的相机同步图片上的随机像素点在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点;
[0058]
步骤s104,基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算匹配特征点的三维坐标;
[0059]
步骤s105,基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正;
[0060]
重复步骤s103至步骤s105,直至所有相邻相机的匹配特征点的映射二维坐标和实际二维坐标的差异值小于第一设定值或相机的内部参数和外部参数的修正次数大于第二设定值。
[0061]
下面详细说明本实施例的多镜头相机标定方法的各步骤的具体流程。
[0062]
在步骤s101中,电子设备(如多深度相机系统)获取相机的相机参考平面以及相机同步图片。
[0063]
这里的相机参考平面可用于表征相机的外部参数,该外部参数包括相机的旋转偏移量以及平移偏移量,这里相机对应的相机参考平面的平面中心的偏移量可对应相机的平移偏移量,相机对应的相机参考平面的平面旋转角度可对应相机的旋转偏移量。因此在步
骤s101之前,可通过相机的外部参数获取该相机的相机参考平面。
[0064]
该相机同步图片为通过该相机拍摄,用于对该多深度相机系统中的多个相机进行外部参数标定的图片。为了有效的对多深度相机系统中的多个相机进行有效标定,多深度相机系统中的多个相机可通过拍摄同一标定物来生成对应的相机同步图片。由于相邻相机的拍摄角度是有一定重叠的,因此相邻相机的相机同步图片应具有一定的重叠区域。
[0065]
在步骤s102中,电子设备基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面。
[0066]
由于不同相机同步图片上的同一匹配特征点理论上应该是位置相同的,因此在步骤中首先对该匹配特征点位于的重叠参考平面进行设定,以使得该匹配特征点的位置与对应的相机参考平面上的对应像素点的位置差异不会太大。
[0067]
具体的,电子设备可直接基于相邻相机的相机参考平面,通过插值算法计算两个相机共同的重叠参考平面,这样每两个相邻的相机之间都有一个重叠参考平面,后续可以对所有相机的外部参数进行有效的修正。
[0068]
当然为了进一步提高准确性,电子设备还可基于相邻三个相机的相机参考平面,通过插值算法计算其中相邻相机的两个过渡参考平面;再基于相邻两个相机的两个过渡参考平面,通过插值算法计算三个相机的重叠参考平面,这样每三个相邻的相机之间均有一个重叠参考平面,每个相机之间的关联性更强,后期修正的相机的外部参数更加准确。
[0069]
在步骤s103中,电子设备根据相邻两个相机的相机同步图片上的随机像素点在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点。即通过步骤s102获取的重叠参考平面来计算相邻两个相机上相关像素点在重叠参考平面上的位置。
[0070]
具体请参照图2,图2为本发明的多镜头相机标定方法的一实施例的步骤s103的流程图。该步骤s103包括:
[0071]
步骤s201,电子设备获取相邻两个相机中的一个相机的相机同步图片上的第一随机像素点,并基于该相机对应的相机参考平面与重叠参考平面之间的旋转偏移量以及平移偏移量,计算该第一随机像素点在对应重叠参考平面上的第一位置。
[0072]
步骤s202,电子设备获取相邻两个相机中的另一个相机的相机同步图片上与第一随机像素点对一个的第二随机像素点,这里可通过第一随机像素点和第二随机像素点之间的像素颜色、灰度以及位置暂定它们之间的对应关系。
[0073]
随后基于该相机对应的相机参考平面与重叠参考平面之间的旋转偏移量以及平移偏移量,计算该第二随机像素点在对应重叠参考平面上的第二位置。
[0074]
步骤s203,计算第一随机像素点的第一位置与对应的第二随机像素点的第二位置之间的距离,并判断该第一位置和第二位置的距离是否小于第三设定值,如该距离大于等于第三设定值,则说明第一随机像素点和第二随机像素点不匹配,则直接放弃舍弃上述第一随机像素点和第二随机像素点;如该距离小于第三设定值,则将第一随机像素点和对应的第二随机像素点设定为相邻两个相机的相机同步图片的匹配特征点。
[0075]
在步骤s104,电子设备基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算匹配特征点的三维坐标。
[0076]
具体请参照图3,图3为本发明的多镜头相机标定方法的一实施例的步骤s104的流程图。该步骤s104包括:
[0077]
步骤s301,获取相邻两个相机中一个相机的光心位置以及相机对应匹配特征点的位置,并从光心位置设置一条经过相机对应匹配特征点的位置的射线,将该射线确定为该匹配特征点的第一定位射线。
[0078]
步骤s302,获取相邻两个相机中的另一相机的光心位置以及该相机对应匹配特征点的位置,并从光心位置设置一条经过相机对应匹配特征点的位置的射线,将该射线确定为该匹配特征点的第二定位射线。
[0079]
步骤s303,判断该匹配特征点的第一定位射线和第二定位射线之间是否存在交点,如存在交点,则转到步骤s304;如不存在交点,则转到步骤s305。
[0080]
步骤s304,如第一定位射线与第二定位摄像存在交点,则将该交点的三维坐标作为匹配特征点的三维坐标。
[0081]
步骤s305,如第一定位射线和第二定位射线不存在交点,则将第一定位射线和第二定位射线的垂直连线的中点的坐标作为匹配特征点的三维坐标,其中垂直连线为分别垂直于第一定位射线和第二定位射线、且分别于第一定位射线和第二定位射线相交的线段。
[0082]
在步骤s105中,电子设备基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正。
[0083]
具体的,可通过以下公式计算匹配特征点在对应相机的相机同步图片上的映射二维坐标:
[0084]
x=k[r|t]x;
[0085]
其中k为相机的内部参数矩阵,r用于表示相机的旋转偏移量的旋转矩阵,t用于表示相机的平移偏移量的平移向量,[r|t]为相机的外部参数矩阵,x为匹配特征点的三维坐标,x为匹配特征点在对应相机的相机同步图片上的映射二维坐标。
[0086]
随后电子设备基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的外部参数进行修正,以使得该差异值减小。
[0087]
对相机的外部参数的修正过程可包括:
[0088]
如多个相机为处于同一水平面的多个相机,则将相机的平移向量锁定,对相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得该差异值减小;为了进一步提高外部参数的修正效率,对相机的旋转矩阵以及相机焦距的调整优先级应高于相机的相机光心的调整优先级,因为调整相机的相机光心容易导致差异值的剧烈变化。
[0089]
如多个相机包括多组处于不同水平面的相机组,每个相机组的相机处于同一水平面;在同一相机组中,通过将相机的平移向量锁定,对相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得该差异值减小;随后在其他相机组的外部参数和内部参数锁定的情况下,对设定相机组中的相机的平移向量进行调整,以使得差异值减小,这样可以较好的避免平移向量的调整对其他相机组的外部参数和内部参数的影响。
[0090]
具体的,这里可以获取多深度相机系统的多个相邻相机的匹配特征点,并基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正,目的是使得匹配特征点的映射二维坐标和实际二维坐标的总体差异值较小。
[0091]
因此这里会重复步骤s103至步骤s105,直至所有相邻相机的匹配特征点的映射二维坐标和实际二维坐标的差异值小于第一设定值(一用户预设值)或相机的内部参数和外部参数的修正次数大于第二设定值(另一用户预设值)。
[0092]
这样通过对匹配特征点的映射二维坐标以及在相机对应相机同步图片上的实际二维坐标的差异值的调整,实现了对相机的内部参数和外部参数的修正以及标定。
[0093]
这样即完成了本实施例的多镜头相机标定方法的相机内部参数和外部参数的标定过程。
[0094]
本实施例的多镜头相机标定方法通过重叠参考平面来获取匹配特征点的三维坐标,从而进一步对相机的内部参数和外部参数进行修正,有效了提高了多镜头相机的外部参数的兼容性,进而提高了对应拼接画面的画面质量。
[0095]
本发明还提供一种多镜头相机标定装置,请参照图4,图4为本发明的多镜头相机标定装置的一实施例的结构示意图。本实施例的多镜头相机标定装置40可使用上述的多镜头相机标定方法进行实施。本实施例的多镜头相机标定装置40包括相机参数以及图片获取模块41、重叠参考平面计算模块42、匹配特征点获取模块43、三维坐标计算模块44以及修正模块45。
[0096]
相机参数以及图片获取模块41用于获取相机的相机参考平面以及相机同步图片,其中相邻相机的相机同步图片具有重叠区域;重叠参考平面计算模块42用于基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面;匹配特征点获取模块43用于根据相邻两个相机的相机同步图片上的随机像素点在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点;三维坐标计算模块44用于基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算匹配特征点的三维坐标;修正模块45用于基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正。
[0097]
本实施例的多镜头相机标定装置40使用时,相机参数以及图片获取模块41获取相机的相机参考平面以及相机同步图片。
[0098]
这里的相机参考平面可用于表征相机的外部参数,该外部参数包括相机的旋转偏移量以及平移偏移量,这里相机对应的相机参考平面的平面中心的偏移量可对应相机的平移偏移量,相机对应的相机参考平面的平面旋转角度可对应相机的旋转偏移量。
[0099]
该相机同步图片为通过该相机拍摄,用于对该多深度相机系统中的多个相机进行外部参数标定的图片。为了有效的对多深度相机系统中的多个相机进行有效标定,多深度相机系统中的多个相机可通过拍摄同一标定物来生成对应的相机同步图片。由于相邻相机的拍摄角度是有一定重叠的,因此相邻相机的相机同步图片应具有一定的重叠区域。
[0100]
随后重叠参考平面计算模块42基于相邻相机的相机参考平面,通过插值算法计算对应重叠区域的相机同步图片对应的重叠参考平面。
[0101]
由于不同相机同步图片上的同一匹配特征点理论上应该是位置相同的,因此在步骤中首先对该匹配特征点位于的重叠参考平面进行设定,以使得该匹配特征点的位置与对应的相机参考平面上的对应像素点的位置差异不会太大。
[0102]
然后匹配特征点获取模块43根据相邻两个相机的相机同步图片上的随机像素点
在对应重叠参考平面上的位置,获取相邻两个相机的相机同步图片的匹配特征点。即通过重叠参考平面来计算相邻两个相机上相关像素点在重叠参考平面上的位置。
[0103]
随后三维坐标计算模块44基于相邻两个相机的光心位置以及相邻两个相机的相机同步图片的匹配特征点的位置,计算匹配特征点的三维坐标。
[0104]
然后修正模块45基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正。
[0105]
具体的,可通过以下公式计算匹配特征点在对应相机的相机同步图片上的映射二维坐标:
[0106]
x=k[r|t]x;
[0107]
其中k为相机的内部参数矩阵,r用于表示相机的旋转偏移量的旋转矩阵,t用于表示相机的平移偏移量的平移向量,[r|t]为相机的外部参数矩阵,x为匹配特征点的三维坐标,x为匹配特征点在对应相机的相机同步图片上的映射二维坐标。
[0108]
随后修正模块45基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的外部参数进行修正,以使得该差异值减小。
[0109]
对相机的外部参数的修正过程可包括:
[0110]
如多个相机为处于同一水平面的多个相机,则将相机的平移向量锁定,对相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得该差异值减小;为了进一步提高外部参数的修正效率,对相机的旋转矩阵以及相机焦距的调整优先级应高于相机的相机光心的调整优先级,因为调整相机的相机光心容易导致差异值的剧烈变化。
[0111]
如多个相机包括多组处于不同水平面的相机组,每个相机组的相机处于同一水平面;在同一相机组中,通过将相机的平移向量锁定,对相机的旋转矩阵、相机光心以及相机焦距进行调整,以使得该差异值减小;随后在其他相机组的外部参数和内部参数锁定的情况下,对设定相机组中的相机的平移向量进行调整,以使得差异值减小,这样可以较好的避免平移向量的调整对其他相机组的外部参数和内部参数的影响。
[0112]
具体的,这里可以获取多深度相机系统的多个相邻相机的匹配特征点,并基于匹配特征点在对应相机的相机同步图片上的映射二维坐标、与匹配特征点在相机的相机同步图片上的实际二维坐标的差异值,对相机的内部参数和外部参数进行修正,目的是使得匹配特征点的映射二维坐标和实际二维坐标的总体差异值较小。
[0113]
因此这里会重复匹配特征点获取模块、三维坐标计算模块以及修正模块中的流程,直至所有相邻相机的匹配特征点的映射二维坐标和实际二维坐标的差异值小于第一设定值(一用户预设值)或相机的内部参数和外部参数的修正次数大于第二设定值(另一用户预设值)。
[0114]
这样通过对匹配特征点的映射二维坐标以及在相机对应相机同步图片上的实际二维坐标的差异值的调整,实现了对相机的内部参数和外部参数的修正以及标定。
[0115]
这样即完成了本实施例的多镜头相机标定装置40的相机内部参数和外部参数的标定过程。
[0116]
本实施例的多镜头相机标定装置通过重叠参考平面来获取匹配特征点的三维坐
标,从而进一步对相机的内部参数和外部参数进行修正,有效了提高了多镜头相机的外部参数的兼容性,进而提高了对应拼接画面的画面质量。
[0117]
下面通过一具体实施例说明本发明的多镜头相机标定方法及多镜头相机标定装置的工作原理。请参照图5c,图5c为本发明的多镜头相机标定方法及标定装置的具体实施例的流程图。
[0118]
本具体实施例的多镜头相机标定装置设置在多镜头相机系统中,该多镜头相机系统包括多个设置在同一平面或不同平面的相机,具体可如图5a或图5b所示,其中图5a的多镜头相机系统包括同一平面的六个相机,图5b的多镜头相机系统包括两个平面的十二个相机。
[0119]
本实施例的多镜头相机标定装置进行内部参数和外部参数的标定流程包括:
[0120]
步骤s501,获取多镜头相机系统的每个相机初始外部参数,即初始的旋转矩阵以及平移向量,当然这里可以设定其中一个相机为坐标系的原点。随后使用该多镜头相机系统拍摄标定物获取每个相机的相机同步图片,其中相邻相机的相机同步图片应具有重叠区域。
[0121]
步骤s502,在输入两个相邻镜头的初始外部参数之后,根据两个相邻镜头的初始旋转矩阵,通过球面插值算法可以获取重叠参考平面的旋转矩阵。这样可基于重叠参考平面的旋转矩阵来确定重叠参考平面。
[0122]
如这里采用的是图5b所示的多镜头相机系统,该多镜头相机系统包括处于上平面的六个镜头51以及处于下平面的六个镜头52,这里可以选择一个处于上平面的镜头以及最邻近的下平面的两个镜头,通过球形插值可以得到一个过渡旋转矩阵,然后在针对该过渡旋转矩阵以及上平面镜头的旋转矩阵进行插值,即可得到重叠参考平面的旋转矩阵,进而得到重叠参考平面。
[0123]
步骤s503,在相邻两个相机的相机同步图片上的重叠区域选取匹配的随机像素点,并展开到步骤s502获取的重叠参考平面上,如果这两个随机像素点在重叠参考平面上的距离较远,则将这两个随机像素点舍弃;如果这两个随机像素点在重叠参考平面上的距离小于第三设定值,则将上述随机像素点设定为相机的相机同步图片的匹配特征点。
[0124]
步骤s504,将步骤s503获取的相机同步图片的匹配特征点映射到三维空间中,匹配特征点的三维坐标是无法通过单个镜头确定的。因此基于相邻两个相机中一个相机的光心位置以及所述相机对应匹配特征点的位置确定第一定位射线,基于相邻两个相机中另一个相机的光心位置以及所述相机对应匹配特征点的位置,确定第二定位射线;第一定位射线和第二定位射线在三维空间中的交点就是匹配特征点的三维坐标。
[0125]
如第一定位射线与第二定位射线既不平行也不相交,则找两条射线在空间中距离最短的线段,并将该线段的中点作为匹配特征点的三维坐标。
[0126]
步骤s505,将匹配特征点的三维坐标映射回对应的相机同步图片上,当相机的内外参数不准确时,匹配特征点的映射二维坐标与匹配特征点在相机同步图片上的实际二维坐标会存在一定差异,因此可通过调整多镜头相机系统的所有相机的内部参数以及外部参数使得该差异值不断趋于零。
[0127]
如对图5a所示的多镜头相机系统进行标定,中间一轮拟合计算需要单独处理相机光心,相机的旋转矩阵以及相机焦距可以随时调整,相机光心需要逐渐增加调整幅度,相机
的平移向量需要进行锁定,如调整相机的平移向量,容易出现不符合事实的标定结果。
[0128]
如对图5b所示的多镜头相机系统进行标定,开始的几轮拟合计算可与图5a的多镜头相机系统相同,后面需要对相机的平移向量进行调整,否则标定结果可能会出现很大的水平倾斜。但是在对上平面的六个相机的平移向量的标定过程中,下平面的六个相机的内部参数和外部参数需要固定,以便得到一个相对关系正确且符合实际情况的标定结果。
[0129]
这样即完成了本实施例的多镜头相机标定方法及多镜头相机标定装置的相机内部参数和外部参数的标定过程。
[0130]
本发明的多镜头相机标定方法及标定装置通过重叠参考平面来获取匹配特征点的三维坐标,从而进一步对相机的内部参数和外部参数进行修正,有效了提高了多镜头相机的外部参数的兼容性,进而提高了对应拼接画面的画面质量,有效解决了现有的多镜头相机标定方法及标定装置的镜头外部参数兼容性太差导致的拼接画面的画面质量较差的技术问题。
[0131]
如本申请所使用的术语“组件”、“模块”、“系统”、“接口”、“进程”等等一般地旨在指计算机相关实体:硬件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于是运行在处理器上的进程、处理器、对象、可执行应用、执行的线程、程序和/或计算机。通过图示,运行在控制器上的应用和该控制器二者都可以是组件。一个或多个组件可以有在于执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。
[0132]
图6和随后的讨论提供了对实现本发明所述的多镜头相机标定装置所在的电子设备的工作环境的简短、概括的描述。图6的工作环境仅仅是适当的工作环境的一个实例并且不旨在建议关于工作环境的用途或功能的范围的任何限制。实例电子设备612包括但不限于可穿戴设备、头戴设备、医疗健康平台、个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(pda)、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。
[0133]
尽管没有要求,但是在“计算机可读指令”被一个或多个电子设备执行的通用背景下描述实施例。计算机可读指令可以经由计算机可读介质来分布(下文讨论)。计算机可读指令可以实现为程序模块,比如执行特定任务或实现特定抽象数据类型的功能、对象、应用编程接口(api)、数据结构等等。典型地,该计算机可读指令的功能可以在各种环境中随意组合或分布。
[0134]
图6图示了包括本发明的多镜头相机标定装置中的一个或多个实施例的电子设备612的实例。在一种配置中,电子设备612包括至少一个处理单元616和存储器618。根据电子设备的确切配置和类型,存储器618可以是易失性的(比如ram)、非易失性的(比如rom、闪存等)或二者的某种组合。该配置在图6中由虚线614图示。
[0135]
在其他实施例中,电子设备612可以包括附加特征和/或功能。例如,设备612还可以包括附加的存储装置(例如可移除和/或不可移除的),其包括但不限于磁存储装置、光存储装置等等。这种附加存储装置在图6中由存储装置620图示。在一个实施例中,用于实现本文所提供的一个或多个实施例的计算机可读指令可以在存储装置620中。存储装置620还可以存储用于实现操作系统、应用程序等的其他计算机可读指令。计算机可读指令可以载入存储器618中由例如处理单元616执行。
[0136]
本文所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储器618和存储装置620是计算机存储介质的实例。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd

rom、数字通用盘(dvd)或其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储期望信息并可以被电子设备612访问的任何其他介质。任意这样的计算机存储介质可以是电子设备612的一部分。
[0137]
电子设备612还可以包括允许电子设备612与其他设备通信的通信连接626。通信连接626可以包括但不限于调制解调器、网络接口卡(nic)、集成网络接口、射频发射器/接收器、红外端口、usb连接或用于将电子设备612连接到其他电子设备的其他接口。通信连接626可以包括有线连接或无线连接。通信连接626可以发射和/或接收通信媒体。
[0138]
术语“计算机可读介质”可以包括通信介质。通信介质典型地包含计算机可读指令或诸如载波或其他传输机构之类的“己调制数据信号”中的其他数据,并且包括任何信息递送介质。术语“己调制数据信号”可以包括这样的信号:该信号特性中的一个或多个按照将信息编码到信号中的方式来设置或改变。
[0139]
电子设备612可以包括输入设备624,比如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。设备612中也可以包括输出设备622,比如一个或多个显示器、扬声器、打印机和/或任意其他输出设备。输入设备624和输出设备622可以经由有线连接、无线连接或其任意组合连接到电子设备612。在一个实施例中,来自另一个电子设备的输入设备或输出设备可以被用作电子设备612的输入设备624或输出设备622。
[0140]
电子设备612的组件可以通过各种互连(比如总线)连接。这样的互连可以包括外围组件互连(pci)(比如快速pci)、通用串行总线(usb)、火线(ieee1394)、光学总线结构等等。在另一个实施例中,电子设备612的组件可以通过网络互连。例如,存储器618可以由位于不同物理位置中的、通过网络互连的多个物理存储器单元构成。
[0141]
本领域技术人员将认识到,用于存储计算机可读指令的存储设备可以跨越网络分布。例如,可经由网络628访问的电子设备630可以存储用于实现本发明所提供的一个或多个实施例的计算机可读指令。电子设备612可以访问电子设备630并且下载计算机可读指令的一部分或所有以供执行。可替代地,电子设备612可以按需要下载多条计算机可读指令,或者一些指令可以在电子设备612处执行并且一些指令可以在电子设备630处执行。
[0142]
本文提供了实施例的各种操作。在一个实施例中,所述的一个或多个操作可以构成一个或多个计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
[0143]
而且,尽管已经相对于一个或多个实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功
能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或多个其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
[0144]
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的方法。
[0145]
综上所述,虽然本发明已以实施例揭露如上,实施例前的序号仅为描述方便而使用,对本发明各实施例的顺序不造成限制。并且,上述实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1