Visual-SLAM why filter?

Strasdat 2012 · 論文

一行要約 — キーフレームベースのバンドル調整が、計算時間の単位あたりでフィルタリングよりも高い精度を与えることを厳密に示し、視覚SLAMがフィルタリングから最適化へと移行するパラダイムシフトを形式化した。

問題

2012年当時、リアルタイム単眼SLAMには2つの実用的な手法があった。MonoSLAM(2007)はEKFを用いてカメラ姿勢とランドマークを同時に推定し、PTAM(2007)はキーフレームベースのバンドル調整を導入した。両者ともリアルタイムで動作したが、この分野には両者を原理的に比較する研究が欠けていた。この2つのパラダイムはSLAMグラフに対して正反対の構造的選択を行う。フィルタリングは過去のすべての姿勢をマージナライズし、現在の姿勢とすべてのランドマークに対する密な同時分布を残す。一方キーフレームBAは非キーフレームの姿勢とその観測値を単純に捨て、問題を疎に保つ。Strasdat、Montiel、Davisonは問いを立てた。同じ計算予算のもとで、どちらの選択がより多くの精度を得られるのか?

手法とアーキテクチャ

慎重に対応付けられた2つのパイプラインが、いずれもモンテカルロシミュレーションで実装・実行される。

BA-SLAM: 各キーフレームで、特徴が視野から外れた箇所に置き換え点を初期化し、モーションオンリーBAで姿勢を推定し、structure-onlyBAで点を精緻化した後、すべてを同時に最適化する(g2o、Schur補元を用いたLevenberg–Marquardt法):

χ2(y)=zi,jZ0:i(zi,jz^(Ti,xj))2,χ2(Ti)=zjZi(zjz^(Ti,xj))2,\chi^2(\mathbf{y}) = \sum_{\mathbf{z}_{i,j} \in Z_{0:i}} \big(\mathbf{z}_{i,j} - \hat{\mathbf{z}}(\mathbf{T}_i, \mathbf{x}_j)\big)^2, \qquad \chi^2(\mathbf{T}_i) = \sum_{\mathbf{z}_j \in Z_i} \big(\mathbf{z}_j - \hat{\mathbf{z}}(\mathbf{T}_i, \mathbf{x}_j)\big)^2,

これは y=(T1,...,Ti,X)\mathbf{y} = (\mathbf{T}_1, ..., \mathbf{T}_i, \mathcal{X})^\top に対するもので、最初のフレームがゲージとして固定される。

Filter-SLAM: フィルタリングにとって最良のケースとなるよう意図的に構築された、最新のGauss–Newton情報フィルタである。点はアンカー付き逆深度座標 ψj:=inv_d(Aa(j)xj)\boldsymbol{\psi}_j := \mathrm{inv\_d}(A_{a(j)}\, \mathbf{x}_j) を用いる(inv_d(a)=1a3(a1,a2,1)\mathrm{inv\_d}(\mathbf{a}) = \frac{1}{a_3}(a_1, a_2, 1)^\top)。各更新は、ガウス地図事前分布に対する観測残差を最小化する:

χ2(Φi,Ti)=(ΦiΦi1)ΛΦi1(ΦiΦi1)+zjZidjΛzdj,\chi^2(\Phi_i, \mathbf{T}_i) = (\Phi_i \boxminus \Phi_{i-1})^\top \Lambda_{\Phi_{i-1}} (\Phi_i \boxminus \Phi_{i-1}) + \sum_{\mathbf{z}_j \in Z_i} \mathbf{d}_j^\top \Lambda_z \mathbf{d}_j,

その後、情報行列の更新 Λi=Λi1+Ddiag(Σz1,)D\Lambda_i = \Lambda_{i-1} + D^\top \mathrm{diag}(\Sigma_z^{-1}, \ldots)\, D が行われる(DDは積み重ねられた再投影ヤコビアン)。フィルタを特徴づける決定的な性質は、吸収された観測値の線形化点が永久に固定される点である。これに対しBAは各イテレーションで全てを再線形化する。

評価指標。 精度は終端姿勢の並進誤差であり、RMSEとして、また最も弱い設定に対するエントロピー削減量(ビット単位)として測定される。

E=12log2det(ΣMmin,15)det(ΣM,N),E = \frac{1}{2} \log_2 \frac{\det(\Sigma_{\langle M_{\min},\,15 \rangle})}{\det(\Sigma_{\langle M,N \rangle})},

これは中間フレーム数 MMと点数 NNを変化させて評価される。効率は計算1秒あたりのエントロピー削減量(E/cE/c、ビット毎秒)である。漸近的計算量:BAのコストは O(NM2+M3)O(NM^2 + M^3)(Schur補元+縮約カメラ系)、フィルタリングのコストは O(MN3)O(MN^3)――点数に関して線形か三次かという違いである。4種類のカメラ運動が検証される(全シーン重複での横移動、部分重複での横移動、横移動+30°回転、急激な前進旋回)。各運動は単眼・ステレオの両方で、σz=12\sigma_z = \frac{1}{2}ピクセルの観測雑音のもとで試験される。

実験結果

SLAMにおける意義

この論文は、PTAMが実証的に示した移行に対する理論的根拠を提供し、キーフレームベースのバンドル調整を視覚SLAMの標準的なバックエンドとして確立した。ORB-SLAM、LSD-SLAM、DSO、そして事実上その後のすべてのシステムがこの結論の上に構築されており、その精度対予算という方法論はSLAM設計選択を論じる際の標準的な手法となった。今日でも重要なニュアンスがある点に注意したい。この議論は多数のランドマークを持つビジョンのみのSLAMに関するものであり、密結合のVIOシステムは今なおフィルタ(例:MSCKF)を使用している。トレードオフが異なるからである。そして著者自身も、この主張の範囲をローカルSLAMに限定し、ループ閉じ込みは外観ベースの手法に委ねている。

関連ノート