引言

想象一下,一个机器人在繁忙的城市或复杂的地下隧道中导航。为了实现自主运行,它不仅需要知道障碍物在哪里,还需要知道自己在全局地图上的位置。在这些环境中 (如城市峡谷或室内空间) ,GPS 往往不可靠甚至无法使用。这正是 激光雷达位置识别 (LiDAR Place Recognition, LPR) 发挥作用的地方。机器人使用激光扫描仪扫描周围环境,然后问自己: “我以前见过这种几何模式吗?”

多年来,机器人社区一直将 LPR 视为一个纯粹的几何问题,构建了专门的深度学习模型,并从头开始在 3D 点云上进行训练。与此同时,计算机视觉领域正如火如荼地进行着一场革命,出现了像 DINOv2 这样的 视觉基础模型 (Vision Foundation Models, VFMs) 。 这些在数亿张图像上训练出来的庞大模型,对视觉世界拥有令人难以置信的通用理解能力。

但这里有一个问题: 激光雷达点云不是图像。它是一组稀疏、无序的 3D 坐标集合。你不能简单地将点云输入到一个设计用于处理 RGB 照片的模型中。

但这篇博文将探讨 ImLPR , 这是一篇开创性的研究论文,它弥合了这种“模态鸿沟”。研究人员提出了一种巧妙的流程,将 3D 激光雷达数据转换为视觉基础模型可以理解的格式,使机器人能够利用 DINOv2 庞大的预训练“知识”来实现高精度的定位。

图 1: 传统 LPR 方法与 ImLPR 的比较。传统方法依赖于点云或投影的领域特定训练。ImLPR 通过距离图像视图 (RIV) 使用视觉基础模型 (VFM),在捕捉几何信息的同时避免了鸟瞰图 (BEV) 带来的信息丢失。雷达图显示了 ImLPR 的卓越性能。

背景: 模态鸿沟

在深入了解架构之前,有必要先了解为什么这是一个难题。

传统的 LPR

传统上,针对激光雷达的深度学习主要有两条路径:

  1. 基于点的方法: 这些方法处理原始 3D 点 (例如 PointNetVLAD) 。它们的计算量很大,并且需要在大型 3D 数据集上进行训练,而这种数据集相比图像数据集要稀缺得多。
  2. 基于投影的方法: 这些方法将 3D 世界压缩成 2D 图像。最常见的是 鸟瞰图 (Bird’s Eye View, BEV) , 看起来像是一个自上而下的地图。虽然很流行,但 BEV 压缩了垂直轴 (z 轴) ,导致大量信息丢失。例如,从上方看,一堵平坦的墙和一道栅栏可能看起来是一样的。

视觉基础模型 (VFMs)

像 DINOv2 这样的 VFM 是在海量数据集 (例如 1.42 亿张图像) 上训练的 Transformer 模型。它们非常擅长识别复杂场景中的特征。在 视觉位置识别 (Visual Place Recognition, VPR) 中,使用 VFM 现在已成为黄金标准。

ImLPR 面临的挑战在于,当输入实际上是来自激光雷达的距离测量值时,如何使用一个原本期望标准 RGB 图像 (红、绿、蓝通道) 的模型。

ImLPR 方法论

ImLPR 流程包含三个独特的阶段: 输入处理、特征提取 (使用 VFM) 和特征聚合。让我们逐一拆解。

图 2: ImLPR 架构。点云被投影为 RIV 图像 (反射率、距离、法向量) 。经过 MultiConv 适配器调整的预训练 DINOv2 模型提取丰富的 Patch 级特征。Patch-InfoNCE 损失优化局部特征,SALAD 将特征聚合为全局描述符。

1. 输入处理: 创建“激光雷达图像”

为了使用视觉模型,3D 数据必须看起来像一张图像。作者选择了 距离图像视图 (Range Image View, RIV) 投影,而不是 BEV。距离图像本质上是一种球面投影——想象站在扫描的中心,将 360 度的视野展开到一个平坦的 2D 平面上。这保留了 BEV 会破坏的垂直细节。

