引入具体的标定算法之前先简单介绍成像系统的四个坐标系分别为世界坐标系指的就是物体在真实世界中的坐标位置用于描述相机拍摄场景的位置和姿态相机坐标系是在相机系统中以相机的光学中心为原点z轴指向相机的前方即光传播的方向图像坐标系以相机坐标系经过小孔成像原理投影到成像平面上得到的相机坐标系的点是三维的图像坐标系上的点是二维的这个投影投射完成了一个从三维到二维的一个转变像素坐标系是通过将图像坐标系的原点经过平移到左上角并且把x轴和y轴的单位转换程像素这两项操作得到的。addition坐标系简介世界坐标系相机坐标系图像坐标系和像素坐标系的相互转换如下图所示注意世界坐标系 和 相机坐标系 是三维坐标图像坐标系 和 像素坐标系是二维坐标。在标定系统中小孔成像原理如下图所示在上图中fff为相机的焦距π′ππ′为像平面相机坐标系中的PPP点经过小孔投影到相平面上得到P′PP′点如下所示P[x,y,z]T→P′[(x′,y′)]TP[x, y, z]^{T} → P[(x, y )]^{T}P[x,y,z]T→P′[(x′,y′)]T上式中x,y,zx, y, zx,y,z分别代表相机坐标系下面PPP点的三维坐标x′,y′x, yx′,y′分别代表分别代表投影在图像坐标系上P′PP′的三维坐标由相似三角形和小孔成像的几何知识可知x,y,zx, y, zx,y,z和x′,y′x, yx′,y′满足如下方程x′fxz.y′fyz x f \frac{x}z \\ . \\ y f \frac{y}zx′fzx.y′fzy一标定原理从相平面坐标转化为像素坐标时需要进行两步操作分别是Q1.将相机坐标系的距离度量转化为以像素为单位的度量。Q2.将坐标系的原点从中心以移动到左上角。ans 1针对第一个问题Q1解决方法是选定两个参数k,lk,lk,l分别用来表示xxx轴和yyy上像素单位和相机坐标系中单位的比例关系ans2针对第二个问题Q2选定两个参数cx,cyc_x, c_ycx,cy分别用来表示像素坐标系的中心点距离和左上角原点的横向像素距离和纵向像素距离。零像素坐标点为PpixelP_{pixel}Ppixel所以从相平面坐标系到像素坐标系的转化P′→PpixelP→P_{pixel}P′→Ppixel如下式所示(x′,y′)(kx′cx,ky′cy)(x,y ) (kxc_x,kyc_y )(x′,y′)(kx′cx,ky′cy)由于在上一节中已经求出相机坐标系中x,y,zx, y, zx,y,z到像素坐标系x′,y′x, yx′,y′的等式关系所以根据简单的推到可以得到从相机坐标系到像素坐标系的转化关系P→PpixelP→P_{pixel}P→Ppixel的关系如下(x,y,z)→(fkxzcx,flyzcy) (x,y,z) → (fk \frac{x}zc_x,fl \frac{y}zc_y )(x,y,z)→(fkzxcx,flzycy)由于相机的焦距fff和比例关系k,lk, lk,l为常量所以fkfkfk与flflfl也为常量为了简化标定模型令fkα,flβfk α, fl βfkα,flβ则简化后从相机坐标系转化到像素坐标系的相机标定模型如下式所示(x,y,z)→(αxzcx,βyzcy) (x,y,z) → (α \frac{x}zc_x,β \frac{y}zc_y )(x,y,z)→(αzxcx,βzycy)由于上述P→PpixelP→P_{pixel}P→Ppixel不是线性变换参数求解麻烦所以将上述欧式坐标转化为齐次坐标令Ph,PpixelhP_h,P_{pixel_h}Ph,Ppixelh分别表示P,PpixelP,P_{pixel}P,Ppixel分别对应的齐次坐标则相机坐标系下的其次坐标PhP_hPh如下所示困死了剩下的推睡醒再写吧二整体流程1. 开始标定之前需准备标准棋盘格如下图所示2. 采集多种姿态的棋盘格照片1左相机拍摄的棋盘格图片2右相机拍摄的棋盘格图片(3)对于每一张标定图像提取他们配对的角点位置4确定棋盘格的世界坐标对于3中提取到的配对角点每一个点都可以视作一个已知的世界坐标点。结合棋盘格的尺寸和x,yx, yx,y轴的方向即可确定这些点在世界坐标中的位置。