OpenCV入门,相机参数的解析(小孔成像模型)
废话引入:
使用OpenCV,一般来说都会接触到相机,本人目前主要在做图像测量,因此对相机要求较高,在此记录一下工业相机标定过程涉及的一些基础知识,如果以后忘记了还能回来看一下。
正式开始:
首先说一下焦距f,因为在相机的选取和标定的过程涉及最多的就是焦距。
首先,结合一张图来说明焦距所指的位置。
这张图里面很清楚的表明了焦距是指感光元件(以前相机的胶卷的位置,现在都是电子感光元件比如CCD和CMOS等)。知道了焦距之后呢,下面借用一张图对上面的长焦和短焦指的是什么再详细的说明。
拿大家比较熟知的单反相机来说,焦距可以分为超广角、广角、标准、中焦、长焦和望远,望远焦距最大,一般在135-300mm,超广角最小,一般在24mm以下。
前面说了那没多,那么焦距需要用在什么地方呢?
摄像机模型中的小孔成像模型,所有景物通过摄像机光轴中心点投影到成像平面上的摄像机模型。如下图,Oc为摄像机光轴的中心点,Π‘2为摄像机的成像平面,成像平面即为分布感光元件的平面。根据小孔成像模型,Π’2上面的像为倒实像,与原物体上下、左右正好相反,且比原物体呈比例缩小。
在摄像机的光轴中心建立坐标系,Z轴方向与光轴方向平行,且以摄像机到拍摄物体的方向为正方向,X轴方向取图像坐标沿着水平增加的方向。在摄像机的笛卡尔坐标系设景物的坐标为P1(x1,y1,z1),P1在成像平面Π2的成像点P2坐标为(x2,y2,z2),则
(1) x1/z1=x2/z2=x2/f
(2) y1/z1=y2/z2=y2/f
式子中的f为摄像机焦距,f=z2。