NICER-SLAM

Zhu 2024 · 論文

一行要約 — カメラ姿勢と階層的SDFマップを同時最適化するRGBのみのニューラル陰関数SLAMシステムであり、欠けている深度センサーを単眼深度/法線事前分布、オプティカルフロー、ワーピング損失で置き換える——RGB-Dシステムと競合する再構成品質を達成。

問題

ニューラル陰関数SLAMシステムは「RGB-Dセンサーに依存するか、カメラトラッキングのために別個の単眼SLAM手法を必要とし、かつ高精細な密な3Dシーン再構成を生成できない」(概要より)。RGBのみのSLAMは、論文が指摘する3つの理由でより難しい。深度の曖昧さ(特にテクスチャがない場合、色に一致する対応が多数存在する)、局所化されにくい表面推定、そして制約が少なく収束が遅い最適化である。論文が提起する問いは、単眼RGB動画からのトラッキングとマッピングの両方に単一のニューラル陰関数表現を用いる統合的な密なSLAMシステムは可能か、である。

手法とアーキテクチャ

階層的SDF+色表現。 粗い密なボクセルグリッド(32332^3、32次元特徴)と小さなMLPfcoarsef^{\text{coarse}}が基底SDFを与える。多解像度の細グリッド(L=8L=8レベル、解像度Rl=RminblR_l = \lfloor R_{\min} b^{l} \rfloorRmin=32R_{\min}=32からRmax=128R_{\max}=128まで幾何的に配置)とffinef^{\text{fine}}が残差を予測し、最終的なSDFは次式となる。

s^=scoarse+Δs.\hat{s} = s^{\text{coarse}} + \Delta s.

色は独自の多解像度グリッド(L=16L=16、最大Rmax=2048R_{\max}=2048)とデコーダーc^=fcolor(x,n^,γ(v),zcoarse,zfine,{Φlcolor(x)})\hat{\mathbf{c}} = f^{\text{color}}\bigl(\mathbf{x}, \hat{\mathbf{n}}, \gamma(\mathbf{v}), \mathbf{z}^{\text{coarse}}, \mathbf{z}^{\text{fine}}, \{\Phi^{\text{color}}_l(\mathbf{x})\}\bigr)を用い、SDFから導かれる法線n^\hat{\mathbf{n}}と視線方向v\mathbf{v}を条件とする。

局所適応SDF-密度変換によるボリュームレンダリング。 SDFサンプルはVolSDF変換σβ(s)\sigma_\beta(s)(s0s\le 0では指数減衰、s>0s>0では1β(112exp(sβ))\frac{1}{\beta}\bigl(1-\frac{1}{2}\exp(-\frac{s}{\beta})\bigr))によって密度に変換され、色/深度/法線はアルファ合成される: C^=i=1NTiαic^i\hat{C} = \sum_{i=1}^{N} T_i \alpha_i \hat{\mathbf{c}}_iαi=1exp(σiδi)\alpha_i = 1-\exp(-\sigma_i\delta_i)Ti=j=1i1(1αj)T_i = \prod_{j=1}^{i-1}(1-\alpha_j)。VolSDFの単一の大域的β\betaの代わりに、ボクセルごと(64364^3)のサンプル数カウンターTpT_pがシャープネスを局所的に設定する。

β=c0exp(c1Tp)+c2,\beta = c_0 \cdot \exp(-c_1 \cdot T_p) + c_2,

こうして、よく観測された領域は鮮明な表面をレンダリングし、ほとんど観測されていない領域は柔らかいままとなる。

深度センサーを置き換える損失。 マッピングは次式を最小化する。

L=Lrgb+0.5Lwarp+0.001Lflow+0.1Ldepth+0.05Lnormal+0.1Leikonal,\mathcal{L} = \mathcal{L}_{\text{rgb}} + 0.5\,\mathcal{L}_{\text{warp}} + 0.001\,\mathcal{L}_{\text{flow}} + 0.1\,\mathcal{L}_{\text{depth}} + 0.05\,\mathcal{L}_{\text{normal}} + 0.1\,\mathcal{L}_{\text{eikonal}},

ここでLwarp\mathcal{L}_{\text{warp}}は各ピクセルの色を、レンダリングされた深度を介して近傍キーフレームへ再投影した色と比較する; Lflow\mathcal{L}_{\text{flow}}は誘導された対応をGMFlowのオプティカルフローに一致させる; 単眼深度損失はスケール/シフト不変であり、Ldepth=r(wD^(r)+q)Dˉ(r)2\mathcal{L}_{\text{depth}} = \sum_{\mathbf{r}} \lVert (w\hat{D}(\mathbf{r})+q) - \bar{D}(\mathbf{r})\rVert^2で、w,qw,qは画像ごとに閉形式で解かれる; Lnormal\mathcal{L}_{\text{normal}}は予測された単眼法線に対しL1+角度整合性を課す; そしてEikonal項x(s^(x)21)2\sum_{\mathbf{x}}(\lVert\nabla\hat{s}(\mathbf{x})\rVert_2 - 1)^2がSDFを正則化する。

システム。 マッピングは5フレームごとに3段階(粗のみ; 反復の25%後に+細グリッド; 75%後に、選択されたK=16K=16フレームの半数の姿勢も同時最適化する局所BA)で動作し、M=8096M=8096本のレイをサンプリングする。トラッキングは各フレームで並行して動作し、Mt=1024M_t=1024ピクセルに対するRGB損失で現在の姿勢のみを100反復最適化する。反復あたりのコスト: A100上でマッピング496ms、トラッキング147ms。メッシュは5123512^3のマーチングキューブから生成される。

実験結果

SLAMにおける意義

NICER-SLAMは、統合ニューラル陰関数SLAMが深度センサーに根本的に依存するわけではないことを示した。単眼深度/法線ネットワークからの事前分布と、フロー・ワーピングの整合性が直接的な深度教師の代替となり得る——ただし専用オドメトリと比べてトラッキング精度は犠牲になる。これにより密なニューラルSLAMが普通の単眼カメラにも広げられ、そのレシピ——単眼幾何ヒント、フロー整合性、局所適応SDFレンダリング——は、MonoGSのような後続のRGBのみのニューラル・Gaussian SLAMシステムに繰り返し現れる。

関連ノート