摄像机几何成像模型
摄像机几何成像模型利用数学公式描述了三维空间中一点与二维图像中一点之间的联系。摄像机几何成像模型主要涉及到了四个坐标系,下面将介绍四个坐标系及其之间的转换关系。
四大坐标系
四大坐标系包括世界坐标系、相机坐标系、图像坐标系和像素坐标系,通过建立它们之间的位置关系可以实现二维平面一点与三维空间一点的坐标转换,它们之间的位置关系如图所示。
四大坐标系的位置关系 |
---|
世界坐标系 ( O w − X w Y w Z w ) (O_w-X_wY_wZ_w) (Ow−XwYwZw): 世界坐标系是建立在真实世界中的坐标系,它的单位为米(m),它可以用来描述相机的位置,也可以用来描述三维空间中的所有点。 |
摄像机坐标系 ( O c − X c Y c Z c ) (O_c-X_cY_cZ_c) (Oc−XcYcZc): 以相机设备的光心 O c O_c Oc来建立摄像机坐标的原点位置,其单位为米(m),横、纵坐标分别与图像坐标系的横、纵坐标轴平行,但是 Z Z Z轴为摄像机的光轴。
图像物理坐标系
(
O
l
−
x
y
)
(O_l-xy)
(Ol−xy): 图像物理坐标系的原点为图像中心,以毫米(mm)
为单位,横坐标与纵坐标分别平行于摄像机坐标系的横坐标与纵坐标,描述了像素的实际位置。
图像像素坐标系 ( O o − u v ) (O_o-uv) (Oo−uv): 图像像素坐标系将图像左上角的像素点 O c O_c Oc作为原点,它的单位为像素(pixel),其横纵坐标与图像物理坐标系的横纵坐标分别平行。
坐标系的转换
若已知摄像机的相关参数信息,想将空间内任意一点P从世界坐标系变换到像素坐标系,一共需要经过三次坐标变换,坐标系间的转换关系如图所示。
四大坐标系转换关系示意图 |
---|
(1)世界坐标系到摄像机坐标系的转换
从世界坐标系转换到摄像机坐标系的过程称为刚体变换,在此变换过程中物体不会出现形变,只需要进行旋转变换和平移变换。为了得到与其相对应的旋转矩阵,可以围绕不同的坐标轴进行不同角度的旋转,则可以得到坐标转换关系如式(1)所示:
[
X
c
Y
c
Z
c
]
=
R
[
X
w
Y
w
Z
w
]
+
T
=
[
r
11
r
12
r
13
r
21
r
22
r
23
r
31
r
32
r
33
]
[
X
w
Y
w
Z
w
]
+
[
T
x
T
y
T
z
]
(1)
\left[ \begin{matrix} X_c \\ Y_c \\ Z_c \end{matrix} \right] = R\left[ \begin{matrix} X_w \\ Y_w \\ Z_w \end{matrix} \right] + T = \left[ \begin{matrix} r_{11} & r_{12} & r_{13} \\ r_{21} & r_{22} & r_{23} \\ r_{31} & r_{32} & r_{33} \end{matrix} \right]\left[ \begin{matrix} X_w \\ Y_w \\ Z_w \end{matrix} \right] + \left[ \begin{matrix} T_x \\ T_y \\ T_z \end{matrix} \right]\tag{1}
⎣⎡XcYcZc⎦⎤=R⎣⎡XwYwZw⎦⎤+T=⎣⎡r11r21r31r12r22r32r13r23r33⎦⎤⎣⎡XwYwZw⎦⎤+⎣⎡TxTyTz⎦⎤(1)
式中,
(
X
w
,
Y
w
,
Z
w
)
(X_w,Y_w,Z_w)
(Xw,Yw,Zw)为在世界坐标系中点P的坐标,
(
X
c
,
Y
c
,
Z
c
)
(X_c,Y_c,Z_c)
(Xc,Yc,Zc)为在摄像机坐标系中点P的坐标,R为一共
3
∗
3
3*3
3∗3的矩阵,将它称为旋转矩阵,T为一个
3
∗
1
3*1
3∗1的矩阵,将它称为平移矩阵。将式(1)转换成矩阵形式,如式(2)所示。
[
X
c
Y
c
Z
c
1
]
=
[
R
T
0
T
1
]
[
X
w
Y
w
Z
w
1
]
(2)
\left[ \begin{matrix} X_c \\ Y_c \\ Z_c \\ 1 \end{matrix} \right] = \left[ \begin{matrix} R & T \\ 0^T & 1 \end{matrix} \right]\left[ \begin{matrix} X_w \\ Y_w \\ Z_w \\ 1 \end{matrix} \right]\tag{2}
⎣⎢⎢⎡XcYcZc1⎦⎥⎥⎤=[R0TT1]⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤(2)
(2)摄像机坐标系到图像物理坐标系的转换
透视投影可以形象地描述摄像机坐标系与图像坐标系之间的转换关系。图像坐标系的原点则是成像平面与摄像机光轴之间的交点,其
x
x
x,
y
y
y轴与
X
c
X_c
Xc,
Y
c
Y_c
Yc轴平行。由理想的针孔成像原理可以得到坐标转换关系如式(3)所示。
{
x
=
f
X
c
Z
c
y
=
f
Y
c
Z
c
(3)
\left\{ \begin{aligned} x & = & f \frac {X_c}{Z_c} \\ y & = & f \frac {Y_c}{Z_c} \end{aligned} \right. \tag{3}
⎩⎪⎪⎨⎪⎪⎧xy==fZcXcfZcYc(3)
式中,
f
f
f为摄像机的焦距,它是一个固定的参数,由摄像机自身决定。将式(3)转换成矩阵形式,如式(4)所示。
Z
c
[
x
y
1
]
=
[
f
0
0
0
0
f
0
0
0
0
1
0
]
[
X
c
Y
c
Z
c
1
]
(4)
Z_c\left[ \begin{matrix} x \\ y \\ 1 \end{matrix} \right] = \left[ \begin{matrix} f & 0 & 0 & 0 \\ 0 & f & 0 & 0 \\ 0 & 0 & 1 & 0 \end{matrix} \right]\left[ \begin{matrix} X_c \\ Y_c \\ Z_c \\ 1 \end{matrix} \right]\tag{4}
Zc⎣⎡xy1⎦⎤=⎣⎡f000f0001000⎦⎤⎣⎢⎢⎡XcYcZc1⎦⎥⎥⎤(4)
(3)图像物理坐标系到图像像素坐标系的转换
把投影点
P
P
P进行物理坐标系与像素坐标系间转换的原因是由于二者的单位不同,前者是毫米(mm),后者是像素(pixel)。假设在像素坐标系下有一个点p,其在x轴和y轴方向上的尺寸为d,和d,,则两个不同的坐标系之间的转换关系如式(5)所示。
{
u
=
x
d
x
+
u
0
v
=
y
d
y
+
v
0
(5)
\left\{ \begin{aligned} u & = & \frac {x}{d_x} + u_0 \\ v & = & \frac {y}{d_y} + v_0 \end{aligned} \right. \tag{5}
⎩⎪⎨⎪⎧uv==dxx+u0dyy+v0(5)
式中,
d
x
d_x
dx,
d
y
d_y
dy分别表示在
x
x
x轴和
y
y
y轴方向上的物理尺寸,即每一行和每一列分别表示多少毫米。将式(5)转换成矩阵形式,如式(6)所示。
[
u
v
1
]
=
[
1
d
x
0
u
0
0
1
d
y
v
0
0
0
1
]
[
x
y
1
]
(6)
\left[ \begin{matrix} u \\ v \\ 1 \end{matrix} \right] = \left[ \begin{matrix} \frac 1{d_x} & 0 & u_0 \\ 0 & \frac 1{d_y} & v_0 \\ 0 & 0 & 1 \end{matrix} \right]\left[ \begin{matrix} x \\ y \\ 1 \end{matrix} \right]\tag{6}
⎣⎡uv1⎦⎤=⎣⎡dx1000dy10u0v01⎦⎤⎣⎡xy1⎦⎤(6)
联立式(6)、式(4)、式(2),可以将任意一点P从世界坐标系转换到像素坐标系,转换关系如式(7)所示:
Z
c
[
u
v
1
]
=
[
1
d
x
0
u
0
0
1
d
y
v
0
0
0
1
]
[
f
0
0
0
0
f
0
0
0
0
1
0
]
[
R
T
0
T
1
]
[
X
w
Y
w
Z
w
1
]
Z_c\left[ \begin{matrix} u \\ v \\ 1 \end{matrix} \right] = \left[ \begin{matrix} \frac 1{d_x} & 0 & u_0 \\ 0 & \frac 1{d_y} & v_0 \\ 0 & 0 & 1 \end{matrix} \right] \left[ \begin{matrix} f & 0 & 0 & 0 \\ 0 & f & 0 & 0 \\ 0 & 0 & 1 & 0 \end{matrix} \right] \left[ \begin{matrix} R & T \\ 0^T & 1 \end{matrix} \right] \left[ \begin{matrix} X_w \\ Y_w \\ Z_w \\ 1 \end{matrix} \right]
Zc⎣⎡uv1⎦⎤=⎣⎡dx1000dy10u0v01⎦⎤⎣⎡f000f0001000⎦⎤[R0TT1]⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤
=
[
f
d
x
0
u
0
0
0
f
d
y
v
0
0
0
0
1
0
]
[
R
T
0
T
1
]
[
X
w
Y
w
Z
w
1
]
=
M
1
M
2
[
X
w
Y
w
Z
w
1
]
(6)
= \left[ \begin{matrix} \frac f{d_x} & 0 & u_0 & 0 \\ 0 & \frac f{d_y} & v_0 & 0 \\ 0 & 0 & 1 & 0 \end{matrix} \right] \left[ \begin{matrix} R & T \\ 0^T & 1 \end{matrix} \right] \left[ \begin{matrix} X_w \\ Y_w \\ Z_w \\ 1 \end{matrix} \right]= M_1M_2\left[ \begin{matrix} X_w \\ Y_w \\ Z_w \\ 1 \end{matrix} \right] \tag{6}
=⎣⎢⎡dxf000dyf0u0v01000⎦⎥⎤[R0TT1]⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤=M1M2⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤(6)
式中,
f
x
=
f
d
x
f_x=\frac{f}{d_x}
fx=dxf,
f
y
=
f
d
y
f_y=\frac{f}{d_y}
fy=dyf分别为
u
u
u轴和
v
v
v轴方向归一化焦距,
M
1
M_1
M1为由摄像机内部结构决定的内部参数矩阵,
M
2
M_2
M2为外部参数矩阵,由旋转矩阵
R
R
R和平移矩阵
T
T
T组成。
参考文献
[1]李爽. 基于双目视觉的目标检测与测距技术研究[D].石家庄铁道大学,2021.DOI:10.27334/d.cnki.gstdy.2021.000063.