本章是重点章节. 主要介绍两种摄像机模型: 1.光心在有穷点 2. 光心在无穷点, 也叫仿射摄像机
假设在相机坐标系下有一点$X=(X,Y,Z)$, 由于摄像机的平面在$Z=f$ $f$ 就是焦距, 那么$(X,Y,Z)$就变到了$(fX/Z,fY/Z)$(图像坐标系), 写成矩阵就是如下形式
$$
\left(
\begin{matrix}
fX\
fY\
Z\
\end{matrix}
\right)
\left[ \begin{matrix} f & & & &0 \ & f & & &0 \ & & & 1 &0 \end{matrix} \right] \left( \begin{matrix} X\ Y\ Z\ 1 \end{matrix} \right) $$
到了图像坐标系以后, 我们继续转换到像素坐标系
\left[ \begin{matrix} f & & p_x&0 \ & f & p_y&0 \ & & 1 &0 \end{matrix} \right] \left( \begin{matrix} X\ Y\ Z\ 1 \end{matrix} \right) $$
我们可以写 $$ K= \left[ \begin{matrix} f & & p_x&0 \ & f & p_y&0 \ & & 1 &0 \end{matrix} \right] $$
K就是摄像机的内参
最后, 我们还需要从世界坐标系转换到相机坐标系, 所以有一个旋转加平移的矩阵
\left[ \begin{matrix} f & & p_x&0 \ & f & p_y&0 \ & & 1 &0 \end{matrix} \right] \left[ \begin{matrix} R & t \ 0 & 1 \end{matrix} \right]
\left( \begin{matrix} X\ Y\ Z\ 1 \end{matrix} \right) $$
其中 $$ \left[ \begin{matrix} R & t \ 0 & 1 \end{matrix} \right] $$ 就是相机的外参
相机内参有时候会加一个偏斜系数,因为相机的两个轴不是完全垂直的
把整个摄像机矩阵写成P, P就是一个$3 \times 4$的矩阵, 反过来任何一个$3 \times 4$的矩阵都可以是(有限)摄像机矩阵, 只要他左边$3 \times 3$的子矩阵不是奇异矩阵就可以.
如果该矩阵是奇异矩阵, 那么该摄像机模型就是仿射摄像机.
那么我们把P写成$P=[M|p_4]$,
- 光心位置C, M 不奇异, 则$C=(-M^{-1}p_4,1)^T$. C是奇异矩阵则$C=(d,0)^T$
-
$p_1,p_2,p_3$ 是$x,y,z$轴的消失点,$p_4$是相机坐标系的原点 - P的最后一行就是主平面
- P的第一第二行是轴平面
- 主点是$Mm^3$
$m^3$ 就是相机矩阵第三行
相机中心
主平面 主平面就是通过相机中心,并且与成像平面平行的平面 主轴 主轴通过主平面并且与其垂直, 交点是相机中心
空间点$X$投影到$x=PX$, 图像点$x$反投影就形成了一个射线$X(\lambda)=P^{+}x + \lambda C$
空间点$X=(X,Y,Z,T)^T$, 摄像机矩阵$P=[M|p_4]$, 我们假设$P(X,Y,Z,T)^T=w(x,y,1)$
假设中心$C=(X,Y,Z,T)^T$, 有以下公式可以计算出$C$
无穷远处摄像机的意思是$P$左边$3 \times 3$的子矩阵是奇异的. 这种摄像机可以分成两类. 仿射摄像机和非仿射摄像机.
仿射摄像机的定义是$P$最后一行是(0,0,0,1). 我们可以想象摄像机主点往无穷远处移动, 同时摄像机的焦距逐渐增大, 主点到了无穷远, 最后一行自然成了$(0,0,0,1)$
一个点, 投影到仿射摄像机和普通摄像机上的坐标是有差别的. 点离摄像机越远, 点越会偏离主点.
其矩阵可以写成如下形式 $$ \left[ \begin{matrix} K_{2 \times 2} & 0 \ 0& 1 \end{matrix} \right]
\left[ \begin{matrix} R & t \ 0& 1 \end{matrix} \right] $$
左边的矩阵就是内参
如前文所述, 仿射摄像机就是摄像机的中心在无穷远, 主平面也在. 或者说$P$左边$ 3 \times 3$ 的子矩阵是奇异矩阵, 因为最后一行是0. 但是还有一种情况, 就是该子矩阵是奇异的, 但是最后一行不是0, 那就是说相机中心在无穷远, 但是主平面不在