相机标定讲解
参考博客:
相机标定(Camera calibration)原理、步骤
(http://blog.csdn.net/lql0716/article/details/71973318?locationNum=8&fps=1)
相机标定内容详解 (转载自祥的博客)
(http://blog.csdn.net/humanking7/article/details/44756073)
张正友标定介绍
(http://blog.csdn.net/heroacool/article/details/50286677)
[图像]摄像机标定(2) 张正友标定推导详解
(http://blog.csdn.net/humanking7/article/details/44756235)
MATLAB–相机标定教程
(http://blog.csdn.net/heroacool/article/details/51023921)
在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数(内参、外参、畸变参数)的过程就称之为相机标定(或摄像机标定)。无论是在图像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性。因此,做好相机标定是做好后续工作的前提,提高标定精度是科研工作的重点所在。
畸变(distortion)是对直线投影(rectilinear projection)的一种偏移。简单来说直线投影是场景内的一条直线投影到图片上也保持为一条直线。畸变简单来说就是一条直线投影到图片上不能保持为一条直线了,这是一种光学畸变(optical aberration),可能由于摄像机镜头的原因。
坐标转换基础
在视觉测量中,需要进行的一个重要预备工作是定义四个坐标系的意义,即 摄像机坐标系 、 图像物理坐标系、 像素坐标系 和 世界坐标系(参考坐标系) 。
一、图像坐标系(x,y)至像素坐标系(u,v)
1.两坐标轴互相垂直
此时有
2.一般情况,两轴不互相垂直
此时有
写成矩阵形式为:
二、相机坐标系(Xc,Yc,Zc)至图像坐标系(x,y)
(根据小孔成像原理,图像坐标系应在相机坐标系的另一边,为倒立反向成像,但为方便理解和计算,故投影至同侧。)
根据三角形相似性原理得:
三、世界坐标系(Xw,Yw,Zw)至相机坐标系(Xc,Yc,Zc)
四、合并公式
R、T矩阵为相机的外参矩阵。
畸变
畸变一般可以分为:径向畸变、切向畸变
径向畸变来自于透镜形状。
切向畸变来自于整个摄像机的组装过程。
畸变还有其他类型的畸变,但是没有径向畸变、切向畸变显著,所以忽略不计。
![(https://img-blog.csdnimg.cn/202101201704339.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzU4ODE3MQ==,size_16,color_FFFFFF,t_70)
•径向畸变
实际摄像机的透镜总是在成像仪的边缘产生显著的畸变,这种现象来源于“筒形”或“鱼眼”的影响。
如下图,光线在原理透镜中心的地方比靠近中心的地方更加弯曲。对于常用的普通透镜来说,这种现象更加严重。筒形畸变在便宜的网络摄像机中非常厉害,但在高端摄像机中不明显,因为这些透镜系统做了很多消除径向畸变的工作
对于径向畸变,成像仪中心(光学中心)的畸变为0,随着向边缘移动,畸变越来越严重。
•径向畸变包括:枕形畸变、桶形畸变
•切向畸变
•切向畸变是由于透镜制造上的缺陷使得透镜本身与图像平面不平行而产生的。
•切向畸变可分为:薄透镜畸变、离心畸变
•切向畸变图示:
2.2.1 opencv中的畸变模型
2.2.2 张氏标定中的畸变模型
•张正友的方法只考虑了径向畸变,没有考虑切向畸变
•模型:
2.2.3 Tasi畸变模型
•Tasi畸变模型同张氏畸变模型类似,也只考虑了径向畸变
2.3 相机标定