一. 什么是摄像机标定
从二维图像中恢复物体的三维信息,必须要知道空间坐标系中的物体点同它在图像平面上像点之间的对应关系,而这个对应关系是由摄像机的成像几何模型所决定的,这些几何模型参数就是摄像机参数。在大多数情况下这些参数必须通过实验才能得到,这个过程被称为摄像机标定。
摄像机标定就是确定摄像机内部几何和光学特性(内部参数)以及摄像机坐标系相对于世界坐标系的三维位置和方向(外部参数)的过程。
二. 摄像机标定理论基础
摄像机标定包括成像模型和求摄像机参数。不同的摄像机成像模型对应不同的参数集合,不同的参数集合又对应不同的求解方法。因此,应根据实际应用场合选择合适的摄像机标定方法。摄像机成像模型包括线性模型和非线性模型。
线性模型是根据小孔成像原理,建立像点和对应物体表面空间点的几何位置关系,描述的是理想情况,即像点、投影中心和空间点三者是共线关系。实际应用中,由于立体视觉系统,摄像机的物理构造产生各种畸变,使得实际像点位置会偏移理想像点位置,造成像点、投影中心和相应的空间点之间的共线关系受到破坏,所以需要建立畸变校正模型,即非线性模型。一个完整的成像模型应当包括线性模型和非线性模型。基于此,下面首先介绍摄像机线性模型。
⑴四个常用坐标系
为定量描述光学成像过程,定义四个坐标系,如图1。
是相机坐标系,
① 图像坐标系
在图像上定义直角坐标系u-v,原点O在图像平面的左上角,每一像素的坐标(u, v)分别是该像素在数组中的列数和行数,所以(u, v)是以像素为单位的图像坐标系的坐标。求图中特正点的坐标都是以此为坐标系。
② 成像平面坐标系
由于图像坐标系只表示像素位于数组中的列数和行数,并没有用物理单位表示出该像素在图像中的位置,因此需要再建立以物理单位(如毫米)表示图像坐标,我们称它为成像平面坐标系x-y。在x-y坐标系中,原点O1(即图像主点坐标)定义在摄像机光轴与图像平面的交点,x,y轴分别平行于u,v轴。若O1在图像坐标系中的像素坐标为(u0,v0),dx,dy分别为图像平面在x,y方向上单位象素间的距离,则两个坐标系间的关系可表示为:
写成齐次坐标形式为:
③ 摄像机坐标系:
摄像机坐标系 是固定在摄像机上的直角坐标系,其原点Oc定义在摄像机的光心,Xc,Yc轴分别平行于成像平面坐标系的x, y轴,z 轴与光轴重合,即 z 轴垂直于摄像机的成像平面。光心到图像平面的距离作为摄像机的有效焦距 f 。
由于Oc,P和pu三点共线,由相似性得
写成齐次坐标形式:
④世界坐标系:
由于摄像机和物体可以安放在环境中的任何位置,因此还需要在环境中选择一个基准坐标系来描述摄像机的位置,并用它来描述环境中任何物体的位置,这个坐标系就叫做世界坐标系 。这是一个假想的坐标系,用作一般参考,可根据具体情况来选择。由于它的选取具有随意性,故在计算机视觉中通常以所测物体的中心三维坐标系或摄像机坐标系来定义世界坐标系的。世界坐标系与相机坐标系关系式
其中R为3*3旋转正交矩阵,t为1*3平移向量,代表了摄像机光心与世界坐标系中心点的偏离量。
将上式写成齐次坐标形式:
注意:
fu,fv,u0,v0这四个参数只与摄像机内部结构有关,fu,fv 是以像素为单位的焦距, 我们称之为摄像机内部参数。内参数矩阵不依赖场景的视图,一旦计算出,可以被重复使用(只要焦距固定)。R , t完全由摄像机和世界坐标系的相对位置决定,称之为摄像机外部参数。
由以上矩阵等式得:
三. 相机的非线性畸变
理想的透镜成像满足针孔模型,是近似的三角相似关系,但实际上一般透镜由于加工和装配误差的存在都是畸变成像,也就是说其正真的像点位置在上图点pd而非点pu。尤其是在近距、广角和高精度测量的情形下,两者位置偏差更大,因此必须对这种成像偏差进行补偿,即建立非线性模型。非线性模型中影响图像畸变的因素主要有三个:径向畸变、离心畸变和薄棱镜畸变。
如果只考虑一阶二阶径向畸变和切向畸变则有公式:
注:上式有错误,p1,p2相互调换就对了
其中k1,k2是一阶、二阶径向畸变系数,p1,p2是一阶、二阶切向畸变系数。
正因为畸变,所以相机标定就是要求出这些参数。然后对畸变图像的每一个像素点进行矫正。相关标定算法后续给出。