DPVO

Teed 2023 · 論文

一行要約 — DROID-SLAMのパッチベースかつ軽量な変種であり、疎なパッチトラッキングと微分可能バンドル調整の組み合わせが、密なオプティカルフローに匹敵するか、それを上回る性能を、はるかに小さいメモリと計算量で実現できることを示した。

問題

密なオプティカルフローに基づく深層VO(DROID-SLAM)は精度を劇的に向上させたが、「密なフローを使用することは大きな計算コストを伴い、これまでの手法の多くを実用上使いにくくしている」。DROIDのVOフロントエンドは8.7GBのGPUメモリを必要とし、高速な動きの際にはフレームレートが崩壊する。この分野では、そのコストは必要である——密なフローは「誤った対応に対する追加的な冗長性を提供する」と考えられていた。Deep Patch Visual Odometry(DPVO)はこの仮定を検証し、最終的にそれを反証することを目指した。

手法とアーキテクチャ

パッチ表現。 シーンは姿勢の集合TSE(3)N\mathbf{T} \in \mathbb{SE}(3)^Nと正方形のp×pp \times p画像パッチの集合として表される。各パッチは画素座標(x,y)(\mathbf{x}, \mathbf{y})とパッチ全体で共有される単一の逆深度d\mathbf{d}を持つ4×p24 \times p^2の同次配列として格納される(DSOと同様、フロントパラレル平面と見なす)。フレームiiのパッチkkは次式によりフレームjjに再投影される。

PkjKTjTi1K1Pk\mathbf{P}'_{kj} \sim \mathbf{K} \mathbf{T}_j \mathbf{T}_i^{-1} \mathbf{K}^{-1} \mathbf{P}_k

ここでK\mathbf{K}はキャリブレーション行列である。二部グラフであるパッチグラフは各パッチをその発生元フレームから距離rr以内にあるすべてのフレームへ連結する。パッチの軌跡はこれらの再投影の集合であり、グラフはフレームが到着するにつれて成長・縮小する。

特徴とパッチ。 二つの残差ネットワークが1/4解像度(2レベルピラミッド)でマッチング特徴とコンテキスト特徴を生成する。パッチはランダムな画素位置で切り出される——フレームあたり96個(Default)または48個(Fast)——アブレーションによれば、これはSIFT、ORB、SuperPoint、または勾配ベースの選択よりも優れた性能を示す。

再帰的更新演算子。 パッチグラフ上でエッジごとの隠れ状態を用いて、各反復では以下を実行する。(1)相関——再投影されたパッチの各画素について、フレーム特徴の7×77\times 7グリッドとの内積、Cuvαβ=guv, f(Pkj(u,v)+Δαβ)\mathbf{C}_{uv\alpha\beta} = \langle \mathbf{g}_{uv},\ \mathbf{f}(\mathbf{P}'_{kj}(u,v) + \Delta_{\alpha\beta}) \rangle;(2)各パッチ軌跡に沿った1次元時間畳み込み;(3)softmax集約——パッチまたはフレームを共有するエッジ間でのメッセージパッシングであり、密な手法が無償で得られる空間畳み込みを代替する;(4)遷移ブロック(ゲート付き残差ユニット+LayerNorm);(5)エッジごとに2次元の軌跡修正δkj\delta_{kj}と信頼度Σkj(0,1)2\Sigma_{kj} \in (0,1)^2を予測する因子ヘッド

微分可能バンドル調整。 姿勢とパッチの逆深度は、次式に対する2回のGauss-Newton反復(Schur補元、勾配は逆伝播)で更新される。

(k,j)Eω^ij(T,Pk)[P^kj+δkj]Σkj2\sum_{(k,j)\in\mathcal{E}} \left\lVert \hat{\omega}_{ij}(\mathbf{T}, \mathbf{P}_k) - [\hat{\mathbf{P}}'_{kj} + \delta_{kj}] \right\rVert^2_{\Sigma_{kj}}

これは誘導された再投影と予測されたパッチ中心再投影の間のマハラノビス距離であり、DROID-SLAMのDBAをはるかに小さい問題に適用したものである。

学習とシステム。 TartanAirでエンドツーエンドに学習(24万イテレーション、RTX-3090一台、3.5日)、損失はL=10Lpose+0.1Lflow\mathcal{L} = 10\mathcal{L}_{pose} + 0.1\mathcal{L}_{flow}であり、Lpose\mathcal{L}_{pose}はUmeyamaスケール整合後の相対姿勢を比較する。推論時:8フレームによる初期化、等速姿勢予測、フレームごとに1回の更新+2回のBA反復を10キーフレームウィンドウ(Fastでは7)にわたって実行、フローベースのキーフレーム削除を行う。ループクロージングや大域BAはない——そのギャップはDPV-SLAMによって埋められる。

実験結果

5回実行の中央値。2つの設定:Default(60FPS、4.9GB)とFast(120FPS、2.5GB)、いずれもRTX-3090上、DROID-VOは40FPS/8.7GB。

SLAMにおける意義

DPVOは微分可能BAベースの視覚オドメトリを、オフラインのGPU負荷の高い処理ではなく、リアルタイムロボティクスに実用可能なものにした。その疎なパッチ上での再帰的更新の設計は、MAC-VOやDPV-SLAMなどの後継システムに採用された(イベントカメラ向けのDEVOにも適応された)。これは学習型単眼VOの標準的な現代のベースラインである。このノートはレベル3(単眼システムとして)とレベル5(深層学習手法として)の両方に登場する。

関連ノート