DSO

Engel 2016 · 论文

一句话总结 — 直接稀疏里程计(Direct Sparse Odometry)在一组稀疏、均匀分布的高梯度像素上执行窗口化的光度光束法平差,将完全直接的概率模型与对所有模型参数的一致联合优化结合起来。

问题

在DSO之前,直接法和稀疏法这两个阵营各自只拿到了一半的成果。LSD-SLAM进行光度跟踪,但用滤波和位姿图来细化几何结构,从未联合优化结构和运动;基于特征的方法(ORB-SLAM)执行完整的光束法平差,但把图像简化为关键点。DSO将”一个完全直接的概率模型(最小化光度误差)与对所有模型参数——位姿、逆深度、内参以及逐帧亮度——的一致联合优化”结合在一起,并做到实时,这得益于”省去了其他直接法所使用的平滑先验,转而在图像中均匀采样像素”。

方法与架构

Epj:=pNpwp(Ij[p]bj)tjeajtieai(Ii[p]bi)γ,E_{\mathbf{p}j} := \sum_{\mathbf{p}\in\mathcal{N}_{\mathbf{p}}} w_{\mathbf{p}} \left\| (I_j[\mathbf{p}'] - b_j) - \frac{t_j e^{a_j}}{t_i e^{a_i}} (I_i[\mathbf{p}] - b_i) \right\|_{\gamma},

其中 p=Πc(RΠc1(p,dp)+t)\mathbf{p}' = \Pi_{\mathbf{c}}\big(\mathbf{R}\, \Pi_{\mathbf{c}}^{-1}(\mathbf{p}, d_{\mathbf{p}}) + \mathbf{t}\big) 是以逆深度 dpd_{\mathbf{p}} 和相对位姿 TjTi1\mathbf{T}_j \mathbf{T}_i^{-1} 得到的重投影;a,ba, b 为仿射亮度参数(采用对数参数化以防止漂移),γ\|\cdot\|_\gamma 为Huber范数,而 wp=c2/(c2+Ii(p)22)w_{\mathbf{p}} = c^2 / (c^2 + \|\nabla I_i(\mathbf{p})\|_2^2) 对高梯度像素进行降权(隐式的几何噪声)。总能量为

Ephoto:=iFpPijobs(p)Epj,E_{\text{photo}} := \sum_{i\in\mathcal{F}} \sum_{\mathbf{p}\in\mathcal{P}_i} \sum_{j\in\mathrm{obs}(\mathbf{p})} E_{\mathbf{p}j},

在滑动窗口上通过高斯-牛顿法优化;每个点只有一个未知量(其宿主帧中的逆深度),因此经过Schur补化简后,该系统的求解方式与经典的稀疏BA相同。

实验结果

在三个数据集上评测,每个序列均正向和反向各运行一次(TUM monoVO——50个经过光度标定的序列,105分钟,共500次运行;EuRoC MAV——11个序列,19分钟,共220次运行;ICL-NUIM——8个序列,4.5分钟,共80次运行),以同时体现精度和鲁棒性的累积误差曲线来报告:

对SLAM的意义

DSO是直接稀疏方法的定论之作,终结了由DTAM和LSD-SLAM开启的时代,并与ORB-SLAM并列成为两种经典基线方法之一(直接法对特征法)。它的方案催生了整整一个家族——LDSO、Stereo DSO、VI-DSO、DVSO、D3VO、DM-VIO——其关于光度标定、固定切点边缘化以及滑动窗口设计的思想,至今仍是里程计系统中的标准实践。

相关条目