一种有效的平面光束法平差方法
本文由计算机视觉 life 公众号从零开始学习 SLAM 知识星球翻译
摘要
本方法(PBA, Planar Bundle Adjustment)使用点到面的 cost 同时优化深度相机位姿和三维重
建中的平面参数。直接用视觉中的 BA 方法来做深度相机三维重建效率很低,这是因为深度
传感器一次观测一个平面上的许多点,计算压力较大。本文改进了 BA 中雅可比矩阵和残差
向量。实验结论:第一,相对于传统 BA 能够更快计算,第二,相对于优化面到面的 cost,
精度更高且面对初始误差更鲁棒。
1.1 点到面 cost 介绍
有平面 ,n 为单位法向量,d 为坐标原点到该平面距离。 和 分别在局
部坐标和全局坐标。设两平面有转换关系 。
有局部坐标系点 和全局坐标下平面 ,则距离为
则 Cost 为𝛿
2
1.2 传统 BA
有 LM 算法,𝛿为残差项,𝜀为步长,𝐽为雅可比矩阵
1.3 本文的 PBA
𝑝𝑖𝑗𝑘从局部坐标转世界坐标,再求点到平面距离即为残差项𝛿𝑖𝑗𝑘
定义如下:

其中𝑐𝑖𝑗𝑘为常数,𝑣𝑖𝑗为优化量:
PBA 同时优化位姿𝜌𝑖和平面参数𝜛𝑗。雅可比矩阵为

则由之前易知
进而可知雅可比矩阵元素
再令

将雅克比矩阵改写为
1.4 矩阵𝐶𝑖𝑗分解
𝐶𝑖𝑗可分解为
其中𝑄𝑖𝑗为正交阵。
1.5 优化雅可比矩阵𝐽
𝑟
定义𝐽𝑖𝑗
𝑟
与之前相比,有
作者有结论 ,而 M 矩阵较 C 矩阵维度更低,所以能加速 LM 算法。
1.6 优化残差项𝛿
𝑟
已知残差项 。类似定义 。
则有:
作者有结论 ,所以𝛿
𝑟可加速 LM 算法。
实验结果
DPT2PL 为传统 BA 方法,PL2PL 为面到面优化方法。Noise level 为引入旋转误差和平移
误差级别(从低到高)。ATE 分旋转误差和平移误差两种。QR 为 QR 分解的时间,Init 为 Ceres
初始化时间,Optimization 为 LM 算法总时间,Per Iter 为 LM 平均每次迭代时间。