DeepFactors
Czarnowski 2020 · 論文
一行要約 — DeepFactors(RA-L 2020)は、CodeSLAMの学習済みコンパクト深度コードを、初めてのリアルタイム確率的密モノキュラーSLAMシステムへと発展させたものであり、光度誤差・再投影誤差・疎な幾何誤差を標準的なファクターグラフソフトウェア上で同時にファクターとして用いる。
問題
モノキュラーSLAMは3つの軸に沿って分断されていた。シーン幾何の表現(疎なランドマーク対密なマップ)、多視点問題を最適化するために使う整合性指標(光度誤差対再投影誤差対幾何誤差)、そして学習された事前分布を使うかどうか、である。疎な手法はリアルタイムの結合確率推論を可能にするが、インタラクションには使えないマップしか得られない。密な手法は相互相関を捨て、トラッキングとマッピングを交互に行う。CodeSLAMはコンパクトコードのアイデアを実証したが、「フルSLAMの機能を欠き、リアルタイム性能を達成できず、実際のハンドヘルドカメラのシーンに一般化できなかった」。DeepFactorsはこれらのパラダイムを「リアルタイム性能を維持しつつ確率的フレームワークの中に統合する」。
手法とアーキテクチャ
各キーフレームは姿勢変数 とコード変数 を保持し、深度はコードから線形にデコードされるため、ファクターはコストのかかる再線形化を必要としない。
ここで はゼロコード深度、 は画像に条件付けられたヤコビアンである。ネットワーク(U-Net特徴抽出器+線形デコーダVAE、加えて初期化用の明示的なコード予測エンコーダとピクセルごとの不確実性 )は、コードサイズ32で256×192の解像度において約140万枚のScanNet画像で学習される。
3つのペアワイズ整合性誤差がファクターとなり、いずれも によるワープ の上に構築される:
ゼロコード事前分布ファクターは、コードをVAEのガウス潜在領域内に保つ。システムの流れ:入力フレームは、GPGPU上のSE(3) Lucas–Kanadeアライナー(約250 Hz)で最近傍キーフレームに対してトラッキングされる。新しいキーフレームはコード予測ネットワークから初期化され、直近N個のキーフレームとペアワイズファクターで接続される。マップ全体は、iSAM2の増分ベイズ木更新(GTSAM)によりバッチMAP問題として最適化される。軽量な「一方向」フレーム(自身の深度を持たない)は、追加の光度エビデンスを最新のキーフレームに供給し、その後周辺化される。ローカルループ(直近10キーフレーム内の姿勢基準)とグローバルループ(バグオブワーズ+トラッキング検証、再投影ファクターのみ)はオンラインでクローズされる。
実験結果
- ScanNet検証シーンでのファクターアブレーション(Table I):すべてのファクターが有効であり、再投影誤差は主に軌跡に、幾何誤差は主に再構成に寄与する。scene0084_00ではATE-RMSEが0.131 m(光度のみ)から0.061 m(統合)に低下し、pc110は69.14%→73.66%に上昇する。
- 再構成(ICL-NUIM+TUM、真値の10%以内にある深度の割合、推定軌跡全体):平均27.10、対してCNN-SLAMは19.77、Lainaは14.62、LSD-BSは3.44(Table II)。
- 軌跡(TUM fr1、ATE m):fr1/360で0.142(対CNN-SLAM 0.500);fr1/rpyで0.047(対0.261);すべての系列でCodeSLAMを上回る(fr1/deskで0.119対0.654)、リアルタイムでない DeepTAM(fr1/deskで0.078)に匹敵しつつリアルタイムで動作する(Table III)。
- GTX 1080単体でのタイミング:トラッキングは約250 Hz;キーフレームごとのネットワーク処理は約340 ms、そのうち順伝播はわずか16 ms(残りはtf.gradientsによるコードヤコビアン計算)。オープンソースとして公開。
SLAMにおける意義
DeepFactorsは、潜在コードマッピングの系譜(CodeSLAM)と主流のファクターグラフSLAMエンジニアリングとの橋渡しである。学習された密な幾何が、専用のオプティマイザではなく、古典的な制約と同じ確率的バックエンドの中に存在できることを示した。実用的には、直接法・特徴点ベース・学習事前分布の手がかりを組み合わせることで、密モノキュラーSLAMがより頑健になり不確実性を考慮できるようになることを実証した。さらに、標準的なファクターグラフの設計により他のセンサモダリティの追加が容易になるという、後のハイブリッドシステムに引き継がれる設計思想を示した。
関連ノート
- CodeSLAM
- SceneCode
- CodeMapping
- CNN-SLAM — 比較対象となるリアルタイム学習事前分布ベースライン
- DeepTAM — 学習された密トラッキング/マッピングのベースライン
- Factor graph
- Marginalization