Hydra
Hughes (MIT SPARK) 2022 · 论文
一句话总结 — 首个实时空间感知系统,能从传感器数据增量式构建分层三维场景图(网格→物体→地点→房间→建筑),并在发生回环时同时优化所有层级。
问题
三维场景图刚刚作为一种强大的高层表示出现——一种分层图,其节点是多个抽象层级上的空间概念——但先前的系统都是离线构建的:Kimera的3D Dynamic Scene Graphs与Armeni等人的方法需要数分钟的批处理,依赖对整个环境的ESDF(其内存开销扩展性很差),而且每次发生回环后都必须从头重建图。作者写道,如何在机器人上实时构建这样一种”心智模型”,当时仍是未知领域——包括对场景图而言”回环”意味着什么,因为修正轨迹必须同时一致地修正网格之上的每一层。
方法与架构
在活动窗口内增量式构建第1–3层。 Hydra将Voxblox的TSDF/ESDF在机器人周围以用户设定的半径(8米)进行空间窗口化,从而限制内存占用。在窗口内:marching cubes提取度量-语义网格,同时标记零穿越”父”体素;物体通过对网格顶点按类别进行欧几里得聚类形成(质心+包围盒,当某个质心落入另一个包围盒内时与已有节点合并);地点从广义Voronoi图中提取——即那些到至少2个障碍物等距的体素,作为ESDF brushfire更新的副产物获得——并被增量式稀疏化为图(节点位于具有个基点或角模板的体素处;边通过洪水填充标记确定,并在直线边偏离GVD时进行分裂)。无论环境规模多大,这一过程都在常数时间内完成。
第4层:从拓扑中提取房间。 将障碍物按距离进行膨胀会封闭门口并断开房间之间的连接;由于每个地点节点都存储着自己到障碍物的距离,膨胀操作可直接映射到地点子图上。Hydra扫描米区间内的10个膨胀距离,统计每个被剪枝图的连通分量数,取其中位数,选择具有个连通分量的最大图,并通过以这些连通分量为种子的贪心模块度社区检测,将剩余节点分配给相应房间——耗时仅为毫秒级,而非批处理ESDF所需的时间。
分层回环检测。 每个代理(关键帧)节点携带一个描述子层级:DBoW2外观词汇、邻近物体标签的直方图,以及邻近地点障碍物距离的直方图。检测过程自上而下进行(地点→物体→外观);验证过程自下而上进行,先对视觉特征做RANSAC,若视觉验证失败则对匹配的物体做TEASER++配准——因此即使视角或光照变化破坏了匹配,仍可通过语义完成验证。
场景图优化。 前端组装完整图,并将网格降采样为控制点(八叉树顶点聚类)。后端构建一个嵌入式变形图——代理位姿图+网格控制点+地点的最小生成树,通过跨层边相连——并利用刚性变换重构形式,将其作为位姿图优化问题,用GTSAM中的GNC求解器求解,该求解器同时也能剔除作为外点的错误回环。剩余网格被重新插值,重新计算物体质心/包围盒,合并重叠节点(0.4米内的地点;标签相同且包围盒相互包含的物体),并重新检测房间。房间精度按体素方式评分为
快思考与慢思考。 Hydra将帧率级的早期感知(特征跟踪、分割)、亚秒级的中层模块(网格、物体、地点、前端)以及缓慢的高层模块(回环检测、后端优化、房间检测)并行执行——除2D分割网络外,全部运行在CPU上。
实验结果
- 在uHumans2(模拟的公寓、办公室、地铁场景)和真实的SidPac数据集(Kinect Azure+RealSense T265,两段平均约400米的多楼层记录)上评测。
- 在给定真值位姿的情况下,Hydra的在线图与批处理离线基线相当:80–100%的物体被发现/正确识别,地点位置误差在25厘米以内。
- 场景图回环检测(SG-LC)所得到的10厘米、1度误差内的回环数量,大约是宽松的、基于视觉的DBoW2+ORB基线的2倍,且在大型SidPac场景上物体精度也明显优于基于视觉的回环检测。
- 房间分割:在SidPac的3–4层上,Kimera的精度/召回率降至0.88/0.06(仅分割出10个房间中的2个),而Hydra在包括多楼层场景的情况下都保持稳定的精度和召回率。
- 运行时间:批处理基线在中等规模场景下每次更新耗时超过40秒;而Hydra的中层开销保持平稳。在Nvidia Xavier NX上:物体处理耗时毫秒,地点毫秒,房间毫秒,相对于5Hz的关键帧速率目标。
对SLAM的意义
Hydra将3D Dynamic Scene Graph从一种离线构建方法转变为实时空间感知系统,其嵌入式变形图后端是首个能将整个场景图——网格、地点、物体、房间——与轨迹联合优化的算法,将位姿图优化推广到了分层地图上。它的五层结构成为了事实上的Spatial AI表示标准,也是MIT SPARK生态体系的基础——Hydra-Multi(多机器人)、Clio(任务驱动的开放集场景图)、Khronos(时空动态)——使机器人能够在多个抽象层级上接受语言指令。
相关条目
- Kimera / 3D Dynamic Scene Graph — Hydra使其实现实时化的场景图概念
- Hydra-Multi — 多机器人扩展
- Clio — 任务驱动的开放集场景图
- Khronos — 面向动态场景的时空扩展
- ConceptGraphs — 开放词汇的三维场景图
- GNC — 场景图后端所用的鲁棒求解器
- Pose graph optimization — 变形图修正所扩展的经典机制