直接LiDAR-相机对齐

**直接(Direct)**方法在不先提取稀疏特征的情况下,将传感器数据与地图对齐。应用到LiDAR-相机融合中,这意味着在同一张地图上同时发生两件事:

核心残差

在FAST-LIVO中,每个LiDAR地图点 pi\mathbf{p}_i 都携带一个来自其首次被观测时的小图像块 PiP_i;新帧通过最小化以下目标来对齐

ri=uΩ(Icur(π(Tpi)+u)Pi(u))2r_i = \sum_{\mathbf{u} \in \Omega} \Big( I_{\text{cur}}\big(\pi(\mathbf{T}\,\mathbf{p}_i) + \mathbf{u}\big) - P_i(\mathbf{u}) \Big)^2

其在图像块邻域 Ω\Omega(例如两侧各几个像素)上求和。由于LiDAR为这些锚点提供了精确的三维位置,视觉模块因此白得了一大批定位良好的地标——无需三角化,无深度歧义。R3LIVE以其最精简的形式使用了同样的原理:地图点存储颜色 CiC_i,VIO通过最小化 i(I(π(T1Pi))Ci)2\sum_i (I(\pi(\mathbf{T}^{-1}\mathbf{P}_i)) - C_i)^2 来对齐帧,然后再精细化地图的纹理。

如何进入估计器

将这些残差送入紧耦合滤波器的方式有两种模式:

要让对齐保持可靠,还需要在外观方面做一些”内务处理”:随着新视角的到来更新参考图像块(FAST-LIVO2动态执行此操作;R3LIVE则随时间融合颜色),剔除位于深度边缘上或在当前视角中被遮挡的不稳定点(FAST-LIVO的异常值剔除机制),以及利用LiDAR平面先验来约束图像块对齐本身(FAST-LIVO2)。

为什么选择直接法?

其吸引力主要体现在三个方面。首先是延迟:跳过特征提取和描述子匹配,省去了每帧相当大的计算开销。其次是在低纹理场景中的鲁棒性:光度对齐可以利用角点检测器一无所获的微弱梯度。第三是架构简洁性:一张共享地图(ikd-Tree或体素地图)可同时服务于两种模态,而不需要维护必须彼此保持一致的独立视觉地图和LiDAR地图。

常见陷阱

对SLAM的意义

直接LiDAR-相机对齐是目前最强的开源LVI里程计系统(FAST-LIVO、FAST-LIVO2)以及RGB建图的R3LIVE系列背后的设计思路。它代表了直接视觉里程计传统(DTAM、LSD-SLAM、DSO)在LiDAR时代的延续:一旦深度不再是瓶颈——因为LiDAR已经测量出深度——光度对齐就成为了一种极其廉价而有效的方式,可以为状态估计器增添视觉信息。

相关条目