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

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

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

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

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

Avatar for Takashi Imagire

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 但し、