一种基于相机位置和两个标志点的相机外参数标定方法与流程

文档序号:27258019发布日期:2021-11-05 20:33阅读:266来源:国知局
一种基于相机位置和两个标志点的相机外参数标定方法与流程

1.本发明属于相机参数标定技术领域,具体涉及一种相机外参数标定方法。


背景技术:

2.p3p(perspective
‑3‑
point)问题就是利用视场中三个已知标志点及其在相机中的成像位置,求解相机坐标系与世界坐标系的旋转平移关系,即相机外参数。目前p3p算法有很多,这些算法利用内参数已知的相机,可以得到最多4组外参数解,通过第4个标志点及其成像位置,可消除多解问题,得到唯一解。目前的算法中,在求解外参数的同时,如果需要得到唯一解,至少需要4个标志点,而精确标志点的获取与维护需要耗费大量的人力物力,比如野外大风环境下,对飞行器姿态进行测量时,对相机需要提前标定就必须设置多个标志点,而野外大风环境标志点的设立带来严峻挑战。而降至3个标志点进行的相机外参数的标定存在有多解问题。


技术实现要素:

3.本发明的目的是提供一种基于相机位置和两个标志点的相机外参数标定方法,实现根据已知的2个标志点和相机位置,对相机进行外参数标定,解决现有技术中相机外参数标定至少需要3个标志点标定且存在多解的技术问题。
4.为达到上述目的,本发明的技术方案包括如下步骤:
5.相机初始坐标系c

x
c
y
c
z
c
与世界坐标系o

xyz表示如下,x
c
轴与x轴平行且同向,y
c
与z轴平行且反向,z
c
轴与y轴平行且同向;p1、p2为标志点,p1、p2为标志点p1、p2在相机中的成像位置,相机位置c(x
0 y
0 z0)已知,两个标志点p1(x
1 y
1 z1)、p2(x
2 y
2 z2)已知,则标志点与相机成像位置对应关系为:
[0006][0007]
步骤1、p1‑
p1‑
c三点共线的实现
[0008]
根据初始相机位姿,首先对世界坐标系平移t,t=[x
0 y
0 z0]
t
,然后绕x轴旋转90
°
即可使世界坐标系与相机坐标系重合,因此,p1在相机坐标系下的坐标为
[0009]
p1‑
c
=r
ox
·
[p1‑
t]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0010]
其中:
[0011][0012]
根据成像关系,得到p1点在相机坐标系下的坐标为
[0013][0014]
其中,(u
0 v0)为相机主点;d为像元大小;f为镜头焦距;外标定时,假设内参数已知,因此,上述参数也为已知量;
[0015]
第一次相机绕y
c
轴按如下角度转动:
[0016][0017]
转动后使得和两个向量在平面y
c
=0的投影共线,并得到新的相机坐标系c

x
c1
y
c1
z
c1
下p1点坐标为
[0018][0019]
其中
[0020][0021]
新的相机坐标系c

x
c1
y
c1
z
c1
下p1点坐标p
1_c1
=p
1_c

[0022]
第二次相机绕x
c1
按如下角度转动:
[0023][0024]
转动后使得和两个向量共线,完成p1‑
p1‑
c三点共线;
[0025]
步骤2、p2‑
p2‑
c三点共线的实现
[0026]
相机完成步骤1的转动变换后,得到新的相机坐标系c

x
c2
y
c2
z
c2
,p2点在世界坐标系o

xyz下坐标为
[0027][0028]
其中
[0029]
[0030][0031]
建立一个新的世界坐标系o1‑
x1y1z1,其中,坐标系原点o1与c点重合,新的世界坐标系o1‑
x1y1z1各轴的单位方向向量如下:
[0032][0033]
则p2点及p2点在新的世界坐标系o1‑
x1y1z1下的三维坐标分别为
[0034]
p2‑
o1
=r
o1
(p2‑
c)
[0035]
p2‑
o1
=r
o1
(p2‑
o

c)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(13)
[0036]
其中,
[0037][0038]
此时,固定相机位置不动,世界坐标系o1‑
x1y1z1绕x1轴转动,且坐标系o

xyz及p1、p2点跟随转动,此时,o1‑
x1y1z1、o

xyz及p1、p2点相对位姿关系不发生变化,仅与相机相对位姿发生改变;假设转动角度为α,α∈(0 360],转动后世界坐标系o1‑
x1y1z1重新定义为o2‑
x2y2z2,坐标系o

