画像およびLiDARを用いた自動走行に関する動向
2019.6.12

赤井 直紀（名古屋大学）

自己紹介
⚫ 略歴
• 2013-2016 宇都宮大学 機械知能工学専攻 博士(工学)• 2016-2019 名古屋大学 未来社会創造機構 特任助教
• 2019-現在 名古屋大学 情報学研究科 特任助教
⚫ 研究トピック• 車輪型ロボット・自動車の自動走行• LiDARベースの自己位置推定・SLAM• 自己位置推定の高度化• 運転行動モデリング

個人のHPです．
不明なことや質問があれば気軽にご質問・連絡下さい．
akai[at]nagoya-u.jp（[at]→@）https://sites.google.com/site/naokiakaigoo/今日お話しする内容⚫ 自己位置推定・SLAMとは？
• なぜ自己位置推定・SLAMが自動走行に必要か？
• 画像およびLiDARを用いた自己位置推定・SLAMの発展の流れ• 自己位置推定・SLAMの研究の動向⚫ 自動走行実現のために残る課題と最新の取組・動向• 性能・推定結果の保証• ロバスト性の向上• モデルベース法の改良や機械学習の利用，モデルと学習の併用⚫ スライドの最後に参考文献[*]・URL(*)のリストがあります自己位置推定・SLAMとは？
⚫ 自己位置推定（Localization）• 地図とセンサ観測をマッチングさせて与えられた地図上での相対位置を求める問題• 与えられた地図は更新しない⚫ SLAM（Simultaneous Localization and Mapping）• 観測と制御入力のセットから走行軌跡の推定と環境地図構築を行う問題• 整合性のある地図を得ることが目的• 地図を更新していく（地図構築なので当然）

伊能忠忠敬による測量 (1)なぜ自己位置推定・SLAMが必要？
⚫ 高精度位置推定は自動走行に必要な機能の実現を劇的に簡略化する• 地図情報が活用できればオンラインでの複雑な認識が不要となる• しかし地図作りは手間がかかるのでSLAM（自動地図構築）が必要
点群地図に基づく
自己位置推定 [1]自己位置推定に基づく静的（地図上の）物体の位置予測

3D NDTスキャンマッチングによる点群地図に基づく高精度自己位置推定

主要な方法が提案された年代
最適化ベース
自己位置推定機械学習活用マップ
マッチング

ICPスキャン
マッチング

EKF
位置推定

Markov
位置推定

占有格子地図LiDARSLAMNDTスキャン
マッチング
Monte Carlo
位置推定
Fast SLAMEKF SLAM
ベイズフィルタ

CRF
マッチング

PoseNet
IT-NetVariational End-to-End

推定失敗対策アライメント
リスク予測

Fast SLAM 2.0

Velodyne SLAMSLAM with DATMO

Hector SLAM

グラフの適用

信頼度付き
位置推定

LOAM
最適化ベースCartographer SLAM

g2o

Graph SLAM
Direct法
Visual
SLAM

DTAM
SVO

特徴点ベースKLT法

ORB SLAM VITAMIN-E

Mono SLAM
Multi view stereo
PTAM

Structure from Motion
1990

LSD SLAM DSO

2000

Graph SLAM
2010

注: 強引にグルーピングしているので必ずしも正しいとは言えない（ざっくりとしたイメージとして捉えて下さい）

2020発展の流れ（1990年代・自己位置推定）⚫ 今でも使われる代表的な自己位置推定のフレームワークが提案される• Iterative Closet Points（ICP [2]）Monte Carlo Localization（MCL [3]）• 特に使うセンサで問題を区別をしている感じはない（気がする）• SLAMの研究はまだ下火（ハードウェア的制約で難しかった？）

ICPスキャンマッチングによる点群同士の位置合わせ (2)MCLによる大域的自己位置推定 (3)発展の流れ（2000年代・LiDAR SLAM）⚫ 今でも使われる代表的なSLAMのフレームワークが提案される• Fast SLAM (Fast SLAM 2.0) [4, 5]やGraph SLAM [6]• ベイズフィルタSLAMはオンライン向き（計算/メモリコストの課題）• Graph SLAMは一括最適化のためオフライン処理に適している

