NodeSLAM

Sucar 2020 · 論文

一行要約 — 検出された各物体を、クラス条件付きVAEによってデコードされるコンパクトな学習済み占有コードとして表現するオブジェクトレベルSLAMであり、新規の確率的微分可能レンダラーを用いて物体形状・物体姿勢・カメラ軌跡を同時に最適化する。

問題

シーン表現の選択は、SLAMシステムが必要とする推論アルゴリズムと、それが可能にするアプリケーションの両方を決定する。点群やサーフェル地図には物体の同定・姿勢・完全な形状という概念がない——しかしロボットがマグカップを把持したり箱を詰めたりするには、まさにそれらが必要である。古典的な再構成は直接観測された表面のみを復元でき、フィードフォワード型の形状予測は複数の測定を原理的な方法で統合できない。NodeSLAMは、1枚以上のRGB-D画像から、SLAM様の同時推定の内部で原理的な完全な物体形状推論を行うことを目指し、物体ごとのTSDFシステム(Fusion++)とCADモデルインスタンスシステムの間のギャップを埋める。

手法とアーキテクチャ

形状モデル。 単一のクラス条件付き3D CNN VAE(畳み込み層5層、カーネル4、ストライド2;左右対称なデコーダ)が、4つの卓上物体クラス(マグカップ、ボウル、ボトル、缶)について 32×32×3232\times 32\times 32 サイズのShapeNet占有グリッド上で学習される。KL潜在損失とバイナリクロスエントロピー再構成損失を用いる。地図中の各物体は、サイズ16の潜在コード d\mathbf{d} と9自由度の姿勢(回転、並進、スケール)で表される。

確率的レンダリング(測定関数)。各ピクセルについて、逆投影された光線に沿って MM 個の深度 δ^i\hat{\delta}_i をサンプリングし、デコードされたグリッドから三線形補間された占有値 oio_i を取得する。光線の終端確率と脱出確率は

ϕi=p(D[u,v]=δ^i)=oij=1i1(1oj),ϕM+1=j=1M(1oj),\phi_i = p(\mathbf{D}[u,v] = \hat{\delta}_i) = o_i \prod_{j=1}^{i-1}(1-o_j), \qquad \phi_{M+1} = \prod_{j=1}^{M}(1-o_j),

であり、レンダリングされた深度とピクセル単位の不確実性はこの分布の平均と分散として得られる:

δ^μ[u,v]=i=1M+1ϕiδ^i,δ^var[u,v]=i=1M+1ϕi(δ^iD[u,v])2.\hat{\delta}_{\mu}[u,v] = \sum_{i=1}^{M+1}\phi_i\,\hat{\delta}_i, \qquad \hat{\delta}_{var}[u,v] = \sum_{i=1}^{M+1}\phi_i\,(\hat{\delta}_i - D[u,v])^2 .

複数物体のレンダリングは最小深度によって統合され(遮蔽処理)、4レベルのガウシアンピラミッドが受容野を拡大し、粗から精細への最適化を可能にする。

推論。 コードに対するガウス事前分布のもとで、MAP問題はレーベンバーグ・マルカート法で解かれる最小二乗目的関数となる:

mind,TCGu,v(δ[u,v]δ^μ[u,v])2δ^var[u,v]+idi2.\min_{\mathbf{d},\,T_{CG}} \sum_{u,v} \frac{(\delta[u,v] - \hat{\delta}_{\mu}[u,v])^2}{\hat{\delta}_{var}[u,v]} + \sum_i \mathbf{d}_i^2 .

並進とスケールはマスク化された点群から初期化され、向きは検出された支持平面から初期化される(マグカップのヨー角にはCNNを併用)。d=0\mathbf{d}=0(クラス平均形状)とする。

SLAMループ。 Mask R-CNNのマスクは2段階(前フレームのマスクIoU>0.2、その後レンダリングされたマスクIoU)で地図上の物体に関連付けられ、マッチしないマスクは新たな物体を生成する。カメラトラッキングは、地図を固定した状態で同じレンダリング損失を最小化する。キーフレーム(物体が初期化された時、または視点変化が13°を超えた時に生成)は、カメラ姿勢・物体姿勢・形状コードに関する3キーフレームのスライディングウィンドウ同時最適化に入る:Ljoint=jLrenderj+iLprioriL_{joint} = \sum_j L_{render}^j + \sum_i L_{prior}^i。処理時間:物体1個のレンダリングに7ms、完全な物体再構成に約1.5秒、トラッキング7fps、同時最適化2秒。

実験結果

SLAMにおける意義

NodeSLAMは現代のオブジェクトレベルSLAMのパラダイムを確立した:学習された形状事前知識を、古典的な同時推定内の最適化可能な地図変数として扱い、微分可能レンダリングを測定モデルとして用いる——これは後の神経フィールドSLAMを支える「レンダラーを逆転させる」考え方と同じである。姿勢を伴う完全な物体モデルは、生の断片的な幾何情報とは異なり、ロボットマニピュレーションが必要とするものそのものである。これは、コードベースの密なSLAM(CodeSLAM)から、物体中心の神経フィールドマッピング(vMAP)やDSP-SLAMのようなDeepSDFベースのシステムへの概念的な橋渡しである。

関連ノート