相机位姿估计
1.对极几何
基线和极点是唯一的,极线和极平面不是唯一的。所有的极线都会交于极点,但极点不一定落在像幅中。
两个像平面平行的话,极点在无穷远处。
左图m的对应点m'一定在右图的极线l'上
如何找到l'呢?找到F矩阵就能知道l'。
4)F是奇异的(不满秩)
E是把Z变成1时的F
如何找到F?用8点法
先找到几个点对应,就能求出F。对于另一点m,通过F就能算出l',就可以在l’,m'就在l'上。
实际上会有一些偏差,要在l'上加减。可以用一些匹配点求F用一些匹配点验证F而不是都用来求F。RANSAC,有100组匹配点,随机选8个来求F,用92个验证,如果80个是对的,F就是可靠的,再用这88个来优化F。
2.二视图重建
sfm简介
1,对物体拍照形成序列影像,要保证这些影像有一定的重叠度
2,提取影像里面的特征点,找到影像里面的角点
3,对特征点进行匹配
4,计算相机的位置姿态
5,找到射线,射线相交
6,计算出场景里的三维点
三角测量:两幅影像找到特征匹配,然后求到基础矩阵F,用F分解出R和t,然后用R和t回过来把一开始的匹配找到射线,三维点就在两条线的交点上。因为由于误差和噪声求到的F不一定准确,所以求到的R和t也不一定准确,两条线不一定相交,那就找距离两条线最近的点(垂直于两条射线)的中点。
把三角测量得到的点在投影回相机平面会和原来在相机平面的射线上的点有误差,这个误差叫重投影误差,优化目标是最小化重投影误差之和。
sfm得到的是稀疏点云。
3.光束法平差即Bundle adjustment(BA)
M被4个相机观察到所以它会算次重投影误差,BA就是要最小化重投影误差和。
视频地址5.1 对极几何-基础矩阵-本质矩阵_哔哩哔哩_bilibili