拡張カルマンフィルタによるSLAM (4)Graph SLAMによる地図構築 (5)発展の流れ（2010年代・LiDAR SLAM）⚫ Graph SLAMが主流となり大規模環境の地図構築が可能となる• 大規模環境に対応する多くのSLAMはGraph SLAMに基づく実装となっている（Cartographer SLAM [7]など）• グラフ最適化ソルバーのオープンソースも多数存在（g2o [8]など）

Cartographer SLAMによる地図構築 (6)g2oよるポーズグラフの最適化 (7)発展の流れ（2000年代・Visual SLAM）⚫ Visual SLAMの基になるParallel Tracking and Mapping（PTAM [9]）• 特徴点の追跡（Tracking）と地図構築（Mapping）の並列化で高速化• Direct（特徴点ではなく画素値を利用する方法）法によるSLAMによって小領域での密な地図構築も実現される（DTAM [10]）PTAMによる拡張現実のデモ (8)DTAMによる密な地図構築 (9)発展の流れ（2010年代・Visual SLAM）⚫ 大規模環境でも地図構築を行うことができるVisual SLAMが提案される• 多くがPTAMをベースにGraph SLAMを適用した実装となっている• Direct法の発展版法としてLSD SLAM [11]やDSO [12]• 特徴点追跡（Indirect法）の発展版としてORB SLAM [13]（地図が疎）LSD SLAMによる大規模環境での地図構築 (10)ORB SLAMによる大規模環境での地図構築 (11)

発展の流れ（最新・Visual SLAM）⚫ 特徴点追跡でありながら密な3次元復元をするSLAM（VITAMIN-E [14]）• 曲率の極値をキーポイントとして大量の特徴を抽出• 支配フロー推定と最適化の工夫により密な特徴追跡と高速化を達成構築された地図（右は法線ベクトルで色付け）

VITAMIN-Eによる密な3次元地図構築 (12)

発展の流れ（LiDAR + Visual SLAM）⚫ 画像から3次元復元した点群をLiDAR地図と直接照合する [15, 16]• 自己位置推定時にはカメラだけを利用すれば良い• 単眼の場合は自己位置と同時に復元点群のスケールを推定する

単眼カメラで復元した点群とLiDAR地図の照合 (13)ステレオカメラで復元した点群とLiDAR地図の照合 (14)

自己位置推定・SLAMの動向⚫ 自己位置推定やSLAMに関する研究は今も活発に行われている• ICRA・IROSなどでも深層学習関連の研究に並ぶ発表数となっている• 深層学習などの機械学習を活用する例が格段に増えている• 「モデルベース法」と「機械学習」の両方を抑える必要が出ている⚫ 自動運転分野から見ると• 自動運転系国際会議IV・ITSCでも多くの関連研究が発表されている• 学術性・新規性はICRA・IROS・CVPRなどでの発表の方が高い• 国内の自動運転関連学会での関連研究の発表数は少ない• 日本語で自動運転の知能化に関する先端の話を聞ける機会は少ない自動走行実現のために残る課題⚫ 性能・推定結果の保証• 自動走行ができることは多くのデモですでに示されている• しかし，性能保証や緊急対応の実装が難しく実用化は困難• 推定結果などの正しさ（信頼度）を明示的に予測すべき• 当然，ロバスト性を上げる試みも重要⚫ 結局難しいことは「地図と観測間での正確な対応の探索」• 「正しい対応かどうか知る術がない」ので推定結果が保証できない• これを前提にどう性能を保証するか？ロバスト性を向上させるか？

主要な方法が提案された年代
ここら辺の動向をまとめます

最適化ベース
自己位置推定機械学習活用マップ
マッチング

ICPスキャン
マッチング

EKF
位置推定

Markov
位置推定

