SLAM后端:BA优化(Bundle Adjustment) | 您所在的位置:网站首页 › ba是什么简称 › SLAM后端:BA优化(Bundle Adjustment) |
BA是一种优化方法,最小化重投影误差优化PnP得到的R、t 应用场景:利用共视点的3D坐标与相机内参矩阵,根据PnP计算位姿R、t(有误差)。利用R、t及相机的投影模型可以计算出这些特征点在第二帧图像上的投影(有误差),本身这些点在第二帧图像上有真实投影,利用这两个投影构建函数进行优化可以优化位姿。 1 BA解决的代价函数 观测模型如下: (1)世界坐标系转相机坐标系 设P点的世界坐标 (2)归一化 (3)去畸变 (4)相机坐标系转像素坐标系 (5)得到相机的观测模型: (6)构建重投影误差模型: z是实际值,h是通过观测模型得到的值,知识针对空间中一点。 2 LM算法求解 BA优化一般通过LM算法求解,参考最优化八:高斯牛顿法、LM法。 1中(6)方程中表示了一个点一个位姿构成的重投影误差,利用多个位姿多个点构建优化方程(m个位姿,n个点): f(x)中的x是R、t、xyz。位姿用李代数表示,并将变量分为两部分,位姿 则优化目标变为问题如下: 优化函数f(x)有m+n个变量待求取,一般用LM法求解,为什么不用最速下降法?我觉得是最速下降法迭代次数过多,效率低。LM法要用到梯度,梯度计算如下: 参考最优化八:高斯牛顿法、LM法,针对函数f(x)求解更新变量 J是一阶导数。为了计算方便,将一阶梯度替换如下: F代表 等式左边展开并用H表示得到: 目的是求解(2-7)中的 3 H矩阵的稀疏性 这据说是21世纪最重要的发现。 最优化问题 即: 对其中一项令: 则: H的稀疏性如下: (1) (2) 利用H的稀疏性计算方程(2-7)需要用到苏耳消元法。 4 Schur消元 求解问题如下: 将 消去矩阵H中右上角部分,等式左右同乘以矩阵: 整理得到: 方程第一项与为位置点p无关,取出: 求解 消元优势在于矩阵 |
CopyRight 2018-2019 实验室设备网 版权所有 |