第4回「コンピュータビジョン最先端ガイド」勉強会	
  
         4章5節-­‐6節	


        発表者:ken_hide
高次元への拡張	
今までは3次元から2次元への投影の性質を解析してきた。	
  

これを3次元から高次元においてのカメラの投影を考える事によ
り、より自由度の高いカメラモデルを扱えるようになるらしい。	
                       カメラ2	

  カメラ2	




カメラ1	
     カメラ3	
   カメラ1	
                                カメラ3
3次元空間中の幾何拘束	
•  3次元空間では4平面が1点で交差するという	
  
   拘束条件を設けると以下の式が成り立つ	


                                          ⎡ A ⎤
                                          ⎢ ⎥
                                             B
                                      S = ⎢ ⎥ :平面	
                                          ⎢C ⎥
                                          ⎢ ⎥
                                          ⎣D⎦
                       :Eddingtonのイプシロンテンソル	

                                €


               4焦点テンソル(quadrifocal	
  tensor)
N次元空間中の幾何拘束	
•  2次元→3直線が1点で交差(エピポーラ拘束)	
  
•  3次元→4平面が1点で交差	
  
•  N次元→N+1平面(超平面)が1点で交差	




  SN+1	
       超平面の交差を考える事で	
  
               新たな多視点幾何拘束が導出可能
高次元空間における多視点幾何	
•  3次元→4次元空間だと	
  

                         ⎡ A ⎤
                         ⎢ ⎥
                         ⎢ B ⎥
                     S = ⎢C ⎥ :超平面	
                         ⎢ ⎥
                         ⎢ D ⎥
                         ⎢ E ⎥
                         ⎣ ⎦



  5超平面が1点で交差する事が拘束条件	
             €
カメラパラメータ(3次元空間)	
•  時刻0の時のカメラ座標系をワールド座標系
   に指定するとカメラパラメータは以下の形に
   なる	




         R成分	
     t成分	
  
         (回転)	
    (並進)
射影行列の拡張(4次元への拡張)	
   カメラ2	

                                                     時刻Tにおける	
  
                                                     物体Xの3次元位置	
                                       並進速度	
                                                           ⎡ X(T) ⎤
                         ⎡ P11 P12     P13   P15       ⎤⎢ Y (T) ⎥
                                                    P14 ⎢
                         ⎢                             ⎥         ⎥
                     X = ⎢P21 P22      P23   P25   P24 ⎥⎢ Z(T) ⎥
カメラ1	
                   ⎢P31 P32
                         ⎣             P33   P35       ⎥⎢ T ⎥
                                                    P34 ⎦⎢
                カメラ3	
                                             ⎥
                                                           ⎢ 1 ⎥
                                                           ⎣      ⎦

                             R成分	
                   t成分	
  
                             (回転)	
                  (並進)	
            €
本稿ではいきなりこの式が導かれます	




カメラの並進移動方向に回転ベクトルを加味したものでいいのかな?	

      ⎡ ΔX ⎤            ⎡ P11 P12   P13 ⎤ ⎡ΔX ⎤
      ⎢ ⎥        T      ⎢               ⎥ ⎢ ⎥
 Δt = ⎢ ΔY ⎥   −R Δt = −⎢ P21 P22   P23 ⎥ ⎢ ΔY ⎥
      ⎢ ΔZ ⎥
      ⎣ ⎦               ⎢ P31 P32
                          ⎣           P33 ⎥ ⎢ ΔZ ⎥
                                           ⎦ ⎣ ⎦
拘束条件(4次元                    p124あたり   )	
    点が超平面と交差すると以下の式が成り立つ	
                  T                                                T

            U W =0                 W = [W 1 W 2 W 3 W 4     W 5]
                                                                   T
                                      U = [U1 U 2 U 3 U 4   U5 ]
            例:時刻Tを4次元目の値にする	
                         T    €
       W = [X Y   Z T 1] :4次元空間中の点	
                           T     €
       U = [A B C     D E ] :4次元空間中の超平面	

  €€
4次元空間中における5つの超平面が1点で交差するという5超平面の拘束	
   €
             4次元空間中での拘束条件	


   det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0
2次元への投影(4次元)	
     •  4次元空間中の点Wを2次元画像上の点xへの投影を考える	




                                        x ~ PW
                                                      定数倍の不定	

                                                                    ⎡ P11   P12   P13   P15   P14 ⎤
                                  T                         T       ⎢                             ⎥
    W = [W 1 W 2 W 3 W 4   W 5]       x = [ x1   x2   x3]       P = ⎢P21    P22   P23   P25   P24 ⎥
               €                                                    ⎢P31
                                                                    ⎣       P32   P33   P35   P34 ⎥
                                                                                                   ⎦
€
                      €
                                                 €
2次元への投影(図例)	
•  4次元空間中にカメラが5台あるとすると	

                     x ~ PW
                     xʹ′ ~ Pʹ′W
         P	
                     xʹ′ ~ Pʹ′W
               W	

   x	
                     xʹ′ʹ′ ~ Pʹ′ʹ′W
                     xʹ′ʹ′ ~ Pʹ′ʹ′W
           超平面
直線の逆射影	
          x
•  2次元画像上の を通る直線 を	
  
                 l
   4次元空間中に逆射影すると3次元と	
  
   同様に超平面になる	
  

   €       €
                           T
                    U=P l
   P	




           €
テンソルで表す	
    •  拘束条件に置き換える	
          det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0
            det [PT l Pʹ′T lʹ′ Pʹ′ T lʹ′ Pʹ′ʹ′T lʹ′ʹ′ Pʹ′ʹ′ T lʹ′ʹ′ ] = 0
    テンソル表記	
               ijklm      p       q           r      s         t
    €      ε           Pi l p Pʹ′j lʹ′ Pk lʹ′Plʹ′ʹ′ lʹ′ʹ′Pmʹ′ lʹ′ʹ′ = 0
                                    q ʹ′ r           s ʹ′ t
    €
                                      i=5	

                   ⎡ P11 P12 P13 P15 P14 ⎤
                   ⎢                     ⎥                同様に	
  
          p                                                 j,k,l,m={1,2,3,4,5}	
  
        Pi = p=3	
 ⎢P21 P22 P23 P25 P24 ⎥
