MonoRec

Wimbauer 2021 · 論文

一行要約 — 単一の移動カメラから密な3D再構成を行う半教師あり手法で、マルチビューステレオのコストボリュームにおけるフォトメトリック不整合から移動物体を検出することで、動的な環境に対応する。

問題

マルチビューステレオは単一の移動カメラから幾何学的に根拠のある密な深度を得られるが、静的シーンを仮定している。移動する車や歩行者はマルチビュー制約に反し、まさに自律システムが最も重視する場所でコストボリュームを破壊してしまう。単一画像の深度予測は移動物体には対応できるが、特定のカメラ内部パラメータに紐づく学習済みの見え方に依存するため、汎化性能が低い。もう一つの障害は教師信号であり、密な正解データを得るにはLiDARが必要になる。MonoRecはこの両方を目標とする:動的シーンにおける密な再構成を、LiDARの深度値を使わずに学習する。

手法とアーキテクチャ

疎なVOシステム(DVSO)から得た姿勢を伴う連続フレーム {I1,,IN}\{I_1,\dots,I_N\} が与えられると、MonoRecはキーフレーム ItI_t に対する密な逆深度マップ DtD_t を予測する。2つのモジュールがプレーンスイープコストボリューム上で動作する。

SSIMコストボリューム。 通常のパッチ単位SADの代わりに、深度仮説 dd でのピクセル単位フォトメトリック誤差は 3×33\times3 パッチでのSSIMを用いる:pe(x,d)=1SSIM(Itt(x,d),It(x))2pe(\mathbf{x},d)=\frac{1-\text{SSIM}(I_{t^{\prime}}^{t}(\mathbf{x},d),I_{t}(\mathbf{x}))}{2}。これを複数フレームにわたって集約すると

C(x,d)=121tωttpett(x,d)ωt(x)C(\mathbf{x},d)=1-2\cdot\frac{1}{\sum_{t^{\prime}}\omega_{t^{\prime}}}\cdot\sum_{t^{\prime}}pe_{t^{\prime}}^{t}(\mathbf{x},d)\cdot\omega_{t^{\prime}}(\mathbf{x})

となる。ここで重み ωt(x)\omega_{t'}(\mathbf{x}) は、他の深度ステップと比較してそのフレームのフォトメトリック誤差最小値を強調するため、確信度の高いフレームがより重視される;C[1,1]C\in[-1,1]

MaskModule。 単一フレームのコストボリューム集合 CtC_{t'} から、ピクセルが移動物体に属する確率 Mt(x)[0,1]M_t(\mathbf{x})\in[0,1] を予測する。動的ピクセルは異なる CtC_{t'} 間で不整合な最適深度ステップを生じさせる。ItI_t の事前学習済みResNet-18特徴量がセマンティックな事前知識を加える(幾何情報のみでは低テクスチャ・非ランバート面や等速物体を混同してしまうため)。共有重みのU-Netエンコーダが各 CtC_{t'} を処理し、特徴量をmax poolingしてデコードする——そのためこのモジュールは任意の数のフレームに対応できる。

DepthModule。 各深度ステップで予測されたマスクとピクセル単位で乗算されたマルチフレームコストボリューム CC を受け取る——これにより移動物体領域には(強い事前知識に基づく)極値が残らなくなる——これを ItI_t と連結し、U-Netがマルチスケールの逆深度をデコードする。これにより、移動物体の深度を画像特徴量と周辺情報から推論するよう強制される。

多段階の半教師あり学習。 ブートストラッピングでは、DepthModuleを Ldepth=s=03Lself,s+αLsparse,s+βLsmooth,s\mathcal{L}_{depth}=\sum_{s=0}^{3}\mathcal{L}_{self,s}+\alpha\mathcal{L}_{sparse,s}+\beta\mathcal{L}_{smooth,s} で学習する。これは時間方向および静的ステレオの再投影に対するピクセル単位最小フォトメトリック損失を組み合わせたものである:

Lself,s=mintt{tS}(λ1SSIM(Itt,It)2+(1λ)IttIt1),λ=0.85\mathcal{L}_{self,s}=\min_{t^{\star}\in t^{\prime}\cup\{t^{S}\}}\Big(\lambda\tfrac{1-\text{SSIM}(I_{t^{\star}}^{t},I_{t})}{2}+(1-\lambda)\,\lVert I_{t^{\star}}^{t}-I_{t}\rVert_{1}\Big),\quad \lambda=0.85

VO点群からの疎な深度教師信号 Lsparse,s=DtDVO1\mathcal{L}_{sparse,s}=\lVert D_{t}-D_{VO}\rVert_{1} を伴う——LiDARも手動ラベルも不要である。MaskModuleは補助マスク(移動物体としてフラグ付けされたMask-RCNNの可動インスタンス、時間方向・静的ステレオの不整合により判定)でブートストラップされる。続く精緻化ステージでは両モジュールを結合する:マスクは静的ステレオ損失と時間方向ステレオ損失の間の補間係数として学習され(Lm_ref\mathcal{L}_{m\_ref})、深度の精緻化は移動ピクセルに対する静的ステレオ損失のみとステレオ深度事前知識を逆伝播する(Ld_ref\mathcal{L}_{d\_ref})。

実験結果

SLAMにおける意義

実世界での密な単眼再構成は車や歩行者に対応しなければならない。MonoRecは、コストボリューム自体がそれらを見つけるために必要な証拠を含んでいることを示し、推論時にセマンティック検出器を後付けするのではなく、動的物体検出を深度推定と統合した。TUMの直接法SLAMグループから生まれたこの手法は、意図的に任意の疎なVOシステムから姿勢を取り込む(姿勢を入力とし、密な地図を出力とする)設計となっており、TANDEMなど後続のリアルタイム密な地図生成研究に影響を与えた。

関連ノート