后端resection部分(后方交会,PnP、P3P、EPnp、Nakano P3P)

PnP、P3P算法已经相对比较成熟,影响最后结果的主要是点的分布是否均匀,需要寻找Best view selection。

1 后方交会(resection)

  • 模块:位于初始化之后,三角化之前
  • 目的:恢复相机相对于世界坐标系的位姿
  • 算法:PnP (Perspective-n-Point) ,是3D到2D
  • 计算前提:有位姿的6个未知参数,需要至少3对点才能求出唯一解

2 Best view selection

view的选择

不但会影响pose估计的质量
还会影响后续的三角化的精度和完整性


SFM以往的选择方案

只按照可视点的数量
按照三角化点数与可视点数比值的大小


colmap提出了一种打分机制筛选

宗旨:view视图中的可视点越多、分布越均匀,打分越高。
方法:打分金字塔,分三级网格,打分基数为2、22、23
e.g.图score=66 = 2 * 1 + 22 * 4+23 * 6,即
一级网格中所有点只在1个格中
二级网格所有点分布在4个网格
三级网格中分布在6个网格

3 PnP

PnP(Perspective-n-Point)问题及其主流的四种解决算法(DLT、P3P、EPnP、BA)。PnP是求解3D到2D点对运动的方法,目的是求解相机坐标系相对世界坐标系的位姿。它描述了已知n个3D点的坐标(相对世界坐标系)以及这些点的像素坐标时,如何估计相机的位姿(即求解世界坐标系到相机坐标系的旋转矩阵R和平移向量t)。

 

你可能感兴趣的:(自动驾驶与三维重建,算法)