美文网首页
小孔成像模型

小孔成像模型

作者: biubiubiuoooooo | 来源:发表于2019-06-03 20:17 被阅读0次

通过相机拍摄图像可以将3D世界投影到2D图像当中,因此,我们可以把相机模型看作是一个3D空间到2D空间的映射。下面我们介绍最简单的相机模型——小孔成像模型,也是针对普通数字相机最为广泛应用的一种相机模型。

图1. 小孔成像模型。3D点X在图像上的像为连接相机投影中心O和3D点的直线和成像平面Z=f的交点x。

假设相机的投影中心位于一个欧式坐标系的原点\mathbf{O},相机面向z轴正方向,并且成像平面(或者说焦平面)在当前坐标系下的表达为Z=f。那么,在小孔成像模型的作用下下,如图1所示,3D空间中的一个点\mathbf{X} = (X,Y,Z)^T会被投影为成像平面上的一个2D点,也即连接相机投影中心和3D点的直线与成像平面的交点。通过相似三角形,我们可以很容易的看出3D点(X,Y,Z)^T被投影成为成像平面上的(fX/Z,fY/Z,f)^T。暂时先不考虑最终的图像坐标,我们可以看出
\begin{pmatrix} X \\ Y \\ Z \end{pmatrix} \mapsto \begin{pmatrix} fX/Z \\ fY/Z \end{pmatrix} \label{pmapping} 将3D点从三维的欧式空间投影到了2D图像平面,也即二维的欧式空间中。

假如使用严格的齐次坐标进行表述,那么上述投影过程可以表示为以下矩阵相乘的形式,也即公式[1]:
\begin{aligned} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \mapsto \begin{pmatrix} fX/Z \\ fY/Z \\ 1 \end{pmatrix} & = \begin{bmatrix} f & 0 & 0 & 0\\ 0 & f & 0 & 0 \\ 0 & 0 & 1 & 0 \end{bmatrix} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \\ & = \begin{bmatrix} f & 0 & 0\\ 0 & f & 0\\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \end{bmatrix} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \\ & = diag(f,f,1) [\mathbf{I}|\mathbf{0}]\mathbf{X} 。 \end{aligned}
其中\mathbf{P} = [\mathbf{I}|\mathbf{0}]通常被称为相机的投影矩阵。三维点的齐次坐标为(X,Y,Z,1)^T,二维点的齐次坐标为(fX/Z,fY/Z,1)^T,也等价于(fX,fY,Z)^T

图2. 成像平面坐标系。

在上述公式 [1]中假设成像平面的原点为相机的主点位置。然而,实际相机图片的原点往往是图像左上角的点。因此,我们定义主点在图像上的坐标为(p_x,p_y)^T,如图2所示,从而得到
\begin{pmatrix} X \\ Y \\ Z \end{pmatrix} \mapsto \begin{pmatrix} fX/Z+p_x \\ fY/Z+p_y \end{pmatrix} = \begin{pmatrix} u \\ v \end{pmatrix}。

将其表示为齐次坐标的形式,我们可以得到公式[2]
\begin{aligned} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \mapsto \begin{pmatrix} fX+Zp_x \\ fY+Zp_y \\ Z \end{pmatrix} & = \begin{bmatrix} f & 0 & p_x & 0\\ 0 & f & p_y & 0 \\ 0 & 0 & 1 & 0 \end{bmatrix} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} \\ & = \begin{bmatrix} f & 0 & p_x\\ 0 & f & p_y\\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \end{bmatrix} \begin{pmatrix} X \\ Y \\ Z \\ 1 \end{pmatrix} = \begin{pmatrix} u \\ v \\ 1 \end{pmatrix} 。 \end{aligned}

定义内参矩阵
\mathbf{K} = \begin{bmatrix} f & 0 & p_x\\ 0 & f & p_y\\ 0 & 0 & 1 \end{bmatrix} ,
最终公式[2]可以表达为
\mathbf{x} = \mathbf{K}\mathbf{P}\mathbf{X} = \mathbf{K} [\mathbf{I}|\mathbf{0}]\mathbf{X}。

注意公式[2]其实共包含了两个阶段的坐标变换:

  • 第一个阶段是标准的透视投影过程,也即\mathbf{P}部分。它将3D点(X,Y,Z,1)^T投影成了归一化平面(假设焦距f=1,则为Z=1平面)上的一个2D点(X,Y,Z)^T,也即(X/Z,Y/Z,1)^T
  • 第二个阶段是基于相机内参的变换,即\mathbf{K}部分。它将归一化平面坐标系中的点转化到了以像素为单位的图像坐标系中。

当我们拥有2D点的像素坐标\mathbf{x}以及相机的内参矩阵\mathbf{K}时,可以通过公式
\hat{\mathbf{x}} = \mathbf{K}^{-1}\mathbf{P}\mathbf{X} 得到这个点在归一化平面上的坐标。

相关文章

  • 小孔成像模型

    通过相机拍摄图像可以将3D世界投影到2D图像当中,因此,我们可以把相机模型看作是一个3D空间到2D空间的映射。下面...

  • 小孔成像

    —— 青衣三津 这个故事是我听来的,故事的主角是一个住在上了年纪的木房里的后生汉。 ...

  • 小孔成像

    思绪间突然蹦出小时候爸爸给我做的一个小玩具,当时还小光顾着玩了,才不会问它叫什么?什么原理?之类跟玩无关的稚语。后...

  • 小孔成像

    这间四门紧闭的屋子里很暗,屋子的一壁开了一个小孔。屋外站立着一位年轻人,他的影像随着室外的光线从小孔中穿透过来,在...

  • 镜头

    镜头最主要的作用是容纳了“小孔成像”中关键的小孔,小孔也就是光圈。镜头另外一个作用是控制小孔与相机CMOS成像位置...

  • 相机成像原理

    1.小孔成像 小孔成像:物体通过暗箱的小孔后会在投影平面上形成倒像。由于光的直线传播特性,物体上方的点经过小孔后会...

  • 我的大学,一个奔三九零后的至暗时刻

    大家好,我是小孔,小孔成像的那个小孔,一个回乡啃老,头发渐疏的奔三九零后。 以前不是很明白“小孔成像”这个词,直到...

  • 别有洞天的小孔世界

    前天学了“小孔成像”,并布置任务,让学生自己组队,利用身边的材料,制作小孔成像装置。 昨天只有一...

  • 小说 | 小孔成像

    文:闫晓雨 明明不是打闪电的季节,窗外的天,像是串了台。 不懂事的紫虹光直愣愣劈在白纱帘子上,叫人难以入眠,春伊喘...

  • 小孔成像实验

    第三周我才开始上新课的第二课——光的传播,进度有点慢了,有点儿担心以后新课上不完。 在这一课的知识点就是——光在空...

网友评论

      本文标题:小孔成像模型

      本文链接:https://www.haomeiwen.com/subject/igsqnqtx.html