Your SlideShare is downloading. ×
Chapter4 1 takmin
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Chapter4 1 takmin

4,041
views

Published on

第4回「コンピュータビジョン最先端ガイド」読書会発表資料

第4回「コンピュータビジョン最先端ガイド」読書会発表資料


0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,041
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
55
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 第4回 「コンピュータビジョン最先端 ガイド」勉強会 テンソルと多視点幾何 1&2 Presented by takmin
  • 2. やりたいこと • 複数枚の画像から撮影対象の3次元の情報 を復元したい 例えばこんなの http://grail.cs.washington.edu/rome/
  • 3. エピポーラ幾何 A カメラ1の撮 影画像 カメラ2の撮 影画像 A’1 A’2 カメラ1の カメラ2の 焦点 焦点
  • 4. エピポーラ幾何 • 3次元空間上の点Aが、それぞれのカメラで 取得した画像のどの位置に映っているかが わかれば,三角測量の原理から,点Aの三次 元空間上の座標がわかる! • 前提条件として、以下の情報が既知 • カメラの位置(X,Y,Z)と向き(θ,φ,ψ) カメラパラメータ • カメラの焦点距離 • カメラの解像度(縦/横)
  • 5. エピポーラ幾何 • 2枚の画像に共通して映っている点が多いな ら,その関係からカメラパラメータを逆算でき る!(幾何学的拘束) • 2つのカメラに映っている共通の点群を見つ けてあげることで,カメラの校正(キャリブレー ション)と各点の3次元座標を同時に求めよ う!
  • 6. 多視点幾何 • カメラを2つから3つ以上に拡張することで, より多くのカメラの校正を一度で行う A A’3 A’1 A’2
  • 7. 斉次座標 • 直線の公式 ax  by  c  0 y 傾き成分 平行移動成分 l x l  a, b, c x  x, y,1 T T とおくと l x0 T x 平行移動成分を含めて行列の積で表すために、次元を1つ増やした座標
  • 8. テンソルの利点 • テンソル: – 配列の概念を拡張/一般化したもの • 今までは2つのカメラを使った3次元再構成 が一般的だが、テンソルを使用することで複 数カメラへ簡単に拡張できる
  • 9. テンソルの基礎 0階のテンソル 0次元配列(スカラー) 1階のテンソル 1次元配列(ベクトル) 2階のテンソル 2次元配列(配列) 3次元配列 3階のテンソル テンソルの厳密な定義: 多重線形性を持つ数値の集合(後述)
  • 10. テンソルの表記 • ベクトルのテンソル表記 V1  V  V   2 Vi V3    テンソル表記 ベクトル 1階のテンソル
  • 11. テンソルの表記 • 行列のテンソル表記 A 1 1 A1 2 A 1 3   i A  A 1 2 A2 2 2 A  3 A j A3 A3 A  3 1 2 3 テンソル表記 行列 2階のテンソル
  • 12. テンソルの表記 • ベクトルの内積 a  a1 , a2 , a3  T  b  b ,b ,b 1 2  3 T 3 c a b T c   ai b i c  ai b i i 1 テンソル表記 内積 アインシュタイン規約
  • 13. テンソルの表記 • 行列とベクトルの積 a,b : ベクトル A : 行列  b1   A1 1 1 A2 A3   a1  1 b   Ai a  2  2 2  2  b  Aa b    A1 2 A2 A3  a  j j i b3   A13 3 A2 A3   a 3  3      i 行列・ベクトルの積
  • 14. テンソルの表記 • 行列とベクトルの積 a,b : ベクトル A : 行列 b  Aa b   Ai a j j i b  Ai a j j i i テンソル表記 行列・ベクトルの積 アインシュタイン規約
  • 15. テンソルの表記 • まとめ 行列表記 テンソル表記 i ベクトル a ai , a 行列 ij j i A Aij , A , Ai , A j 内積 c a bT c  ai b i 座標変換 b  Aa b  Ai a j j i
  • 16. 反変テンソルと共変テンソル • テンソルの上付きと下付きの違いについて z a  a e1  a e2  a e3 1 2 3 (10) a 基底ベクトル y e3 e2 a  Ea (11) e1 E  e1 , e 2 , e 3   a  a ,a ,a 1 2  3 T x
  • 17. 反変テンソルと共変テンソル E  e1 , e 2 , e 3   a  a ,a ,a 1 2  3 T y a  Ea (11) a2 a e2 e1 a1 x
  • 18. 反変テンソルと共変テンソル E  e1 , e 2 , e 3   a  a ,a ,a 1 2  3 T y a  Ea (11) a a2 ' H 1 a  EHH a (12) e2’ a1 '   e1’ x EH  e1 ' , e 2 ' , e 3 ' H 1a  a1 ' , a 2 ' , a ' 3 T
  • 19. 反変テンソルと共変テンソル • 共変テンソル – 基底ベクトルを変換したとき,基底ベクトルと同じ 変換を受けるベクトル • 反変テンソル – 基底ベクトルを変換したとき,基底ベクトルと逆の 変換を受けるベクトル
  • 20. 反変テンソルと共変テンソル • テンソルの添字のルール – 共変テンソルが下付添字 a1 , a2 , a3 – 反変テンソルが上付き添字 1 2 3 b ,b ,b
  • 21. 反変テンソルと共変テンソル • 点xを通る直線lの例 l  l1 , l2 , l3  T  x  x ,x ,x 1 2  3 T y l l x0 T x 1 l HH x  0 T x 共変ベクトル 反変ベクトル
  • 22. 反変テンソルと共変テンソル • 点xを通る平面Sの例 S  S1 , S 2 , S3 , S 4  T  X X ,X ,X ,X 1 2 3  4 T z S X0 T S X y 1 S HH X  0 T 共変ベクトル 反変ベクトル x
  • 23. テンソルの積 • 一階テンソル同士の積 共変テンソル同士の積 Ai B j  Cij (17) 反変テンソル同士の積 A B C i j ij (18) 共変テンソルと反変テンソルの積 A Bj  C i i j (19)
  • 24. テンソルの積 • テンソルに基底の考え方を入れた方が,テン ソルの積は理解しやすい! A  A1e1  A2e 2 B  B1e'1  B 2e'2 C  AB ei  e' j  eij  ( A1e1  A2e 2 )  ( B1e'1  B 2e'2 )  A1 B1e1  e'1  A1 B 2e1  e'2  A2 B1e 2  e'1  A2 B 2e 2  e'2  C 11e11  C 12e12  C 21e 21  C 22e 22 C AB ij i j
  • 25. テンソルの積 • n階テンソルとm階テンソルの積 – n+m階テンソルになる 1階×1階 → 2階 A1 B1 A1 B1 A1B2 A2 B2 A2 B1 A2 B2
  • 26. テンソルの積 • n階テンソルとm階テンソルの積 – n+m階テンソルになる 2階×1階 → 3階 A11B1 A12 B1 A11 A12 B1 A21B1 A22 B1 A21 A22 B2 A11 B2 A12 B2 A21B2 A22 B2
  • 27. テンソルの積 • n階テンソルとm階テンソルの積 – n+m階テンソルになる 共変テンソル同士の積 Ai1i2 in B j1 j2  jm  Ci1in j1 jm (17) 反変テンソル同士の積 Ai1i2 in B j1 j2  jm C i1in j1 jm (18) 共変テンソルと反変テンソルの積 A i1i2 in B j1 j2  jm  C i1in j1 jm (19)
  • 28. テンソルの積 • n階テンソルとm階テンソルの積 – n+m階テンソルになる 2階テンソル A  A11e1  e'1  A12e1  e'2  A21e 2  e'1  A22e 2  e'2 1階テンソル B  B1e' '1  B 2e' '2 ei  e' j e' 'k  eijk C  AB  A11B1e111  A12 B1e121  A21B1e 211  A22 B1e 221  A11B 2e112  A12 B 2e122  A21B 2e 212  A22 B 2e 222 C A B ijk ij k
  • 29. テンソルの積 • テンソルが同じ添字を持っている場合 – テンソルの縮約により階数が減少する 2階×1階 → 1階 A11 A12 B 1 A11 B  A12 B 1 1 A21 A22 B 2 A21 B 2  A22 B 2 Aij B  Ci j
  • 30. テンソルの積 • テンソルが同じ添字を持っている場合 – テンソルの縮約により階数が減少する 共変テンソル同士の積 A Bl Cm  D ijk ijk lm (23) A B j Ck   A B j Ck ijk ijk j k D i (24)
  • 31. テンソルの積 • テンソルが同じ添字を持っている場合 – 双対基底を持っているため縮約が起こる! 2階テンソル A  A11e1  e'1  A12e1  e'2  A21e 2  e'1  A22e 2  e'2 1階テンソル B  B1e'1  B2e'2 e'i e' j   i j C  AB  A11B1e1  A12 B2e1  A21B1e 2  A22 B2e 2  C1e1  C 2e 2 C  A Bj i ij
  • 32. テンソルの積 • テンソル同士では積の順番を入れ替えられな い Cij  Ai B j  B j Ai 掛け算ひっくり返しただけじゃん! なんで入れ替えられないの???
  • 33. テンソルの積 • テンソル同士では積の順番を入れ替えられな い A  A e1  A e 2 1 2 B  B1e'1  B 2e'2 e1  e'2  e'2 e1 なので A B  B  A C AB B A ij i j j i ←基底が変わってしまう
  • 34. テンソルの積 • テンソル同士では積の順番を入れ替えられな い – 縮約できるテンソルなら入れ替え可  B1  A1 A2    A1B1  A2 B2  B2   A1  B1 B2    A1B1  A2 B2  A2 
  • 35. テンソルの積 • テンソル同士では積の順番を入れ替えられな い – 縮約できるテンソルなら入れ替え可 A B j Ck   A B j Ck ijk ijk j k   Ck B j A ijk j k  Ck B j A ijk
  • 36. イプシロンテンソル 1 :(i,j,k)から(1,2,3)が偶置換   ijk   1 :(i,j,k)から(1,2,3)が奇置換 (26) 0  :(i,j,k)に重複がある 1 :(i,j,k)から(1,2,3)が偶置換   ijk   1 :(i,j,k)から(1,2,3)が奇置換 (27) 0  :(i,j,k)に重複がある
  • 37. イプシロンテンソル • 例  312  1 312 → 132 → 123 置換2回  132  1 132 → 123 置換1回 112  0 重複
  • 38. 外積の例 行列表現 a 2b 3  a 3b 2   a1   b1   3 1 1 3  2  2 c  ab  a b  a b  a  a  b  b   a1b 2  a 2b1  a 3  b 3        c=a×b テンソル表現 S b ci   ijk a b j k (28) S a
  • 39. 外積の例 行列表現 a 2b 3  a 3b 2   a1   b1   3 1 1 3  2  2 c  ab  a b  a b  a  a  b  b   a1b 2  a 2b1  a 3  b 3        テンソル表現 c1  123a 2b3  132a3b2  a 2b3  a3b2 ci   ijk a b j k c2   213a1b3   231a3b1  a1b3  a3b1 c3   312a1b2   321a 2b1  a1b2  a 2b1
  • 40. 外積の例 行列表現 a2b3  a3b2   a1   b1  a b a b  c  ab   3 1 1 3  a   a2    b  b2     a1b2  a3b1   a3    b3      テンソル表現 c   a j bk i ijk (29)
  • 41. イプシロンテンソル同士の積 3 3 3  ijk ijk    ijk ijk i j k   123 123   132 132   213 213   231 231   312 312   321 321 6 (30) あるいは単に 3! 6
  • 42. 歪対称行列  0 x 3 x  2  x  x ,x ,x 1 2  3 T  3 x   x 0 1 x  (31)  x 2 x1 0    xの歪対称行列  0  x 3 x 2   x'1   x 2 x'3  x 3 x'2   3 1 2   3 1 1 3 x  x'  x x'   x 0  x   x'    x x'  x x'   x 2 x1 0   x'3   x1 x'2  x 2 x'1       外積が行列同士の積として表せる
  • 43. 歪対称行列  0 x 3 x  2  x  x ,x ,x 1 2  3 T  3 x   x 0 1 x  (31)  x 2 x1 0    xの歪対称行列  ijk x j (32) xの歪対称行列のテンソル表現
  • 44. 歪対称行列  0 x 3 x  2  x  x ,x ,x 1 2  3 T  3 x   x 0 1 x  (31)  x 2 x1 0    xの歪対称行列    1 j1 x j j 1 j 2 x j j 1 j 3 x j   0  x3 x2   j   3 1  ijk x j   j  2 j1 x j j  2 j2 x j  j  2 j3 x    x j 0 x    j  3 j1 x j  x j j  3 j3 x  j   x 2  x1 0    j 3 j2  (32)
  • 45. 歪対称行列 • 共変ベクトル l に対する歪対称行列 l   lj ijk (33)
  • 46. 行列式 3次元ベクトルの行列式  x1  x , x , x 1 1 2 1 1 3 T  x2  x , x , x 1 2 2 2 2 3 T  x3  x , x , x 1 3 2 3 3 3 T detx1 x 2 x3   (x1  x 2 )  x3   ijk x1i x2j x3 k X3 (34) X4 X1
  • 47. 行列式 4次元ベクトルの行列式 detX1 X2 X3 X 4    ijkl X X X X i 1 2 j k 3 l 4 (35)  Xi  X , X , X , X 1 i i 2 i 3 i 4 T
  • 48. 行列式 3つの直線l det l  1 l 2 3  l  l l l ijk 1 2 3 i j k (36)  l  l ,l ,l 1 1 1 1 2 1 T 3   l  l ,l ,l 2 1 2 2 2 3 2 T l  l ,l ,l 3  3 1 3 2 3 3 T 4つの平面S det S  1 S 2 S 3 S 4  ijkl 1 2 SS S S i j 3 4 k l (37)  S  S ,S ,S ,S i i 1 i 2 i 3 i T 4 
  • 49. 行列式 あれ?今までXは反変テンソル、lは共変テンソルとして 扱ってたのに、なんで行列式では反対なんだ???? detx1 x2 x3    x x x i j k ijk 1 2 3 (34)  det l 1 l 2 3  l  l l l ijk 1 2 3 i j k (36) 1,2,3というのはテンソルの添字ではないので注意!
  • 50. 多重線形性 • ベクトルTとベクトルxの内積=スカラー 行列表現 T  (x1  x 2 )   (T  x1 )   (T  x 2 ) (38) テンソル表現 Ti (x  x )  T x  T x i 1 i 2 i i 1 i i 2 (39)
  • 51. 多重線形性 • 行列Tとベクトルx, yの積=スカラー 行列表現 T  (x1  x 2 )  y   (T  x1  y)   (T  x 2  y) T  x  (y1  y 2 )   (T  x  y1 )   (T  x  y 2 ) テンソル表現 Tij (x  x ) y  T x y  T x y i 1 i 2 j i ij 1 j i ij 2 j (40) Tij x (y  y )  Tij x y  Tij x y i i 1 i 2 j i 1 j i 2 (41) 2重線形性!
  • 52. 多重線形性 • 3階テンソルの積=スカラー テンソル表現 Tijk (x  x ) y z  T x y z  T x y z i 1 i 2 j k i ijk 1 j k i ijk 2 j k (42) Tij x (y  y ) z  Tijk x y z  Tijk x y z i 1 j 2 j k i 1 j k i 2 j k (43) Tijk x y (z  z )  Tijk x y z  Tijk x y z i j k 1 k 2 i j k 1 i j k 2 (44) 3重線形性!
  • 53. 多重線形性 • “厳密には多重線形性をもつものをテンソル という” • “一般にn階のテンソルはn階の変数それぞれ に関して線形であるというn重の線形性を持 つ”
  • 54. Thank You!