SLAMのお勉強① ~論文と関連書籍の整理&まとめ
以前のエントリでも書きましたが,今年は北陽電機さんのご厚意で UTM-30LX-EW を貸していただくことができ,ROSのフレームワークが使えるようになりました.
で,つくばチャレンジも終わり,,,3次元復元ネタに戻ろうかと思ったんですが,せっかくLidarをつかったマッピングができるようになったので,SLAMの基礎的な部分をちゃんと勉強しておこうかと思います.二週間前から本&論文をむさぼり読んでますが,なかなか難しいのと量が多いので,関連する論文をこのページにまとめておくことにしました.SLAMの研究って,今でももちろん盛んにおこなわれていると思いますが,技術的にブレークスルーが起こったので17~18年くらい前だと思います.ということで,ここ20年の間でキーになるような論文を読み漁っています.このエントリに読んだ論文と簡単なまとめをメモしていくので,よければ参考にしてみてください.できるだけ概要と前研究との対比も書くようにします.(読んだ論文が増えたら,適宜更新します.)
論文
2016年度
Real-Time Loop Closure in 2D LIDAR SLAM
- 著者:Wolfgang Hess, Damon Kohler, Holger Rapp, Daniel Andor
- ざっくり概要
この論文は Google が提供している SLAMアルゴリズムである,Cartographerを作ったグループが出した論文です.
従来方式の問題点
①Scan-to-Scanマッチングをスキャン毎に行って自己位置の相対変化を知る方法では,誤差の累積が早くなってしまう.
②パーティクルフィルタを用いてGrid-Based SLAMをすると,領域が大きくなってしまうと計算リソースが足りなくなってしまう.
新規性,改善点
①Scan-to-Mapマッチングをスキャン毎に行って自己位置の相対変化を求めることによって,誤差の蓄積を穏やかにした.
②汎用的なハードでリアルタイム実行するために,一定の時間間隔でPose-Graph最適化を実施して誤差の累積を少なくした.
③マップを作る過程を,スキャンからサブマップを生成する「ローカルステップ」とすべてのスキャン・サブマップ間の最適化を実施する「グローバルステップ」に分けた.
③-1ローカルアプローチ:Submap(部分的な地図)に対して,取得したLIDARデータがマッチするように非線形最適化を実施する.
③-2グローバルアプローチ:更新が終わったSubmapとScanとをLoopClosing対象として,Sparse Pose Adjustmentを使って非線形最適化を実施する.
2011年度
A Flexible and Scalable SLAM System with Full 3D Motion Estimation
- 著者:Stefan Kohlbrecher, Oskar von Stryk, Johannes Meyer, Uwe Klingauf
- ざっくり概要
この論文も対応するオープンソースのソフトが公開されています.Hector SLAMというやつで,下記のリンクから飛べます.
hector_slam - ROS Wiki
従来方式の問題点
①Gmappingをはじめとして,Rao-Blackwellized Particle Filterを用いたSLAMのコードが提供されているが,
①ー1室内などの平坦な路面環境での使用が前提となっている.
①ー2SLAMの成立に比較的正確なオドメトリが必要である.
①ー3LIDARの高いサンプルレートを生かし切れていない.
新規性,改善点
①ロバストなScan Matchingを実現した.
①-1Scan-to-Mapマッチングを用いて,Scan Matchingを実施した.
①-2Scan Matchingのアルゴリズムとして,Exhaustive Pose Searchを実施するのではなく,Gauss Newtonを用いて非線形最適化問題として解いた.
①-3局所最適解への収束を避けるため,複数の解像度でマップを保持しておき,一番解像度の荒いからScan Matchingを実施する.
②IMUを用いて車体の姿勢推定を実施し,LIDARが常に地面と平行になるように制御した.
2005年度
Improving Grid-based SLAM with Rao-Blackwellized Particle Filters by Adaptive Proposals and Selective Resampling
- 著者:Giorgio Grisetti, Cyrill Stachniss, Wolfram Burgard
- ざっくり概要(TBD)
2003年度
A System for Volumetric Robotic Mapping of Abondoned Mines
- 著者:Sebastian Thrun, Dirk Hahnel, David Ferguson, Michael Montemerlo, Rudolph Triebel, Wolfram Burgard, Christopher Baker, Zachary Omohundro, Scott Thayer, William Whittaker
- ざっくり概要
従来方式の問題点
①炭鉱は地下にあるため,位置情報を取得することができずSLAMによるアプローチでマッピングされることが多い.
②SLAMはマッピング対象のエリアに繰り返し構造(閉ループ)があると難しい問題となる.一般にオドメトリのエラーが大きく,対応付けがむずかしくなってしまうため.一般に炭鉱にはたくさんの閉ループがある.
新規性,改善点
①地下炭鉱の3D地図を生成するアルゴリズムを提唱した.対象となる炭鉱には,多くの閉ループ構造がある.
②スキャンマッチングを実施することによって,ローカルスコープの地図を作成した.
③閉ループを閉じる目的でICPアルゴリズムを用いて,対応付けを実施した.
④3D地図は上記2Dの地図・ポーズの計算が完了した後に作成.
2002年度
Map Building with Mobile Robots in Populated Environments
- 著者:Dirk Hahnel, Dirk Schulz, Wolfram Burgard
- ざっくり概要
従来方式の問題点
①特徴方式,グリッド方式のSLAM両方において,外部環境に対する前提が”静的環境”であった.
②例えば,人が歩き回る環境ではLocalizationの誤差が生じてしまう可能性がある.
③歩き回る人を静止物として認識してしまうことで,生成されるマップにノイズが乗ってしまう.
新規性,改善点
①センサーデータから人を除去する方法を提案した.
②People Trackerの結果を使うことで,Scan Matchの精度を向上させた.
③最終的に生成されるマップから人の影響を取り除いたことで,より正確なMapを作成できた.
FastSLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem
- 著者:Michael Montemerlo, Sebastian Thrun, Daphne Koller, Ben Wegbreit
- ざっくり概要(TBD)
2000年度
A Real-Time Algorithm for Mobile Robot Mapping With Applications to Multi-Robot and 3D Mapping
- 著者:Sebastian Thrun, Wolfram Burgard, Dieter Fox
- ざっくり概要(TBD)
Rao-Blackwellised Particle Filtering for Dynamic Bayesian Network
- 著者:Arnaud Doucet, Nando de Freitas, Kevin Murphy, Stuart Russel
- ざっくり概要(TBD)
1999年度
Bayesian Map Learning in Dynamic Environments
- 著者:Kevin P. Murphy
- ざっくり概要(TBD)
1998年度
A Probabilistic Approach to Concurrent Mapping and Localization for Mobile Robots
- 著者:Sebastian Thrun, Wolfram Burgard, Dieter Fox
- ざっくり概要(TBD)
1997年度
Globally Consistent Range Scan Alignment for Environment Mapping
- 著者:F. LU, E. MILIOS
- ざっくり概要
従来方式の問題点
①スキャン取得時のローカルフレームとワールドフレームとの相対位置を求める”Incremental Approach”では,取得スキャンをそれ以前に蓄積したスキャン結果をマッチングする方法をとっていた.しかし,この方法では場所によってそれぞれ独立に計算がなされるため,大域的に一貫した地図が生成できなかった.
新規性,改善点
①下記の用にマップを大域的に矛盾のない地図を生成する方法を提唱した.
①-1スキャン取得時のローカルフレーム間の相対位置関係をすべて保持しておく.
①-2相対位置関係はオドメトリ,もしくは時間的に隣接するスキャンマッチングによって計算されるが,これを確率変数として扱う.
①-3すべての相対位置関係を考慮に入れて,非線形最適化の問題を解く.