maplab 2.0
Cramariuc 2023 · 論文
一行要約 — maplab 2.0はETHチューリッヒによるモジュール式のオープンソースマッピングプラットフォームであり、マルチセッション・マルチロボットの視覚慣性マッピングを統一し、追加のセンサモダリティと深層学習モジュールをサポートする。
問題
複数のセンサモダリティと深層学習をSLAMに統合することは、現在の研究における最も活発な方向性の2つである。マルチモダリティは、困難な環境における頑健性、および様々なセンサ構成を持つヘテロジニアスなマルチロボットシステムの相互運用性への足がかりである。既存のフレームワーク(ORB-SLAM3、RTAB-Map、元のmaplab)は、特定のセンサ構成を中心に密結合されているため、新しい特徴タイプやモダリティを追加するたびに大掛かりな工事が必要になる。maplab 2.0は、そのようなモジュールを開発・テストし、「本格的な」SLAMシステムへ統合できる汎用的なオープンプラットフォームを提供する。
手法とアーキテクチャ
システムは3つの主要コンポーネントを持つ(この論文はアーキテクチャに関するものであり、その貢献は新しい推定方程式ではなくフレームワークそのものである)。
- マップ構造。 マップは「ミッション」(連続する1セッションにつき1つ)の集合であり、ファクターグラフとして保存される。頂点はロボットの状態(6自由度ポーズ、速度、IMUバイアス)とランドマーク(視覚特徴、LiDARキーポイント、セマンティックオブジェクトを表現可能な3D位置)である。エッジはIMUプリインテグレーション制約、相対6自由度ポーズ制約(オドメトリ、あるいは閉ループ――オプションで、矛盾する場合に最適化器が無効化できる切り替え可能な制約として扱える)、およびランドマーク観測誤差である。絶対6自由度制約はGPSやフィデューシャルマーカーの計測値を注入する。ホイールオドメトリは観測不能な軸(z、ピッチ、ロール)に対して無限の共分散を持つ。
- ランドマークと特徴。 従来のmaplabの視覚パイプラインは維持される(BRISK/FREAK記述子によるORB検出、ジャイロ支援マッチング、三角測量。閉ループは2D-3D記述子マッチング+共可視性フィルタリング+P3P-RANSACによる)。2.0での新機能は、任意の数の特徴タイプが1つのマップ内に共存できることである――浮動小数点記述子(例: SuperPoint、SIFT)はFLANNでマッチングされ、バイナリは逆多重インデックスでマッチングされる。また、(三角測量ではなく平均化される位置を持つ)3D観測ランドマーク(RGB-DまたはLiDAR)は、ユークリッド距離誤差項と3D-3D RANSAC閉ループを持つ。
- マッピングノード(ロボットごと)。 オドメトリに依存しない: 任意の外部6自由度オドメトリでポーズ頂点を初期化できる(IMUはもはや必須ではない)。生画像や点群は、後続のモジュール向けのリソースとしてマップに付属する。マップはサブマップに分割され、サーバーにストリーミングされる。
- マッピングサーバー(新規)。 定期的にサブマップを受信し、各サブマップを独立に前処理(ローカルバンドル調整、特徴品質評価、マップ内閉ループ検出)した上でロボットごとに連結し、ロボット間で継続的に閉ループ検出(視覚および/またはLiDAR)を行い、共同マルチロボットマップをグローバルに最適化する。これはロボットに送り返すことができる。このシステムは、DARPA地下チャレンジにおいて優勝チームCERBERUSのマルチロボットマッピングスタックの一部として展開された。
- オフラインコンソール。 バッチ最適化、マルチセッションマップマージ、キーフレーム化/疎化、ICP/G-ICPによるLiDAR閉ループ検出、Voxbloxによる高密度再構成、プラグインシステム。
- セマンティック閉ループ検出の使用例。 Mask R-CNNで検出されたオブジェクトは、マスクされたインスタンス上でNetVLAD記述子を取得し、Deep SORTで追跡され、クラスラベル付きの3Dランドマークになる。あるクラス内の候補マッチは幾何学的に検証され、共可視のランドマーククラスタはHornの方法で整合され、推定共分散付きの6自由度閉ループ制約が構築される。
実験結果
- HILTI SLAM Challenge 2021(9シーケンス、計52分): maplab 2.0は最先端手法と同等である。最良の構成(例えばSuperPoint+BRISK特徴を用いたFAST-LIO2オドメトリ、あるいはLiDAR ICP制約を用いたもの)は、シーケンスごとのAPE RMSEが約0.04〜0.19 mに達する――例えばConstruction 1で0.04 m、Construction 2で0.07 mであり、ORB-SLAM3はそれぞれ1.55 mと2.77 mである。3種類のオドメトリ源(ROVIO、OKVIS、FAST-LIO2)が示されている。SuperPoint/SIFT記述子は256から32個の浮動小数点数へPCAで圧縮されている。maplabは、閉ループ検出に5台すべてのカメラを使用する唯一の手法である。
- 大規模マルチセッションマッピング: 23回のハンドヘルドミッション(カメラ5台+Ouster OS0-128)、屋内外の遷移を含む約10 kmにわたる2時間以上のデータ。最初の5つのマップはマッピングサーバーによってオンラインで構築され、残りはコンソールでマージされ、グローバルな視覚閉ループとRTK-GPSの絶対制約を伴う。
- EuRoC(サーバー対コンソール): 11シーケンスすべてを同時マルチロボット実験として実行する(ROVIO+BRISK)と、逐次マルチセッション処理と同じ0.043 mの平均APE RMSEが得られるが、並列化されたサーバーは3分27秒で完了するのに対し、逐次処理は35分56秒かかる。
- モダリティのデモ: SuperPoint+SuperGlueのキーポイントをLiDAR強度画像上で直接追跡してHILTIシーケンスをマッピングし、セマンティックオブジェクト閉ループ検出モジュールがカスタムRGB慣性オフィスデータセット上で蓄積ドリフトを目視で除去する様子が示されている。
SLAMにおける意義
実際の展開では、単一のロボットが1回だけマッピングを行うことはほとんどない――マップは日をまたぎ、デバイスをまたいで構築・拡張・維持されなければならない。maplab(1.0と2.0)は、このマルチセッションのライフサイクルを中心に構築された数少ないプロダクション品質のオープンフレームワークの一つであり、SubTのスケールで実証済みの集中型協調マッピングのバックボーンとして、また新しいモジュールを完全なシステムと比較してベンチマークするための自然な選択肢となっている。そのプラグインアーキテクチャは、学習済み特徴、新しいセンサ、セマンティック閉ループ検出を視覚慣性マッピングに統合するための一般的な研究基盤となっている(ethz-asl/maplab)。
関連ノート
- maplab — この論文が拡張する元の視覚慣性マッピングフレームワーク
- Kimera-Multi — 分散型の対抗哲学
- Map merging — マルチセッション・マルチロボット融合の背後にある中核操作
- Centralized vs Decentralized — サーバーベースのフレームワークが設計空間のどこに位置するか
- NetVLAD — maplab 2.0が組み込むような学習済み場所認識
- SuperPoint — フレームワーク内で実演された学習済み特徴