BALM——对激光建图使用Local-BA

BALM全称:Bundle Adjustment for Lidar Mapping,香港大学的工作。

BALM框架

  1. 对每个scan通过位姿初值转换到世界坐标系上,多帧scan的点组成了一个“线”或“面”特征。计算一个特征内所有点的协方差矩阵A,通过优化A特征分解后的特征值最小。因为线特征,最大特征值表示线段方向,面特征,最小特征值表示面的法向量方向。本文推导了误差对点的雅克比矩阵和误差对位姿的雅克比矩阵。注意:本文中的地图点和位姿是相互独立的,因此,在实验中BALM可以在因为退化导致位姿走“之”字形时,点云依然保持一致性。
  2. 自适应voxel的划分,从1m分辨率通过八叉树划分到0.125m分辨率。目的是保证一个像素内只存在一个特征。做法是计算格子内点的特征向量,不满足条件则划分,直到格子内只有一个特征,或者格子内的点数小于阈值。本文共维护了两个voxel地图,一个edge的和一个plane的。这样做的好处是寻找最近邻时速度很快。
  3. Remark:

    1.当一个voxel点数很多时,就直接用每个scan在这个voxel中的平均值,进而减小(8)式中Hessian的维度。

    2.

    3. 平面在实现时可能是弯曲表面,因为本文允许大的协方差。

    4.两种方式可以停止格子划分,1是达到了最大深度,2是格子内点的数目小于一个阈值。

LOAM with local BA

  1. 把当前scan加入到map中,并构建成voxel的形式。当插入进来5帧scan后,进行map-refinement。滑窗大小是20帧相邻的帧,进行Local-BA。

  2. 本文的优点是提升了定位的精度和增强了点云一致性,但使用的是连续帧,后续可以改成只关键帧参与Local BA,或者应用在全局地图优化中。

代码在https://github.com/hku-mars/BALM

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值