borglab/gtsam

GTSAM is a library of C++ classes that implement smoothing and mapping (SAM) in robotics and vision, using factor graphs and Bayes networks as the underlying computing paradigm rather than sparse matrices.

解決する問題

ロボティクスとコンピュータビジョンにおけるスムージングとマッピング(SAM)のフレームワークを提供し、従来の疎行列計算に依存するのではなく、制約(因子)のネットワークを最適化することでロボットや物体の状態を推定できるようにします。

仕組み

GTSAMは因子グラフとベイズネットワークを中核的な計算パラダイムとして使用します。問題を、ノードが推定すべき変数、エッジ(因子)がそれらの間の制約を表すグラフとして表現します。ライブラリは多様体最適化を実行します。これは、因子グラフを構築し、接空間で線形化して解き、結果を多様体に引き戻して収束まで反復することを含みます。

対象読者

高性能な状態推定、SLAM(同時ローカリゼーションとマッピング)、センサーフュージョンを実装する必要があるロボティクスおよびビジョンの研究者やエンジニア向けに設計されています。

ハイライト

  • 多言語サポート:コアライブラリはC++で記述され、PythonとMATLAB用のラッパーがあります。
  • IMU事前積分:多様体上の慣性測定ユニットデータを効率的に推定するための最先端のスキームを含みます。
  • 自動微分:効率的な自動微分のためのGTSAM Expressionsをサポートします。
  • ハードウェアアクセラレーション:CUDA線形ソルバーとオプションのIntel oneMKL統合を提供し、パフォーマンスを最適化します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト