为什么需要标定相机
相机的数学意义:
- 真实世界是三维的,拍摄照片是二维的
- 相机(
看成一个广义函数):输入三维场景,输出是二维图片(灰度值) - 彩色图是
RGB三通道,每个通道可以认为是一张灰度图 函数(映射关系)是不可逆的,也就是说我们无法从二维照片恢复出三维世界(二维照片没有深度信息)
相机标定的意义
相机标定:使用带有pattern的标定板来求解相机参数的过程- 用一个简化的数学面模型来代表复杂的三维到二维成像过程
- 相机的参数包括:
相机内参(焦距)、相机外参(旋转、平移矩阵),镜头的畸变参数 用途:畸变矫正,双目视觉,结构光,三维重建,SLAM,都需要相机标定,获得相机的参数才可以进行应用
坐标系变换
小孔成像原理
小孔成像说明
- 简单没镜头
- 有一个小的光源 (蜡烛)
- 真实世界的3D物体,发出光线通过光圈(小孔)
- 相机的另一侧,像平面位置,得到一个倒立的实像
坐标系介绍
必知的专用术语:
-
世界坐标系(World Coords):点在真实世界中的位置,描述相机的位置,单位是m -
相机坐标系(Camera Coords):以相机的sensor中心为原点,简历相机坐标系,单位m -
图像物理坐标系:经过小孔成像后得到的二维坐标系,单位是mm,坐标元旦是图中的点 -
像素坐标系(Pixel Coords): 成像点在相机sensor上像素的行数和列数,不带任何的物理单位 主点:光轴与图像平面的交点,图中的点p

在双目或多目系统中,世界坐标系和相机坐标系是不重合的,需要对世界坐标系通过旋转矩阵R和平移矩阵T,变换到相机坐标系。
上图二维平面中,为图像坐标系原点,
是像素坐标系,像素坐标系相对于图像坐标系原点有些偏移。
(1)世界坐标系到相机坐标系
点p在不同坐标系的表示
- 世界坐标系(World Coords):
- 相机坐标系(World Coords):
世界坐标系与相机坐标系之间的转换矩阵:
:相机坐标系相对于世界坐标系的旋转矩阵
: 相机坐标系相对于世界坐标系的平移矩阵
转换关系数学表达:

世界坐标系通过旋转矩阵R和偏移矩阵T,转换为相机坐标系 ,如果世界坐标系和相机坐标系重合,则R是一个单位矩阵,T是零矩阵,这样就可以把真实世界的点,转换为相机坐标系中的点
(2) 相机坐标系到图像坐标系

- 假设相机上的点
在图像坐标系的成像点是
- 基于小孔成像的原理
- 空间中一点成像在平面中,与
平面(镜头)平行,距离原点
的平面
- 取一个截面
,可以得到右图,右图中的黑点
,根据相似三角形关系可以计算得到:
- 取一个截面
,根据相似三角形关系可以计算得到:
- 结合两个三角变换关系,有:
简化后可以得到:
- 写成矩阵形式:
(3) 图像坐标系到像素坐标系转换

图像坐标系到像素坐标系的转换
上图中,图像中点表示图像坐标系原点, 左上角
表示像素坐标系的原点
坐标系的转换:
- 图像坐标系的点
到像素坐标系的
的转换
- 图像坐标系的原点在sensor的中央,单位是mm
- 像素坐标系的原点在sensor的左上角,单位为Pixel,也就是像素的行数和列数
- 他们间的转换关系:
- 写成矩阵形式:
,
:是sensor顾有参数,代表每个像素的毫米数
,
:代表图像坐标系原点(光心)相对像素坐标系原点的偏移量
综上:相机坐标系到像素的转换公式:
可以得到:
- 上式中:
,
,焦距除以单个像素大小
- 相机标定过程中,
不能标定得到,
可以通过标定得到
(4) 完整的坐标系转换
世界坐标系到像素坐标系转换,
:是sensor顾有参数,代表每个像素的毫米数
,
:代表图像坐标系原点(光心)相对像素坐标系原点的偏移量
综上:相机坐标系到像素的转换公式:- 相机内参:相机的焦距,像素坐标的相对偏移量
- 相机外参:世界坐标系到相机坐标系的转换关系,相机在世界坐标系的位姿矩阵
镜头畸变

镜头畸变 超广角拍摄畸变会比较明显,越到边缘的地方畸变越明显
- 经过透镜后的实际成像和理想成像之间的误差即为镜头畸变
- 主要分为经向畸变和切向畸变
径向畸变 - 相加的透镜形状造成,沿透镜的径向分布
- 分为桶形畸变和枕形畸变
- 远离透镜中心的地方比靠近透镜中心的地方更加弯曲
- 光心处的畸变为0,距离光心越远畸变越大
- 廉价相机,畸变更严重
- 径向畸变的数学多项式描述
- (x,y)是没畸变的像素点,
畸变后的位置
:径向畸变系数,摄像头的内参,一般使用前两项,鱼眼相机会使用第三项
切向畸变
- 相机sensor和镜头不平行导致的,相机比较好的话一般是不存在切向畸变的。因此一般研究径向畸变的影响。
- 畸变的数学表示:
- 两个畸变合并:
















