【来源】视觉SLAM十四讲,作者 高翔
三角测量是SLAM中,利用相机运动估计特征点空间位置的过程。
本节旨在解决以下问题:
- 三角测量的概念
- 三角测量的过程及代码实现;
- 三角测量有哪些不确定性
- 如何提高三角测量的精度
1. 概念
在SLAM中,利用对极几何约束估计相机运动之后,我们还需要通过三角测量来估计地图点的深度。三角测量(三角化)指的是,通过在两处观测同一个点的夹角,从而确定该点的距离。
SLAM中主要用三角化来估计像素点的距离。
2. 过程
按照对极几何的定义,设$x_1,x_2$为两个特征点的归一化坐标,那么他们满足:
$$
s_1x_1=s_2Rx_2+t.
$$
经过对极几何之后,已得到了运动$R,t$,需要求解两个特征点的深度$s_1$,$s_2$。
两个深度可以分开算。若先算$s_2$,那么对上市两个做成一个$x_1$^,得: