SlideShare a Scribd company logo
1 of 48
Download to read offline
第4回 3D勉強会@関東
~画像を用いた3Dモデリングの基礎から応用まで~
Visual SLAM: Why Bundle Adjust?
東京大学 相澤研究室所属
M1 金子 真也 (@syinari0123)
1
自己紹介
• 氏名
– 金子 真也 (かねこ まさや)
• 所属
– 東京大学大学院 学際情報学府 相澤研 M1
• Recently
– 2018年5月-8月 DeNA アルバイト (SFM)
– 2018年8月-9月 Sony Internship (SLAM)
– 2018年9月- 産総研 Research Assistant
• 深層学習やVisual SLAMと戯れています
• 就活に向けて情報収集中なのでSLAM関連でおすすめの企業があり
ましたらぜひ教えてください
まさや
(@syinari0123)
2
本論文
• Visual SLAM: Why Bundle Adjust?
– 著者: A. P. Bustos, T. Chin, A. Eriksson and I. Reid
– 採択会議: ICRA2019 (arXivには2019/2/11投稿)
Andrew Davison 大先生も絶賛
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
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
5
どのようなものか?
• 新しい最適化手法のVSLAMを提案 (L-infinity SLAM)
– 従来の特徴点ベースのVSLAMよりシンプルでロバスト
– 実用化には至っていなかった要素技術で実践的なVSLAMの基礎
を実現した点が今回の貢献
6
従来のVSLAM (BA-SLAM)
• ORB-SLAM [Mur-Artal+, IEEE TRO’15]
– 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定
画像上での特徴点 各点の三次元位置と
カメラ軌跡の推定
7
従来のVSLAM (BA-SLAM)
• ORB-SLAM [Mur-Artal+, IEEE TRO’15]
– 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定
– Bundle Adjustment (BA)
• 基準点とカメラを結ぶ光線束(Bundle)による調整
画像 𝑍𝑗 画像 𝑍𝑗+1
𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗
カメラ姿勢 [𝐑𝑗, 𝐭𝑗]
𝒖𝑖,𝑗
投影点
𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗) Bundle
𝑍𝑗+1
[𝐑𝑗+1, 𝐭𝑗+1]
𝒖𝑖,𝑗+1
画像 𝑍𝑗
3D位置 𝐗 𝑖
8
従来のVSLAM (BA-SLAM)
• ORB-SLAM [Mur-Artal+, IEEE TRO’15]
– 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定
– Bundle Adjustment (BA)
• 基準点とカメラを結ぶ光線束(Bundle)による調整
画像 𝑍𝑗 画像 𝑍𝑗+1
𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗
最適化
画像 𝑍𝑗
𝒖𝑖,𝑗
Bundle
[𝐑𝑗+1, 𝐭𝑗+1]
𝑍𝑗+1
𝒖𝑖,𝑗+1
3D位置 𝐗 𝑖
カメラ姿勢 [𝐑𝑗, 𝐭𝑗]
投影点
𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗)
9
従来のVSLAM (BA-SLAM)
• ORB-SLAM [Mur-Artal+, IEEE TRO’15]
– 抽出した特徴点の三次元位置を推定しながらカメラ軌跡の推定
– Bundle Adjustment (BA)
• 基準点とカメラを結ぶ光線束(Bundle)による調整
画像 𝑍𝑗 画像 𝑍𝑗+1
𝒖𝑖,𝑗+1特徴点 𝒖𝑖,𝑗
最適化
画像 𝑍𝑗
𝒖𝑖,𝑗
Bundle
[𝐑𝑗+1, 𝐭𝑗+1]
𝑍𝑗+1
𝒖𝑖,𝑗+1
3D位置 𝐗 𝑖
カメラ姿勢 [𝐑𝑗, 𝐭𝑗]
投影点
𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗)
10
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
11
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍1
𝑍0 Initialization
(3D地図の点の初期化)
12
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍1
𝑍2
𝑍0
Tracking
13
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍1
𝑍2
𝑍0
3D地図への点の追加/削除
14
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍1
𝑍2
𝑍0
Local Mapping
(局所的なBA)
15
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍0
𝑍1
𝑍2
𝑍𝑡 𝑍𝑡−1
16
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍0
𝑍1
𝑍2
𝑍𝑡 𝑍𝑡−1
Loop detection
17
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍0
𝑍1
𝑍2
𝑍𝑡 Loop closing
(全体的なBA)
𝑍𝑡−1
18
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
𝑍0
𝑍1
𝑍2
𝑍𝑡
𝑍𝑡−1
カメラ軌跡
{𝐑𝑗, 𝐭𝑗}
3D地図に対するメンテナンス(「初期化」と「点の追加/削除」)
はVSLAMの性能に大きな影響 (職人技が光る部分)
→カメラの初期化やPure rotation時に失敗しやすい
19
従来のVSLAM (BA-SLAM)
• Basic recipe for BA-SLAM
✖ システムが複雑
(3D地図の維持が大変)
✖ Pure rotationに弱い
(3D地図の参照が困難なため)
→ できるだけ3D地図に依存しないカメラの軌跡推定を行えないか?
𝑍0
𝑍1
𝑍2
𝑍𝑡
𝑍𝑡−1
カメラ軌跡
{𝐑𝑗, 𝐭𝑗}
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失敗しにくいシステムに)
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.
• カメラの回転成分{𝐑𝑗}の最適化[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.
• カメラの回転成分{𝐑𝑗}の最適化[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.
• カメラの回転成分{𝐑𝑗}の最適化[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.
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])
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.
カメラ全体に対して最適化
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.
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
画像 𝑍𝑗
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.
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.
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.
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
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
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
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𝒋
{𝐭𝑗}を固定
{𝑿𝒊}を固定
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
37
L-infinity SLAM
• 全体的な流れ
「初期化」「3D点の追加」
などの3D地図に関する注意深い
メンテナンスが不要に
38
L-infinity SLAM
• 全体的な流れ
BAの操作を
「Rotation Averaging」と
「KRot」に置き換え
39
L-infinity SLAM
• 全体的な流れ
非常にシンプルな形のアルゴリズムに変形することができた!
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.
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と見なした
42
結果
• カメラの軌跡の比較
– BA-SLAMは部分的に誤差が目立つ(?)
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.
44
結果
• 最適化の速さの計測
– Rotation Averaging vs BA(回転のみ)
– 最初のloopまでの時間を計測し比較
– 回転に関してはRotation Averagingの方が高速に最適化可能
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.
46
まとめ
• L-infinity SLAM
– 新しいVSLAMの最適化フレームワークの提案
– BAをRotation AveragingとKRotに分離することで, 3D地図の
依存なくカメラの回転を求められる
1. 職人技だった3D地図の注意深いメンテナンスが不要に
– カメラ初期化や, Pure rotation時のTrackingに強くなった
2. VSLAMのアルゴリズムがシンプルに
• 個人的な所感
– VSLAMの細かい要素の作り込みが今後の焦点になりそう
• 毎時刻のTrackingやKeyFrame選択をどう行うか?
• 遅すぎるLoop Closingをどう扱うべきか?
– 新しいVSLAMのフレームワークとして非常に面白い論文
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.

More Related Content

What's hot

SLAM勉強会(3) LSD-SLAM
SLAM勉強会(3) LSD-SLAMSLAM勉強会(3) LSD-SLAM
SLAM勉強会(3) LSD-SLAMIwami Kazuya
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類Yoshitaka HARA
 
3次元レジストレーション(PCLデモとコード付き)
3次元レジストレーション(PCLデモとコード付き)3次元レジストレーション(PCLデモとコード付き)
3次元レジストレーション(PCLデモとコード付き)Toru Tamaki
 
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日Kitsukawa Yuki
 
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII
 
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted WindowsDeep Learning JP
 
複数のGNSSを用いたポーズグラフ最適化
複数のGNSSを用いたポーズグラフ最適化複数のGNSSを用いたポーズグラフ最適化
複数のGNSSを用いたポーズグラフ最適化TaroSuzuki15
 
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View SynthesisDeep Learning JP
 
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」Naoya Chiba
 
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成MobileRoboticsResear
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介miyanegi
 
関東コンピュータビジョン勉強会
関東コンピュータビジョン勉強会関東コンピュータビジョン勉強会
関東コンピュータビジョン勉強会nonane
 
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)Yusuke Uchida
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised LearningまとめDeep Learning JP
 
