BA
最小化重投影误差:
X=argmin∑i=1Ni∑j=1Nj∣∣ei,j(X)∣∣X=argmin\sum_{i=1}^{N_i}\sum_{j=1}^{N_j}||e_{i,j}(X)||X=argmini=1∑Nij=1∑Nj∣∣ei,j(X)∣∣
求解方法:
使用LM算法优化求最优解。每一次迭代中的增量求解为:
δX∗=argmin∣∣J(X)δX+E(X)∣∣+λ∣∣D(X)δX∣∣\delta X^{*}=argmin||J(X)\delta X+E(X)||+\lambda||D(X)\delta X||δX∗=argmin∣∣J(X)δX+E(X)∣∣+λ∣∣D(X)δX∣∣
其中需要计算误差矩阵E、雅克比J和海森矩阵D(近似)。
geometric BA
- 基于特征点
- 优化变量:X=[Ti,...,pj,...]X=[T_i,...,p_j,...]X=[Ti,...,pj,...]。地图点三维坐标PjP_jPj,相机位姿TiT_iTi
- LOSS:几何误差
ei,jg(X)=π(Ti,pj)−qi,je_{i,j}^{g}(X)=\pi (T_i,p_j)-q_{i,j}ei,jg(X)=π(Ti,pj)−qi,j
当前帧三维点pjp_jpj经两帧间转移矩阵TiT_iTi投影至对应相机坐标系,经π\piπ投影至像平面,与匹配点qi,jq_{i,j}qi,j求误差。 - 不足:基于特征点,导致图像信息利用不足,并且特征匹配存在误差。
photometric BA
- 直接法,使用所有像素,基于强度图
- 优化变量:X=[Ti,...,dj,...]X=[T_i,...,d_j,...]X=[Ti,...,dj,...]。逐像素深度djd_jdj,相机位姿TiT_iTi。
- LOSS:光度误差
ei,jp(X)=Ii(π(Ti,djqj))−Ij(qj)e_{i,j}^{p}(X)=I_i (\pi (T_i,d_jq_j))-I_j(q_{j})ei,jp(X)=Ii(π(Ti,djqj))−Ij(qj)
第j帧的像素由其深度值映射到相机坐标系,经两帧间转移矩阵TiT_iTi投影至帧i的相机坐标系,由π\piπ投影至像平面。两帧由对应像素点的强度图求差值。 - 不足:易受光照、动态等环境影响。对初始化结果要求高。