€                  ⎢P31 P32 P33 P35 P34 ⎥
                   ⎣                     ⎦
                                                            q,r,s,t={1,2,3}
テンソルで表す	
    •  拘束条件に置き換える	
          det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0
            det [PT l Pʹ′T lʹ′ Pʹ′ T lʹ′ Pʹ′ʹ′T lʹ′ʹ′ Pʹ′ʹ′ T lʹ′ʹ′ ] = 0
    テンソル表記	
              ijklm      p           q          r       s       t
    €     ε           Pi l p Pʹ′j lʹ′ Pk lʹ′Plʹ′ʹ′ lʹ′ʹ′Pmʹ′ lʹ′ʹ′ = 0
                                   q ʹ′ r           s ʹ′ t
    €
    縮約されるテンソルは入れ替え可能なので	
                                  ijklm     p       q   r   s       t
           lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ε
               q r s t ʹ′                 Pi Pʹ′j Pk Plʹ′ʹ′ Pmʹ′ = 0
                                                   ʹ′        ʹ′
€                                 5重線形拘束
5焦点テンソル	
    •  5焦点テンソルはp,q,r,s,tより3×3×3×3×3の5階のテンソルになる	



                 pqrst        ijklm     p    q   r    s        t
             R           =ε           Pi Pʹ′j Pk Plʹ′ʹ′ Pmʹ′
                                               ʹ′        ʹ′
          5焦点テンソル	



€
点や直線に関する5重線形拘束	
    •  4次元空間から2次元画像への投影を行う	
                                                   l=x×y
       拡張カメラが5つ存在する場合(5視点幾何)	
                                                                               lp = ε pja x j y a
      lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ʹ′ pqrst = 0
          q r s tR                                                             lp = ε pja x j
                                                                                   a,b,c,d,e={1,2}	
      x i lʹ′ lʹ′ lʹ′ʹ′lʹ′ε pia R pqrst = 0 a
           q r s t ʹ′

      x i xʹ′ j lʹ′ lʹ′ʹ′lʹ′ε piaε qjb R pqrst = 0 ab
                 r s t ʹ′                                        €
€
      x i xʹ′ j xʹ′ k lʹ′ʹ′lʹ′ε piaε qjbε rkc R pqrst = 0 abc
                       s t ʹ′
€
      x i xʹ′ j xʹ′ k xʹ′ʹ′l lʹ′ε piaε qjbε rkcε sld R pqrst = 0 abcd
                              t ʹ′
€
      x i xʹ′ j xʹ′ k xʹ′ʹ′l xʹ′ʹ′ mε piaε qjbε rkcε sld ε tme R pqrst = 0 abcde
€
点や直線に関する5重線形拘束	
    •  4次元空間から2次元画像への投影を行う	
  
       拡張カメラが5つ存在する場合(5視点幾何)	
                                                                                   独立な式の数	
      lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ʹ′ pqrst = 0
          q r s tR                                                                   1
      x i lʹ′ lʹ′ lʹ′ʹ′lʹ′ε pia R pqrst = 0 a
           q r s t ʹ′                                                                2
      x i xʹ′ j lʹ′ lʹ′ʹ′lʹ′ε piaε qjb R pqrst = 0 ab
                 r s t ʹ′                                                 €          4
€
      x i xʹ′ j xʹ′ k lʹ′ʹ′lʹ′ε piaε qjbε rkc R pqrst = 0 abc
                       s t ʹ′                                             €          8
€
      x i xʹ′ j xʹ′ k xʹ′ʹ′l lʹ′ε piaε qjbε rkcε sld R pqrst = 0 abcd
                              t ʹ′                                       €           16
€
      x i xʹ′ j xʹ′ k xʹ′ʹ′l xʹ′ʹ′ mε piaε qjbε rkcε sld ε tme R pqrst = 0 abcde
                                                                           €         32
€
4次元空間中の視点拘束	
•  4視点拘束	


                 ijklm     p   t   q   r   s       qrs
        ε iptε           Pi P Pʹ′j Pk Plʹ′ʹ′ = Q
                               m    ʹ′             i




•  3視点拘束	
€
        ε iptε iqsε ijklm Pip Pm Pʹ′jq Plʹ′sPk r = Tijr
                               t
                                             ʹ′
4次元空間中の視点拘束	
•  4視点拘束	
       x i xʹ′ j xʹ′ k xʹ′ʹ′lε qjaε rkbε slcQiqrs = 0 abc       8
       x i xʹ′ j xʹ′ k lʹ′ʹ′ qjaε rkb Qiqrs = 0 ab
                        sε                                      4
       x i xʹ′ j lʹ′ lʹ′ʹ′ qja Qiqrs = 0 a
                  r sε                                          2
 €                                                          €
       x i lʹ′ lʹ′ lʹ′ʹ′Qiqrs = 0
            q r s                                               1
 €                                                          €
       lp lʹ′ lʹ′ lʹ′ʹ′ ipd Qiqrs = 0 d
           q r sε                                               2
 €                                                          €
•  3視点拘束	
                                                  €
 €
       x i xʹ′ j xʹ′ kε rka Tijr = 0 a                      €
 €                                                              2
       x i xʹ′ j lʹ′Tijr = 0
                  r                                             1
       x i lʹ′ lʹ′ε jqc Tijr = 0 c
            q r                                                 2
 €                                                          €
       lp lʹ′ lʹ′ε ipbε jqc Tijr = 0 bc
           q r                                                  4
 €                                                          €
多焦点テンソルの計算に必要な最小点数	
  
            (3次元空間)	


     カメラの校正⇔3次元点の復元	

     N個のカメラパラメータの算出	
          :11自由度(11DoF)	

     M個の3次元点の復元	
              :3自由度(3DoF)	

         画像	
        実空間	
        2MN ≥11N + 3M −15
         2N×M	
                     主観(実空間上に投影するパラメータ)	
                     ワールド座標系(3Dof)+	
  
                     カメラの位置を射影するカメラ(12dof)?	
  
      1つの点が共通で	
  
€     カメラ一つにつき2次元分の情報が得られる	
                          N焦点テンソル=N個のカメラ
多焦点テンソルの計算に必要な最小点数	
  
        (3次元空間)	


 カメラの校正⇔3次元点の復元	

 N個のカメラパラメータの算出	
     :11自由度(11DoF)	

 M個の3次元点の復元	
         :3自由度(3DoF)	


        11N −15
     M≥
         2N − 3

                  N焦点テンソル=N個のカメラ
多焦点テンソルの計算に必要な最小点数	
  
           (例)	


•  2焦点テンソル→7点	
  
  	
  N=2	
  
                       11N −15
•  3焦点テンソル→6点	
     M≥
  	
  N=3	
             2N − 3

•  4焦点テンソル→6点	
  
  	
  N=4	
            €
多焦点テンソルの計算に必要な最小点数	
  
           (線形解法)	


•  2焦点(71)	
   i,j={3,3}であるので9個要素が必要だが	
  
   実際には定数倍の不定があるので8要素を	
                                    x i xʹ′ j Fij   -­‐(71)	
   線形計算で求めることができる	
  


•  3焦点(86)	
                                      €
   一つの点より得られる拘束式の本数は	
               x i xʹ′ j xʹ′ kε rjaε skb Tirs = 0 ab              -­‐(86)	

   r,s={3,3}であるので線形拘束が9本得られるが、	
  
   線形独立であるのはa,b={2,2}の4本しか存在しない	
  
   3焦点テンソルはi,r,s={3,3,3}より27要素あるが、	
  
   定数倍の不定があるので26要素求めれば良い	
   €
   したがって7点あれば3焦点テンソルを求める事が出来る	
  
9本のうちの線形拘束のうち	
  
           独立のものが4本しか存在しない理由	
  
                  (3視点幾何)	

 •  点-­‐線-­‐線	
      (86)式より1本の拘束式が取得できる	
                                         x i lʹ′ lʹ′Tirs = 0 -­‐(86)	
                                              r s
 •  点-­‐点-­‐点	
      この関係の中で点−線−線がいくつ存在するかを考える	

                                              l1
                l l1 l2      €
     拘束条件下であるので は  の交点を通る直線	
            l2
         l1 l2
     つまり、  で表す事ができる。	
                                x
                                     €
             l = αl1 + βl2
           € €€                  €        l
€€                                        €
     よってxを通る直線のうち線形独立なものは2本しかないので	
  
     2×2で4本独立である	
          €
必要な最小点数の線形解法	
  
          (4視点幾何)	


p,q,r,s={3,3,3,3}より81本拘束式が得られるが	
  
線形独立な式は16本	
複数の点から得られる拘束式間にも従属関係がある	
  
よってN個の3次元点の像から得られる	
  
線形独立な拘束式は	
  
              16N − N C2
4焦点テンソル は81の要素数だが定数倍の不定を除いて
80要素求めれば良い	
  
           16N − N C2 ≥ 80
     €
よって6点以上あれば線形計算で求まる	
                   x i xʹ′ j xʹ′ k xʹ′ʹ′lε piaε qjbε rkcε sld Q pqrs = 0 abcd   -­‐(99)
必要な最小点数の線形解法	
  
          (4視点幾何)	


p,q,r,s={3,3,3,3}より81本拘束式が得られるが	
  
線形独立な式は16本	
複数の点から得られる拘束式間にも従属関係がある	
  
                                                                        nC2本	
よってN個の3次元点の像から得られる	
  
線形独立な拘束式は	
  
              16N − N C2
4焦点テンソル は81の要素数だが定数倍の不定を除いて
80要素求めれば良い	
  
           16N − N C2 ≥ 80
     €
よって6点以上あれば線形計算で求まる	
                   x i xʹ′ j xʹ′ k xʹ′ʹ′lε piaε qjbε rkcε sld Q pqrs = 0 abcd   -­‐(99)
以上になります	
ご清聴ありがとうございました
補足資料	
参照:	
  
•  第16回画像センシングシンポジウム	
  
  	
   	
     	
  チュートリアルセッションスライド	
  
•  MulWple	
  View	
  Geometry	
  (Hartley,	
  Zisserman)	
  
•  コンピュータビジョンー視覚の幾何学ー	
  
•  An	
  IntroducWon	
  to	
  3D	
  Computer	
  Vision	
  
      Techniques	
  and	
  Algorithms	
  
斉次座標	
•  射影空間=ユークリッド空間+無限遠要素	
  
                 直線→1要素	
  
                 平面→2要素	
                               +1要素	
                 3次空間→3要素	
  

   例	
                            X∞                ⎡ x1 ⎤              ⎡ λx1 ⎤
                                                    ⎢ ⎥ 同値	
            ⎢ ⎥
                                                ˜
                                                x = ⎢ x 2 ⎥        ˜
                                                                    λx = ⎢ λx 2 ⎥
                                                    ⎢ x 3 ⎥ ※x が0でない時	
 ⎢ λx 3 ⎥
                                                    ⎣ ⎦        3        ⎣ ⎦
                     €
                             vp
                                           ⎡ x ⎤ ⎡ x1 / x 3 ⎤ ⎡ λx1 / λx 3 ⎤
                                       €   ⎢ ⎥ = ⎢ € ⎥ = ⎢                  ⎥
                                           ⎣ y ⎦ ⎣ x 2 / x 3 ⎦ ⎣λx 2 / λx 3 ⎦
                         C
                 €
                                           x3=0の時xは無限遠点	
  
         vp=消失点	
                          それ以外はユークリッド平面上の点	
             €                    €
補足	
•  2次元空間の斉次座標	




•  直線の方程式	



                         点xは直線l上に存在する	
  
                         直線lは点xを通る
 補足	
•  3次元空間の斉次座標	




•  平面の方程式	



                      点Xは平面S上に存在する	
  
                      平面Sは点Xを通る
