首页 > 代码库 > Multiple View Geometry [多视几何] - Part 0: 背景知识:射影几何,变换与估计

Multiple View Geometry [多视几何] - Part 0: 背景知识:射影几何,变换与估计

1. 2D射影几何与变换

这一章的内容主要在介绍一些基本的几何概念和几何符号,以便理解后文中的内容。更具体的来说,主要包含了平面射影变换的几何知识。

1.1 平面几何

平面几何是个非常简单的概念,无非是点,线,再就是点和线之间的关系。

1.2 2D射影平面(Projective plane)

众所周知,在平面上的一个点可以用他的2D坐标$(x,y)\in\mathbb{R}^2$来表示,如果$\mathbb{R}^2$是一个向量空间,那么坐标$(x,y)$就是一个向量。

行向量与列向量(Row and colum vector):几何中的实体默认的都用列向量表示,比如黑体的 $\mathbf{x}=(x,y)^\top$.

线的齐次坐标表示(Homogeneous representation of line):   平面上的直线可以用一个方程来表示,比如 $ax+by+c=0$, $a,b,c$ 不同的取值表示不同的直线。所以我们自然的可以用一个向量 $(a,b,c)^\top$ 来表示一条直线。但是,一条直线和向量 $(a,b,c)^\top$ 之间的关系并不是一一对应的,因为当$k\neq0$时, $ax+by+c=0$ 和 $(ka)x+(kb)y+(kc)=0$ 表示同一条直线。所以任何成比例的向量 $(a,b,c)^\top$ 和 $(ka,kb,kc)^\top$ 表示的都是同一条直线,所以我们说这两个线向量是等价的。满足这个等价关系的一类向量都称之为齐次的(homogeneous),每一个特定的  $(a,b,c)^\top$ 都是这个等价类的一个代表。在三维空间$\mathbb{R}^3-(0,0,0)^\top$ 中所有等价类的集合形成了射影空间 $\mathbb{P}^2$。$-(0,0,0)^\top$ 指排除了向量 $(0,0,0)^\top$, 因为它不能表示任何直线。

点的齐次坐标表示(Homogenous representation of points): 一个点 $\mathbf{x}=(x,y)^\top$ 在直线 $(a,b,c)^\top$ 上的充分必要条件是 $ax+by+c=0$,这可以写成是两个向量的内积 $(x,y,1)(a,b,c)^\top=(x,y,1)\mathbf{l}=0$;其实$(x,y,1)$就是2D点$(x,y)^\top$的齐次坐标(homogeneous coordinates)。齐次坐标下,一个随机点$(x_1,x_2,x_3)^\top$表示的则是2D点$(x_1/x_3,x_2/x_3)$。

内积(Inner product):$(x,y,z)(a,b,c)^\top = ax+by+cz$

结论1:一个点$\mathbf{x}$落在线$\mathbf{l}$上的充要条件是$\mathbf{x}^\top\mathbf{l}=\mathbf{l}^\top\mathbf{x}=0$。

自由度(Degree of Freedom, DoF): 就是要唯一确定一个条直线,一个点,或者任何几何实体所需要最少的变量数。

相交的直线(Intersection of line): 设直线$\mathbf{l}=(a,b,c)^\top$与直线$\mathbf{l}‘=(a‘,b‘,c‘)^\top$ 相交于 $\mathbf{x}$,那么则有$\mathbf{x}^\top\mathbf{l}=\mathbf{x}^\top\mathbf{l}‘=0$。

叉积/向量积(Cross product/vector product):

$(a, b, c)^\top\times(d,e,f)^\top =\left|\begin{array}{ccc}i & j & k\\a & b & c \\d & e & f\end{array}\right|\\= (bf-ce)i + (cd-af)j - (ae-bd)k =\left(\begin{array}{c} bf-ce\\cd-af\\ae-bd\end{array}\right)$

结论2: 两条直线的交点为$\mathbf{x}=\mathbf{l}\times\mathbf{l}‘$。

结论3: 通过两个点的直线为$\mathbf{l}=\mathbf{x}\times\mathbf{x}‘$。

 

射影平面的模型