RAFT-3D

Teed 2021 · 論文

一行要約 — RAFTを2Dオプティカルフローから3Dシーンフローへ拡張し、画素単位の SE(3)SE(3) 剛体運動の密なフィールドを反復的に精緻化する。学習された剛体運動埋め込みと、幾何的整合性を強制する微分可能なDense-SE3最適化層を用いる。

問題

シーンフロー — ステレオまたはRGB-Dの映像フレーム対が与えられたとき、画素単位の3D運動を推定すること — は、ロボットがカメラの自己運動と独立に動く物体を分離するために必要とするものである。実世界のシーンは主に剛体的に運動する物体の集合であるため、その3D運動場は SE(3)SE(3) において区分的に一定であるが、既存の手法は制約のない点ごとの並進を予測する(例: FlowNet3D)か、物体検出/インスタンスセグメンテーションネットワークを介して剛性を利用する — これはインスタンスの教師信号を必要とし、未知の物体を扱えず、パイプラインに非微分可能な要素を持ち込む。RAFT-3Dは、インスタンスラベルを一切用いずに、剛性の事前分布をRAFTスタイルの密なアーキテクチャに組み込む方法を問う。

手法とアーキテクチャ

入力: 2組のRGB-Dペア (I1,Z1)(I_1, Z_1)(I2,Z2)(I_2, Z_2)(ステレオ入力の場合、深度は既製のステレオネットワークGA-Netから得られる)。出力: 密な変換フィールド TSE(3)H×W\mathbf{T} \in SE(3)^{H \times W}。3D点をピクセル座標と逆深度 d=1/Zd = 1/Z にマッピングする拡張ピンホール投影 π\pi を用いると、このフィールドは以下の対応関係を誘導する:

xi=π(Tiπ1(xi))\mathbf{x}_i' = \pi(\mathbf{T}_i \cdot \pi^{-1}(\mathbf{x}_i))

xixi\mathbf{x}_i' - \mathbf{x}_i の最初の2成分はオプティカルフローであり、3番目の成分は逆深度の変化である。

aij=2σ(vivj2)[0,1]a_{ij} = 2\,\sigma(-\lVert \mathbf{v}_i - \mathbf{v}_j \rVert^2) \in [0, 1]

そして各ピクセルの変換は、重み付き再投影目的関数に対する1回のGauss-Newtonステップによって更新される:

E(δ)=iΩjNiaijrj+π(TjXj)π(eδiTiXj)wj2E(\delta) = \sum_{i \in \Omega} \sum_{j \in \mathcal{N}_i} a_{ij} \left\lVert \mathbf{r}_j + \pi(\mathbf{T}_j \mathbf{X}_j) - \pi(e^{\delta_i} \mathbf{T}_i \mathbf{X}_j) \right\rVert^2_{w_j}

すなわち各ピクセルは、その近傍を説明できる運動を探索する — ただし類似した埋め込みを持つペアのみが寄与する。すべての項が単一の Ti\mathbf{T}_i にのみ関わるため、巨大な系(FlyingThings3D解像度で2億の方程式)は H×WH \times W 個の独立した6変数問題に分解され、CUDA上でインプレースに構築される。12回のGRU反復で12回のGauss-Newton更新が得られる。

実験結果

SLAMにおける意義

動的環境はSLAMの中核的な失敗モードである: 動く物体は自己運動推定の背後にある静的世界の仮定に反する。RAFT-3Dの画素単位の剛体運動フィールドは、動的物体をセグメンテーションし、カメラとは別にその運動を推定するために必要な表現をまさに提供する — これは動的SLAMシステム(VDO-SLAM、DynaSLAM II)が検出器ベースのパイプラインで取り組んでいるのと同じ問題を、インスタンスの教師信号なしで解いている。学習された反復的精緻化と、埋め込まれた微分可能な幾何最適化層の組み合わせは、RAFTから同じ著者らによるDROID-SLAMへの直接的な系譜上にある。

関連ノート