Anúncio
Anúncio

Mais conteúdo relacionado

Apresentações para você(20)

Similar a Visual SLAM: Why Bundle Adjust?の解説(第4回3D勉強会@関東)(20)

Anúncio

Último(20)

Visual SLAM: Why Bundle Adjust?の解説(第4回3D勉強会@関東)

  1. 第4回 3D勉強会@関東 ~画像を用いた3Dモデリングの基礎から応用まで~ Visual SLAM: Why Bundle Adjust? 東京大学 相澤研究室所属 M1 金子 真也 (@syinari0123)
  2. 1 自己紹介 • 氏名 – 金子 真也 (かねこ まさや) • 所属 – 東京大学大学院 学際情報学府 相澤研 M1 • Recently – 2018年5月-8月 DeNA アルバイト (SFM) – 2018年8月-9月 Sony Internship (SLAM) – 2018年9月- 産総研 Research Assistant • 深層学習やVisual SLAMと戯れています • 就活に向けて情報収集中なのでSLAM関連でおすすめの企業があり ましたらぜひ教えてください まさや (@syinari0123)
  3. 2 本論文 • Visual SLAM: Why Bundle Adjust? – 著者: A. P. Bustos, T. Chin, A. Eriksson and I. Reid – 採択会議: ICRA2019 (arXivには2019/2/11投稿) Andrew Davison 大先生も絶賛
  4. 3 本論文 (おまけ) • Visual SLAM: Why Bundle Adjust? – 著者: A. P. Bustos, T. Chin, A. Eriksson and I. Reid – 採択会議: ICRA2019 (arXivには2019/2/11投稿) 一番最初のVisual SLAMである MonoSLAM [Davison+, PAMI’07] のメンバーの一人 [1] A. J. Davison, I. D. Reid, N. M. Molton, and O. Stasse, “MonoSLAM: real-time single camera SLAM,” IEEE TPAMI, vol. 29, no. 6, pp. 1– 16, 2007
  5. 4 本論文 (おまけ) • Visual SLAM: Why Bundle Adjust? – 著者: A. P. Bustos, T. Chin, A. Eriksson and I. Reid – 採択会議: ICRA2019 (arXivには2019/2/11投稿) [1] H. Strasdat, J. M. M. Montiel, and A. J. Davison, “Visual SLAM: Why Filter?” Image and Vision Computing, vol. 30, no. 2, pp. 65–77, 2012
  6. 5 どのようなものか? • 新しい最適化手法のVSLAMを提案 (L-infinity SLAM) – 従来の特徴点ベースのVSLAMよりシンプルでロバスト – 実用化には至っていなかった要素技術で実践的なVSLAMの基礎 を実現した点が今回の貢献
  7. 6 従来のVSLAM (BA-SLAM) • ORB-SLAM [Mur-Artal+, IEEE TRO’15] – 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定 画像上での特徴点 各点の三次元位置と カメラ軌跡の推定
  8. 7 従来のVSLAM (BA-SLAM) • ORB-SLAM [Mur-Artal+, IEEE TRO’15] – 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定 – Bundle Adjustment (BA) • 基準点とカメラを結ぶ光線束(Bundle)による調整 画像 𝑍𝑗 画像 𝑍𝑗+1 𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗 カメラ姿勢 [𝐑𝑗, 𝐭𝑗] 𝒖𝑖,𝑗 投影点 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗) Bundle 𝑍𝑗+1 [𝐑𝑗+1, 𝐭𝑗+1] 𝒖𝑖,𝑗+1 画像 𝑍𝑗 3D位置 𝐗 𝑖
  9. 8 従来のVSLAM (BA-SLAM) • ORB-SLAM [Mur-Artal+, IEEE TRO’15] – 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定 – Bundle Adjustment (BA) • 基準点とカメラを結ぶ光線束(Bundle)による調整 画像 𝑍𝑗 画像 𝑍𝑗+1 𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗 最適化 画像 𝑍𝑗 𝒖𝑖,𝑗 Bundle [𝐑𝑗+1, 𝐭𝑗+1] 𝑍𝑗+1 𝒖𝑖,𝑗+1 3D位置 𝐗 𝑖 カメラ姿勢 [𝐑𝑗, 𝐭𝑗] 投影点 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗)
  10. 9 従来のVSLAM (BA-SLAM) • ORB-SLAM [Mur-Artal+, IEEE TRO’15] – 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定 – Bundle Adjustment (BA) • 基準点とカメラを結ぶ光線束(Bundle)による調整 画像 𝑍𝑗 画像 𝑍𝑗+1 𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗 最適化 画像 𝑍𝑗 𝒖𝑖,𝑗 Bundle [𝐑𝑗+1, 𝐭𝑗+1] 𝑍𝑗+1 𝒖𝑖,𝑗+1 3D位置 𝐗 𝑖 カメラ姿勢 [𝐑𝑗, 𝐭𝑗] 投影点 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗)
  11. 10 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM
  12. 11 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍1 𝑍0 Initialization (3D地図の点の初期化)
  13. 12 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍1 𝑍2 𝑍0 Tracking
  14. 13 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍1 𝑍2 𝑍0 3D地図への点の追加/削除
  15. 14 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍1 𝑍2 𝑍0 Local Mapping (局所的なBA)
  16. 15 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍0 𝑍1 𝑍2 𝑍𝑡 𝑍𝑡−1
  17. 16 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍0 𝑍1 𝑍2 𝑍𝑡 𝑍𝑡−1 Loop detection
  18. 17 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍0 𝑍1 𝑍2 𝑍𝑡 Loop closing (全体的なBA) 𝑍𝑡−1
  19. 18 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM 𝑍0 𝑍1 𝑍2 𝑍𝑡 𝑍𝑡−1 カメラ軌跡 {𝐑𝑗, 𝐭𝑗} 3D地図に対するメンテナンス(「初期化」と「点の追加/削除」) はVSLAMの性能に大きな影響 (職人技が光る部分) →カメラの初期化やPure rotation時に失敗しやすい
  20. 19 従来のVSLAM (BA-SLAM) • Basic recipe for BA-SLAM ✖ システムが複雑 (3D地図の維持が大変) ✖ Pure rotationに弱い (3D地図の参照が困難なため) → できるだけ3D地図に依存しないカメラの軌跡推定を行えないか? 𝑍0 𝑍1 𝑍2 𝑍𝑡 𝑍𝑡−1 カメラ軌跡 {𝐑𝑗, 𝐭𝑗}
  21. 20 提案手法 • VSLAMのカメラ軌跡推定を2つの問題に分離 1. カメラの回転 𝐑𝑗 Rotation Averaging[1] 2. カメラの位置𝐭𝑗 (と3D地図 𝐗) Known Rotation Problem (KRot)[2] 𝐮𝑖,𝑗 [1] A. Eriksson, C. Olsson, F. Kahl, and T.-J. Chin, “Rotation averaging and strong duality,” in CVPR, 2018. [2] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. 3D地図に依存することなくカメラの回転を求めることが可能に! (従来よりもTracking失敗しにくいシステムに)
  22. 21 提案手法 • VSLAMのカメラ軌跡推定を2つの問題に分離 1. カメラの回転 𝐑𝑗 Rotation Averaging[1] 2. カメラの位置𝐭𝑗 (と3D地図 𝐗) Known Rotation Problem (KRot)[2] 𝐮𝑖,𝑗 [おまけ] 本論文の著者の1人であるTat-Jun Chin氏は両問題に対する解法 の論文に関わっており, CVPR2018で採択[1][2](片方はoral) [1] A. Eriksson, C. Olsson, F. Kahl, and T.-J. Chin, “Rotation averaging and strong duality,” in CVPR, 2018. [2] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018.
  23. • カメラの回転成分{𝐑𝑗}の最適化[1] 22 1. Rotation Averaging 2 1 3 4 5 𝐑2 絶対座標 𝐑3 𝐑4 𝐑5 𝐑1 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013.
  24. • カメラの回転成分{𝐑𝑗}の最適化[1] 1. 特徴点マッチングより相対的なカメラ回転{𝐑 𝑖𝑗}を求める 2. 相対的なカメラ回転{𝐑 𝑖𝑗}から絶対座標系での回転{𝐑𝑗}を求める 23 1. Rotation Averaging 2 1 3 4 5 𝐑2 絶対座標 𝐑3 𝐑4 𝐑5 𝐑1 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013.
  25. • カメラの回転成分{𝐑𝑗}の最適化[1] 1. 特徴点マッチングより相対的なカメラ回転{𝐑 𝑖𝑗}を求める 2. 相対的なカメラ回転{𝐑 𝑖𝑗}から絶対座標系での回転{𝐑𝑗}を求める 𝐑12 24 1. Rotation Averaging 21. 特徴点マッチングにより基礎行列の計算 2. SVDによる行列分解 𝐱2 T 𝐅12 𝐱1 = 0 𝐄12 = 𝐊2 𝐅12 𝐊1 𝐄12 = 𝐭12 × 𝐑12 特徴点 𝐱1 特徴点 𝐱2 1 3 4 5 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013.
  26. 25 1. Rotation Averaging • カメラの回転成分{𝐑𝑗}の最適化[1] 1. 特徴点マッチングより相対的なカメラ回転{𝐑 𝑖𝑗}を求める 2. 相対的なカメラ回転{𝐑 𝑖𝑗}から絶対座標系での回転{𝐑𝑗}を求める 絶対座標 min 𝐑1,𝐑2 𝐑12 − 𝐑2 𝐑1 −1 𝐹 = 2 2 sin ∠(𝐑12 𝐑2 𝐑1 −1 −1) 2 𝐑12 2 1 𝐑2 𝐑1 相対座標系の回転は 絶対座標系での 回転で表現可能 𝐑12 2 1 𝐑2 𝐑1 −1 3 4 5 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013. [2] A. Eriksson, C. Olsson, F. Kahl, and T.-J. Chin, “Rotation averaging and strong duality,” in CVPR, 2018. (Chordal distance[2])
  27. 26 1. Rotation Averaging • カメラの回転成分{𝐑𝑗}の最適化[1] 1. 特徴点マッチングより相対的なカメラ回転{𝐑 𝑖𝑗}を求める 2. 相対的なカメラ回転{𝐑 𝑖𝑗}から絶対座標系での回転{𝐑𝑗}を求める → 各カメラの回転方向{𝑹𝑗}を求めることができた 𝐑12 2 1 𝐑2 𝐑1 絶対座標 3 4 5 𝐑23 𝐑34 𝐑45 𝐑51 𝐑52 𝐑53𝐑14 𝐑24 𝐑13 𝐑3 𝐑4 𝐑5 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013. カメラ全体に対して最適化
  28. 27 1. Rotation Averaging • カメラの回転成分{𝐑𝑗}の最適化[1] 1. 特徴点マッチングより相対的なカメラ回転{𝐑 𝑖𝑗}を求める 2. 相対的なカメラ回転{𝐑 𝑖𝑗}から絶対座標系での回転{𝐑𝑗}を求める → 各カメラの回転方向{𝑹𝑗}を求めることができた 𝐑12 2 1 𝐑2 𝐑1 絶対座標 3 4 5 𝐑23 𝐑34 𝐑45 𝐑51 𝐑52 𝐑53𝐑14 𝐑24 𝐑13 𝐑3 𝐑4 𝐑5 [1] A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013.
  29. 28 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 2Dカメラ画像上に投影し最小化 (Bundle Adjustmentに近い) min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot 最大要素の最小化 (𝐿∞最適化) [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. カメラ姿勢 [𝐑𝑗, 𝐭𝑗] 𝒖𝑖,𝑗 3D位置 𝐗 𝑖 投影点 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗) 𝑍𝑗+1 [𝐑𝑗+1, 𝐭𝑗+1] 𝒖𝑖,𝑗+1 画像 𝑍𝑗
  30. 29 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 2Dカメラ画像上に投影し最小化 (Bundle Adjustmentに近い) min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 Bundle AdjustmentKRot 2乗誤差の和の最小化 (𝐿2最適化) 最大要素の最小化 (𝐿∞最適化) [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018.
  31. 30 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 2Dカメラ画像上に投影し最小化 (Bundle Adjustmentに近い) min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 Bundle AdjustmentKRot 2乗誤差の和の最小化 (𝐿2最適化) 最大要素の最小化 (𝐿∞最適化) • 再投影誤差の𝑳 𝟐最小化はhard non- convex problem[2] • 良い初期解が必要 • 𝑳∞最適化で書き直すとsingle local optimumを持つようになる[2] • Outlierに対して非常に敏感 (だがL2も同じくらい敏感(?)) 𝐿2関数 𝐿∞関数 [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. [2] F. Kahl and R. Hartley, “Multiple-view geometry under the L∞-norm,” PAMI, vol. 30, no. 9, pp. 1603–1617, 2008.
  32. 31 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 以下をどう最適化するか? • Res-Int (Resection-Intersection)[1] min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. [2] F. Kahl and R. Hartley, “Multiple-view geometry under the L∞-norm,” PAMI, vol. 30, no. 9, pp. 1603–1617, 2008.
  33. 32 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 以下をどう最適化するか? • Res-Int (Resection-Intersection)[1] min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. [2] F. Kahl and R. Hartley, “Multiple-view geometry under the L∞-norm,” PAMI, vol. 30, no. 9, pp. 1603–1617, 2008. 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 = 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) = 𝑓𝐱 𝐳 + 𝑐 𝑥 𝑓𝐲 𝐳 + 𝑐 𝑦 カメラの投影モデル (簡単のため内部パラメータ𝑲 = 𝑰 𝟑×𝟑) 𝑓 = 1 z𝑖 [𝑥𝑖, 𝑦𝑖, 𝑧𝑖] [𝑥𝑖/𝑧𝑖, 𝑦𝑖/𝑧𝑖, 1] 𝑐 𝑥 = 𝑐 𝑦 = 0
  34. 33 2. Known Rotation Problem (KRot) • カメラの回転から, カメラ位置と3D点の最適化[1] – 以下をどう最適化するか? • Res-Int (Resection-Intersection)[1] [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. [2] F. Kahl and R. Hartley, “Multiple-view geometry under the L∞-norm,” PAMI, vol. 30, no. 9, pp. 1603–1617, 2008. min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗 = 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) = 𝑓𝐱 𝐳 + 𝑐 𝑥 𝑓𝐲 𝐳 + 𝑐 𝑦 カメラの投影モデル (簡単のため内部パラメータ𝑲 = 𝑰 𝟑×𝟑) 𝑓 = 1 z𝑖 [𝑥𝑖, 𝑦𝑖, 𝑧𝑖] [𝑥𝑖/𝑧𝑖, 𝑦𝑖/𝑧𝑖, 1] 𝑐 𝑥 = 𝑐 𝑦 = 0
  35. 34 2. Known Rotation Problem (KRot) • Res-Int (Resection-Intersection)[1] [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot
  36. 35 2. Known Rotation Problem (KRot) • Res-Int (Resection-Intersection)[1] [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. min 𝐗 𝑖 ,{𝐭 𝑗} max 𝑖,𝑗 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖, 𝑗 KRot min 𝐗 𝑖 max 𝑗 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑗 min 𝐭 𝑗 max 𝑖 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖 Int𝒊 Res𝒋 {𝐭𝑗}を固定 {𝑿𝒊}を固定
  37. 36 2. Known Rotation Problem (KRot) • Res-Int (Resection-Intersection)[1] [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. min 𝐗 𝑖 max 𝑗 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑗 min 𝐭 𝑗 max 𝑖 𝐮𝑖,𝑗 − 𝐑𝑗 (1:2) 𝐗 𝑖 + 𝐭𝑗 (1:2) 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) 𝟐 s. t. 𝐑𝑗 (3) 𝐗 𝑖 + 𝐭𝑗 (3) > 0 ∀𝑖 Int𝒊 Res𝒋 IntとResの交互最適化を高速に解く[1] 大体3秒(画像15枚, 3D点3000個) 𝐮𝑖,𝑗 𝑖 = 1 𝑿𝑖 𝑖 = 1 𝑖 𝑿𝑖 Int 𝑖 𝑿𝑖 𝑖 = 1
  38. 37 L-infinity SLAM • 全体的な流れ 「初期化」「3D点の追加」 などの3D地図に関する注意深い メンテナンスが不要に
  39. 38 L-infinity SLAM • 全体的な流れ BAの操作を 「Rotation Averaging」と 「KRot」に置き換え
  40. 39 L-infinity SLAM • 全体的な流れ 非常にシンプルな形のアルゴリズムに変形することができた!
  41. 40 実験1 • L-infinity SLAM vs BA-SLAM – MATLABで両アルゴリズムを実装 • Quad-core 2.5GHz Intel core i7 CPU + 16GB of RAM • BAの方はCeres-solver[1]で実装 – Maptek社によって提供されたデータで実験 • 正確なGT付き • 1833 frameで構成され2回loopする映像 (KeyFrameを358枚選択) – 今回VSLAMで必要不可欠なKeyFrame選択などの操作の実装は 行っていない • 単純に各KFに対して最適化を繰り返すような実装 [1] S. Agarwal and K. Mierle, Ceres Solver: Tutorial & Reference, Google Inc.
  42. 41 結果 • カメラの軌跡の位置誤差と回転誤差 – BA-SLAMの方は途中でtracking lost※を起こしている – 結果としてL-infinity SLAMはBA-SLAMよりも性能が良い カメラ位置誤差(< 0.67 𝑚), 回転誤差(< 0.83°) – L-infinity SLAMで軌跡を求めた後にBAすると結果が悪化 Tracking Lost ※今回Tracking LostはOutlier除去の結果起きている. 各三次元点の位置がカメラから150mより遠くなった場合outlierと見なした
  43. 42 結果 • カメラの軌跡の比較 – BA-SLAMは部分的に誤差が目立つ(?)
  44. 43 結果 • 三次元地図の復元結果 – カメラ軌跡推定時には300点しか特徴点を使っていないので, KRot[1]で改めて三角測量し直した結果 [1] Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018.
  45. 44 結果 • 最適化の速さの計測 – Rotation Averaging vs BA(回転のみ) – 最初のloopまでの時間を計測し比較 – 回転に関してはRotation Averagingの方が高速に最適化可能
  46. 45 実験2 • カメラの大きな回転への耐性 – Smart-phoneで撮影したカメラの回転映像 – ORB-SLAM[1]では初期化すらできないが, L-infinity SLAMでは きちんと復元できた [1] R. Mur-Artal, J. Montiel, and J. Tardos, “ORB-SLAM: a versatile and accurate monocular SLAM system,” IEEE TRO, vol. 31, no. 5, pp.1147–1163, 2015.
  47. 46 まとめ • L-infinity SLAM – 新しいVSLAMの最適化フレームワークの提案 – BAをRotation AveragingとKRotに分離することで, 3D地図の 依存なくカメラの回転を求められる 1. 職人技だった3D地図の注意深いメンテナンスが不要に – カメラ初期化や, Pure rotation時のTrackingに強くなった 2. VSLAMのアルゴリズムがシンプルに • 個人的な所感 – VSLAMの細かい要素の作り込みが今後の焦点になりそう • 毎時刻のTrackingやKeyFrame選択をどう行うか? • 遅すぎるLoop Closingをどう扱うべきか? – 新しいVSLAMのフレームワークとして非常に面白い論文
  48. 47 参考資料 • 本論文の著者が関連する論文 – A. Eriksson, C. Olsson, F. Kahl, and T.-J. Chin, “Rotation averaging and strong duality,” in CVPR, 2018. – Q. Zhang, T.-J. Chin, and H. M. Le, “A fast resection-intersection method for the known rotation problem,” in CVPR, 2018. • Rotation Averagingの実装に採用した論文 – A. Chatterjee and V. Madhav Govindu, “Efficient and robust largescale rotation averaging,” in ICCV, 2013. • KRot (Loop Closing版, 詳細は論文へ)でベースにしていた論文 – K. Sim and R. Hartley, “Recovering camera motion using L∞ minimization,” in CVPR, 2006, pp. 1230–1237. • 𝑳∞-normを使った定式化関連 – F. Kahl and R. Hartley, “Multiple-view geometry under the L∞-norm,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 30, no. 9, pp. 1603–1617, 2008. – C. Olsson, A. Eriksson, and F. Kahl, “Efficient optimization for 𝐿∞- problems using pseudoconvexity,” in ICCV, 2007.
Anúncio