Upgrade to Pro — share decks privately, control downloads, hide ads and more …

単位正方形の射影変換の変換係数

 単位正方形の射影変換の変換係数

単位正方形からの有理多項式での射影変換における係数の導出

Takashi Imagire

August 31, 2020
Tweet

More Decks by Takashi Imagire

Other Decks in Science

Transcript

  1. 本資料での問題の具体化 • しかしながら、先の行列方程式は、非正方行列の方程式であり、 明示的に解くのが難しい。 • 今回は、下の単位正方形を異なる四角形に変換する問題とする 0,0 1,1 00 ,

    00 11 , 11 10 , 10 01 , 01 0,0 → 00 , 00 1,0 → 10 , 10 0,1 → 01 , 01 1,1 → 11 , 11 00 ′00 00 ′00 ′00 = 1 10 ′10 10 ′10 ′10 = + + + 1 01 ′01 01 ′01 ′01 = + + ℎ + 1 11 ′11 11 ′11 ′11 = + + + + + ℎ + 1 ′ ′ ′ = ℎ 1 1
  2. W座標の関係式 • 求めた c とfを他の座標の対応関係に代入する • 前の2式の和が3つ目の式になるので、次の関係式が得られる • これをwを列ベクトルとして式を整理すると、下記になる •

    逆行列を求めれば、w座標を求めることができる 10 ′10 − 00 10 ′10 − 00 ′10 − 1 = , 01 ′01 − 00 01 ′01 − 00 ′01 − 1 = ℎ , 11 ′11 − 00 11 ′11 − 00 ′11 − 1 = + + + ℎ 11 ′11 − 00 11 ′11 − 00 ′11 − 1 = + + + ℎ = 10 ′10 + 01 ′01 − 200 10 ′10 + 01 ′01 − 200 ′10 + ′01 − 2 11 11 1 ′ 11 = 10 01 −00 10 01 −00 1 1 −1 ′10 ′01 1 ′10 ′01 1 = 10 01 −00 10 01 −00 1 1 −1 −1 11 11 1 ′ 11 11 ′11 11 ′11 ′11 = 10 ′10 + 01 ′01 − 00 10 ′10 + 01 ′01 − 00 ′10 + ′01 − 1
  3. 10 01 −00 10 01 −00 1 1 −1 1

    0 0 0 1 0 0 0 1 = 10 01 00 10 01 00 1 1 1 1 0 0 0 1 0 0 0 −1 = 10 − 00 01 − 00 00 10 − 00 01 − 00 00 0 0 1 1 0 0 0 1 0 1 1 −1 = 1 01 − 00 00 10−00 10−00 01 − 00 00 0 0 1 1 10−00 0 0 0 1 0 1 10−00 1 −1 = 1 0 0 10−00 10−00 01 − 00 − 10−00 10−00 (01 − 00 ) 00 − 10−00 10−00 00 0 0 1 1 10−00 − 01−00 10−00 − 00 10−00 0 1 0 1 10−00 1 − 01−00 10−00 −1 − 00 10−00 = 1 0 0 10−00 10−00 ∆ 10−00 0010−1000 10−00 0 0 1 1 10−00 − 01−00 10−00 − 00 10−00 0 1 0 1 10−00 10−01 10−00 − 10 10−00 ∆= 01 10 − 10 01 + 00 (01 − 10 ) + (10 − 01 )00 = 1 0 0 10 − 00 10 − 00 1 00 10 − 10 00 10 − 00 0 0 1 1 10 − 00 − 01 − 00 ∆ − 00 10 − 00 0 10 − 00 ∆ 0 1 10 − 00 10 − 01 ∆ − 10 10 − 00 吐き出し法で逆行列を求めていく × (−1) −1 −1 ÷ (10 − 00 ) −(01 − 00 ) −00 整頓 ÷ ∆ 10 − 00
  4. 1 0 0 10 − 00 10 − 00 1

    00 10 − 10 00 10 − 00 0 0 1 1 10 − 00 − 01 − 00 ∆ − 00 10 − 00 0 10 − 00 ∆ 0 1 10 − 00 10 − 01 ∆ − 10 10 − 00 1 0 0 0 1 0 0 0 1 01 − 00 ∆ − 01 − 00 ∆ 01 00 − 00 01 ∆ − 10 − 00 ∆ 10 − 00 ∆ 10 00 − 00 10 ∆ 01 − 10 ∆ 10 − 01 ∆ 01 10 − 10 01 ∆ = 1 0 0 0 1 0 0 0 1 01 ∆ − 01 ∆ 01 00 − 00 01 ∆ − 10 ∆ 10 ∆ 10 00 − 00 10 ∆ ∆ − ∆ 01 10 − 10 01 ∆ 1 0 0 0 1 0 0 0 1 1 10 − 00 + 01 − 00 ∆ 10 − 00 10 − 00 − 01 − 00 ∆ − 00 10 − 00 + 01 − 00 ∆ 00 10 − 10 00 10 − 00 − 10 − 00 ∆ 10 − 00 ∆ − 00 10 − 10 00 ∆ 1 10 − 00 − 10 − 01 ∆ 10 − 00 10 − 00 10 − 01 ∆ − 10 10 − 00 − 10 − 01 ∆ 00 10 − 10 00 10 − 00 − 00 10 − 10 00 10 − 00 − 10 − 00 10 − 00 ∆= 01 10 − 10 01 + 00 (01 − 10 ) + (10 − 01 )00 ∆ + 01 − 00 10 − 00 = 01 10 − 10 01 + 00 01 − 10 + 10 − 01 00 + 01 − 00 10 − 00 = 01 10 − 10 01 + 00 01 − 10 + 10 − 01 00 + 01 10 − 01 00 − 00 10 + 00 00 = (10 − 00 )(01 − 00 ) −00 ∆ + 01 − 00 00 10 − 10 00 = −00 01 10 + 00 10 01 − 00 00 01 − 10 − 00 10 − 01 00 + 01 − 00 00 10 − 10 00 = −00 01 10 + 00 10 01 − 00 00 01 − 10 − 00 10 − 01 00 + 01 00 10 − 01 10 00 − 00 00 10 + 00 10 00 = 10 − 00 01 00 − (10 − 00 )01 00 = (10 − 00 )(01 00 − 00 01 ) −10 ∆ − 10 − 01 00 10 − 10 00 = −10 01 10 + 10 10 01 − 10 00 01 − 10 − 10 10 − 01 00 − 10 − 01 00 10 − 10 00 = −10 01 10 + 10 10 01 − 10 00 01 − 10 − 10 10 − 01 00 − 10 00 10 + 10 10 00 + 01 00 10 − 01 10 00 = 00 − 10 10 01 + (10 − 00 )10 01 = (10 − 00 )(01 10 − 10 01 ) ∆ − 10 − 01 10 − 00 = 01 10 − 10 01 + 00 01 − 10 + 10 − 01 00 − 10 − 01 10 − 00 = 01 10 − 10 01 + 00 01 − 10 + 10 − 01 00 − 10 10 + 10 00 + 01 10 − 01 00 = (10 − 00 )(01 − 10 ) こ れ ら 結 果 を 代 入 = − 00 = − 00 = 01 − 10 = 01 − 10 ここで下記を導入した
  5. ′10 ′01 1 = 01 ∆ − 01 ∆ 01

    00 − 00 01 ∆ − 10 ∆ 10 ∆ 10 00 − 00 10 ∆ ∆ − ∆ 01 10 − 10 01 ∆ 11 11 1 ′ 11 1 = ∆ − ∆ 01 10 − 10 01 ∆ 11 11 1 ′ 11 ∆= 01 10 − 10 01 + 00 01 − 10 + 10 − 01 00 = 01 10 − 10 01 + 00 01 − 10 + 00 10 − 01 + 00 00 − 00 00 = 01 − 00 10 − 00 − 10 − 00 01 − 00 = 01 10 − 10 01 3行目を抽出する ′ 11 = ∆ 01 − 10 11 + 10 − 01 11 + 01 10 − 10 01 = ∆ 01 10 − 10 01 = ∆ Ξ この結果を1,2行目に代入すると ′ 10 ′ 01 = 01 −01 01 00 − 00 01 −10 10 10 00 − 00 10 11 11 1 1 Ξ = 1 Ξ +01 11 − 01 11 + 01 00 − 00 01 −10 11 + 10 11 + 10 00 − 00 10 = 1 Ξ +01 11 − 01 11 −10 11 + 10 11 W座標値の導出 = 11 − = 11 − 但し、 Ξ = 01 10 − 10 01
  6. g, h • 元の式 より、 ′を具体的な値として代入する 10 ′10 − 00

    10 ′10 − 00 ′10 − 1 = , 01 ′01 − 00 01 ′01 − 00 ′01 − 1 = ℎ , ℎ = ′10 − 1 ′01 − 1 = 1 Ξ +01 11 − 01 11 −10 11 + 10 11 − 1 +01 11 − 01 11 − 01 10 − 10 01 = + −01 + 11 11 − −01 + 11 11 − 01 11 − 10 + 11 − 10 01 = +10 01 − 10 01 −10 11 + 10 11 − 01 10 − 10 01 = − −10 + 11 11 + −10 + 11 11 − 11 − 01 10 + 10 11 − 01 = −01 10 + 01 10 ℎ = 1 Ξ +10 01 − 10 01 −01 10 + 01 10
  7. a,b,c,d • 残りの係数も関係式から具体的に求めることができる = 10 ′ 10 − 00 10

    ′ 10 − 00 , = 01 ′ 01 − 00 01 ′ 01 − 00 , 10 + 01 − 00 11 − 01 − 00 11 + 01 00 − 00 01 − 00 01 10 − 10 01 + 11 10 − 01 + 01 − 10 11 = 10 − 00 (11 01 − 01 11 ) + 11 − 01 (00 10 − 10 00 ) 10 + 01 − 00 11 − 01 − 00 11 + 01 00 − 00 01 − 00 01 10 − 10 01 + 11 10 − 01 + 01 − 10 11 = + 01 − 00 10 11 − 01 − 00 10 11 + 01 10 00 − 00 10 01 − 01 00 10 + 10 00 01 − 00 11 10 − 01 − 00 01 − 10 11 = 11 − 01 00 10 − 00 10 + (10 − 00 )(01 11 − 11 01 ) 01 − 10 − 00 11 + 10 − 00 11 + 10 00 − 00 10 − 00 01 10 − 10 01 + 11 10 − 01 + 01 − 10 11 = − 10 − 00 01 11 + 10 − 00 01 11 + 10 01 00 − 00 01 10 − 00 01 10 + 00 10 01 − 11 00 10 − 01 − 01 − 10 00 11 = 11 − 10 (00 01 − 00 01 ) + (01 − 00 )(11 10 − 11 10 ) 01 − 10 − 00 11 + 10 − 00 11 + 10 00 − 00 10 − 00 01 10 − 10 01 + 11 10 − 01 + 01 − 10 11 = 01 − 00 11 10 − 10 11 + 11 − 10 00 01 − 01 00 = 1 Ξ 10 (11 01 − 01 11 ) + 01 (00 10 − 10 00 ) 01 00 10 − 00 10 + 10 (01 11 − 11 01 ) 10 (00 01 − 00 01 ) + 01 (11 10 − 11 10 ) 01 11 10 − 10 11 + 10 00 01 − 01 00 ,
  8. • 有理多項式の射影変換 において、単位正方形とその頂点の対応が で与えられる場合、係数a,b,…,hは下記となる ℎ = 1 Ξ +10 01

    − 10 01 −01 10 + 01 10 = 00 , = 00 , = 1 Ξ 10 (11 01 − 01 11 ) + 01 (00 10 − 10 00 ) 01 00 10 − 00 10 + 10 (01 11 − 11 01 ) 10 (00 01 − 00 01 ) + 01 (11 10 − 11 10 ) 01 11 10 − 10 11 + 10 00 01 − 01 00 , まとめ 00 , 00 , 10 , 10 , 01 , 01 , 11 , 11 = + + + ℎ + 1 = + + + ℎ + 1 = 11 − = 11 − Ξ = 01 10 − 10 01 = − 00 = − 00 但し、
  9. 頂点の変換 • 今回の射影変換を行列で表記すると、 次のように書ける • 四角形の4隅の頂点を変換する式は、 次のように書ける 1 = ℎ

    1 0 0 1 = ℎ 1 00 00 00 00 00 1 1 1 = ℎ 1 11 11 11 11 11 1 0 1 = ℎ 1 10 10 10 10 10 0 1 1 = ℎ 1 01 01 01 01 01 00 , 00 11 , 11 10 , 10 01 , 01 0,0 1,1
  10. = − 00 = − 00 0 0 1 =

    ℎ 1 0 0 00 1 1 1 = ℎ 1 11 11 11 11 11 1 0 1 = ℎ 1 10 10 10 10 10 0 1 1 = ℎ 1 01 01 01 01 01 原点を合わせる • 今後の計算を簡単にするために、 を原点において考える • この相対座標に関する射影変換として再定式化を行うと、新た な射影変化は下記で書ける • 元の変換から導出した式ではないため、a~hは前頁の値と一致しない 00 , 00 (1)
  11. 0 0 1 = ℎ 1 0 0 00 =

    00 00 00 00 = 1 1 1 1 = 0 0 ℎ 1 11 11 11 11 11 1 0 1 = 0 0 ℎ 1 10 10 10 10 10 0 1 1 = 0 0 ℎ 1 01 01 01 01 01 (1)式の(0,0)に関する変換の右辺を計算する この式から、c, f, が計算できる = 0 = 0 (2) 00 (2)式を(1)の他の式に代入すると、次の式が得られる (3) c, f の導出
  12. 1 1 1 = 0 0 ℎ 1 11 11

    11 11 11 1 0 1 = 0 0 ℎ 1 10 10 10 10 10 0 1 1 = 0 0 ℎ 1 01 01 01 01 01 1 1 1 = 10 10 10 10 10 01 01 01 01 01 11 11 11 11 11 ℎ 1 1 0 1 = 10 10 10 10 01 01 01 01 11 11 11 11 0 1 1 = 10 10 10 10 01 01 01 01 11 11 11 11 10 −1 01 −1 11 −1 = 10 10 1 01 01 1 11 11 1 ℎ 1 10 −1 0 11 −1 = 10 10 01 01 11 11 0 01 −1 11 −1 = 10 10 01 01 11 11 W座標のベクトル化 • (3)式を行ごとにまとめる (3)式 行ごとにまとめる W座標を左辺に移行する(各行のw座標値で両辺を割る) (4)
  13. 10 −1 0 11 −1 = 10 10 01 01

    11 11 0 01 −1 11 −1 = 10 10 01 01 11 11 = − 01 01 = − 10 10 = 10 − 01 01 10 −1 10 −1 = 01 10 01 − 01 10 10 −1 = 01 ∆ 10 −1 = 01 − 10 10 01 −1 01 −1 = − 10 10 01 − 01 10 10 −1 = − 10 ∆ 01 −1 11 −1 = 11 − 01 01 11 = 11 − 01 01 11 01 ∆ 10 −1 = 11 01 − 01 11 ∆ 10 −1 11 −1 = 11 − 10 10 11 = 11 − 10 10 11 −10 ∆ 01 −1 = − 11 10 − 10 11 ∆ 01 −1 ∆= 10 01 − 01 10 (4)式の左辺が0の行から、パラメータの関係式を導出する (4)式 2行目と1行目から、a,b とd,eの関係式を得る (5) (4)式の一つ目の第1行と二つ目の第2行に(5)式を代入すると、a, d とw座標の関係が得られる (6) (7) ここで、表記を簡潔にするためにΔを導入した。 (4)式の一つ目と二つ目の第3行目に(5)式を代入すると、 11 −1に関する2つの式が得られる (8)
  14. • (8)式を一部書き換える • (1,1)に対応する座標への相対ベクトルを導入する • 下記の関係式 • を用いて(8)式を書き換えると、次のように書き換えらえる 11 01

    − 01 11 = 11 01 − 01 01 + 01 01 − 01 11 = 01 01 − 01 01 11 10 − 10 11 = 11 10 − 10 10 + 10 10 − 10 11 = 10 10 − 10 10 11 −1 = 11 01 − 01 11 ∆ 10 −1 = 01 01 − 01 01 ∆ 10 −1 11 −1 = − 11 10 − 10 11 ∆ 01 −1 = − 10 10 − 10 10 ∆ 01 −1 = 11 − = 11 − (1,1)に対応する座標からの相対座標表記 (9) (10) (11)
  15. • (4)式の定数項を移行してgとhに関する式を導出する • (12)式を1,2行目と3行目に分ける • (13)式をgとhについて解くと、次の形に変形できる 10 −1 01 −1

    11 −1 = 10 10 1 01 01 1 11 11 1 ℎ 1 10 −1 − 1 01 −1 − 1 11 −1 − 1 = 10 10 01 01 11 11 ℎ ℎ = 10 10 01 01 −1 10 −1 − 1 01 −1 − 1 = 1 10 01 − 01 10 01 −10 −01 10 10 −1 − 1 01 −1 − 1 = 1 ∆ 01 −10 −01 10 10 −1 − 1 01 −1 − 1 10 −1 − 1 01 −1 − 1 = 10 10 01 01 ℎ 11 −1 = 11 + 11 ℎ + 1 g, h を導出する式の構築 (12) (13) (14) (15)
  16. 11 を導出する式 • (14)式に(15)式を代入する 11 −1 = 11 + 11

    ℎ + 1 = 11 11 ℎ + 1 = 11 11 1 ∆ 01 −10 −01 10 10 −1 − 1 01 −1 − 1 + 1 = 1 ∆ 11 01 − 01 11 10 11 − 11 10 10 −1 − 1 01 −1 − 1 + 1 = 1 ∆ 01 01 − 01 01 10 10 − 10 10 10 −1 − 1 01 −1 − 1 + 1 (14)式 (15)式を代入 (10)式を利用 (16)
  17. 11 の導出 • (16)式に(11)式(を01 −1, 10 −1について解いた式)を代入する • 上記式をまとめ直すと、次の結果が得らえる 11

    −1 = 1 ∆ 01 01 − 01 01 10 10 − 10 10 01 01 − 01 01 ∆ −1 11 −1 − 1 − 10 10 − 10 10 ∆ −1 11 −1 − 1 + 1 = 01 01 − 01 01 01 01 − 01 01 − 10 10 − 10 10 10 10 − 10 10 11 −1 − 01 01 − 01 01 ∆ − 10 10 − 10 10 ∆ + 1 11 −1 = 01 01 − 01 01 ∆ − 10 10 − 10 10 ∆ − 1 -1 1 (17)
  18. 分子の計算 • (17)式の分子を変形する • ここで、対角頂点への差分ベクトルを導入した • (18)式を(17)式に代入すると、 11 の明示的な形が得られる 01

    01 − 01 01 − 10 10 − 10 10 − ∆ = 01 01 − 01 01 − 10 10 + 10 10 − 10 01 + 01 10 = 11 − 01 01 − 01 11 − 01 − 10 10 + 10 10 − 10 01 + 01 10 = 10 01 − 01 10 − 10 10 + 10 10 = 10 − 10 = 01 − 10 = 01 − 10 11 −1 = 10 − 10 ∆ (18) (19) (20)
  19. 10 、 01 の導出 • (11)式(を01 −1, 10 −1について解いた式)に(20)式を代入する •

    式を整理すると、次の解が得られる 10 −1 = + 01 01 − 01 01 ∆ −1 11 −1 = ∆ 01 01 − 01 01 1 ∆ 10 − 10 ) 01 −1 = − 10 10 − 10 10 ∆ −1 11 −1 = −∆ 10 10 − 10 10 1 ∆ 10 − 10 ) 10 −1 = + 10 − 10 01 01 − 01 01 01 −1 = − 10 − 10 10 10 − 10 10 (21)
  20. g, hの導出 • g,h を求めるために、愚痴の量を計算する 10 −1 − 1 =

    + 10 − 10 01 01 − 01 01 − 1 = 10 − 10 − 01 01 + 01 01 01 01 − 01 01 01 −1 − 1 = − 10 − 10 10 10 − 10 10 − 1 = −10 + 10 − 10 10 + 10 10 10 10 − 10 10 10 − 10 − 01 01 + 01 01 = 11 − 10 01 − 10 − 01 − 10 11 − 10 − 11 − 01 01 + 01 11 − 01 = 11 − 10 01 − 11 − 10 10 − 01 11 − 10 + 10 11 − 10 − 11 − 01 01 + 01 11 − 01 = −10 01 − 11 10 + 10 01 + 10 11 = 10 01 − 10 10 10 −1 − 1 = 10 01 − 10 10 01 01 − 01 01 −10 + 10 − 10 10 + 10 10 = −10 01 − 10 + 10 + 01 − 10 + 10 10 = −10 01 + 01 10 = 10 01 − 10 10 01 −1 − 1 = − 10 01 − 01 10 10 10 − 10 10 (22)
  21. • (15)式に(22)式を代入する • 行列を適応する ℎ = 1 ∆ 01 −10

    −01 10 10 −1 − 1 01 −1 − 1 = 1 ∆ 01 −10 −01 10 + 10 01 − 10 10 01 01 − 01 01 − 10 01 − 01 10 10 10 − 10 10 = 1 ∆ +01 10 01 − 01 10 01 01 − 01 01 − 10 01 10 − 01 10 10 10 − 10 10 ℎ = 1 ∆ −01 10 01 − 01 10 01 01 − 01 01 + 10 01 10 − 01 10 10 10 − 10 10 g, hの導出 (23)
  22. • (6)式に、(21)式を適応する • (5)式に、(24)式を代入する = + 01 ∆ 10 −1

    = 01 ∆ 10 − 10 01 01 − 01 01 = − 10 ∆ 01 −1 = 10 ∆ 10 − 10 10 10 − 10 10 = − 01 01 = − 01 ∆ 10 − 10 01 01 − 01 01 = − 10 10 = − 10 ∆ 01 − 01 10 10 − 10 10 a, b, d,e の導出 (24) (25)
  23. • 有理多項式の射影変換 において、単位正方形とその頂点の対応が 00 , 00 , 10 , 10

    , 01 , 01 , 11 , 11 で与えられる場合、係数a,b,…,hと各頂点でのw座標は下記となる まとめ 1 = 0 0 ℎ 1 = 0 0 ℎ 1 ( − 00 ) − 00 = −00 − 00 −00 − 00 ℎ 1 − 00 − ℎ00 = − 00 = − 00 = 1 + − 00 + ℎ( − 00 ) −1 = 11 − = 11 − = 1 ∆ +01 10 01 − 01 10 01 01 − 01 01 − 10 01 10 − 01 10 10 10 − 10 10 ℎ = 1 ∆ −01 10 01 − 01 10 01 01 − 01 01 + 10 01 10 − 01 10 10 10 − 10 10 ∆= 10 01 − 01 10 = − 01 ∆ 10 − 10 01 01 − 01 01 = − 10 ∆ 10 − 10 10 10 − 10 10 = 01 ∆ 10 − 10 01 01 − 01 01 = 10 ∆ 10 − 10 10 10 − 10 10 = 01 − 10 = 01 − 10 但し、