相机成像几何模型与相机标定内参和外参
第一次写博客,本篇文章是针对在学习过程中遇到有关相机参数的的数据计算关系比较模糊,仅此记录。
大佬链接: link.
一、四大坐标系及目的
四大坐标系:世界坐标系(测量坐标系),相机坐标系,图像坐标系(胶卷坐标系,连续值),像素坐标系。
目的:用数学方式描述3D点如何投影到2D像素坐标系中(正投影:Forward projection),以及反过来的投影过程(Back projection)。
计算机视觉的首要任务就是要通过拍摄到的图像信息获取到物体在真实三维世界里相对应的信息,于是,建立物体从三维世界映射到相机成像平面这一过程中的几何模型就显得尤为重要
另外,描述相机坐标系下的3D点投影到图像坐标系下2D点的过程称为透视投影(perspective projection)。其中,f为相机焦距,(X,Y,Z)为相机坐标系下某点的坐标,(x,y)为图像坐标系下与(X,Y,Z)对应的坐标。
二、从世界坐标系到相机坐标系的变换
世界坐标系:也称测量坐标系,它是一个三维直角坐标系(xw,yw,zw)。
在世界坐标系中,可以描述相机和待测物体的空间位置。而世界坐标系的位置根据实际情况自行确定。
相机坐标系:它也是一个三维直角坐标系(xc,yc,zc)。
相机坐标系的原点是镜头的光心,x、y轴分别与像平面两边平行,z轴为镜头的光轴,与像平面垂直。
从世界坐标系到相机坐标系:刚体变换,也就是只改变物体的空间位置(平移)和朝向(旋转),而不改变物体的形状。
用旋转矩阵R和平移向量t可以表示这种变换。
在齐次坐标下,旋转矩阵R是正交矩阵,可通过Rodrigues变换转为只有三个独立变量的旋转向量。因此,刚体变换用6个参数就可以表示(3个旋转向量,3个平移向量),而这6个参数就作为相机的外参。
相机外参实现了空间点从世界坐标系到相机坐标系的变换。
三、从相机坐标系到图像坐标系的变换
图像坐标系:也叫平面坐标系。用物理单位表示像素的位置,单位是mm。坐标原点为相机光轴与成像平面的交点,通常情况下是成像平面的中点。
从相机坐标系到图像坐标系:属于透视投影关系,从3D转换到2D。
****这样就完成了相机坐标系到理想的图像坐标系的转换(我们默认各个坐标系的变换都是线性的),但实际上,相机镜头中的镜片由于光线的通过产生不规则的折射,总是存在镜头畸变的。
畸变的引入使得成像模型中的几何变换关系为非线性。
畸变的类型很多,但通常只考虑径向畸变和切向畸变。
引入畸变之后,理想的图像坐标系到真实的图像坐标系的变换为:
径向畸变形成的原因:镜头本身的缺陷(制造工艺不完美)导致的。
包括枕形畸变和桶形畸变。
从图中可以看出:离中心越远的地方,形变越明显(eg:四个角的位置)。
即:镜头的边缘形变更显著。
切向畸变:有薄透镜畸变和离心畸变等。
薄透镜畸变形成的原因:透镜存在一定的细微倾斜。
离心畸变形成的原因:镜头由多个透镜组合而成,而各透镜的光轴不在同一条中心线上。
四、从图像坐标系到像素坐标系的变换
从图像坐标系到像素坐标系:没有旋转,只是坐标原点和单位不一样。
图像坐标系坐标原点为相机光轴与成像平面的交点,单位是mm,属于物理单位。
像素坐标系坐标原点在左上角,以像素为单位,我们通常描述一个像素点是几行几列。
五、相机投影模型的总结
通过上面四个坐标系的转换就可以得到一个点从世界坐标系转换到像素坐标系: