5_Epiplolar_Geometry

CS231A笔记
文章截图大多来自斯坦福CS231A课程;


1 基本概念

  • 相机的旋转矩阵: 正交矩阵

  • 极点

  • 极线
  • 极平面

  • 【推荐文章】: 对极几何(Epipolar Geometry)

  • 叉乘:两个向量的叉乘可以由一个向量的斜对称矩阵和另一向量的积;

1.1 特点

  • 前向平移—极点都处于同一位置

1.2 本质矩阵

  • 相机是 标准相机:K = I

由图中可以看出,p经过变换得到p’:

得到:

通过叉乘:可以将上个式子变成:

  • 定义:

为本质矩阵(The Essential Matrix):

3*3的矩阵;
自由度: 5(3:Rotation 2:translation)
rank : 2 ,奇异矩阵

用处

  1. 计算p 和 p’的极线


表示:p被E投射到 第二幅图像上的极线l’上;

表示:p’被E投射到 第一幅图像上的极线l上;

  1. 极点和矩阵的联系

1.3 基本矩阵(Fundamental Matrix)

  • 相机是非标准的;


对应两个相机,两个相机的投影矩阵为:

定义世界坐标系 相机坐标系中的点P在两个位置的相机图片上的投影为:

根据本质矩阵得到:

推导出,两个相机的位置变换:

其中:


F就被称为: 基本矩阵

  • 3* 3 矩阵
  • 奇异矩阵 Rank :2
  • 包含R, T;
  • 包含 相机参数 K,K’
  • 自由度 : 7 ()

用处
基本矩阵已知,已知一张图片上一点和另一张图片上的对应点, 就可以求出p和p’的对应关系;

自由度的分析

#2 THE Eight-Point 算法

2.1 八点算法

  • 给予两张图片,没有相机内外参数;
  • 求出基本矩阵

  • 方法: _Eight-Point 算法_


  1. 至少8对 对应点

则每队对对应点满足:

即:


展开,可以得到:

对于所有对应点,使用一下公式:

简写为:

  • W : N*9 矩阵 , N: 对应对的数量
  • f: 基本矩阵


3.2 Normalized Eight-Point算法

标准的8点算法存在的问题:

  • p点, 和通过基本矩阵将点p’映射到的极线上l= Fp’,两者的距离很大;点和极线之间的均值误差如下:

  • 8个对应点组成的矩阵W: 最好只有一个奇异值为0或者近似为0,其他的都为非零;这样能够使得svd效果好;
  • 像素值的范围过大;如pi = (1832; 1023;)

解决方法:

  • 归一化像素点
      1. 新坐标系的原点应该位于图像点的质心处(平移);
        表示为:

  • 其次,变换后的图像点距原点的均方距离应为2像素(缩放)

如图所示,

然后用新坐标系下的图像应用8点算法计算出Fq;

然后通过反归一化,获得真实的基本矩阵;