補足	
•  Eddingtonのイプシロンテンソル	
                             ⎧ 1 :(I,j,k)から(1,2,3)が偶置換	
                             ⎪
                   ε ijk   = ⎨ −1 :(I,j,k)から(1,2,3)が奇置換	
                             ⎪
                             ⎩ 0 :(I,j,k)に重複あり	
                             ⎧ 1 :(I,j,k)から(1,2,3)が偶置換	
                             ⎪
                   ε ijk   = ⎨ −1 :(I,j,k)から(1,2,3)が奇置換	
                             ⎪
       €                     ⎩ 0 :(I,j,k)に重複あり	
 例	


       €
           ε 312 = 1
             1	
 2	
                                     ε132 = −1
                                          1	
                                                             ε 221 = 0
             偶置換	
                        奇置換	
                重複
補足	
•  テンソルは配列と同じように扱える	
0階のテンソル	
     Int	
  a	
           0次元配列(スカラー)	

1階のテンソル	
     Int	
  a[i]	
        1次元配列(ベクトル)	


2階のテンソル	
     Int	
  a[i][j]	
     2次元配列(行列のようなもの)	




3階のテンソル	
     Int	
  a[i][j][k]	
 3次元配列	
   ・	
                     ・	
  
   ・	
                     ・	
  
   ・	
                     ・
F行列の算出方法	
    •  8点法(8point	
  algorithm)	
                                                          定数倍の不定を	
  
                                                          |f|=1として解くと一要素分減る	
                                  ⎡ f11 ⎤
    例	
                           ⎢ ⎥                        ⎡ u1u1
                                                                     ʹ′   v1u1
                                                                             ʹ′     u1
                                                                                     ʹ′   u1v1
                                                                                             ʹ′   v1v1
                                                                                                     ʹ′    v1
                                                                                                            ʹ′   u1
                                                                                                                           ⎡ f ⎤
                                                                                                                  v1 1⎤⎢ 11 ⎥ ⎡0 ⎤
                                  ⎢ f12 ⎥                    ⎢                                                       ⎥ f          ⎢ ⎥
                                  ⎢ f13 ⎥                    ⎢                                                    ⎥⎢ 12 ⎥ ⎢0 ⎥
                                                                                                                           ⎢ f13 ⎥
                                  ⎢ ⎥                        ⎢                                                    ⎥⎢ ⎥ ⎢0 ⎥
                                  ⎢ f 21 ⎥                   ⎢                                                       ⎥ f          ⎢ ⎥
     [uu' vu' u' uv' vv' v' u v 1]⎢ f 22 ⎥ = 0   ×8	
        ⎢                                                    ⎥⎢ 21 ⎥ ⎢0 ⎥
                                                                                                                           ⎢ f ⎥ =
                                  ⎢ ⎥                        ⎢                                                    ⎥⎢ 22 ⎥ ⎢0 ⎥
                                  ⎢ f 23 ⎥                   ⎢                                                       ⎥ f          ⎢ ⎥
                                                                                                                       ⎥⎢ 23 ⎥ ⎢0 ⎥
                                                               ⎢ 
                                  ⎢ f 31 ⎥                                                               
                                                                                                                           ⎢ f ⎥
            1つのマッチング	
 ⎢ f 32 ⎥ ⎢ ⎥
                                                               ⎢ 
                                                               ⎢u u
                                                                                                                      ⎥⎢ 31 ⎥ ⎢0 ⎥
                                                                                                                              f
                                  ⎢ f 33 ⎥
                                  ⎣ ⎦                        ⎣ 8 ʹ′
                                                                     8    v 8 uʹ′
                                                                               8    uʹ′
                                                                                     8    u8vʹ′
                                                                                             8    v 8vʹ′
                                                                                                      8    vʹ′ u8 v 8 1⎥⎢ 32 ⎥ ⎢0 ⎥
                                                                                                            8           ⎦            ⎣ ⎦
                                                                                                                           ⎢ f 33 ⎥
                                                                                                                           ⎣ ⎦


€                                                         €


                                                                          ヒント:	
  
    最小固有値に対応する	
                                                          特徴点マッチング→u,v:u’,v’既知	
  
    固有ベクトル	
                                 fパラメータ
F行列の算出方法	
•  しかし、最小二乗法で求めているのでF行列とし
   ての性質が保たれていないので無理やり出す	
                                                        F行列の性質(理想)	
  
                                                        →rank2	


       特異値分解	
  
       (singular	
  value	
  decomposiWon)	
                                                             フロベニウスノルムが√2	
  
 Fがn×m行列であれば	
  
                                                             の理由に繋がるのかな?	
 Uはn次直行行列 Vはm次直行行列	



                                         特異値	
  
                                         (singular	
  value)	
               と置き換えてUとVで挟みなおす
F行列を精度よく求める	
•  RANSACを使う	
  
  –  F行列を作成する際にマッチングさせた点群の中
     から用いた8点以外の点にエピポーラの拘束条
     件を適用して評価を行う。この時最もスコアが小
     さかったFに決定する。	

      8点選ぶ	

                              w=正解数/総数	
  
                              n=抽出個数	
  
               F行列の算出	
       p=nこ全てが正解である確率	
  
                              k=繰り返し回数	


               他の点に適用して評価
共変テンソル、反変テンソル	
•  点の座標は基底ベクトルに対して逆の変換を受ける	

    Z	
                                                             a = [e e 2 e 3 ] ⎡ a1 ⎤
                                                                      1
                                                                              ⎢ 2 ⎥
                                                                              ⎢a ⎥
                                                                基底ベクトル	
 ⎢a ⎥
                                                                                  3
               a	
                                                            ⎣ ⎦
                                  Y	
                                                          €
                                                        aベクトル	
  e3	
 e 	
        2
                                                   €
          e1	
                                           = Ea             €          点座標	
                                X	
                                                         = EHH −1a
                                                                       点の座標aに対し	
  
      ⎡1 ⎤           ⎡0 ⎤         ⎡0 ⎤
      ⎢ ⎥            ⎢ ⎥          ⎢ ⎥                            H−1の変換	
 e1 = ⎢0 ⎥     e 2 = ⎢1 ⎥   e 3 = ⎢0 ⎥       基底ベクトルe1,e2,e3に対し	
  
      ⎢0 ⎥
      ⎣ ⎦            ⎢0 ⎥
                       ⎣ ⎦          ⎢1 ⎥
                                      ⎣ ⎦    €   Hの変換