占有格子地図LiDARSLAMNDTスキャン
マッチング
Monte Carlo
位置推定
Fast SLAMEKF SLAM
ベイズフィルタ

CRF
マッチング

PoseNet
IT-NetVariational End-to-End

推定失敗対策アライメント
リスク予測

Fast SLAM 2.0

Velodyne SLAMSLAM with DATMO

Hector SLAM

グラフの適用

信頼度付き
位置推定

LOAM
最適化ベースCartographer SLAM

g2o

Graph SLAM
Direct法
Visual
SLAM

DTAM
SVO

特徴点ベースKLT法

ORB SLAM VITAMIN-E

Mono SLAM
Multi view stereo
PTAM

Structure from Motion
1990

LSD SLAM DSO

2000

Graph SLAM
2010

注: 強引にグルーピングしているので必ずしも正しいとは言えない（ざっくりとしたイメージとして捉えて下さい）

2020

モデル改良によるロバスト性向上（IROS 2018）⚫ 観測が「地図上の物体から得られたかどうか」を同時に推定する [17]• 地図に存在する物体から得られた観測を推定して位置推定を行う• 環境の動的変化に対応した観測モデル（対応点探索の様なこと）をオンラインで推定していると解釈可能（EMによる実装もある[18]）つくばチャレンジにおける自動走行の様子 (15)

観測物体の地図上での有無を同時推定する自己位置推定 (16)

対応点探索を不要とするモデル化（ICRA 2018）⚫ 明示的な対応点探索を行わないで自己位置推定を行う [19]• 色・深度・法線画像などの複数の画像を同時にDirect法で最適化• 画像だけでなく3D LiDARにも適用可能• ただし最適化するコスト関数の設計・モデル化は必要

複数種類の画像を同時に位置合わせに利用可能

RGB-Dや3D LiDARのデータに対するDirect法での位置合わせ (17)

モデル/学習併用によるロバスト性向上（ICRA 2018）⚫ セマンティックセグメンテーションの活用 [20]
• 深層学習の発展で観測物体のラベル推定の精度が飛躍的に向上• 地図と観測のラベルが同一ものを照合することで，対応点探索のロバスト性を向上させることができる

Long-termな季節の変化による影響

セマンティクスを活用した自己位置推定 (18)

モデル/学習併用による推定正誤予測（ICRA 2018）⚫ Localizabilityのモデル化とSVMによる対応点組の正しさの識別 [21, 22]• Localizabilityは各地点での対応点探索の難しさをモデル化したもの• ただし「Localizabilityが低い＝推定に必ず失敗する」とは限らない• Localizabilityに基づく値を用いて機械学習で推定の正誤を予測 [22]赤: High localizability 青: Low localizability

3次元点群地図におけるLocalizabilityの予測結果 [21]アライメントリスクに応じたインクリメンタルな地図更新 [22] (19)

モデル/学習併用による信頼度推定（AR 2018）⚫ 信頼度付き自己位置推定 [23]
• 深層学習を用いて自己位置推定結果の正誤をEnd-to-Endで学習• ただし「深層学習による予測結果が誤りを含むこと」を前提とする• 深層学習の予測を可観測変数として用いた推定問題としてモデル化

信頼度による自己位置推定正誤の判断

自己位置推定結果の信頼度による推定失敗の検知 (20)End-to-End学習の自己位置推定（ICCV 2015）⚫ カメラ画像と6自由度の自己位置の対応をEnd-to-Endで学習 [24]• 位置推定に必要なプロセスを全て学習で置き換える• 対応点探索も含めて全てデータドリブンに解くという方法• ただし学習した環境でしか適用できない…
訓練軌跡

予測軌跡
テスト軌跡
End-to-End自己位置推定ネットワークによる回帰

End-to-End自己位置推定 (21)End-to-End学習の反復点群位置合わせ（arXiv 2018）⚫ 点群の位置合を行う深層学習による変換の予測を反復 （IT-Net [25]）• 1度の予測では完全に位置合わせできないので反復して予測する• ICPと類似の挙動となる（反復数に応じて位置合わせ移動量が減衰）• 対応点探索および変換量の予測がデータドリブンに解ける点群の反復位置合わせ（PointNetが座標変換を行うネットワーク）

