一家之言,仅作分享,如有不合理或需要改进的地方,欢迎各位讨论。
前言
本篇博客简单介绍坐标、矩阵几个基础知识。坐标将介绍世界坐标,相机坐标,图像坐标,像素坐标。矩阵将介绍旋转矩阵,位姿矩阵,内参矩阵,本质矩阵,基础矩阵,单应矩阵。
一、坐标
这里我将通过将一个世界坐标系的三维点变换得到图像像素坐标的例子,分开介绍四种坐标。
-
在环境中选择一个参考坐标系来描述摄像机和物体的位置,该坐标系称为世界坐标系,为三维坐标系,即图中的 X w − Y w − Z w X_w-Y_w-Z_w Xw−Yw−Zw。世界坐标系下有一个固定的点 P P P,世界坐标为 P w P_w Pw;
-
相机坐标系以光心为原点,z 轴指向相机前方,x 向右,y 向下,为三维坐标系。由于相机在运动,它相对于世界坐标系存在 R , t R,t R,t的位姿值,则点 P P P在相机坐标系 X c − Y c − Z c X_c-Y_c-Z_c Xc−Yc−Zc中的值为 P c ^ = R P w + t \hat{P_c}=RP_w + t Pc^=RPw+t。
-
点 P P P在相机坐标系下仍有 [ X , Y , Z ] T [X,Y,Z]^T [X,Y,Z]T三个量,其在图像坐标系 O ′ − X ′ − Y ′ O^{'}-X^{'}-Y^{'} O′−X′−Y′下成像点坐标为 [ X ′ , Y ′ , Z ′ ] T [X^{'},Y^{'},Z^{'}]^T [X′,Y′,Z′]T。设物理成像平面到小孔的距离为 f f f(焦距),转化为图像坐标有: X ′ = f X Z , Y ′ = f Y Z X^{'}=f\frac{X}{Z},Y^{'}=f\frac{Y}{Z} X′=fZX,Y′=fZY
-
设在物理成像平面上固定着一个像素平面 o ′ − u − v o^{'}-u-v o′−u−v,在像素平面得到了 P ′ P^{'} P′的像素坐标: [ u , v ] T [u,v]^T [u,v]T。像素坐标系通常的定义方式是:原点 o ′ o^{'} o′位于图像的左上角, u u u轴向右与 x x x轴平行, v v v轴向下与 y y y轴平行。像素坐标系与成像平面之间,相差了一个缩放和一个原点的平移。设像素坐标在 u u u轴上缩放了 α \alpha α倍,在 v v v上缩放了 β \beta β倍( α \alpha α和 β \beta β的单位是像素/米)。同时,原点平移了 [ c x , c y ] T [c_x,c_y]^T [cx,cy]T。最终,点 P = [ X , Y , Z ] T P=[X,Y,Z]^T P=[X,Y,Z]T与像素坐标 [ u , v ] T [u,v]^T [u,v]T的关系为:
其中, f x = α f , f y = β f f_x = \alpha{f},f_y=\beta{f} fx=αf,fy=βf,单位为像素。 -
最后,世界坐标系下点 P w = [ X w , Y w , Z w ] T P_w=[X_w,Y_w,Z_w]^T Pw=[Xw,Yw,Zw]T在像素坐标系下的值为:
二、矩阵
在上述世界坐标系下三维点坐标转化到像素坐标下的过程,相机相对于世界坐标系下存在旋转平移量
R
,
t
R,t
R,t,可对应转为位姿矩阵
T
T
T。内参矩阵
K
K
K与相机中系数相关,焦距
f
f
f,像素坐标系与成像平面之间的缩放系数
α
\alpha
α和
β
\beta
β和一个原点的平移
c
x
,
c
y
c_x,c_y
cx,cy。
本质矩阵
E
E
E与基础矩阵
F
F
F在我的另一篇博客视觉里程计-对极几何中有介绍,主要是为了求解两帧图像时刻相机的位姿变换。