補足	



    x = l1 × l 2
    x i = ε ijk l1j lk2
    l=x×y
    lr = ε rja x j y a
€


€
ピンホールカメラモデル	
                                                                                  R
                                                                                                  Yw
                                                                                                         Zw

                                                                 €                            Ow
                                         Xc                                   T           €
                                                         x
                                                                                                   €          Xw
                Oc                                                         o = (ox ,oy )
                                                 €                        p            €
                          € Z                                €
                              c

                                                                                                  Pw €
    €                                                    €           Pc
                                                         €
            f        Yc
                €                 hy	
                                              hx	
                                                                                          €
                                     y               €                                        P
€       €
                                                                                      Oʹ′c
                          €
                                                                                      €

                                                                          €
射影カメラ行列	
    •  世界座標系の点を画像上に射影する行列	
                                           ⎡ f               ⎤
                                           ⎢         0    ox ⎥
                              ⎡ x uh ⎤ ⎢ hx                ⎥ ⎡ R1     −R1T ⎤
            p = MP            ⎢ ⎥                    f         ⎢             ⎥
            射影カメラ行列	
     p = ⎢ y uh ⎥ = ⎢ 0            oy ⎥ ⎢R2      −R2T⎥P
                                           ⎢         hy      ⎥
                              ⎢ zuh ⎥ ⎢
                              ⎣ ⎦                              ⎢R       −R3T⎥
                                              0       0    1 ⎥ ⎣ 3            ⎦
                         画像の中心を(0,0)	
   ⎢                   ⎥
                         とした座標系	
                                           ⎣                 ⎦

    €                          内部パラメータ	
                       外部パラメータ	
        M = MiMe     €               ⎡ f            ⎤
                                     ⎢ h   0     ox ⎥
        P = [Pw 1]                   ⎢ x            ⎥            ⎡ R1    −R1T ⎤
                                             f                     ⎢            ⎥
                               M i = ⎢ 0         oy ⎥      M e = ⎢R2     −R2T⎥
                                     ⎢     hy       ⎥
                                     ⎢ 0                          ⎢R3
                                                                   ⎣       −R3T⎥ 3×4
                                                                                 ⎦
                                            0     1 ⎥
                                     ⎢
                                     ⎣              ⎥
                                                     ⎦
€                                                 €
Cvim chapter4-5-ken_hide
Cvim chapter4-5-ken_hide

