购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3 相机标定方法

2.3.1 Tsai相机标定

直接线性变换方法或者透视变换矩阵方法利用线性方法来求取相机参数,其缺点是没有考虑镜头的非线性畸变。如果利用直接线性变换方法或透视变换矩阵方法求得相机参数,可以将求得的参数作为下一步的初始值,考虑畸变因素,利用最优化算法进一步提高标定精度,这样就形成了所谓的两步法。

两步法的第一步是解线性方程,得到部分外参的精确解。第二步再将其余外参与畸变修正系数进行迭代求解。较为典型的两步法是Tsai提出的基于径向约束的两步法。基于径向约束的相机标定方法标定过程快捷、准确,但是只考虑了径向畸变,没有考虑其他畸变。该方法所使用的大部分方程是线性方程,从而降低了参数求解的复杂性。

其标定过程是先忽略镜头的误差,利用中间变量将标定方程化为线性方程求解出相机的外参;然后根据外参利用非线性优化的方法求取径向畸变系数 k 、有效焦距 f 以及平移分量 t z

径向排列约束矢量 L 1 和矢量 L 2 具有相同的方向。由成像模型可知,径向畸变不改变 L 1 的方向。由式(2-32)可知

整理可得

将式(2-40)两边同除以 t y ,得

再将式(2-41)变换为矢量形式

其中,行矢量[ x w Y d y w Y d z w Y d -x w X d -y w X d -z w X d ]是已知的,而列矢量 r 11 /t y r 12 /t y r 13 /t y t x /t y r 21 /t y r 22 /t y r 23 /t y 是待求参数。

对每一个物体点,已知其 x w y w X d Y d ,选取合适的7个点就可以解出列矢量中7个分量。此外,式(2-42)可以简化为:

利用最小二乘法求解这个方程组、计算有效焦距 f ,平移分量 t z 和透镜畸变系数 k 时,先用线性最小二乘计算有效焦距 f 和平移向量 T t z 分量,然后利用有效焦距 f 和平移矢量 T t z 分量值作初始值,求解非线性方程组得到 f t z k 的准确值。

利用式(2-43)以及旋转矩阵为正交阵的特点,可以确定旋转矩阵 R 和平移分量 t x t y

利用径向一致约束方法将外参分离出来,并用求解线性方程的方法求解外参。另外,可将世界坐标和相机坐标重合,这样,标定时就能只求内参,从而简化标定。

2.3.2 DLT标定

在已知一组3D点的位置,以及它们在相机中的投影位置,直接根据相机线性模型计算出相机的内外参数是较为常用的方法。

摄像机的线性模型如式(2-44)所示:

其中,( X wi Y wi Z wi ,1)为3D立体靶标第 i 个点的坐标;( u i v i ,1)为第 i 个点的图像坐标; m ij 为投影矩阵 M 的第 i 行第 j 列元素。式(2-44)包含三个方程,如式(2-45)所示:

用最后一行将 s 消去,得到两个约束方程:

每个特征点可提供两个关于 m 的线性约束。假设一共有 n 个特征点,并已知它们的空间坐标,就有2 n 个关于 M 矩阵元素的线性方程,线性方程组如式(2-47)所示:

实际上, M 矩阵乘以任意不为零的常数并不影响( X w Y w Z w )与( u v )的关系,因此可以令 m 34 =1,从而可以得到关于 M 矩阵其他元素的2 n 个线性方程,这些未知元素的个数为11个,记为11维向量 m 。将式(2-47)简写为式(2-48):

其中 K 为(2-47)左边2 n ×11矩阵; m 为未知的11维向量; U 为(2-47)右边的2 n 维向量; K U 为已知向量。

对于(2-48)我们可以利用线性方程组的常规解法解出 M 矩阵。当2 n >11时,可用最小二乘法求出上述线性方程的解。

2.3.3 张正友标定

1998年,张正友提出了基于二维平面靶标的标定方法,使用相机在不同角度下拍摄多幅平面靶标的图像,比如棋盘格的图像。然后通过对棋盘格的角点进行计算分析来求解相机的内外参数。

1.每一幅图像得到一个映射矩阵 H

一个二维点可以用 m =[ u v ] T 示,一个三维点可以用 M =[ X Y Z ] T 示,用 表示其增广矩阵,则 =[ u v ,1] T 以及 =[ u v z ,1] T 。三维点与其投影图像点之间的关系如式(2-49)

其中, s 是任意标准矢量; R t 为外参; A 矩阵为相机内参,可表示为式(2-50)

其中,( u 0 v 0 )是坐标系上的原点; α β 是图像上 u v 坐标轴的尺度因子; γ 表示图像坐标轴的垂直度。

