想象一下,你正试图在一个巨大的、不断变化的迷宫中穿行,你被蒙上了眼睛,手里只拿着一把手电筒。如果光线照在了一面白墙上,你就会迷失方向;如果电池没电了,你就彻底被困住了。这就是许多机器人导航系统面临的问题:它们依赖单一的摄像头和一个单一的深度传感器,这会导致在光线变化、纹理过于平滑或摄像头被遮挡时发生故障。
GeoFlow-SLAM++ 就像是给那个机器人配备了一个多镜头相机组(类似于人类拥有侧面和前方的眼睛组成的头部)以及一个超级聪明的头脑,它可以在两种不同的视觉方式之间进行切换。
以下是它的工作原理,通过简单的概念进行拆解:
1. “全方位观察”的头部(多摄像头组合)
该系统不是使用单个摄像头,而是使用多个经过校准、能够作为一个整体协同工作的摄像头。
- 类比: 这就像是一个人拥有位于前方、侧面和后方的眼睛。如果前方的视野被墙壁挡住,侧面的眼睛仍然可以看到路径。如果一个摄像头被泥土覆盖,其他的摄像头仍能继续工作。
- 优势: 它创造了一个“安全网”。如果一个摄像头失去了定位,其他的摄像头会接替工作,防止机器人迷路。
2. “双脑”视觉系统
该系统有两种不同的“眼睛”或识别世界的方式,它可以使用其中一种或两者结合使用:
- “经典型”眼睛 (ORB): 这是传统的、快速且高效的识别角点和边缘的方式。它就像是一位熟练的侦探,深谙游戏规则。在光线充足的正常房间里,它的表现非常出色。
- “AI型”眼睛 (NN-Feature): 它利用先进的神经网络(SuperPoint 和 LightGlue)即使在情况异常时也能识别模式。它就像是一位即便在对方戴着面具、光线昏暗或照片模糊的情况下,依然能认出人脸的侦探。
- 切换机制: 系统可以在这两者之间进行切换,或者同时使用它们。如果房间很暗或者墙壁是纯白色的,系统会启动“AI型眼睛”,去寻找那些“经典型眼睛”会错过的特征。
3. “团队集结” (统一身体状态)
在旧系统中,每个摄像头可能会尝试独立计算自己的位置,这可能会导致争论和混乱。
- 类比: 想象一支划船队。在旧的方法中,每位划手都试图操控自己的桨。而在 GeoFlow-SLAM++ 中,所有的摄像头都与一个单一的“身体”绑定在一起。它们都对同一个位置和速度达成共识。
- 结果: 系统会不断检查左侧摄像头的视野是否与右侧摄像头的视野相匹配。如果它们出现分歧(例如一个看到了门,而另一个看到了墙),系统会立即察觉并进行修正。
4. “时空旅行者” (重定位)
有时机器人会完全迷失方向,需要找回之前建立的地图。
- 问题: 如果你走进一个曾经去过的房间,但家具被移动了或者灯光变了,很难重新识别它。
- 解决方案: GeoFlow-SLAM++ 使用“统一搜索”。它不再问“前置摄像头是否识别了这个场景?”,而是问“所有摄像头的组合是否识别了这个场景?”
- 类比: 这就像是在辨别一首歌。如果你只听到鼓声,你可能会感到困惑。但如果你同时听到鼓声、吉他声和人声,你瞬间就能知道这是哪首歌。这使得机器人即使在数小时或数天后,也能重新找到自己的位置,其表现不亚于使用昂贵激光雷达(LiDAR)的系统。
5. “额外地图” (可选的伪深度)
有时,机器人并没有深度传感器(如测量距离的激光器或特殊相机)。
- 技巧: 系统可以使用一种“猜测型”AI,仅通过观察普通照片来预测物体的距离。
- 安全检查: 系统不会盲目相信这个猜测。只有当这个“猜测”与其它摄像头所看到的景象吻合时,它才会使用这个“猜测”。这就像是有一个朋友在猜树的距离,但只有当你的眼睛确认看起来没错时,你才会采用他的猜测。
他们证明了什么?
作者在许多不同的数据集上测试了这个系统,包括:
- Hilti: 一个包含具有挑战性的真实世界建筑工地的数据集。在这里,他们的系统表现得与使用沉重激光扫描仪的昂贵系统一样出色(甚至有时更好),尤其是在视觉条件恶劣的情况下。
- 跨阶段重定位 (Cross-Session Relocalization): 他们展示了即使在光照不同或物体移动的情况下,机器人也能找回几天前创建的地图,其准确性超过了标准的基于激光的方法。
- TUM & OpenLORIS: 他们证明了“AI型眼睛”(NN-Feature)在处理低光照或运动模糊等棘手情况时,比传统方法更有效。
简而言之: GeoFlow-SLAM++ 是一个拒绝迷路的导航系统。它使用多个摄像头以确保始终有视野,使用两种不同的“大脑”在任何条件下识别世界,并使用统一的思维方式来保持一致性。它证明了你不需要昂贵、沉重的激光设备来导航复杂环境;你只需要一个智能的多摄像头设置。
技术摘要:GeoFlow-SLAM++
1. 问题陈述
单目和 RGB-D 视觉惯性 SLAM (VI-SLAM) 系统存在固有的局限性,这些局限性损害了其在现实世界自主导航中的鲁棒性。这些局限性包括:
- 视野 (FoV) 有限: 单传感器在面对遮挡和退化运动时难以应对,导致跟踪失败。
- 传感器特定失效: 主动深度传感 (RGB-D) 在室外或反射表面上经常失效;窄视角摄像头在发生遮挡时会丢失可跟踪特征。
- 重定位不可靠: 在面临巨大的时间或视角变化时,跨会话重定位仍然脆弱,尤其是当依赖于单视图外观证据时。
- 硬件约束: 虽然基于 LiDAR 的系统提供了卓越的鲁棒性,但它们依赖于沉重、高功耗且昂贵的硬件,限制了其在轻量级、成本敏感场景中的适用性。
作者旨在通过将其之前的单传感器 GeoFlow-SLAM 扩展为鲁棒的多摄像头系统,在不依赖 LiDAR 的情况下实现高精度,从而解决这些问题。
2. 方法论
GeoFlow-SLAM++ 是一个围绕统一的以体为中心的状态 (body-centric state) 构建的紧耦合多摄像头 VI-SLAM 系统。该架构集成了同步的多摄像头 RGB/RGB-D 流和高频 IMU 数据。
A. 双视觉前端
系统支持两个可互换的前端,它们共享相同的下游几何接口:
- ORB 前端: 使用手工设计的 FAST 关键点和旋转的 BRIEF 描述符,并结合 DBoW2 词袋模型。它优先考虑效率。
- 神经网络特征 (NN-Feature) 前端: 利用基于学习的组件:
- SuperPoint: 用于自监督、对光照不敏感的关键点和局部描述符。
- LightGlue: 用于基于注意力的特征匹配和回环检测验证。
- MixVPR: 用于生成用于地点检索的紧凑全局描述符。
- 优势: 该前端在光照剧烈变化、纹理缺失和视角变化的场景中表现出更强的鲁棒性。
B. 多摄像头跟踪与优化
- 双流跟踪: 跟踪器结合了 3D-to-2D(带有光流/NN-Feature 精细化的 PnP)和 2D-to-2D(帧间)跟踪。
- 跨视图几何验证: 这是一个关键组件,通过已标定的相机阵列几何定义的极线约束来验证不同摄像头之间的匹配。这消除了由单视图中的遮挡或重复纹理引起的错误关联。
- 紧耦合因子图优化:
- 共享体状态: 所有摄像头都被约束到单个体状态 (Xi=[Tbw,vbw,ba,bg]) 中,而不是优化单个摄像头的位姿,从而确保几何一致性。
- 残差因子: 优化器融合了 IMU 预积分残差、多摄像头视觉重投影残差以及广义迭代最近点 (GICP) 约束(当深度可用时)。
- GICP: 仅在存在有效深度(来自物理 RGB-D 或伪深度)时激活,惩罚点对点距离和局部表面结构。
C. 回环检测与重定位
- 统一跨视图地点识别: 系统不是进行逐摄像头的检索,而是将所有活跃摄像头的全局描述符聚合为一个统一的向量。这使得系统即使在单个摄像头视图受损或被遮挡的情况下也能检索到回环候选。
- 重定位: 使用相同的统一描述符策略。在检索到目标后,联合多摄像头 PnP 解算器直接在体状态的 SE(3) 流形上估计绝对位姿,利用来自所有摄像头的内点来支持 RANSAC 假设。
D. 可选的伪深度扩展
系统可以可选地整合来自 3D 基础模型(例如 Depth Anything)的跨视图一致性伪深度预测。这些预测被视为补充性的几何约束,而非主要的度量深度源。
3. 核心贡献
- 统一的多摄像头框架: 将 GeoFlow-SLAM 从单 RGB-D 传感器扩展到校准的多摄像头阵列,并将跟踪、建图、回环检测和重定位统一在共享的体状态之上。
- 双视觉前端设计: 在单一几何接口下支持传统的 ORB 和基于学习的 NN-Feature (SuperPoint/LightGlue) 流水线,从而能够适应不同的环境挑战。
- 鲁棒的优化流水线: 集成了多摄像头重投影、IMU 预积分、跨视图地点识别以及双流跟踪(光流/NN-Feature)和跨视图几何验证。
- 可选的伪深度集成: 引入了一种机制,可以使用来自基础模型的跨视图一致性伪深度作为退化场景下的辅助约束。
4. 实验结果
系统在 EuRoC、OpenLORIS、TUM、Hilti 以及一个自收集的手持多摄像头数据集 (Pocket2) 上进行了评估。
- Hilti 基准测试 (LiDAR vs. Vision):
- GeoFlow-SLAM++ (ORB) 实现了平均 0.058 m 的绝对轨迹误差 (ATE),优于 OpenMAVIS (0.119 m),并与 Omni-LIVO 等 LiDAR 辅助系统保持竞争水平 (0.047 m)。
- 在视觉条件较差的挑战性序列 (Exp14, Exp16, Exp18) 中,NN-Feature 版本比 Omni-LIVO 高出达 24.17%,而若干 LiDAR 基准系统未能完成这些序列。
- 跨会话重定位 (Pocket2 数据集):
- 系统实现了 7-DoF RMSE 为 0.043 m 的精度,在室内序列上将 LiDAR 基准误差降低了 44.87%。
- 它展示了与基于 LiDAR 的方法相当的运行时效率,证明了在无需 LiDAR 的情况下进行现实世界部署的可行性。
- 消融研究 (TUM & Hilti):
- NN-Feature 前端提供了最显著的定位精度提升,特别是在纹理缺失或高漂移场景(如 TUM "desk2" 和 "floor" 序列)中。
- 结合回环检测和 NN-Feature 在 TUM 上获得了最佳的平均 ATE (0.050 m)。
- 在多摄像头 Hilti 数据集上,添加伪深度在稳定环境中收益微小,但在特定退化场景中提供了几何补偿。
- 单目验证 (EuRoC/OpenLORIS):
- NN-Feature 分支在具有运动模糊和弱纹理的序列中,达到了与最先进的单目 VI-SLAM 系统(如 ORB-SLAM3、VINS-Fusion)相当或更优的精度。
5. 重要性与主张
论文声称 GeoFlow-SLAM++ 成功弥合了轻量级纯视觉系统与沉重 LiDAR 系统之间的差距。通过将多摄像头冗余与双前端设计相结合,该系统实现了:
- 鲁棒性: 在单传感器或单视图系统失效(如遮挡、低纹理、光照变化)的场景下保持跟踪并进行重定位的能力。
- 准确性: 在无需 LiDAR 硬件的情况下,在 Hilti 基准测试中达到了与 LiDAR 辅助基准相当的定位精度。
- 灵活性: 模块化架构支持传统特征与学习型特征,以及可选的基于基础模型的深度集成。
作者将该系统定位为迈向鲁棒、低成本自主导航的重要一步,并指出虽然伪深度提供的是补充约束,但其主要鲁棒性源于多摄像头公式化和双前端设计。未来的工作确定为提高基础模型深度的几何一致性,并研究完全取代物理深度传感器的潜力。
每周获取最佳 computer science 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。