三维测量与建模笔记 - 5.1 对极几何-基础矩阵-本质矩阵
叉积,点积回顾
两个向量的叉积运算会得到一个垂直于这两个向量的向量。如果两个向量点乘为0,则两个向量垂直。
对极几何理论知识
如上图,有左右两个成像平面,其光心分别为O何O',在三维世界空间中的一点P。将这三个点两两相连,形成一个平面POO',这个平面叫做极平面。直线OO'叫做基线。直线OO'和两个平面相交于e和e'两点,这两个点叫做极点。极点和成像点相连的直线l和l`称为极线。从上述关系可以看出,P点在左平面上投影到了p点,它处于极线l上,在右平面上的投影点p'一定处于极线l'上。
如上图,对于给定的左右成像平面,基线和极点是不变的,世界空间中不同的点对应着不同极平面,和两个成像平面相交出不同的极线。
上图展示了一个极点超出了可视的画幅范围,但仍然在成像平面(无限延展)上的例子。这个例子中,左右两个成像平面存在一定夹角。两条不同的极线必定相交于极点,如果能在图像中提取到极线,则能找到极点。
如果两个摄像头是平行的,左右两个成像平面如果处于同一水平面,则极点处于无穷远处。
现在假设我们需要对左右两幅图中的点进行匹配,该如何做呢?
由之前的描述可以看出,根据极线约束,如果我们找到了极平面和成像平面相交的极线,那么在空间中的一点M,在左成像平面中的点是m,则在右成像平面中搜索时,只需要在右成像平面中的极线上进行搜索即可。
那么如何找到极线呢?这里就引入了基础矩阵的概念。
回顾射影几何知识
H矩阵是一个单应矩阵,通过它可以找到m点在右平面的m'点。由于m'点在极线l'上,因此可以推到出l`的方程。
上面说的归一化的影像空间平面就是z为1的成像平面。下面我们来看E是如何推导的。
这个关系的意思也很简单,两个向量方向一样,大小不同。
左右两个相平面可以通过矩阵联系起来,因此有:
上式左侧为0,是因为这两个向量做叉积,得到的是垂直于t和这两个向量的新向量。点乘一个和它垂直的向量,结果为0。
上式右侧,可以通过叉积运算法则得到,其中t叉乘t为0。
叉积的运算法则,可以参考以下链接:
将中间的t,R运算结果用E表示,E就是本质矩阵。
从式子可以看出,本质矩阵将空间中的某个点M在左右两个归一化平面上的两个点联系起来了,E包含了两个平面的旋转和平移信息。回忆一下基础矩阵F的式子,基础矩阵将空间中的某个点M在左右两个实际成像平面上的两个点联系起来了。
本质矩阵的性质有:
F矩阵和E矩阵的对比和联系如下:
对于K1参数,也有。
那么,如何求解出基础矩阵呢?
从上面的等式可以看出,和标定类似,只要能拿到左右成像平面中的同名点的坐标,就能得到基础矩阵。如果拿到多个同名点对儿,则我们就能建立足够多的方程,解出F矩阵参数。
实际中应用的案例
在实际应用中,假设我们要找到左图中绿色的点在右图的同名点,由于参数计算过程和实际噪声影响会引入误差,不能简单地就选取右侧图像中计算出的极线来做,要对极线上下一定范围内的区域内进行搜索。
原文地址:https://blog.csdn.net/vivo01/article/details/144067479
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!