ロボティクスにおける SLAM 手法と実用化例
ロボティクスにおける SLAM 手法と実用化例ロボティクスにおける SLAM 手法と実用化例
ロボティクスにおける SLAM 手法と実用化例Yoshitaka HARA
 
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​SSII
 
三次元表現まとめ(深層学習を中心に)
三次元表現まとめ(深層学習を中心に)三次元表現まとめ(深層学習を中心に)
三次元表現まとめ(深層学習を中心に)Tomohiro Motoda
 
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量takaya imai
 

What's hot (20)

SLAM勉強会(3) LSD-SLAM
SLAM勉強会(3) LSD-SLAMSLAM勉強会(3) LSD-SLAM
SLAM勉強会(3) LSD-SLAM
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類
 
3次元レジストレーション(PCLデモとコード付き)
3次元レジストレーション(PCLデモとコード付き)3次元レジストレーション(PCLデモとコード付き)
3次元レジストレーション(PCLデモとコード付き)
 
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
 
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
 
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
[DL輪読会]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows
 
複数のGNSSを用いたポーズグラフ最適化
複数のGNSSを用いたポーズグラフ最適化複数のGNSSを用いたポーズグラフ最適化
複数のGNSSを用いたポーズグラフ最適化
 
20190825 vins mono
20190825 vins mono20190825 vins mono
20190825 vins mono
 
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
 
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」
論文紹介「PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet」
 
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
 
SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介SLAM開発における課題と対策の一例の紹介
SLAM開発における課題と対策の一例の紹介
 
関東コンピュータビジョン勉強会
関東コンピュータビジョン勉強会関東コンピュータビジョン勉強会
関東コンピュータビジョン勉強会
 
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
 
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
 
ロボティクスにおける SLAM 手法と実用化例
ロボティクスにおける SLAM 手法と実用化例ロボティクスにおける SLAM 手法と実用化例
ロボティクスにおける SLAM 手法と実用化例
 
Visual slam
Visual slamVisual slam
Visual slam
 
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
SSII2022 [SS1] ニューラル3D表現の最新動向〜 ニューラルネットでなんでも表せる?? 〜​
 
三次元表現まとめ(深層学習を中心に)
三次元表現まとめ(深層学習を中心に)三次元表現まとめ(深層学習を中心に)
三次元表現まとめ(深層学習を中心に)
 
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
 

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

20161203 cv 3_d_recon_tracking_eventcamera
20161203 cv 3_d_recon_tracking_eventcamera20161203 cv 3_d_recon_tracking_eventcamera
20161203 cv 3_d_recon_tracking_eventcameraKyohei Unno
 
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説Masaya Kaneko
 
Light weightbinocular sigasia2012_face
Light weightbinocular sigasia2012_faceLight weightbinocular sigasia2012_face
Light weightbinocular sigasia2012_faceishii yasunori
 
SSII2014 チュートリアル資料
SSII2014 チュートリアル資料SSII2014 チュートリアル資料
SSII2014 チュートリアル資料Masayuki Tanaka
 
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Masaya Kaneko
 
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...Toru Tamaki
 
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)Morpho, Inc.
 
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII
 
論文読み会(DeMoN;CVPR2017)
論文読み会(DeMoN;CVPR2017)論文読み会(DeMoN;CVPR2017)
論文読み会(DeMoN;CVPR2017)Masaya Kaneko
 
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature FilterMorpho, Inc.
 
Hough forestを用いた物体検出
Hough forestを用いた物体検出Hough forestを用いた物体検出
Hough forestを用いた物体検出MPRG_Chubu_University
 
Rパッケージ“KFAS”を使った時系列データの解析方法
Rパッケージ“KFAS”を使った時系列データの解析方法Rパッケージ“KFAS”を使った時系列データの解析方法
Rパッケージ“KFAS”を使った時系列データの解析方法Hiroki Itô
 
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」ICCV2019読み会「Learning Meshes for Dense Visual SLAM」
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」Sho Kagami
 
K shapes zemiyomi
K shapes zemiyomiK shapes zemiyomi
K shapes zemiyomikenyanonaka
 
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデルMasashi Komori
 
関東CV勉強会20140802(Face Alignment at 3000fps)
関東CV勉強会20140802(Face Alignment at 3000fps)関東CV勉強会20140802(Face Alignment at 3000fps)
関東CV勉強会20140802(Face Alignment at 3000fps)tackson5
 
SSII2020 [O3-01] Extreme 3D センシング
SSII2020 [O3-01]  Extreme 3D センシングSSII2020 [O3-01]  Extreme 3D センシング
SSII2020 [O3-01] Extreme 3D センシングSSII
 
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...Eiji Uchibe
 
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)Yoichi Shirasawa
 

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

JEITA4602B
JEITA4602BJEITA4602B
JEITA4602B
 
20161203 cv 3_d_recon_tracking_eventcamera
20161203 cv 3_d_recon_tracking_eventcamera20161203 cv 3_d_recon_tracking_eventcamera
20161203 cv 3_d_recon_tracking_eventcamera
 
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説
GN-Net: The Gauss-Newton Loss for Deep Direct SLAMの解説
 
Light weightbinocular sigasia2012_face
Light weightbinocular sigasia2012_faceLight weightbinocular sigasia2012_face
Light weightbinocular sigasia2012_face
 
