ORB-SLAM

Mur-Artal 2015 · 論文

一行要約 — トラッキング、マッピング、リローカリゼーション、ループ閉じ込みのすべてのタスクにORB特徴点を用いる、完全で汎用性の高いモノキュラーSLAMシステム。自動初期化と適者生存型のマップ管理を備える。

問題

従来のモノキュラーSLAMシステムは、それぞれ問題の一部分しか解決していなかった。PTAMはキーフレームBAを備えていたがループ閉じ込みがなく、パッチ特徴は場所認識に使えず、初期化も手動だった。他のシステムは大規模環境を扱えなかったり、トラッキング失敗からの復帰ができなかった。ORB-SLAM(IEEE TRO 2015、サラゴサ大学)は、PTAMの主要アイデア、DBoW2による場所認識、スケールを考慮したループ閉じ込みを基盤として、これらすべてを一つの統一されたフレームワークで解決し、屋内・屋外を問わず小規模・大規模環境においてリアルタイムに動作する。

手法とアーキテクチャ

すべてを一つの特徴点でこなす。 同じORB特徴点(oriented FAST + rotated BRIEF、Hamming距離でマッチング)がトラッキング、マッピング、リローカリゼーション、ループ検出のすべてに利用されるため、作業の重複がない。

自動初期化。 同じ対応点 xcxr\mathbf{x}_c \leftrightarrow \mathbf{x}_r から、ホモグラフィと基礎行列が並行して計算される。すなわち xc=Hcrxr\mathbf{x}_c = \mathbf{H}_{cr}\,\mathbf{x}_rxcFcrxr=0\mathbf{x}_c^{\top}\mathbf{F}_{cr}\,\mathbf{x}_r = 0 であり、それぞれ外れ値を打ち切るカーネルを用いた対称転送誤差で評価される:

SM=i(ρM(dcr2(xci,xri,M))+ρM(drc2(xci,xri,M))),ρM(d2)={Γd2if d2<TM0if d2TMS_M = \sum_i \Big( \rho_M\big(d_{cr}^2(\mathbf{x}_c^i, \mathbf{x}_r^i, M)\big) + \rho_M\big(d_{rc}^2(\mathbf{x}_c^i, \mathbf{x}_r^i, M)\big) \Big), \qquad \rho_M(d^2) = \begin{cases} \Gamma - d^2 & \text{if } d^2 < T_M \\ 0 & \text{if } d^2 \geq T_M \end{cases}

ここで χ2\chi^2 の閾値は TH=5.99T_H = 5.99TF=3.84T_F = 3.84 である。ヒューリスティック RH=SHSH+SFR_H = \frac{S_H}{S_H + S_F} により、RH>0.45R_H > 0.45 の場合(平面的・低視差シーン)はホモグラフィが選ばれ、それ以外の場合は基礎行列が選ばれる(Erc=KFrcK\mathbf{E}_{rc} = \mathbf{K}^{\top}\mathbf{F}_{rc}\,\mathbf{K})。縮退した、あるいは曖昧な構成は検出され、初期化は延期される。

3つの並列スレッド。

C=i,jρh(ei,jΩi,j1ei,j),ei,j=xi,jπi(Tiw,Xw,j),C = \sum_{i,j} \rho_h\big(\mathbf{e}_{i,j}^{\top}\,\mathbf{\Omega}_{i,j}^{-1}\,\mathbf{e}_{i,j}\big), \qquad \mathbf{e}_{i,j} = \mathbf{x}_{i,j} - \pi_i(\mathbf{T}_{iw}, \mathbf{X}_{w,j}),

Huberカーネル ρh\rho_h を用い、Ωi,j=σi,j2I2×2\mathbf{\Omega}_{i,j} = \sigma_{i,j}^2 \mathbf{I}_{2\times 2} はキーポイントのピラミッドスケールに結びついている。キーフレームは(例えばフレームが参照キーフレームの点の90%未満しか追跡できなくなった場合など)積極的に挿入される。

C=i,jei,jΛi,jei,j,ei,j=logSim(3)(SijSjwSiw1)R7,C = \sum_{i,j} \mathbf{e}_{i,j}^{\top} \mathbf{\Lambda}_{i,j}\, \mathbf{e}_{i,j}, \qquad \mathbf{e}_{i,j} = \log_{\mathrm{Sim}(3)}\big(\mathbf{S}_{ij}\,\mathbf{S}_{jw}\,\mathbf{S}_{iw}^{-1}\big) \in \mathbb{R}^7,

その後任意でフルBAを実行する。

実験結果

すべての実験はIntel Core i7-4700MQ(4コア@2.40 GHz)、8GB RAMで、画像を実際のフレームレートで処理して行われた:

SLAMにおける意義

ORB-SLAMは、10年分の最良のアイデア — PTAMの並列トラッキング/マッピング、キーフレームBA、バグオブワーズ場所認識、共視性、Sim(3)ループ閉じ込み — を一つのロバストなオープンソースシステムに統合し、長年にわたりモノキュラーSLAMの事実上の標準ベースラインとなった。そのH/F初期化、共視性/essentialグラフの仕組み、適者生存型の間引きは、その後のほぼすべての特徴点ベースシステムに採用され、今日でもSLAMベンチマークの基盤となっているORB-SLAM2/3系列を生み出した。

関連ノート