相机标定
相机标定的过程其实就是获取相机内外参的过程。相机内参一般可以从相机上的数据得知,但在实际使用过程中由于各种因素,相机的内参可能会发生改变,同时相机还存在枕形或桶形畸变,因此在使用相机进行测距时,需要先对相机进行标定获取内外参。
目前的主流标定法是张正友标定法。张正友标定法在包含传统相机标定法方法简单、鲁棒性高的优点的情况下,它采用的平面标志物一般为规整的棋盘格或点阵图,这类平面标志物易于制作且成本低。
张正友标定法
相机成像模型的公式可以写为:
其中,s为尺度因子,A为含有5个参数的内参矩阵,可将上式变形为:
张正友标定板假设模型的平面在世界坐标系的平面上,因此可以舍去
,从而将相机成像模型的其次表达定义为:
其中内参矩阵定义为:
令,则公式可以表达为
因为为单应性矩阵,单应性矩阵的意思是在采用齐次坐标系的情况下,其乘以任何一个常数k都只是影响尺度因子
的变化,对矩阵本身表示的含义没有改变,通常情况下,将
设置为1,因此单应性矩阵只有8个自由度,只需要求取8个参数即可,推导可得:
棋盘格或点阵图上每个标记点可以提供两个式子。则只需要在一张图片中获取4个标记点,通过解线性方程组即可获得矩阵的解,若≥4个标记点,则可以采用最小二乘法获得齐次矩阵
的解,结果更加精确。
令,则
。因为旋转矩阵为正交矩阵,有
,
。可得:
由于矩阵为对称矩阵,所以未知数的个数只有6个,故定义
,
为内参的未知量。
令,将上述约束写成这样的表达式:
由于已知,则可以求
。根据上述公式,可得两个约束条件:
在实际情况下,拍摄n张不同方位的棋盘格图像,n个公式叠加形成:
其中为
的矩阵,则有:
当拍摄图像数量为n=2时,只能求得两个相机内参数。
当拍摄图像数量为n=3时,有唯一解。
当拍摄图像数量为n>3时,则该方程组为超定方程,需要通过SVD分解(奇异值分解),从而求解出。精度较高,这里求得的
为带有比例因子。
求得,有:
从而求得所有内参,则矩阵已知。
由。可得:
由正交的性质得。由此,相机外参也求得。