Cvim chapter4-5-ken_hide

  • 1.
  • 2.
  • 3.
    3次元空間中の幾何拘束 •  3次元空間では4平面が1点で交差するという   拘束条件を設けると以下の式が成り立つ ⎡ A ⎤ ⎢ ⎥ B S = ⎢ ⎥ :平面 ⎢C ⎥ ⎢ ⎥ ⎣D⎦ :Eddingtonのイプシロンテンソル € 4焦点テンソル(quadrifocal  tensor)
  • 4.
    N次元空間中の幾何拘束 •  2次元→3直線が1点で交差(エピポーラ拘束)   • 3次元→4平面が1点で交差   •  N次元→N+1平面(超平面)が1点で交差 SN+1 超平面の交差を考える事で   新たな多視点幾何拘束が導出可能
  • 5.
    高次元空間における多視点幾何 •  3次元→4次元空間だと   ⎡ A ⎤ ⎢ ⎥ ⎢ B ⎥ S = ⎢C ⎥ :超平面 ⎢ ⎥ ⎢ D ⎥ ⎢ E ⎥ ⎣ ⎦ 5超平面が1点で交差する事が拘束条件 €
  • 6.
    カメラパラメータ(3次元空間) •  時刻0の時のカメラ座標系をワールド座標系 に指定するとカメラパラメータは以下の形に なる R成分   t成分   (回転) (並進)
  • 7.
    射影行列の拡張(4次元への拡張) カメラ2 時刻Tにおける   物体Xの3次元位置 並進速度 ⎡ X(T) ⎤ ⎡ P11 P12 P13 P15 ⎤⎢ Y (T) ⎥ P14 ⎢ ⎢ ⎥ ⎥ X = ⎢P21 P22 P23 P25 P24 ⎥⎢ Z(T) ⎥ カメラ1 ⎢P31 P32 ⎣ P33 P35 ⎥⎢ T ⎥ P34 ⎦⎢ カメラ3 ⎥ ⎢ 1 ⎥ ⎣ ⎦ R成分   t成分   (回転) (並進) €
  • 8.
    本稿ではいきなりこの式が導かれます カメラの並進移動方向に回転ベクトルを加味したものでいいのかな? ⎡ ΔX ⎤ ⎡ P11 P12 P13 ⎤ ⎡ΔX ⎤ ⎢ ⎥ T ⎢ ⎥ ⎢ ⎥ Δt = ⎢ ΔY ⎥ −R Δt = −⎢ P21 P22 P23 ⎥ ⎢ ΔY ⎥ ⎢ ΔZ ⎥ ⎣ ⎦ ⎢ P31 P32 ⎣ P33 ⎥ ⎢ ΔZ ⎥ ⎦ ⎣ ⎦
  • 9.
    拘束条件(4次元 p124あたり ) 点が超平面と交差すると以下の式が成り立つ T T U W =0 W = [W 1 W 2 W 3 W 4 W 5] T U = [U1 U 2 U 3 U 4 U5 ] 例:時刻Tを4次元目の値にする T € W = [X Y Z T 1] :4次元空間中の点 T € U = [A B C D E ] :4次元空間中の超平面 €€ 4次元空間中における5つの超平面が1点で交差するという5超平面の拘束 € 4次元空間中での拘束条件 det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0
  • 10.
    2次元への投影(4次元) •  4次元空間中の点Wを2次元画像上の点xへの投影を考える x ~ PW 定数倍の不定 ⎡ P11 P12 P13 P15 P14 ⎤ T T ⎢ ⎥ W = [W 1 W 2 W 3 W 4 W 5] x = [ x1 x2 x3] P = ⎢P21 P22 P23 P25 P24 ⎥ € ⎢P31 ⎣ P32 P33 P35 P34 ⎥ ⎦ € € €
  • 11.
    2次元への投影(図例) •  4次元空間中にカメラが5台あるとすると x ~ PW xʹ′ ~ Pʹ′W P xʹ′ ~ Pʹ′W W x xʹ′ʹ′ ~ Pʹ′ʹ′W xʹ′ʹ′ ~ Pʹ′ʹ′W 超平面
  • 12.
    直線の逆射影 x •  2次元画像上の を通る直線 を   l 4次元空間中に逆射影すると3次元と   同様に超平面になる   € € T U=P l P €
  • 13.
    テンソルで表す •  拘束条件に置き換える det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0 det [PT l Pʹ′T lʹ′ Pʹ′ T lʹ′ Pʹ′ʹ′T lʹ′ʹ′ Pʹ′ʹ′ T lʹ′ʹ′ ] = 0 テンソル表記 ijklm p q r s t € ε Pi l p Pʹ′j lʹ′ Pk lʹ′Plʹ′ʹ′ lʹ′ʹ′Pmʹ′ lʹ′ʹ′ = 0 q ʹ′ r s ʹ′ t € i=5 ⎡ P11 P12 P13 P15 P14 ⎤ ⎢ ⎥ 同様に   p j,k,l,m={1,2,3,4,5}   Pi = p=3 ⎢P21 P22 P23 P25 P24 ⎥ € ⎢P31 P32 P33 P35 P34 ⎥ ⎣ ⎦ q,r,s,t={1,2,3}
  • 14.
    テンソルで表す •  拘束条件に置き換える det [U Uʹ′ Uʹ′ Uʹ′ʹ′ Uʹ′ʹ′ ] = 0 det [PT l Pʹ′T lʹ′ Pʹ′ T lʹ′ Pʹ′ʹ′T lʹ′ʹ′ Pʹ′ʹ′ T lʹ′ʹ′ ] = 0 テンソル表記 ijklm p q r s t € ε Pi l p Pʹ′j lʹ′ Pk lʹ′Plʹ′ʹ′ lʹ′ʹ′Pmʹ′ lʹ′ʹ′ = 0 q ʹ′ r s ʹ′ t € 縮約されるテンソルは入れ替え可能なので ijklm p q r s t lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ε q r s t ʹ′ Pi Pʹ′j Pk Plʹ′ʹ′ Pmʹ′ = 0 ʹ′ ʹ′ € 5重線形拘束
  • 15.
    5焦点テンソル •  5焦点テンソルはp,q,r,s,tより3×3×3×3×3の5階のテンソルになる pqrst ijklm p q r s t R =ε Pi Pʹ′j Pk Plʹ′ʹ′ Pmʹ′ ʹ′ ʹ′ 5焦点テンソル €
  • 16.
    点や直線に関する5重線形拘束 •  4次元空間から2次元画像への投影を行う   l=x×y 拡張カメラが5つ存在する場合(5視点幾何) lp = ε pja x j y a lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ʹ′ pqrst = 0 q r s tR lp = ε pja x j a,b,c,d,e={1,2} x i lʹ′ lʹ′ lʹ′ʹ′lʹ′ε pia R pqrst = 0 a q r s t ʹ′ x i xʹ′ j lʹ′ lʹ′ʹ′lʹ′ε piaε qjb R pqrst = 0 ab r s t ʹ′ € € x i xʹ′ j xʹ′ k lʹ′ʹ′lʹ′ε piaε qjbε rkc R pqrst = 0 abc s t ʹ′ € x i xʹ′ j xʹ′ k xʹ′ʹ′l lʹ′ε piaε qjbε rkcε sld R pqrst = 0 abcd t ʹ′ € x i xʹ′ j xʹ′ k xʹ′ʹ′l xʹ′ʹ′ mε piaε qjbε rkcε sld ε tme R pqrst = 0 abcde €
  • 17.
    点や直線に関する5重線形拘束 •  4次元空間から2次元画像への投影を行う   拡張カメラが5つ存在する場合(5視点幾何) 独立な式の数 lp lʹ′ lʹ′ lʹ′ʹ′lʹ′ʹ′ pqrst = 0 q r s tR 1 x i lʹ′ lʹ′ lʹ′ʹ′lʹ′ε pia R pqrst = 0 a q r s t ʹ′ 2 x i xʹ′ j lʹ′ lʹ′ʹ′lʹ′ε piaε qjb R pqrst = 0 ab r s t ʹ′ € 4 € x i xʹ′ j xʹ′ k lʹ′ʹ′lʹ′ε piaε qjbε rkc R pqrst = 0 abc s t ʹ′ € 8 € x i xʹ′ j xʹ′ k xʹ′ʹ′l lʹ′ε piaε qjbε rkcε sld R pqrst = 0 abcd t ʹ′ € 16 € x i xʹ′ j xʹ′ k xʹ′ʹ′l xʹ′ʹ′ mε piaε qjbε rkcε sld ε tme R pqrst = 0 abcde € 32 €
  • 18.
    4次元空間中の視点拘束 •  4視点拘束 ijklm p t q r s qrs ε iptε Pi P Pʹ′j Pk Plʹ′ʹ′ = Q m ʹ′ i •  3視点拘束 € ε iptε iqsε ijklm Pip Pm Pʹ′jq Plʹ′sPk r = Tijr t ʹ′
  • 19.
    4次元空間中の視点拘束 •  4視点拘束 x i xʹ′ j xʹ′ k xʹ′ʹ′lε qjaε rkbε slcQiqrs = 0 abc 8 x i xʹ′ j xʹ′ k lʹ′ʹ′ qjaε rkb Qiqrs = 0 ab sε 4 x i xʹ′ j lʹ′ lʹ′ʹ′ qja Qiqrs = 0 a r sε 2 € € x i lʹ′ lʹ′ lʹ′ʹ′Qiqrs = 0 q r s 1 € € lp lʹ′ lʹ′ lʹ′ʹ′ ipd Qiqrs = 0 d q r sε 2 € € •  3視点拘束 € € x i xʹ′ j xʹ′ kε rka Tijr = 0 a € € 2 x i xʹ′ j lʹ′Tijr = 0 r 1 x i lʹ′ lʹ′ε jqc Tijr = 0 c q r 2 € € lp lʹ′ lʹ′ε ipbε jqc Tijr = 0 bc q r 4 € €
  • 20.
    多焦点テンソルの計算に必要な最小点数   (3次元空間) カメラの校正⇔3次元点の復元 N個のカメラパラメータの算出   :11自由度(11DoF) M個の3次元点の復元 :3自由度(3DoF) 画像 実空間 2MN ≥11N + 3M −15 2N×M 主観(実空間上に投影するパラメータ) ワールド座標系(3Dof)+   カメラの位置を射影するカメラ(12dof)?   1つの点が共通で   € カメラ一つにつき2次元分の情報が得られる N焦点テンソル=N個のカメラ
  • 21.
    多焦点テンソルの計算に必要な最小点数   (3次元空間) カメラの校正⇔3次元点の復元 N個のカメラパラメータの算出   :11自由度(11DoF) M個の3次元点の復元 :3自由度(3DoF) 11N −15 M≥ 2N − 3 N焦点テンソル=N個のカメラ
  • 22.
    多焦点テンソルの計算に必要な最小点数   (例) •  2焦点テンソル→7点    N=2   11N −15 •  3焦点テンソル→6点   M≥  N=3   2N − 3 •  4焦点テンソル→6点    N=4 €
  • 23.
    多焦点テンソルの計算に必要な最小点数   (線形解法) •  2焦点(71) i,j={3,3}であるので9個要素が必要だが   実際には定数倍の不定があるので8要素を   x i xʹ′ j Fij -­‐(71) 線形計算で求めることができる   •  3焦点(86) € 一つの点より得られる拘束式の本数は   x i xʹ′ j xʹ′ kε rjaε skb Tirs = 0 ab -­‐(86) r,s={3,3}であるので線形拘束が9本得られるが、   線形独立であるのはa,b={2,2}の4本しか存在しない   3焦点テンソルはi,r,s={3,3,3}より27要素あるが、   定数倍の不定があるので26要素求めれば良い   € したがって7点あれば3焦点テンソルを求める事が出来る  
  • 24.
    9本のうちの線形拘束のうち   独立のものが4本しか存在しない理由   (3視点幾何) •  点-­‐線-­‐線 (86)式より1本の拘束式が取得できる x i lʹ′ lʹ′Tirs = 0 -­‐(86) r s •  点-­‐点-­‐点 この関係の中で点−線−線がいくつ存在するかを考える l1 l l1 l2 € 拘束条件下であるので は  の交点を通る直線   l2 l1 l2 つまり、  で表す事ができる。 x € l = αl1 + βl2 € €€ € l €€ € よってxを通る直線のうち線形独立なものは2本しかないので   2×2で4本独立である €
  • 25.
    必要な最小点数の線形解法   (4視点幾何) p,q,r,s={3,3,3,3}より81本拘束式が得られるが   線形独立な式は16本 複数の点から得られる拘束式間にも従属関係がある   よってN個の3次元点の像から得られる   線形独立な拘束式は   16N − N C2 4焦点テンソル は81の要素数だが定数倍の不定を除いて 80要素求めれば良い   16N − N C2 ≥ 80 € よって6点以上あれば線形計算で求まる x i xʹ′ j xʹ′ k xʹ′ʹ′lε piaε qjbε rkcε sld Q pqrs = 0 abcd -­‐(99)
  • 26.
    必要な最小点数の線形解法   (4視点幾何) p,q,r,s={3,3,3,3}より81本拘束式が得られるが   線形独立な式は16本 複数の点から得られる拘束式間にも従属関係がある   nC2本 よってN個の3次元点の像から得られる   線形独立な拘束式は   16N − N C2 4焦点テンソル は81の要素数だが定数倍の不定を除いて 80要素求めれば良い   16N − N C2 ≥ 80 € よって6点以上あれば線形計算で求まる x i xʹ′ j xʹ′ k xʹ′ʹ′lε piaε qjbε rkcε sld Q pqrs = 0 abcd -­‐(99)
  • 27.
  • 28.
    補足資料 参照:   •  第16回画像センシングシンポジウム        チュートリアルセッションスライド   •  MulWple  View  Geometry  (Hartley,  Zisserman)   •  コンピュータビジョンー視覚の幾何学ー   •  An  IntroducWon  to  3D  Computer  Vision   Techniques  and  Algorithms  
  • 29.
    斉次座標 •  射影空間=ユークリッド空間+無限遠要素   直線→1要素   平面→2要素   +1要素 3次空間→3要素   例 X∞ ⎡ x1 ⎤ ⎡ λx1 ⎤ ⎢ ⎥ 同値 ⎢ ⎥ ˜ x = ⎢ x 2 ⎥ ˜ λx = ⎢ λx 2 ⎥ ⎢ x 3 ⎥ ※x が0でない時 ⎢ λx 3 ⎥ ⎣ ⎦ 3 ⎣ ⎦ € vp ⎡ x ⎤ ⎡ x1 / x 3 ⎤ ⎡ λx1 / λx 3 ⎤ € ⎢ ⎥ = ⎢ € ⎥ = ⎢ ⎥ ⎣ y ⎦ ⎣ x 2 / x 3 ⎦ ⎣λx 2 / λx 3 ⎦ C € x3=0の時xは無限遠点   vp=消失点 それ以外はユークリッド平面上の点 € €
  • 30.
    補足 •  2次元空間の斉次座標 •  直線の方程式 点xは直線l上に存在する   直線lは点xを通る
  • 31.
     補足 •  3次元空間の斉次座標 •  平面の方程式 点Xは平面S上に存在する   平面Sは点Xを通る
  • 32.
    補足 •  Eddingtonのイプシロンテンソル ⎧ 1 :(I,j,k)から(1,2,3)が偶置換 ⎪ ε ijk = ⎨ −1 :(I,j,k)から(1,2,3)が奇置換 ⎪ ⎩ 0 :(I,j,k)に重複あり ⎧ 1 :(I,j,k)から(1,2,3)が偶置換 ⎪ ε ijk = ⎨ −1 :(I,j,k)から(1,2,3)が奇置換 ⎪ € ⎩ 0 :(I,j,k)に重複あり 例 € ε 312 = 1 1 2 ε132 = −1 1 ε 221 = 0 偶置換 奇置換 重複
  • 33.
    補足 •  テンソルは配列と同じように扱える 0階のテンソル Int  a 0次元配列(スカラー) 1階のテンソル Int  a[i] 1次元配列(ベクトル) 2階のテンソル Int  a[i][j] 2次元配列(行列のようなもの) 3階のテンソル Int  a[i][j][k] 3次元配列 ・   ・   ・   ・   ・ ・
  • 34.
    F行列の算出方法 •  8点法(8point  algorithm) 定数倍の不定を   |f|=1として解くと一要素分減る ⎡ f11 ⎤ 例 ⎢ ⎥ ⎡ u1u1 ʹ′ v1u1 ʹ′ u1 ʹ′ u1v1 ʹ′ v1v1 ʹ′ v1 ʹ′ u1 ⎡ f ⎤ v1 1⎤⎢ 11 ⎥ ⎡0 ⎤ ⎢ f12 ⎥ ⎢ ⎥ f ⎢ ⎥ ⎢ f13 ⎥ ⎢    ⎥⎢ 12 ⎥ ⎢0 ⎥ ⎢ f13 ⎥ ⎢ ⎥ ⎢    ⎥⎢ ⎥ ⎢0 ⎥ ⎢ f 21 ⎥ ⎢ ⎥ f ⎢ ⎥ [uu' vu' u' uv' vv' v' u v 1]⎢ f 22 ⎥ = 0 ×8 ⎢    ⎥⎢ 21 ⎥ ⎢0 ⎥ ⎢ f ⎥ = ⎢ ⎥ ⎢    ⎥⎢ 22 ⎥ ⎢0 ⎥ ⎢ f 23 ⎥ ⎢ ⎥ f ⎢ ⎥  ⎥⎢ 23 ⎥ ⎢0 ⎥ ⎢  ⎢ f 31 ⎥  ⎢ f ⎥ 1つのマッチング ⎢ f 32 ⎥ ⎢ ⎥ ⎢  ⎢u u   ⎥⎢ 31 ⎥ ⎢0 ⎥ f ⎢ f 33 ⎥ ⎣ ⎦ ⎣ 8 ʹ′ 8 v 8 uʹ′ 8 uʹ′ 8 u8vʹ′ 8 v 8vʹ′ 8 vʹ′ u8 v 8 1⎥⎢ 32 ⎥ ⎢0 ⎥ 8 ⎦ ⎣ ⎦ ⎢ f 33 ⎥ ⎣ ⎦ € € ヒント:   最小固有値に対応する   特徴点マッチング→u,v:u’,v’既知   固有ベクトル fパラメータ
  • 35.
    F行列の算出方法 •  しかし、最小二乗法で求めているのでF行列とし ての性質が保たれていないので無理やり出す F行列の性質(理想)   →rank2 特異値分解   (singular  value  decomposiWon) フロベニウスノルムが√2   Fがn×m行列であれば   の理由に繋がるのかな? Uはn次直行行列 Vはm次直行行列 特異値   (singular  value) と置き換えてUとVで挟みなおす
  • 36.
    F行列を精度よく求める •  RANSACを使う   –  F行列を作成する際にマッチングさせた点群の中 から用いた8点以外の点にエピポーラの拘束条 件を適用して評価を行う。この時最もスコアが小 さかったFに決定する。 8点選ぶ w=正解数/総数   n=抽出個数   F行列の算出 p=nこ全てが正解である確率   k=繰り返し回数 他の点に適用して評価
  • 37.
    共変テンソル、反変テンソル •  点の座標は基底ベクトルに対して逆の変換を受ける Z a = [e e 2 e 3 ] ⎡ a1 ⎤ 1 ⎢ 2 ⎥ ⎢a ⎥ 基底ベクトル ⎢a ⎥ 3 a ⎣ ⎦ Y € aベクトル e3 e 2 € e1 = Ea € 点座標 X = EHH −1a 点の座標aに対し   ⎡1 ⎤ ⎡0 ⎤ ⎡0 ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ H−1の変換 e1 = ⎢0 ⎥ e 2 = ⎢1 ⎥ e 3 = ⎢0 ⎥ 基底ベクトルe1,e2,e3に対し   ⎢0 ⎥ ⎣ ⎦ ⎢0 ⎥ ⎣ ⎦ ⎢1 ⎥ ⎣ ⎦ € Hの変換
  • 38.
    補足 x = l1 × l 2 x i = ε ijk l1j lk2 l=x×y lr = ε rja x j y a € €
  • 39.
    ピンホールカメラモデル R Yw Zw € Ow Xc T € x € Xw Oc o = (ox ,oy ) € p € € Z € c Pw € € € Pc € f Yc € hy hx € y € P € € Oʹ′c € € €
  • 40.
    射影カメラ行列 •  世界座標系の点を画像上に射影する行列 ⎡ f ⎤ ⎢ 0 ox ⎥ ⎡ x uh ⎤ ⎢ hx ⎥ ⎡ R1 −R1T ⎤ p = MP ⎢ ⎥ f ⎢ ⎥ 射影カメラ行列 p = ⎢ y uh ⎥ = ⎢ 0 oy ⎥ ⎢R2 −R2T⎥P ⎢ hy ⎥ ⎢ zuh ⎥ ⎢ ⎣ ⎦ ⎢R −R3T⎥ 0 0 1 ⎥ ⎣ 3 ⎦ 画像の中心を(0,0)   ⎢ ⎥ とした座標系 ⎣ ⎦ € 内部パラメータ 外部パラメータ M = MiMe € ⎡ f ⎤ ⎢ h 0 ox ⎥ P = [Pw 1] ⎢ x ⎥ ⎡ R1 −R1T ⎤ f ⎢ ⎥ M i = ⎢ 0 oy ⎥ M e = ⎢R2 −R2T⎥ ⎢ hy ⎥ ⎢ 0 ⎢R3 ⎣ −R3T⎥ 3×4 ⎦ 0 1 ⎥ ⎢ ⎣ ⎥ ⎦ € €