返回专辑
·Johan·4 分钟阅读

直接法 vs 特征法:信息、曝光与计算预算的权衡

从光度残差与重投影残差出发对比直接法与特征法 VO,分析曝光模型、初值敏感度和嵌入式平台上的工程选型边界。

直接法 vs 特征法:信息、曝光与计算预算的权衡

选 VO 前端时,团队里常见两派:特征法「稳、可解释、ORB-SLAM 证明了能产品化」;直接法「信息量大、不用提点、DSO/LSD 精度好看」。我两种都上过真机,结论不是谁碾压谁,而是你的光照是否可控、有没有 IMU、能不能承受曝光建模的复杂度

残差定义决定一切

特征法(间接法):提取角点/边缘,建立 3D-2D 或 2D-2D 对应,最小化重投影误差:

text
r = π(K, T, P_j) - u_ij

稀疏、每像素信息只用一次,但对特征提取质量极度敏感——弱纹理、运动模糊、重复纹理都是天敌。

直接法:在已知/估计深度图上,最小化光度误差:

text
r = I_ref(u) - I_cur(w(u; T, d))

w 是 warp 函数,把参考帧像素投影到当前帧。每个像素都贡献约束,信息量大;但要求亮度恒定或仿射曝光模型,且对初值非常敏感——warp 错 5 像素,梯度指向错误方向。

特征法的工程画像

优点:

  • 对光照变化相对鲁棒(描述子 + 鲁棒核)
  • 天然支持回环(词袋)、重定位
  • 计算可预测:特征数上限可控

缺点:

  • 弱纹理场景特征数断崖(白墙、天空)
  • 子像素精度受检测器限制
  • 需要合理的 keyframe 策略保证视差

ORB-SLAM 系是特征法的标杆:四叉树均匀化、orientation histogram、DBoW2 回环。我在室内结构化环境用它很省心;一出户外强曝光变化,跟踪质量标志位就开始跳。

直接法的工程画像

LSD-SLAM(半稠密)、DSO(稀疏+光度)、SVO(半直接)代表不同取舍:

系统策略特点
LSD-SLAM半稠密直接深度滤波器维护,尺度漂移需回环
DSO稀疏直接 + 曝光参数联合优化 affine brightness,精度高
SVO直接前端 + 特征后端嵌入式友好折中

直接法的核心难点:

  • 曝光模型I_cur ≈ a · I_ref + b,需联合估计或严格控光
  • 初值:依赖 IMU 或高频 VO 给仿射 warp 好起点
  • 边缘/遮挡:光度一致性在物体边界失效,需 outlier 剔除

户外自动驾驶场景,纯直接法常配合 IMU 做紧耦合 VIO;室内 LED 频闪 + 自动曝光,直接法经常比特征法更脆。

半直接:务实的中间路线

SVO 的思路我挺认同:前端用直接法快速估位姿(不用提特征),后端用特征做 BA 和回环。算力紧的嵌入式平台(无人机、小型 AGV)常走这条路——前端 30Hz 直接跟踪,后端 5Hz 特征 BA。

选型决策(我的个人清单)

优先特征法

  • 室内外混合、曝光不可控
  • 需要词袋回环/重定位
  • 团队熟悉 ORB-SLAM 生态

可试直接/半直接

  • 光照可控(实验室、工厂固定照明)
  • 有 IMU 紧耦合给初值
  • 算力紧但要稠密/半稠密信息(避障)

无论选哪种

  • 相机标定必须准(直接法对畸变更敏感)
  • 监控跟踪质量指标:特征数 / 有效像素比例 / 残差中位数
  • 丢失跟踪的门控与恢复策略比前端算法选择更重要

容易想错的地方

「直接法不用提特征所以更快」——光度 warp + 金字塔 + 曝光参数联合优化,总计算量未必比 ORB 少。「特征法精度低」——在正确 BA 后端下,特征法 subpixel 精度足够导航;直接法精度优势主要在弱 IMU、高精度重建场景。

曝光与 HDR

工厂里天窗/强反光会让直接法在同一帧内同时过曝和欠曝,仿射曝光模型 (a,b) 也不够。这类场景我会直接放弃纯直接法,或加 polarizer / 固定曝光,而不是硬调 DSO 参数。

光度标定

直接法有时需要 camera response linearization(gamma)或 vignetting 补偿。工业相机固定 gamma 时 DSO 的 (a,b) 够用;手机/网络摄像头 auto gamma 下,直接法往往不如 ORB 稳——这不是算法劣化,是传感器不在模型假设里。

事件相机

事件相机(DVS)可视为极端直接法——对比度极性而非强度。传统 DSO 不直接适用,但「光度 vs 特征」的权衡在 event VO 里同样存在:信息密度高,但对标定和运动模型更挑剔。

小结

直接法吃光照和初值;特征法吃纹理和匹配。现场选型先问环境,再问论文 SOTA。

参考

  • Engel et al., LSD-SLAM / DSO
  • Forster et al., SVO: Fast Semi-Direct Monocular Visual Odometry
  • Mur-Artal et al., ORB-SLAM2 (特征法标杆)
← 全部文章

johan's blog