一、相机成像畸变
1、径向畸变
在相机制造过程中,很难保证镜头的厚度完全均匀 ,由于制造工艺的原因,通常这种情况为中间厚、边缘薄,因而光线在远离透镜中心的地方,会发生更大程序的扭曲,这种现象在鱼眼相机(桶形畸变)中尤为明显。
它们可以由k1、k2构成的下列数学公式描述:
其中,各参数意义如下:
通常只用k1、k2来矫正相机,k1对于畸变较小的图像中心区域有很大的作用和影响;
对于畸变较大的图像边缘区域,主要是k2在起作用,k3一般用于广角相机,鱼眼相机。
2、切向畸变
在相机制造过程中,成像平面与透镜平面不平行 ,产生透视变换,如下图所示:
切向畸变与距离图像中心的距离半径有关,公式如下:
其中,p1、p2表示切向畸变矫正系数,xy是发生畸变后的角点坐标,x' y'是畸变矫正后角点的坐标,r是曲率半径。
3、合并考虑畸变
原因:两种畸变是同时发生在成像过程中的,发生的原因也是相互独立的,而且也都是关于距离的表达式,似乎也找不到更好的方式来综合考虑这两种误差,实践证明,这种合并考虑畸变的情况效果还不错。
将径向畸变和切向畸变合并,只需将两个畸变矫正直接加起来即可,公式如下:
k1、k2、k3为径向畸变系数;p1、p2为切向畸变系数。
相机畸变现象发生的位置:
①世界坐标系 -> 相机坐标系:刚体变换,不存在畸变现象;
②相机坐标系 -> 图像坐标系:也就是成像过程,理想情况下是相似三角形,但实际由于相机智造、装配的原因,成像过程存在畸变现象;
③图像坐标系 -> 像素坐标系:坐标原点、单位不同,仅仅平移与缩放,不存在畸变现象。
4、内参外参总结
相机的内参数是六个分别为:1/dx、1/dy、r、u0、v0、f。
(1)r表示径向畸变量级,r为负值,畸变为桶型畸变,r为正值,畸变为枕型畸变,初始值为0。
(2)dx、dy表示图像传感器上水平和垂直方向上相邻像素之间的距离(像素/毫米)。
(3)u0,v0表示图像坐标系原点在像素坐标系中位置。
opencv1里说的内参数是4个其为fx、fy、u0、v0。
(1)fx、fy:x和y轴上的焦距(fx=f/dx、fy=f/dy)
(2)u0、v0:相对光轴而言,x和y方向上的偏移量
畸变参数:(k1、k2、p1、p2、k3)