Robust Structureless Monocular Visual Inertial Initialization Exploiting Line Features and Vanishing Points
Junwan Choi, Woongrae Jo, Dong-Uk Seo, Jinwoo Jeon, Hyun Myung
IROS 2026
cs.RO, cs.CV
2026-09-18
KAIST用二维线段的消失点约束陀螺偏置,再用线极线与法向投影做尺度对齐。EuRoC平均尺度RMSE 0.120,结构法在自制退化序列上全部失败。
单目视觉惯性里程计一开机就要估尺度、重力、速度和 IMU 偏置。运动激励不够、视差太小、平移占主导时,点特征三角化会病态,初始化直接失败。失败不只发生在启动,跟踪丢了之后的原地恢复同样要命。
现有办法两条路都不舒服。一条先做视觉 SfM 再跟 IMU 对齐,或在优化里带着三维路标,算得慢,低视差时结构本身就不稳。另一条走无结构线性对齐,快,但几乎只靠点视差,纹理差或几乎纯平移时条件数一样烂。把线特征加进来的系统,通常还要重建三维线段或估线深度,又把结构依赖请了回来。
SLIM-init 建在 He 等人的旋转平移解耦无结构框架上,全程不重建三维点或三维线。点用角点加 KLT 跟踪,线用 EDLines 提取、光流预测再做几何一致性匹配。
第一步只估陀螺仪偏置。标准点残差之外,加一项消失点方向一致性:消失点在无穷远,残差对平移不变,低视差时仍能约束旋转。每帧只留一条主消失点,球面投票加加权最小二乘精炼,并按轨迹寿命和角度门控,不可靠就退回纯点残差。
第二步在陀螺偏置和旋转定下来之后,线性对齐尺度、重力和各关键帧速度。除了点的位置残差,再加两个无结构线残差:线极线残差用两帧解释平面的共面约束直接卡住相对平移;线法向投影残差把点的位置误差投影到解释平面法向上,给线性系一个各向异性的结构方向。线按跟踪寿命和长度加权,不是所有检出线段都进求解器。
EuRoC 左目,每 10 帧开一次初始化、窗口 10 个关键帧,成功定义为尺度误差绝对值小于 0.5,RMSE 只在成功窗口上算。对照 VINS-Mono、OpenVINS 闭式解,以及结构最少的 DRT-l。
| 方法 | 尺度 RMSE | 重力 RMSE (°) | 速度 RMSE (m/s) | 位姿 RMSE (m) |
| VINS-Mono | 0.195 | 1.696 | 0.126 | 0.125 |
| OpenVINS | 0.131 | 2.745 | 0.192 | 0.132 |
| DRT-l | 0.136 | 1.365 | 0.113 | 0.126 |
| SLIM-init | 0.120 | 1.311 | 0.100 | 0.110 |
相对 DRT-l,尺度、重力、速度平均 RMSE 分别低 11.8%、4.0%、11.5%,位姿 0.110,再低 12.7%。Machine Hall 成功率 94.01%,DRT-l 91.77%,VINS-Mono 63.84%;Vicon 房间大约 72% 到 73%,结构法更差。
KAIST 楼里走廊和大厅的自制序列,纹理弱、重复图案、低视差、平移主导,真值来自 FAST-LIO2。VINS-Mono 和 OpenVINS 全部起不来。DRT-l 还能跑,SLIM-init 平均尺度 0.151 对 0.166,位姿 0.206 对 0.216,是小幅但方向一致的优势。
求解器本身平均 4.141ms,和 DRT-l 的 4.150ms 几乎一样,VINS-Mono 29.615ms,OpenVINS 284.715ms。加上线和消失点跟踪,每帧大约 35.86ms,作者认为仍在实时启动和频繁恢复的预算内。
这是作者声称的第一个把线约束做成严格无结构的单目 VIO 初始化:二维线段直接进残差,不估线深度、不养三维线路标。对室内机器人、无人机、AR,价值主要在「退化时还能起来」,不在 EuRoC 上再抠一两个点。代码已公开,入选 IROS 2026。
增益是条件数修补,不是新的状态估计范式。EuRoC 上对 DRT-l 的改进是十个百分点量级。真正拉开差距的是结构法直接失败的那些走廊。
消失点消融很弱:关掉 VP 残差,陀螺偏置相对误差从 1.913% 升到 1.941%,几乎在噪声里。主消失点假设更适合人造环境的主方向,野外或曲面主导的场景会没东西可投。自制退化集只有三条,结构法「全军覆没」的结论样本很少,真值还来自激光惯性系统,和视觉惯性误差不是同一套传感器。
成功率统计把失败窗口剔出 RMSE,平均误差看起来更漂亮,需要和成功率表一起读。线跟踪仍是额外前端,特征跟踪才是时间瓶颈。后续要接到 VIO 后端才能谈长期稳定,这篇只覆盖初始化窗口。