不失一般性,假定模板平面在世界坐标系 Z =0的平面上,则由式(2-51)可得:

其中, =[ X Y ,1]为标定模板平面上的齐次坐标, =[ u v ,1] T 为模板平面上的点投影到图像平面上对应点的齐次坐标。

此时,可以得到一个3×3的矩阵

利用映射矩阵可得内参矩阵 A 的约束条件为:

2.利用约束条件线性求解内参矩阵 A

假设存在

其中, B 是对称矩阵,可以表示为六维矢量 b =[ B 11 B 12 B 13 B 21 B 21 B 23 ],基于绝对二次曲线原理求出 B 以后,再对 B 矩阵求逆,并从中导出内参矩阵 A ;再由 A 和映射矩阵 H 计算外参旋转矩阵 R 和平移向量 t ,公式为:

3.最大似然估计

采用最大似然准则优化上述参数。假设图像有 n 幅,模板平面标定点有 m 个,则最大似然估计值就可以通过最小化以下公式得到:

其中, m ij 为第 j 个点在第 i 幅图像中的像点; R i 为第 i 幅图像的旋转矩阵; t i 为第 i 幅图像的平移向量; M j 为第 j 个点的空间坐标;初始估计值利用上面线性求解的结果,畸变系数 k 1 k 2 初始值为0。

2.3.4 PNP标定

PnP(Perspective-n-Point),是求解3D到2D点对运动的方法,目的是求解相机坐标系相对世界坐标系的位姿。P3P(Perspective Three Points)是PnP的主流解决算法之一。为了能在室外条件下方便、快速地对长焦距双目系统进行标定,使用一种基于代数透视三点算法(Algebraic Perspective Three Points,AP3P)的简易标定方法。系统标定的目标是确定方程组(2-57)中的相机内参数矩阵 K 1 、外参数矩阵[ ]。其中,内参数矩阵是相机光学参数的抽象,与相机的镜头和图像传感器的参数有关;外参数矩阵则仅与相机的摆放位姿有关。

对内参数,直接使用长焦距镜头和图像传感器的标称值计算。镜头焦距为 毫米,图像传感器分辨率为 w × h 像素,像元尺寸为 δ × δ 毫米,内参数矩阵为:

对于外参数,使用AP3P算法来估计左、右相机的位姿。标定场景的布置如图2-7所示,在目标景物附近放置一个平面的棋盘格标定靶。拍摄时,提取棋盘格上的所有Harris角点作为标定特征点。虽然棋盘格的角点数量一般多于3个,但是在已知内参数的情况下,这些角点实际上只提供了三个彼此独立的空间特征点 Q 1 Q 2 Q 3 ,其余特征角点的作用是降低图像噪声对相机位姿估计的影响。

图2-7 快速标定方法

AP3P算法是透视三点定位(Perspective Three Points,P3P)问题的一种代数解法。其核心原理仍然是P3P方法,这里以单相机的情况为例说明P3P方法。其原理如图2-8所示,已知图像平面上的三个点 q 1 q 2 q 3 ,世界坐标系中的三个点 Q 1 Q 2 Q 3 ,以及由内参数矩阵给出的相机光轴 图像平面的垂直交点 c 的像素坐标, 。要求解的是相机中心 O 在世界坐标系下的坐标以及光轴 OC 的方向向量。具体步骤分为三步:

(1)求解三棱锥 Oq 1 q 2 q 3 的顶角

在三维拓展的图像坐标系(3D-Extended Image Coordinate)下,使用余弦定理求解三棱锥 Oq 1 q 2 q 3 Oq 1 q 2 q 3 的三个顶角∠ q 1 Oq 2 、∠ q 2 Oq 3 以及∠ q 3 Oq 1 。其中 O 点的水平坐标与 c 点相同, w 坐标为

(2)求解三棱锥 Oq 1 q 2 q 3 的棱边

建立P3P方程组,求得三棱锥 Oq 1 q 2 q 3 中棱边 OQ 1 OQ 2 以及 OQ 3 的长度。P3P方程组是:

方程组(2-53)可能至多存在4组解,使用与 Q 1 Q 2 Q 3 不同的其他点,可以筛选出最为合理的解。

(3)求解相机位姿

根据已经解出的三棱锥 OQ 1 Q 2 Q 3 Oq 1 q 2 q 3 ,如图2-8所示,求出相机位姿即完成标定。

图2-8 P3P方法的原理示意图 cAfBzdNV7eX2ndhECTv7TpnFqR5fNDKzv6e+2s67RjhPWlG1y6sVLGW2+Ckb6/1E

点击中间区域
呼出菜单
上一章
目录
下一章
×