反復位置合わせ回数と入力点群の移動量（左）とICPスキャンマッチングによる位置合わせ（右）End-to-End学習走行と自己位置推定（ICRA 2019）⚫ End-to-End学習による制御入力の予測値を用いて位置推定を行う [26]• 自己位置，地図，画像で条件付けられた制御入力の分布を学習• 行動履歴と行動予測結果から自己位置推定（マッチングとは違う）• End-to-Endで学習したモデルが推定のための尤度分布として使える
画像Iと地図Mで条件づけられた位置の事後分布

ネットワークによる制御入力の確率分布の予測

制御入力に関する事後分布を変分ネットワークで予測し，その出力を自己位置推定のために活用するまとめ⚫ 自己位置推定・SLAMに関する基礎的な内容の紹介• 高精度位置推定は自動走行に必要な機能の実現を劇的に簡略化する• 効率的に地図を作るためにもSLAMは必須• 自己位置推定，LiDAR・Visual SLAMの発展の流れをおおまかに説明⚫ 最新の取組・動向を紹介• モデルの改良によるロバスト性などの向上• 機械学習とモデルベース法の併用も増えてきている• End-to-End学習を自己位置推定などに活用する例も表れている• 「正しい対応かどうかの判別」がブレイクスルーになると思う最後に⚫ 今後，モデルベース法と機械学習の併用はより重要になると思われる• 深層学習の性能はほとんどのモデルベース法の性能を凌駕した• しかし「深層学習で予測した」だけでは最近は納得されない• 学習による「不確かさ」などを考慮・扱う必要が出てきている• これからはモデルも学習も両方抑える必要がある（しんどい…）• 特に機械学習関連の発展速度は恐ろしい程に速い…

⚫ 日本語による先端技術解説を充実させることの重要性はより増していく• この発表が少しでも何かの役に立てていれば幸いです• 別途，論文の解説などをWebに上げて行こうと思っています参考文献
E. Takeuchi et al., “A 3-D scan matching using improved 3-D normal distributions transform form mobile robotic mapping,” In Proceedings of the IEEE/RSJ International Conferenceon Intelligent Robots and Systems, 2006.
[2] P. J. Besl et al., “A method for registration of 3-D shapes,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, no. 2, pp.239-256, 1992.
[3] F. Dellaert et al., “Monte Carlo localization for mobile robots,” In Proceedings of the IEEE International Conference on Robotics and Automation, 1999.
[4] M. Montemerlo et al., “FastSLAM: A factored solution to the simultaneous localization and mapping problem,” In Proceedings of the AAAI National Conference on ArtificialIntelligence, 2002.
[5] M. Montemerlo et al., “FastSLAM 2.0: An improved particle filtering algorithm for simultaneous localization and mapping that provably converges,” In Proceedings of the 18th
International Joint Conference on Artificial intelligence, 2003.
[6] G. Grisetti et al., “A tutorial on graph-based SLAM,” IEEE Intelligent Transportation Systems Magazine, vol. 2, pp. 31-43, 2010.
[7] W. Hess et al., “Real-time loop closure in 2D LIDAR SLAM,” In Proceedings of the IEEE International Conference on Robotics and Automation, 2016.
[8] R. Kummerle et al., “g2o: A general framework for graph optimization,” In Proceedings of the IEEE International Conference on Robotics and Automation, 2011.
[9] G. Klein et al., “Parallel tracking and mapping for small AR workspaces,” In Proceedings of the IEEE/ACM International Symposium on Mixed and Augmented Reality, 2007.
R. A. Newcombe et al., “DTAM: Dense tracking and mapping in real-time,” In IEEE International Conference on Computer Vision, 2011.
[10] J. Engel et al., “LSD-SLAM: Large-scale direct monocular SLAM,” In European Conference on Computer Vision, 2014.
[11] J. Engel et al., “Direct sparse odometry,” In arXiv:1607.02565, 2106.
[12] R. Mur-Artal et al,, “ORB-SLAM: A versatile and accurate monocular SLAM system,” IEEE Transactions on Robotics, vol. 31, no. 5, pp.1147-1163, 2015.
[13] M. Yokozuka et al., “VITAMIN-E: Visual tracking and mapping with extremely dense feature points,” In IEEE Conference on Computer Vision and Pattern Recognition, 2019.
[14] T. Caselitz et al., “Monocular camera localization in 3D LiDAR maps,” In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2016.
[15] Y. Kim et al., “Stereo camera localization in 3D LiDAR maps,” In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2018.
[16] N. Akai et al., “Mobile robot localization considering class of sensor observations,” In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems,
2018.
[17] D. Wang et al., “Accurate mix-norm-based scan matching,” In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2018.
[18] B. D. Corte et al., “A general framework for flexible multi-cue photometric point cloud registration,” In Proceedings of the IEEE International Conference on Robotics and Automation,
2018.
[19] E. Stenborg et al., “Long-term visual localization using semantically segmented images,” In Proceedings of the IEEE International Conference on Robotics and Automation, 2018.
[20] W. Zhen et al., “Robust localization and localizability estimation with a rotating laser scanner,” In Proceedings of the IEEE International Conference on Robotics and Automation,
2017.
[21] S. Nobili et al., “Predicting alignment risk to prevent localization failure,” In Proceedings of the IEEE International Conference on Robotics and Automation, 2018.
[22] N. Akai et al., “Simultaneous pose and reliability estimation using convolutional neural network and Rao-Blackwellized particle filter,” Advanced Robotics, vol. 32, no. 17, pp. 930[23] 944, 2018.
[24] A. Kendall et al., “PoseNet: A Convolutional network for real-time 6-DOF camera relocalization,” In IEEE International Conference on Computer Vision, 2015.
[25] W. Yuan et al., “Iterative Transformer network for 3D point cloud,” arXiv: 1811.11209, 2018.
[26] A. Amini et al., “Variational end-to-end navigation and localization,” In Proceedings of the IEEE International Conference on Robotics and Automation, 2019.
[1]

参考URL(1) http://www5a.biglobe.ne.jp/kaempfer/k-hanashi/kamishibai/kamishibai7.htm(2) https://www.youtube.com/watch?v=qhT1lWCuAm4(3) http://robots.stanford.edu/videos.html(4) https://www.youtube.com/watch?v=vCVS9WAffi4&t=21s(5) https://www.youtube.com/watch?v=8BUhMhk3JB0(6) https://www.youtube.com/watch?v=29Knm-phAyI(7) https://www.youtube.com/watch?v=UOb5a2DydmI(8) https://www.youtube.com/watch?v=Y9HMn6bd-v8&t=62s(9) https://www.youtube.com/watch?v=Df9WhgibCQA&t=108s(10) https://www.youtube.com/watch?v=GnuQzP3gty4&t=116s(11) https://www.youtube.com/watch?v=8DISRmsO2YQ&t=88s(12) https://www.youtube.com/watch?v=yfKccCmmMsM&t=16s(13) https://www.youtube.com/watch?v=zK9-vxaO_s4(14) https://www.youtube.com/watch?v=jdVno7qb3O0(15) https://www.youtube.com/watch?v=ypkYQ0pUGhw&t=74s(16) https://www.youtube.com/watch?v=PIvBexeZcOw&t=2s(17) https://www.youtube.com/watch?v=_z98guJTqfk(18) https://www.youtube.com/watch?v=M55qTuoUPw0(19) https://www.youtube.com/watch?v=mTTEpgzPj-8&t=4s(20) https://www.youtube.com/watch?v=QzG3beQkQnY&t=64s(21) https://www.youtube.com/watch?v=u0MVbL_RyPU&t=107s