然而,DINOv2 期望 3 个输入通道 (像 RGB) 。标准的距离图像只有一个通道 (距离) 。作者巧妙地构建了一个 3 通道图像来模拟 RGB 数据的丰富性:

  1. 反射率 (Reflectivity): 表面对激光的“发光”程度。这类似于纹理或颜色。
  2. 距离 (Range): 到物体的距离。这提供了深度几何信息。
  3. 法向量比率 (Normal Ratio): 局部表面几何形状的度量 (例如,这是一堵平坦的墙还是粗糙的灌木丛?) 。

从 3D 点 \(p_i = (x_i, y_i, z_i)\) 到 2D 像素 \((u_i, v_i)\) 的投影由以下方程控制:

基于方位角和仰角将 3D 点投影到 2D 图像坐标的方程。

这里,\(W\) 和 \(H\) 是图像尺寸,\(f\) 代表视场角。通过将物理属性编码到图像通道中,系统为视觉模型提供了可以捕捉的“类视觉”模式。

2. 骨干网络: 调整 DINOv2

一旦创建了“激光雷达图像”,它就会被输入到 DINOv2 中。但是,你不能直接“开箱即用”地使用 DINOv2,因为激光雷达图像看起来与 DINO 训练用的互联网照片截然不同。反过来说,如果你微调 整个 模型,你就会面临 灾难性遗忘 (catastrophic forgetting) 的风险——模型学会了新数据,却忘记了它从 1.42 亿张图像中学到的鲁棒特征。

解决方案是什么? MultiConv 适配器 (MultiConv Adapters)。

作者冻结了 DINOv2 的大部分参数。然后,他们在 Transformer 块之间插入了轻量级的适配器层。这些适配器使用卷积神经网络 (CNN) 处理中间特征。

适配器的逻辑定义如下:

定义 MultiConv 适配器过程的方程,适配器以特定间隔细化 Patch 特征,同时保持 Token 特征不变。

这个方程本质上是说: 获取 Patch 特征 (\(x^{\text{patch}}\)),让它们通过一个小型的适配器网络,将结果加回原始特征 (残差连接) ,然后传递给下一个块。这允许模型针对激光雷达数据的“方言”进行 轻微 调整,而不会忘记视觉的“语言”。

3. Patch 级对比学习

全局描述符 (代表整个场景的单个向量) 很棒,但为了实现高精度,模型需要理解局部细节。作者引入了 Patch-InfoNCE 损失

这种技术强制模型确保当前扫描中的特定 Patch (图像的小方块) 与同一位置的历史扫描中的对应 Patch 相匹配。

图 3: Patch 对应流程。使用 ICP 对齐点云以找到真值。基于重叠选择正样本 Patch 对 (绿色) ,而负样本 (红色) 则是距离较远的 Patch。

为此,他们使用迭代最近点 (ICP) 算法对齐两次扫描以找到完美的重叠。如果扫描 1 中的 Patch A 与扫描 2 中的 Patch B 在物理上重叠,如果它们的特征表示不相似,模型就会受到惩罚。

使用的损失函数为:

Patch-InfoNCE 损失方程,基于正负 Patch 对的余弦相似度计算对比损失。

这个损失函数确保模型不仅仅是观察场景的整体“氛围”,而是真正识别特定的地标,比如特定的树或建筑物角落。

4. 特征聚合 (SALAD)

最后,Transformer 提取的特征必须压缩成一个单一的向量 (描述符) ,以便在数据库中进行快速搜索。ImLPR 使用一种名为 SALAD (Self-Attention Local Adaptive Descriptor) 的方法。该方法利用最优传输 (Optimal Transport) 将局部特征聚类为一个紧凑的全局表示。

实验与结果

作者在多个涵盖城市、校园和高速公路等不同环境的公共数据集 (HeLiPR, MulRan, NCLT) 上评估了 ImLPR。

会话内 (Intra-Session) 性能

在“会话内”测试中,机器人在绘制地图后不久重新访问某个位置。传感器和条件相对相似。

