TSDF対サーフェル地図
密なRGB-D SLAMには、ノイズの多い深度フレームをきれいな表面へと吸収できる地図表現が必要である。この分野を支配する2つの系統があり、それぞれKinectFusionとElasticFusionによって代表される。
TSDF: ボクセルグリッドへの融合
**TSDF(Truncated Signed Distance Function、切断符号付き距離関数)**は体積的な表現である。空間はボクセルに分割され、各ボクセルは最も近い表面までの符号付き距離を、その周囲の狭い帯に切断した形で保持し、さらに融合重みを保持する。新しい深度フレームはそれぞれ、まずボクセルごとの距離観測に変換される。ボクセル中心 を深度画像に投影し、計測された深度をカメラ光線に沿ったボクセルの距離と比較する。
ここで は切断距離であり、 は値を の範囲にクランプする。これらの観測は、ボクセルごとの移動加重平均によって融合される。
表面は のゼロクロッシングであり、レイキャストまたはマーチングキューブによって抽出される。融合は自明に並列化可能(GPUに理想的)であり、平均化はセンサノイズを打ち消し、滑らかで水密な表面を生成する。コストとしては、メモリが表面積ではなく体積に応じて増加する点が挙げられる — KinectFusionの固定グリッド(例: 2〜3mm解像度で ボクセル)は数立方メートルしか覆えず、これを緩和するためにボクセルハッシングやオクトリーが発明された。また解像度はボクセルサイズによって固定され、過去のポーズを補正するのはコストが高い。ボリュームを脱統合して再統合する必要がある(BundleFusion)か、シフトさせる必要がある(Kintinuous)。
サーフェル: 表面プリミティブへの融合
サーフェル地図は点ベースである。シーンはサーフェル(ディスク状の表面要素)の集合である。
各サーフェルは位置、法線、半径、色、信頼度重み、タイムスタンプを保持する。新しい計測は、既存の近傍サーフェルを更新する(その属性を加重平均する)か、新しいサーフェルを生成する。メモリは観測された表面積に応じてスケールし、解像度は計測密度に適応し、サーフェルが独立したプリミティブであるため、地図は変形させることができる。ElasticFusionは、ポーズグラフを維持する代わりに、ループクロージング時にサーフェル群に対して(埋め込み変形の考え方に基づく)非剛体変形グラフを適用する。コストとしては、連結メッシュが自動的には得られないこと、追跡にはレンダリングベースのモデル予測が必要であること、変形が細かい表面の詳細をぼかす可能性があることが挙げられる。
比較
| TSDF(KinectFusion) | サーフェル(ElasticFusion) | |
|---|---|---|
| 構造 | 空間上のボクセルグリッド | 表面上の非構造化点集合 |
| 融合 | ボクセルごとの移動平均 | サーフェルごとの属性更新 |
| 表面抽出 | ゼロクロッシング(レイキャスト/マーチングキューブ) | スプラットレンダリング |
| メモリ | 体積に応じてスケール(ハッシングやオクトリーが必要) | 表面積に応じてスケール |
| ループクロージング補正 | 脱統合/再統合、またはボリュームシフト | 非剛体な地図変形 |
| 出力品質 | 滑らかで水密なメッシュ | 適応的、変形可能、メッシュなし |
実践での選択 — そして落とし穴
どちらも完全に優れているわけではない。BAD SLAMは直接的なバンドル調整においてサーフェルとポーズを結合最適化し、一方BundleFusionは再統合によってTSDFが大域的に一貫性を保てることを示している。いくつかの経験則と落とし穴を挙げる。
- 切断距離 は実際のトレードオフである: 小さすぎるとセンサノイズによって表面が消失したり二重になったりする。大きすぎると近接した表面(薄い壁、両側から見たテーブルの天板)が切断帯の中で互いに干渉する。
- 薄い構造はTSDFの死角である: 数ボクセル未満の厚さの幾何は表現できない — 両側からの平均化によって消えてしまう。サーフェルは表面上に存在するため、薄い構造をより優雅に扱える。
- ボクセルサイズとメモリの関係は3乗である: ボクセルサイズを半分にすると、影響を受ける領域のメモリは8倍になる。ボクセルハッシングが役立つのは、空間の大部分が空であるからにすぎない。
- サーフェルには良好な法線が必要である: 各サーフェルの更新は、ノイズのある深度から推定された法線に依存する。法線が不良だと、ディスクの位置がずれ、表面がぼやける。深度と視線角度から算出するサーフェル半径の選び方も、見た目以上に重要である。
- 初日からループクロージングを計画すること: 表現は補正機構を決定する — 脱統合/再統合には古い統合を取り消すためにフレームごとの深度を保持しておく必要があり、地図変形は大域的な一貫性を局所的なぼやけと引き換えにする。ポーズが変化しないことを前提としたシステムに、いずれかを後付けするのは苦痛である。
後発のニューラル表現(ニューラルフィールド、3Dガウシアン)は、これら2つの哲学 — 暗黙的な体積的マッピングと明示的なプリミティブベースのマッピング — の後継として理解するのが最も適切である。
SLAMにおける意義
地図表現は、密なSLAMシステムにおいて後段のほぼすべてを決定する。トラッキングの予測がどのように生成されるか、メモリがシーンの規模に応じてどのようにスケールするか、そして最も重要なことに、ループクロージングによって蓄積されたドリフトが明らかになったときにシステムが地図をどのように補正できるかである。「再統合を伴うTSDFか、変形を伴うサーフェルか」は、RGB-D SLAMの根本的な設計上の分岐点であり、これを認識しておくことで、任意の密なシステムを素早く地図上に位置づけることができる。
ハンズオン
関連ノート
- KinectFusion — 標準的なTSDF融合システム
- ElasticFusion — 標準的なサーフェル融合システム
- BundleFusion — 脱統合/再統合によって一貫性を保つTSDF
- BAD SLAM — サーフェル地図に対する直接的なバンドル調整
- Frame-to-model tracking — これらの地図が追跡にどのように使われるか