赞
踩
上图为针孔相机模型的成像原理图。
设 O − x − y − z O-x-y-z O−x−y−z 为相机坐标系, O O O 为相机的光心(同样也是针孔模型中的针孔)。现实世界的空间点 P P P ,经过光心 O O O 投影之后,落在了物理成像平面 O ′ − x ′ − y ′ O^{\prime}-x^{\prime}-y^{\prime} O′−x′−y′ 上,成像点为 P ′ P' P′ 。
设空间点 P P P 的坐标为 [ X , Y , Z ] T [X, Y, Z]^{T} [X,Y,Z]T, P ′ P' P′ 的坐标为 [ X ′ , Y ′ , Z ′ ] T [X', Y', Z']^{T} [X′,Y′,Z′]T,并且设物理成像平面到光心的距离(即焦距)为 f f f 。那么由三角形相似关系有:
Z f = − X X ′ = − Y Y ′ (1) \frac{Z}{f}=-\frac{X}{X^{\prime}}=-\frac{Y}{Y^{\prime}} \tag{1} fZ=−X′X=−Y′Y(1)
其中负号表示成的像是倒立的。为了简化模型,我们可以把成像平面对称到相机前方,和三维空间点一起放在摄像机坐标系的同一侧(如下图所示)。
简化之后去掉负号,便可以得到:
Z f = X X ′ = Y Y ′ (2) \frac{Z}{f}=\frac{X}{X^{\prime}}=\frac{Y}{Y^{\prime}} \tag{2} fZ=X′X=Y′Y(2)
整理之后,有:
X
′
=
f
X
Z
Y
′
=
f
Y
Z
(3)
上面公式表示的是空间中的点 P P P 和它在成像平面对应的点 P ′ P' P′ 之间的几何关系。当时在相机中,图片是由一个个像素表示的,因此还需要在成像平面上进行采样和量化。下图是成像平面坐标系和像素平面坐标系的图示,两者有以下区别:
因此,为了将成像平面上的点转换到像素坐标系上,需要进行单位之间转换的缩放和原点的平移。
假设成像平面坐标系为 O ′ − x ′ − y ′ O^{\prime}-x^{\prime}-y^{\prime} O′−x′−y′ ,像素坐标系为 o − u − v o-u-v o−u−v。假设成像平面坐标系转换到像素坐标系 u u u 轴上缩放了 α \alpha α 倍,转换到像素坐标系 v v v 轴上缩放了 β \beta β 倍,原点平移了 [ c x , c y ] T \left[c_{x}, c_{y}\right]^{T} [cx,cy]T(单位:像素)。那么 P ′ P' P′ 的坐标与像素坐标 [ u , v ] T [u, v]^{T} [u,v]T 的关系为:
{
u
=
α
X
′
+
c
x
v
=
β
Y
′
+
c
y
(4)
\left\{
将 (3) 式代入 (4) 中,并将 α f \alpha f αf 记为 f x f_x fx, β f \beta f βf 记为 f y f_y fy,可得:
{
u
=
f
x
X
Z
+
c
x
v
=
f
y
Y
Z
+
c
y
(5)
\left\{
其中, f f f 的单位是米, α \alpha α 、 β \beta β 的单位是像素/米,所以 f x f_x fx 和 f y f_y fy 的单位为像素。
为了使得公式更加简洁,可以将该式写成矩阵形式,不过左侧需要用到齐次坐标:
(
u
v
1
)
=
1
Z
(
f
x
0
c
x
0
f
y
c
y
0
0
1
)
(
X
Y
Z
)
≜
1
Z
K
P
(6)
\left(
按照传统习惯,可以将 Z Z Z 移到等式左边,则有:
Z
(
u
v
1
)
=
(
f
x
0
c
x
0
f
y
c
y
0
0
1
)
(
X
Y
Z
)
≜
K
P
(7)
Z\left(
上式中,中间的量组成的矩阵 K \boldsymbol{K} K 被称为相机的内参矩阵(Camera Intrinsics)。
参考文献:视觉SLAM十四讲
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。