表 1: 性能指标显示 ImLPR 在 Recall@1 和 F1 分数上优于 LoGG3D-Net、MinkLoc3d v2、CASSPR 和 BEVPlace++。

如表 1 所示,ImLPR 取得了近乎完美的分数 (Recall@1 为 0.992) ,始终击败 BEVPlace++ 和 MinkLoc3Dv2 等最先进的方法。

我们可以通过下面的图 4 直观地看到这种改进。红线表示“假阳性”——即机器人对自己位置感到困惑的时候。与竞争对手相比,ImLPR (底部) 的红线明显更少。

图 4: 轨迹可视化。红线表示假阳性。与其他 SOTA 方法相比,ImLPR 的错误明显更少。

会话间 (Inter-Session) 与泛化能力

定位系统的真正考验是 会话间 (数天或数月后重访) 和 泛化能力 (在一个传感器上训练,在另一个传感器上测试) 。

当在高分辨率 Ouster 激光雷达数据上训练并在低分辨率 Velodyne 数据上测试时,传统方法往往会失败,因为点云密度发生了巨大变化。

图 11: NCLT 和 HeLiPR-V 数据集上的精确率-召回率曲线。ImLPR (红线) 在各数据集上显示出稳健的一致性,而 BEVPlace++ (橙色) 在 HeLiPR-V 上性能显著下降。

上面的精确率-召回率曲线说明了这种鲁棒性。虽然 BEVPlace++ (橙色) 在某些数据集上表现良好,但在 HeLiPR-V 数据集上却崩溃了。相比之下,ImLPR (红色) 在所有方面都保持了高性能。

为什么 BEV 在这里失败了?

作者提供了一个令人信服的可视化解释,说明了为什么 ImLPR 使用的距离图像视图 (RIV) 在这项任务上优于鸟瞰图 (BEV)。

图 6: BEV 和 RIV 的特征可视化比较。(a) BEV 扭曲了特征形状并将空像素误识别为特征。(b) 即使动态物体 (如汽车) 移动,RIV 也能在扫描之间保持一致的特征。

在图 6(a) 中,请看 BEV 表示。由于扫描是稀疏的,BEV 投影产生了“空”像素,模型错误地认为这些是实际特征 (橙色框) 。相比之下,图 6(b) 中的 RIV 投影即使在动态物体 (如汽车) 消失或传感器密度发生变化时,也能保持一致。

对旋转 (Yaw) 的鲁棒性

机器人技术中的一个主要头痛问题是旋转。如果机器人以稍微不同的角度接近某个地方,激光雷达扫描看起来就会不同。

图 12: 平均召回率与偏航角变化。ImLPR (红色) 保持非常平坦、稳定的线条,表明与 MinkLoc3Dv2 和 BEVPlace++ 相比,其对旋转具有很高的鲁棒性。

图 12 展示了 ImLPR 的稳定性。当机器人旋转 (偏航角变化) 时,其他方法的性能波动很大,而 ImLPR 的性能几乎保持平稳。部分原因是 DINOv2 架构结合了距离图像的圆柱特性,能够自然地处理水平位移 (对应于旋转) 。

结论与启示

ImLPR 代表了机器人定位向前迈出的重要一步。通过成功地将视觉基础模型 (DINOv2) 适应到激光雷达领域,研究人员解锁了一种无需大量特定领域 3D 数据集即可处理 3D 数据的新方法。

主要收获:

  1. 不要重新发明轮子: 如果我们能弥合模态鸿沟,就可以利用存储在海量视觉模型中的“知识”来处理 3D 任务。
  2. 表示形式很重要: 你如何投影数据 (RIV 与 BEV) 决定了你的模型能学到什么。RIV 保留了基础模型工作所需的几何细节。
  3. 适配器很强大: 你不需要从头开始重新训练巨大的模型。小型的、可训练的适配器可以将巨型模型的能力重新定位到新的传感器类型上。

这项研究为“通用”机器人感知铺平了道路,在这种感知中,单个基础模型可能能够处理来自相机、激光雷达甚至雷达的输入,从而创建更强大、更智能的自主系统。