Mais conteúdo relacionado
Semelhante a Cartographer を用いた 3D SLAM
Semelhante a Cartographer を用いた 3D SLAM (20)
Cartographer を用いた 3D SLAM
- 3. 自己紹介(ROS 解説)
2
3D勉強会 2019-12-15
“ROS の活用による屋外の歩行者空間に適応した自律移動ロボットの開発”,
RSJ 第94回ロボット工学セミナー, 2015.
https://www.slideshare.net/hara-y/ros-slam-navigation-rsj-seminar
“ROS を用いた自律移動ロボットのシステム構築”,
RSJ 第99回ロボット工学セミナー, 2016.
https://www.slideshare.net/hara-y/ros-nav-rsj-seminar
“解説:ROS を用いた自律走行”,
日本ロボット学会誌, vol. 35, no. 4, 2017.
https://www.jstage.jst.go.jp/article/jrsj/35/4/35_35_286/_article/-char/ja/
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 4. 自己紹介(SLAM 解説)
3
3D勉強会 2019-12-15
日経 Robotics 連載 “SLAM とは何か”, 全18回, 2016~2017.
“SLAM とは何か:自己位置推定と地図構築の全体像”, RSJ セミナー, 2018.
“ロボティクスにおける SLAM 手法と実用化例”, SSII OS, 2019.
https://www.slideshare.net/hara-y/slam-ssii-os-2019
“SLAM の基礎とオープンソース”, RSJ セミナー, 2019.
https://www.slideshare.net/hara-y/slam-rsj-seminar-2019
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 7. つくばチャレンジ全チームの SLAM アプローチ
6
3D勉強会 2019-12-15
Laser SLAM が圧倒的多数、
ただグラフベースはまだ少ない
RGB-D、Visual SLAM は少数、
屋外リアルワールドは難しい
SLAM 不使用チームの戦略
オドメトリ地図で教示再生
GNSS(GPS など)
トポロジカル地図
End-to-End 深層学習
13
25
8
2
2
15
0 5 10 15 20 25 30
Laser スキャンマッチング
Laser ベイズフィルタ
Laser グラフベース SLAM
RGB-D SLAM
Visual SLAM
SLAM 不使用
その他の統計は [原+, “つくばチャレンジ2018技術調査アンケートの報告”] を参照
https://www.slideshare.net/hara-y/tsukuba-challenge-2018-survey
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 8. 自律走行や SLAM のオープンソース利用状況
7
3D勉強会 2019-12-15
ROS で標準的な navigation と
slam_gmapping が多い
Autoware も多い
Cartographer は意外に少ない
(試用して諦めたとの声も)
製品である Stencil の利用も
Visual SLAM は RTAB-Map
と ORB-SLAM のみで少ない
18
20
1
1
8
2
1
1
2
1
0 5 10 15 20 25
ROS navigation
ROS slam_gmapping
ROS hector_slam
ROS slam_karto
Autoware
Cartographer
MRPT
Kaarta Stencil
RTAB-Map
ORB-SLAM
その他の統計は [原+, “つくばチャレンジ2018技術調査アンケートの報告”] を参照
https://www.slideshare.net/hara-y/tsukuba-challenge-2018-survey
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 9. オープンソース Laser SLAM の比較
8
3D勉強会 2019-12-15
上記以外にも数多くの手法が存在する
ループ検出とグラフ最適化によるループ閉じ込みが、特に広大な環境において重要
[友納, 原, “SLAM の現状と今後の展望”, システム制御情報学会誌, 2020]
Laser SLAM (LIDAR SLAM) と Visual SLAM (Camera SLAM) の全体像を解説
分類 次元 地図形式
スキャン歪み
対策
ループ検出 グラフ最適化
GMapping RBPF 2D 占有格子 × 非明示的 ×
Autoware
(ndt_mapping)
スキャン
マッチング
3D 点群 × × ×
Velodyne
SLAM
スキャン
マッチング
3D 点群 ○ × ×
LOAM
スキャン
マッチング
3D 点群 ○ × ×
Karto SLAM グラフベース 2D 占有格子 × 粗密探索 SPA
Cartographer グラフベース 2D, 3D 占有格子 ○ 分枝限定法 Ceres Solver
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 11. Cartographer のアルゴリズム概要
10
3D勉強会 2019-12-15
Voxel Filter
固定サイズで点群を間引き
Adaptive Voxel Filter
最大サイズと最小点数で動的に間引き
Local Scan Matching(逐次SLAM)
Ceres スキャンマッチング/
相関スキャンマッチングから選択
Ceres は初期位置からの局所マッチング
Global Scan Matching(ループ検出)
相関スキャンマッチングで大域探索
Pose Adjustment(グラフ最適化)
SPA でポーズ調整
拘束の外れ値はM推定で対処
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 16. 3次元点群地図の出力
15
3D勉強会 2019-12-15
Cartographer 本体は、3次元地図を出力しない
内部では、サブマップで構築された3次元占有格子地図を持つ
サブマップの可視化は可能だが、ファイル出力機能はない
Assets Writer という後処理の枠組みにより、3次元点群地図を構築可能
入力:
ポーズグラフ(pbstream)
スキャン点群(rosbag)
パイプライン処理を設定する
“write_pcd” 機能で点群地図を
PCDファイルに出力できる
Cartographer Assets Writer
Front-end
(Sequential/Loop
Registration)
Back-end
(Pose Graph
Optimization)
Various
Filtering
“write_pcd”
Scan
Cloud
IMU
Odom
Pose
Graph
Scan
Cloud Cloud
Map
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 24. 各パラメータの説明(逐次 SLAM)
23
3D勉強会 2019-12-15
TRAJECTORY_BUILDER_3D.ceres_scan_matcher.translation/rotation_weight
Ceres スキャンマッチングの初期位置(オドメトリ)からのペナルティ、
大きいとマッチングせず小さいと軌跡がジグザグになる
各種 SLAM Cartographer 3次元地図出力 パラメータ調整
- 28. まとめ
27
3D勉強会 2019-12-15
つくばチャレンジ全チームの SLAM アプローチの統計
→屋外リアルワールドでは、現状は Laser SLAM の方が強力
オープンソース Laser SLAM の比較
3次元 Cartographer を用いた地図構築の実例
Assets Writer の後処理による、3次元点群地図の出力
ビーム入射角を考慮したバイナリベイズフィルタによる移動物体除去
Cartographer のパラメータ調整ノウハウ
各種 SLAM Cartographer 3次元地図出力 パラメータ調整