バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia3-backnumber/
はじめに
アフィン変換の拡張と言われている射影変換の話。
射影変換の理屈について
- アフィン変換との関係性
登場人物
博識フクロウのフクさん

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
【再掲】射影変換の理屈の因果関係

まずは大まかな流れを再掲
- 大まかな理屈(済)
- 大まかな理屈を座標変換で説明(済)
- 基本ベクトルと基底ベクトル(済)
- 元画像平面を3次元空間で表現(済)
- 3次元空間を地面平面に落とし込む(済)
- 一連の座標変換まとめ(済)
- 方程式の変形(済)
- 行列表現(済)
- アフィン変換との関係性
- 係数の求め方
- 係数の求め方(行列表現)
- 射影変換の処理の流れ

「行列表現」というところまで終わっている。
アフィン変換との関係性

前回の行列表現を再掲しよう。
\(
s
\begin{bmatrix}
x\prime\\
y\prime\\
1
\end{bmatrix}=
\begin{bmatrix}
a&b&c\\
d&e&f\\
g&h&1
\end{bmatrix}
\begin{bmatrix}
x\\
y\\
1
\end{bmatrix}
\)

この行列、見おぼえない?

なんか、最近みたような気がするな・・・。

あ!!アフィン変換か?!

そうそう。
射影変換の変換行列を\(g\)と\(h\)を\(0\)にすると
\(s=gx+hy+1\)の都合で\(s=1\)になる。
つまり、アフィン変換の変換行列と等しくなる。
アフィン変換
\(
\begin{bmatrix}
x\prime\\
y\prime\\
1
\end{bmatrix}=
\begin{bmatrix}
a&b&c\\
d&e&f\\
0&0&1
\end{bmatrix}
\begin{bmatrix}
x\\
y\\
1
\end{bmatrix}
\)

つまり、射影変換は数式的にはアフィン変換の拡張型と言える。

ここで初めてアフィン変換と繋がるのか。
確かに概念的には別物だけど、結果的には拡張型って感じだね。
まとめ

まとめだよ。
- 射影変換とアフィン変換との関係性について
- 概念は異なるが、行列表現がそっくりなため、射影変換はアフィン変換の拡張と言える。
- パラメータg,hを0にするとアフィン変換と全く同一の式になる。
バックナンバーはこちら。
コメント