Kimera / 3D Dynamic Scene Graph
Rosinol 2020 · 論文
一行要約 — メッシュ、オブジェクト、エージェント、場所、部屋、建物にまたがる階層的な実行可能な世界モデルである3D Dynamic Scene Graph(DSG)と、オープンソースのメトリック・セマンティックSLAMライブラリKimeraを用いてステレオ+IMUデータからそれを構築する、最初の完全自動Spatial PerceptIon eNgineであるSPINを提案する。
問題
幾何的SLAMは点群、メッシュ、ボリューメトリックモデルといったメトリックマップを生成するが、これらは平坦で構造化されていない。メトリック・セマンティックマッピングはラベルを追加するが、非階層的なままである: どちらも「高層ビルの2階で生存者を捜索せよ」のような指示を意味づけたり、モーションプランニング(精密なメッシュ)とタスクプランニング(抽象的な概念)の両方に一つの表現から供給したりすることはできない。初期の階層的マップは2Dで静的、かつ深層学習以前のものであり、ArmeniらとKimらによる先駆的な3Dシーングラフは半自動またはオフラインで構築され、traversability(通行可能性)のような実行可能な情報を捉えず、動的な実体を無視していた。本論文は、移動するエージェント — 特に人間 — を、視覚慣性データから自動的に構築された一つの階層的空間表現の内部でどう表現するかを問う。
手法とアーキテクチャ
DSGは、ノードが空間的に位置づけられたセマンティックな概念であり、辺がペアワイズの時空間的関係(「エージェントAは時刻に部屋Bにいる」)である階層的な有向グラフである。単一フロアの屋内シーンに対する5つの層:
- メトリック・セマンティックメッシュ — 位置、法線、RGB、パノプティックラベルを持つ頂点;面はトポロジーを定義する。
- オブジェクトとエージェント — オブジェクトは姿勢、バウンディングボックス、クラスを持つ;エージェント(人間、ロボット)はタイムスタンプ付きの3D姿勢グラフ、メッシュモデル、クラスを持つ。
- 場所と構造 — 場所は自由空間をサンプリングし、辺は直線的な通行可能性(プランニング用のトポロジカルマップ)を符号化する;構造は壁/床/天井である。
- 部屋 — 隣接(ドア)辺で結ばれ、それぞれが含む場所にリンクされる。
- 建物 — すべての部屋に接続されたルートノード。この階層は合成的である(例えば、複数階の建物のために「レベル」層を挿入できる)。
SPINパイプライン(入力: ステレオ+IMU;メッシュとエージェントはリアルタイムで逐次構築され、上位層は実行終了時に構築される):
- Kimeraによる層1: Kimera-VIO(IMU前積分+固定ラグスムージング)、Kimera-RPGO(ロバスト姿勢グラフ最適化)、Kimera-Mesher、そしてKimera-Semantics — 2Dパノプティックセグメンテーションをベイズラベル更新を用いたVoxbloxベースのボリューメトリックモデルに融合し、セマンティックメッシュとESDFを抽出する。
- 群衆に頑健なVIO(DVIO): Lucas-KanadeトラッカーがIMU認識オプティカルフローに置き換えられ、5点RANSACはIMU回転を用いて外れ値特徴トラックを除去する2点RANSACに置き換えられる。
- 人間ノード: Graph-CNNが検出ごとにSMPLメッシュ頂点(6890頂点、23関節)を回帰する;フルポーズはPnPで復元される。各人間は、ゼロ速度動き因子と検出ごとの事前因子を持つ姿勢グラフによって追跡される;検出がトラックに関連付けられるのは、すべての関節が秒速3m未満で動く場合のみである(画像端や30ピクセル未満の検出は棄却される)。動的マスキングは、人間のピクセルをKimera-Semanticsに自由空間のみのレイとしてフィードバックすることで、歩行者がメッシュに「残像」を残さないようにする。
- オブジェクトノード: クラスラベル付きメッシュはユークリッドクラスタリング(しきい値はボクセルサイズ0.1mの2倍)によってインスタンスに分割され、重心+バウンディングボックスが得られる;CADモデルが存在する場合、3D Harrisキーポイント(半径0.15m)がマッチングされ、TEASER++でレジストレーションされてオブジェクトの完全な姿勢が復元される。
- 場所と部屋: トポロジカルグラフはESDFからサンプリングされる;部屋は、検出された天井から0.3m下で切った2D ESDF断面から得られ、0.2mを超える上部は打ち切られてドアの開口部が切断される — 場所はその成分でラベル付けされ、残りはグラフ近傍の多数決によってラベル付けされる。
実験結果
フォトリアリスティックな65m x 65mのUnityオフィス(公開されているuHumansデータセット: 12人、24人、60人のuH_01/02/03)とEuRoCで評価:
- 群衆下でのVIO(ATE、cm): uH_03では、5点RANSACの160から2点RANSACの111、DVIOの88へと改善する;静的なEuRoCではこの手法は最先端技術と同等の性能を維持する(例: MH_01では9.3から8.1)。
- 動的マスキング: uH_03における正解姿勢を用いたメッシュRMSEは0.192mから0.061mへと低下する;この効果はVIO姿勢を使った場合でも持続する。
- 人間の追跡: トルソの位置特定誤差の平均は、単一画像検出(uH_03)の1.20mから、姿勢グラフトラッカーを用いた0.63mへと改善する;未知形状のオブジェクトは1.31~1.70m以内で位置特定され、CADフィッティング(TEASER++)されたオブジェクトは0.20~0.38m以内で位置特定される。
- 部屋の解析: 場所-部屋分類は、uH_01において99.89%の精度/99.84%の再現率に達し、誤りはドア口付近に限られる。
SLAMにおける意義
この論文は、視覚慣性SLAMと密な人間メッシュ追跡を統合し、SLAMを「空間認知エンジン」へと一般化した — SLAMは、関係、動態、抽象化も推論するシステムの中の一つのモジュールになる。DSGのバウンディングボリューム階層は高速な衝突検出を可能にし、その場所グラフは階層的プランニングを可能にし、その階層的プルーニングは長期自律性のための原理的なマップ圧縮を可能にする。Kimeraはメトリック・セマンティックSLAMのデフォルトのオープンソース研究プラットフォームとなり、DSGデータ構造は直接Hydraへ、そして階層的シーングラフの系譜全体へと種を植えた。
ハンズオン
関連ノート
- Kimera-VIO — 視覚慣性フロントエンドの詳細
- Hydra — DSG構築をリアルタイム・逐次化する
- Kimera-Multi — マルチロボット拡張
- GNC — 同じ研究室によるロバスト推定、後のシーングラフオプティマイザで使用
- SemanticFusion — 密なSLAMにおける先行するセマンティックラベル融合
- Pose graph optimization — ロボットと人間の軌道推定の背後にあるバックエンドの仕組み