关于世界坐标系,相机坐标系,图像坐标系,像素坐标系的一些理解
- 前言
- 一、各坐标系的含义
- 二、坐标系转换
- 1.世界坐标系与相机坐标系(旋转与平移)
- 2.相机坐标系与图像坐标系(透视)
- 3.图像坐标系与像素坐标系(缩放)
- 4.世界坐标系与像素坐标系
前言
在项目中,研究标定时,像素坐标与轴位置的关系时,需要用到关于坐标系的转换。在此也就是找到世界坐标系与像素坐标系的转换关系。想理清楚故做如下记录。
一、各坐标系的含义
四坐标关系图如下:
图中:
- 世界坐标系(OW—XWYWZW):
一个三维直角坐标系,以其为基准可以描述相机与待测物体的空间位置。世界坐标系可以根据实际情况自由确定,时常的会和机器运动坐标系重合。 - 相机坐标系(OC—XCYCZC):
一个三维直角坐标系,原点位于镜头的光心处,x,y分别与像面的两边平行,Z轴为镜头光轴,与像面垂直。 - 图像坐标系(O—XY)
一个二维直角坐标系,原点是光轴与像面的交点(又称主点),即图像的中心点,x,y分别与像面的两边平行。 - 像素坐标系(O1—uv)
一个二维直角坐标系,反应了相机(CCD/CMOS)芯片中像素的排列情况。原点位于图像的左上角,下x,y分别平行与像面。像素坐标与图像坐标实际是平移的关系(下面会详细描述)。像素坐标中坐标轴单位为像素。
PS:为什么要有世界坐标?
自己的理解:确定唯一且不变的世界坐标系之后,后面所有的坐标系都可以通过与世界坐标的相对关系来进行转换。此时,当我移动或者旋转世界坐标系的时候,通过相对关系可以很快速的得到其他坐标系下的数据。
二、坐标系转换
1.世界坐标系与相机坐标系(旋转与平移)
如下图示:
两个坐标系都可以通过旋转加平移来互相转换。
即有:
[ X C Y C Z C 1 ] = [ R T 0 1 ] [ X w Y w Z w 1 ] \begin{bmatrix} X_C \cr Y_C\cr Z_C\cr 1 \end{bmatrix} = \begin{bmatrix} R&T \cr 0&1 \end{bmatrix} \begin{bmatrix} X_w \cr Y_w\cr Z_w\cr 1 \end{bmatrix} XCYCZC1 =[R0T1] XwYwZw1
或者:
[ X w Y w Z w 1 ] = [ R T 0 1 ] [ X C Y C Z C 1 ] \begin{bmatrix} X_w \cr Y_w\cr Z_w\cr 1 \end{bmatrix} = \begin{bmatrix} R&T \cr 0&1 \end{bmatrix} \begin{bmatrix} X_C \cr Y_C\cr Z_C\cr 1 \end{bmatrix} XwYwZw1 =[R0T1] XCYCZC1
其中R为3×3的旋转矩阵,T为3×1的平移矩阵。
旋转矩阵R:
而旋转我们可以把它拆分成以每个轴为旋转中心进行的三次旋转调整。
如下图所示:
重合z轴,并以Z轴为旋转中心旋转,旋转角度为θ。
点P(x,y,z)为在坐标系O—XYZ中的P点坐标
点P(x’,y’,z’)为在坐标系O—X’Y’Z’中的P点坐标
所以可以有:
则有矩阵:
同理的,重合x轴并以x轴为旋转轴,旋转角φ。重合y轴并以y轴为旋转轴,旋转角ω。可以得到如下矩阵:
所以可以得到旋转矩阵R = Rθ RφRω
平移矩阵T
平移矩阵T是一个3×1的矩阵,数值分别为世界坐标系与相机坐标系的原点的差值。
故最终的转换关系为:
2.相机坐标系与图像坐标系(透视)
p与相机光心的连线op,与像面的交点就是空间点P在像平面上的投影。此时f为有效焦距则有:
3.图像坐标系与像素坐标系(缩放)
图像坐标系与像素坐标系转换是二维坐标系的转换,且两坐标系中并不存在夹角,则只存在平移与缩放操作。如下图:
其中,dx是X方向像素与距离的比例;dy是Y方向像素与距离的比例;u0是X方向的平移距离;v0是Y方向的平移距离。
4.世界坐标系与像素坐标系
综上所述可得到表达式:
外参数决定了相机的姿态。而内参数与相机的位置无关。内外参数可通过标定获取。