SSII2014 チュートリアル資料
SSII2014 チュートリアル資料SSII2014 チュートリアル資料
SSII2014 チュートリアル資料
 
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)Neural scene representation and rendering の解説(第3回3D勉強会@関東)
Neural scene representation and rendering の解説(第3回3D勉強会@関東)
 
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...
文献紹介:Deep Analysis of CNN-Based Spatio-Temporal Representations for Action Re...
 
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
 
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
 
論文読み会(DeMoN;CVPR2017)
論文読み会(DeMoN;CVPR2017)論文読み会(DeMoN;CVPR2017)
論文読み会(DeMoN;CVPR2017)
 
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter
(文献紹介)エッジ保存フィルタ:Side Window Filter, Curvature Filter
 
Hough forestを用いた物体検出
Hough forestを用いた物体検出Hough forestを用いた物体検出
Hough forestを用いた物体検出
 
Rパッケージ“KFAS”を使った時系列データの解析方法
Rパッケージ“KFAS”を使った時系列データの解析方法Rパッケージ“KFAS”を使った時系列データの解析方法
Rパッケージ“KFAS”を使った時系列データの解析方法
 
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」ICCV2019読み会「Learning Meshes for Dense Visual SLAM」
ICCV2019読み会「Learning Meshes for Dense Visual SLAM」
 
K shapes zemiyomi
K shapes zemiyomiK shapes zemiyomi
K shapes zemiyomi
 
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
 
関東CV勉強会20140802(Face Alignment at 3000fps)
関東CV勉強会20140802(Face Alignment at 3000fps)関東CV勉強会20140802(Face Alignment at 3000fps)
関東CV勉強会20140802(Face Alignment at 3000fps)
 
SSII2020 [O3-01] Extreme 3D センシング
SSII2020 [O3-01]  Extreme 3D センシングSSII2020 [O3-01]  Extreme 3D センシング
SSII2020 [O3-01] Extreme 3D センシング
 
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...
NIPS KANSAI Reading Group #7: Temporal Difference Models: Model-Free Deep RL ...
 
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)
20110109第8回CV勉強会(ミーンシフトの原理と応用:6章・7章)shirasy)
 

More from Masaya Kaneko

Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...Masaya Kaneko
 
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])Masaya Kaneko
 
論文読み会2018 (CodeSLAM)
論文読み会2018 (CodeSLAM)論文読み会2018 (CodeSLAM)
論文読み会2018 (CodeSLAM)Masaya Kaneko
 
Direct Sparse Odometryの解説
Direct Sparse Odometryの解説Direct Sparse Odometryの解説
Direct Sparse Odometryの解説Masaya Kaneko
 
Dynamic Routing Between Capsules
Dynamic Routing Between CapsulesDynamic Routing Between Capsules
Dynamic Routing Between CapsulesMasaya Kaneko
 
コンピュータ先端ガイド2巻3章勉強会(SVM)
コンピュータ先端ガイド2巻3章勉強会(SVM)コンピュータ先端ガイド2巻3章勉強会(SVM)
コンピュータ先端ガイド2巻3章勉強会(SVM)Masaya Kaneko
 

More from Masaya Kaneko (6)

Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
Unsupervised Collaborative Learning of Keyframe Detection and Visual Odometry...
 
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])
論文読み会@AIST (Deep Virtual Stereo Odometry [ECCV2018])
 
論文読み会2018 (CodeSLAM)
論文読み会2018 (CodeSLAM)論文読み会2018 (CodeSLAM)
論文読み会2018 (CodeSLAM)
 
Direct Sparse Odometryの解説
Direct Sparse Odometryの解説Direct Sparse Odometryの解説
Direct Sparse Odometryの解説
 
Dynamic Routing Between Capsules
Dynamic Routing Between CapsulesDynamic Routing Between Capsules
Dynamic Routing Between Capsules
 
コンピュータ先端ガイド2巻3章勉強会(SVM)
コンピュータ先端ガイド2巻3章勉強会(SVM)コンピュータ先端ガイド2巻3章勉強会(SVM)
コンピュータ先端ガイド2巻3章勉強会(SVM)
 

Recently uploaded

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Recently uploaded (9)

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

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位置 𝐗 𝑖 カメラ姿勢 [𝐑𝑗, 𝐭𝑗] 投影点 𝑓 𝐗 𝑖 𝐑𝑗, 𝐭𝑗)
  • 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
  • 39. 38 L-infinity SLAM • 全体的な流れ BAの操作を 「Rotation Averaging」と 「KRot」に置き換え
  • 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と見なした
  • 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.