MASt3R

Leroy 2024 · 論文

一行要約 — DUSt3Rに高密度なローカル特徴ヘッドを追加することで画像マッチングを3Dに基礎付け、極端な視点変化に対する基盤モデルのロバスト性と、古典的なマッチャーのピクセル精度の対応関係とを組み合わせる。

問題

画像マッチングは、最も性能の高いすべての3D視覚パイプラインの中核的な構成要素である。しかし「マッチングは本質的に3Dの問題であり、カメラの姿勢やシーンの幾何と本質的に結びついているにもかかわらず、通常は2Dの問題として扱われている」。古典的および学習ベースの2Dマッチャーは極端な視点変化のもとで崩壊する — LoFTRはMap-freeでわずか34%のVCRE精度しか記録しない。DUSt3Rのポイントマップ回帰はまさにそうした条件下で驚くほどロバストであり、Map-freeのリーダーボードで首位に立つが、そのマッチは不正確である。これは回帰が本質的にノイズを含み、DUSt3Rがマッチングのために学習されたことがないためである。MASt3R(「Matching And Stereo 3D Reconstruction」)はロバスト性を保ちながら精度を修正する。

手法とアーキテクチャ

基盤(DUSt3Rフレームワーク): シャム構造のViTエンコーダ H1=Encoder(I1)H^1 = \text{Encoder}(I^1)H2=Encoder(I2)H^2 = \text{Encoder}(I^2)、クロスアテンションによって情報を交換する2つの絡み合ったデコーダ H1,H2=Decoder(H1,H2)H'^1, H'^2 = \text{Decoder}(H^1, H^2)、そしてエンコーダ/デコーダの特徴を連結したものからポイントマップと信頼度を回帰する3Dヘッド、X1,1,C1=Head3D1([H1,H1])X^{1,1}, C^1 = \text{Head}^1_{3D}([H^1, H'^1])。両方のポイントマップはカメラ1の座標系で表現される。

メトリック予測: DUSt3Rの回帰損失 regr(v,i)=Xiv,1/zX^iv,1/z^\ell_{\text{regr}}(v,i) = \| X_i^{v,1}/z - \hat{X}_i^{v,1}/\hat{z} \| は予測と正解の両方をスケール係数で正規化する。MASt3Rは正解がメトリックであるときは常に z:=z^z := \hat{z} とすることで、ネットワークがメトリックスケールの幾何を学習する — これはマップフリー位置推定の前提条件である。信頼度重み付き損失 Lconf=viCivregr(v,i)αlogCiv\mathcal{L}_{\text{conf}} = \sum_{v} \sum_{i} C_i^v \ell_{\text{regr}}(v,i) - \alpha \log C_i^v はそのまま保持される。

マッチングヘッド: 各デコーダに接続された新しいヘッド(GELUを持つ2層MLP、出力は単位ノルムに正規化)が高密度な dd 次元特徴マップ D1,D2RH×W×dD^1, D^2 \in \mathbb{R}^{H \times W \times d} を回帰する。これは正解対応 M^={(i,j)X^i1,1=X^j2,1}\hat{\mathcal{M}} = \{(i,j) \mid \hat{X}_i^{1,1} = \hat{X}_j^{2,1}\} に対するInfoNCE損失で学習される。

Lmatch=(i,j)M^logsτ(i,j)kP1sτ(k,j)+logsτ(i,j)kP2sτ(i,k),sτ(i,j)=exp[τDi1Dj2].\mathcal{L}_{\text{match}} = -\sum_{(i,j) \in \hat{\mathcal{M}}} \log \frac{s_\tau(i,j)}{\sum_{k \in \mathcal{P}^1} s_\tau(k,j)} + \log \frac{s_\tau(i,j)}{\sum_{k \in \mathcal{P}^2} s_\tau(i,k)}, \qquad s_\tau(i,j) = \exp\left[-\tau D_i^{1\top} D_j^2\right].

これは本質的にクロスエントロピー分類である。回帰とは対照的に、ネットワークは正確なピクセルを当てたときのみ報酬を得るため、高精度なディスクリプタが強制される。全体の目的関数は Ltotal=Lconf+βLmatch\mathcal{L}_{\text{total}} = \mathcal{L}_{\text{conf}} + \beta \mathcal{L}_{\text{match}} である。

高速相互マッチング(FRM): 相互最近傍 M={(i,j)j=NN2(Di1) and i=NN1(Dj2)}\mathcal{M} = \{(i,j) \mid j = \text{NN}_2(D_i^1) \text{ and } i = \text{NN}_1(D_j^2)\} を素朴に抽出すると O(W2H2)O(W^2H^2) のコストがかかる — ネットワーク推論自体よりも遅い。FRMは代わりに規則的なグリッド上の kk 個のピクセルから始め、NNの往復 UtVtUt+1U^t \to V^t \to U^{t+1} を反復し、出発点に戻るピクセル(サイクル=相互マッチ)を収集して収束したものをフィルタする。複雑度は O(kWH)O(kWH) に落ち、ほぼ2桁高速であり、収束の保証も持つ — そしてその暗黙的なアウトライアフィルタリングは、網羅的なマッチングよりも姿勢精度を向上させる

粗密マッチング: アテンションは画像面積に対して二次であるため、MASt3Rは最大辺512 pxまでしか扱えない。高解像度画像はまず粗くマッチングされ、その粗い対応が列挙された局所クロップのマッチングを導き、細かいマッチは元の解像度にマッピングされ戻される。

実験結果

SLAMにおける意義

MASt3RはDUSt3Rファミリーを再構成の興味深い実例から実用的なフロントエンドへと転換させた。単一のフォワードパスから対応関係とメトリックポイントマップを得られ、リロカリゼーション、SfM、SLAMに利用できる。SLAMパイプラインにおいては、特徴検出、記述、マッチング、2視点幾何という複数の古典的なステージを、失敗モードがコーナーの不足や視点変化ではなく基盤モデルのそれである単一の学習済みコンポーネントに凝縮する。これはMASt3R-SLAM、MASt3R-SfM、MASt3R-Fusionの直接の基盤である。

関連ノート