xyz重新定义为o
’‑
x’y’z’,此时p2点在o2‑
x2y2z2下的坐标为
[0039]
p2‑
o2
=r
o2
·
p2‑
o1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)
[0040]
其中,
[0041][0042]
为使转动后p2完成与p2的映射,转动角度满足以下条件:
[0043][0044]
至此实现了p2‑
p2‑
c三点的共线。
[0045]
步骤3、相机外参数的获取
[0046]
根据步骤1、2完成两点映射后,相机坐标系c

x
c2
y
c2
z
c2
与世界坐标系o
’‑
x’y’z’的旋转和平移关系确定,根据转换关系得到其在各坐标系下的坐标,由此得到相机外参数的代数表达如下:
[0047]
[0048][0049]
至此,相机外参数标定完成。
[0050]
本发明的有效收益
[0051]
1、本发明在初始状态下的相机坐标系和世界坐标系之间的关系已知,通过几何约束和相机坐标系及世界坐标系的旋转,获取两个点的对应关系,并根据初始时刻相机坐标系和世界坐标系的旋转平移,旋转过程中的旋转角度,最终完成相机外参数标定。
[0052]
2、本发明提出了一种基于相机位置和两个标志点的相机外参数标定方法,该方法只需要布设两个标志点,测量相机位置和两个标志点位置,拍摄标志点图像,得到相机与标志点的成像对应关系,通过坐标系变换求取相机外参数,本发明极大的减少了标志点的数量,缩短了标定时间,且避免了多解现象。
[0053]
3、本发明适用于可提前获取相机位置的应用场景,如固定的监控相机,外场测量飞行器姿态的凝视相机,或者具有定位设备的相机等。
附图说明
[0054]
图1为外参数标定完成后的相机坐标系和世界坐标系示意图;
[0055]
图2为本发明初始状态下相机坐标系与世界坐标系示意图;
[0056]
图3为本发明一次旋转后相机坐标系中的标志点示意图;
[0057]
图4为本发明p1‑
p1‑
c三点共线示意图;
[0058]
图5为本发明新的世界坐标系o1‑
x1y1z1[0059]
图6为本发明p2‑
p2‑
c三点共线示意图;
[0060]
图7为本发明各坐标系间的旋转和平移过程总体示意图。
具体实施方式
[0061]
下面结合附图对本发明的实施过程进行详细的解释和说明。
[0062]
本发明的总体思路表述如下,本发明是利用2个标志点和已知的相机位置,通过几何约束和几何旋转即可求解获取相机外参数,并保证相机外参数有唯一解。
[0063]
当相机位置c(x
0 y
0 z0)已知,两个标志点p1(x
1 y
1 z1)、p2(x
2 y
2 z2)已知,则标志点与相机成像位置对应关系确定:
[0064][0065]
当外参数标定完成后,相机坐标系和世界坐标系的2点对应关系如图1所示,其中,p1、p2为p1、p2在相机中的成像位置。本发明利用上述已知条件,通过旋转平移的方式找到最终状态下的相机坐标系c

x
c2
y
c2
z
c2
与世界坐标系o'

x'y'z'的关系,从而得到相机的外参数矩阵。
[0066]
相机初始坐标系c

x
c
y
c
z
c
与世界坐标系o

xyz如图2所示。
[0067]
其中,x
c
轴与x轴平行且同向,y
c
与z轴平行且反向,z
c
轴与y轴平行且同向;p1、p2为标志点,p1、p2为标志点p1、p2在相机中的成像位置,通过对初始相机坐标系c

x
c
y
c
z
c
旋转和
对初始世界坐标系o

xyz旋转平移,使得点p1‑
p1‑
c三点共线、p2‑
p2‑
c三点共线,从而完成相机外参数的求解。下面就对本发明的实现步骤进行详细的解释和说明:
[0068]
步骤1、p1‑
p1‑
c三点共线的实现
[0069]
这一步的目的是想通过几何变换旋转,转动相机两次,使得p1对应p1,由于点c和点p1在世界坐标系下已知,因此转动角度可以求解获得。
[0070]
相机绕y
c
轴转动,使得相机坐标系下,和两个向量在平面y
c
=0的投影共线:
[0071]
根据初始相机位姿,首先对世界坐标系平移t,t=[x
0 y
0 z0]
t
,然后绕x轴旋转90
°
即可使世界坐标系与相机坐标系重合,因此,p1在相机坐标系下的坐标为
[0072]
p1‑
c
=r
ox
·
[p1‑
t]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0073]
其中:
[0074][0075]
根据成像关系,得到p1点在相机坐标系下的坐标为
[0076][0077]
其中,(u
0 v0)为相机主点;d为像元大小;f为镜头焦距;外标定时,假设内参数已知,因此,上述参数也为已知量;
[0078]
第一次相机绕y
c
轴转动,为使和两个向量在平面y
c
=0的投影共线,相机绕y
c
轴转动的角度为
[0079][0080]
转动后,得到新的相机坐标系c

