文章目录
- 前言
- 为何进行相机标定?
- 相机标定本质
- 坐标系
- 一、针孔模型
前言
环视AVM的第一步即对鱼眼相机进行标定,得到相机的内参、畸变系数。本文主要介绍了相机标定及其原理。相机标定本质上为坐标系之间的转换,最终目的是为了得到投影矩阵。
为何进行相机标定?
1.物体在实际空间中的位置
2.物体在图像中对应点的位置
为了将1、2联系起来,必须找到一个纽带,这个纽带就是相机的参数(内参、外参、畸变系数)
相机标定本质
几个坐标系之间的转换
坐标系
世界坐标系(3D)——>相机坐标系(3D)——>图像坐标系(2D)
世界坐标系:定义物体在真实世界的具体位置
相机坐标系:以相机的角度去描述物体的位置
图像坐标系:描述物体3D——>2D的映射关系,即找到3D物体在平面上的对应位置
一、针孔模型
为了更好地理解鱼眼相机的模型,所以先从最基础的针孔模型进行建模。
x: 成像的大小
f: 相机的焦距
Z:物体到针孔平面的距离
X:物体的大小
根据三角形相似性原理,针孔模型参数的几何关系为:
为了消除负号使得公式更加简单,将成像平面围绕针孔旋转180°,并建立相机坐标系,如图
翻转后的点表示为:
此时针孔模型参数的几何关系为:公式(1):
理想情况,K轴刚好通过成像平面的小孔,但实际情况下相机会出现偏移,所以引入偏移误差常量Cx,Cy,这时Pc点在平面i,j上的坐标变为
公式(2):
并且,像素点往往是矩形,而不是正方形,所以再引入误差常量Sx,Sy。所以相机焦距变为:公式(3):
此时,在平面i,j上的点==Pu(xu,yu)==就变为了公式(4):
再结合公式(1)可以得出:
公式(5):
求得Pu(Xu,Yu)的目的是因为我们要把三维空间中的点Pc(Xc,Yc,Zc)投影到这个上面,为了达到维度的统一,我们使用齐次坐标(其次坐标这里就不再进行描述),即将Pu表示为Pu(Xu,Yu,1)。
同时将最开始的三维坐标表示为:
并将相机参数用一个==M(3*3)==矩阵来进行表示:
这便是相机的内参,我们的最终目的是为了确定相机内参中的值。公式(6):
根据公式(6)进行化解求未知数即可获取得到M矩阵,其中λ为常量系数。