几种相机模型:针孔相机模型、双目相机模型、RGB-D相机——SLAM学习笔记5

发布于:2022-11-09 ⋅ 阅读:(11) ⋅ 点赞:(0) ⋅ 评论:(0)

几种相机模型:针孔相机模型、双目相机模型、RGB-D相机

针孔相机模型

图1:针孔相机模型

针孔相机是最简单的相机,很多相机也可以看作是针孔相机来进行处理。如图1所示,空间点P经过小孔O投影后,得到P’。建立相机坐标系O-x-y-z,投影P’落在物理成像平面O’-x’-y’-z’上。令P的坐标为 ,P’的坐标为 ,根据相似三角形的关系:
(1.1)

其中f为物理成像平面与小孔之间的距离(焦距)。负号表示成像是倒立的,为了方便表示,可以等价地将成像平面对称地放到相机前方,如图1所示。(1.1)可以表示为:
(1.2)

则X’,Y’可以表示为:
(1.3)

图2:像素平面与成像平面的坐标关系

为了将空间中的点转换为图像上的像素点,定义如下像素坐标系,原点o’位于图像的左上角,u轴向右与x轴平行,v轴向下与y轴平行。显然成像平面与像素平面之间,只相差了一个缩放和原点的平移。假设,像素坐标系在u轴上缩放了a倍,在v轴上缩放了β倍,原点平移了 ,那么P’在像素坐标系下的坐标为:
(1.4)

将(1.4)代入(1.3)中,可以得到:
(1.5)

其中 ,并将(1.5)写成矩阵的形式:
(1.6)

进一步地可以写成:
在这里插入图片描述

其中:
在这里插入图片描述

定义为相机的内参矩阵,相机的内参在出厂之后一般都是固定的。
上述的P是基于相机坐标系的坐标,但实际上由于相机在运动,P的相机坐标应该转换到世界坐标系下Pw更为方便。
*

双目相机模型

单目相机在投影过程中丢失了空间点的深度信息。参考人眼的工作原理,人眼可以根据左右眼看到的景物差异判断物体与我们之间的距离,我们理所应当地想到利用双目相机来识别3D空间。

双目相机的成像模型

如图所示,两眼相机的光圈中心之间的距离 O L O R O_LO_R OLOR称为基线(b),f为焦距,方框为成像平面,成像为 P L P R P_LP_R PLPR
根据图中 Δ P P L P R \Delta PP_LP_R ΔPPLPR Δ P O L O R \Delta PO_LO_R ΔPOLOR 的相似关系得到:
在这里插入图片描述

其中: d = u L − u R d=u_L-u_R d=uLuR,称为视差。
很容易能够想明白视差d与物体距相机的距离成反比,可以料想到当物体在无穷远处,视差为0,这一点在公式中也能体现出来。
同时基线越长,双目相机能够测到的距离也就越远。拿人的眼睛来举例,人的眼睛基线并不长,对于飞机等非常远的物体,把握距离便不准确。
但是误差d并不好测量啊,而RGB-D相机则能够更加主动地测量深度。

RGB-D相机模型

RGB-D相机按照原理主要可以分成两大类,包括:

  1. 通过红外结构光(Structured Light)测量像素距离。但由于红外结构光本身的原因,他容易受到日光或其他传感器的干扰。同时对于透明材质,由于其不反射红外光,因此无法测量透明材质物体。
  2. 通过飞行时间TOF(Time of Flight)测量像素距离。

此外,RGB-D相机在成本和功耗上相较于前两种相机也有一定劣势。

如果你觉得我写的还不错,麻烦给我一个免费的赞,谢谢!