x
c1
y
c1
z
c1
下p1点坐标为
[0081][0082]
其中
[0083][0084]
点p1跟随坐标系顺时针转动,因此,新的相机坐标系c

x
c1
y
c1
z
c1
下p1点坐标p
1_c1
=p
1_c
,经过一次旋转之后,对应关系如图3所示。
[0085]
图3中,转动后的点p1、p1在相机坐标系c

x
c1
y
c1
z
c1
下的y
c1
=0平面上的投影点与点c共线于直线l2。
[0086]
第二次相机绕x
c1
轴转动,得到新相机坐标系c

x
c2
y
c2
z
c2
,使得该坐标系下,和两个向量共线,相机的转动角度为:
[0087][0088]
旋转之后的对应关系如图4所示,至此,点p1与p1的映射关系完成,即p1‑
p1‑
c三点共线。
[0089]
步骤2、p2‑
p2‑
c三点共线的实现
[0090]
相机完成步骤1的转动变换后,得到新的相机坐标系c

x
c2
y
c2
z
c2
下p2点在世界坐标系o

xyz下坐标为
[0091][0092]
其中
[0093][0094][0095]
为保证p1点在转动过程中映射关系不变,对世界坐标系绕cp1转动,因此,建立一个新的世界坐标系o1‑
x1y1z1,其中,坐标系原点o1与c点重合,如图5所示,新的世界坐标系o1‑
x1y1z1各轴的单位方向向量如下:
[0096][0097][0098][0099]
则p2点及p2点在新的世界坐标系o1‑
x1y1z1下的三维坐标分别为
[0100]
p2‑
o1
=r
o1
(p2‑
c)
[0101]
p2‑
o1
=r
o1
(p2‑
o

c)
[0102]
其中,
[0103][0104]
此时,固定相机位置不动,世界坐标系o1‑
x1y1z1绕x1轴转动,且坐标系o

xyz及p1、p2点跟随转动,此时,o1‑
x1y1z1、o

xyz及p1、p2点相对位姿关系不发生变化,仅与相机相对位
姿发生改变。假设转动角度为α,α∈(0 360],转动后世界坐标系o1‑
x1y1z1重新定义为o2‑
x2y2z2,此时p2点在o2‑
x2y2z2下的坐标为
[0105]
p2‑
o2
=r
o2
·
p2‑
o1
[0106]
其中,
[0107][0108]
为使转动后p2完成与p2的映射,转动角度满足以下条件:
[0109][0110]
此时,和共线,得到转动角度α,完成两个点的全部映射,如图6所示。
[0111]
世界坐标系o

xyz,在跟随转动之后,世界坐标系转动至o'

x'y'z',与原始世界坐标系存在转动角度α的旋转关系。
[0112]
步骤3、相机外参数的获取
[0113]
根据步骤1、2完成了两点映射,相机坐标系c

x
c2
y
c2
z
c2
与世界坐标系o
’‑
x’y’z’的旋转和平移整体过程如图7所示。每两个坐标系间的旋转平移关系确定,根据转换关系得到其在各坐标系下的坐标,由此得到相机外参数的代数表达如下:
[0114][0115][0116]
至此,相机外参数标定完成。
[0117]
实施例1
[0118]
下面给定两个标志点坐标p1(20,

20,1.5),p2(20,20,1.5),相机位置c(353,100,

10),相机与标志点的成像关系已知,标志点的像素坐标分别为(247.2541,231.4668),(829.7369,560.4963)。相机内参数已知,分辨率1280
×
800,焦距85mm,像元尺寸14μm。将已知条件代入上述计算过程,得到相关参数为:
[0119][0120][0121]
[0122][0123][0124][0125]
根据仿真参数设置,理论的相机外参数为
[0126][0127]
t=[

2.4979 4.3265 366.9932]
[0128]
为了更好的进行误差对比,将旋转矩阵转化为旋转角度描述
[0129]
角度测量值=[35.0192 86.3276
ꢀ‑
59.6105]
[0130]
角度理论值=[35.0364 86.3276
ꢀ‑
59.6277]
[0131]
可以看出,旋转角度矩阵与转移矩阵数值无论是相对误差还是绝对误差都非常小,绝对误差值最大为0.0172
°
,相对误差值最大为0.19%。
[0132]
为对旋转和平移矩阵这一外参数误差进行评价,建立标志点重投影误差,并对其进行分析。采用计算得到的外参数对两个标志点进行重投影,并与实际成像位置进行比较,得到重投影误差均低于0.5个像素,可以判定外参数标定结果好。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1