Geometric transformation that preserves lines but not angles nor the origin
アフィン自己相似性 を示すシダのような フラクタル ( バーンズリーのシダ )の画像 。シダの葉はそれぞれ、他の葉とアフィン変換によって結びついています。例えば、赤い葉は、反射、回転、拡大縮小、平行移動を組み合わせることで、濃い青の葉にも、薄い青の葉にも変換できます。
ユークリッド幾何学 において 、 アフィン変換 または アフィニティ (ラテン語の affinis (接続された)に由来)は、 直線 と 平行性 は保持します が、 ユークリッド距離 と 角度は必ずしも保持しない 幾何学的変換 です。
より一般的には、アフィン変換は アフィン空間 (ユークリッド空間は特定のアフィン空間である)の 自己同型 であり、すなわち、 アフィン空間を自身に 写像する 関数 であり、その際に アフィン部分 空間の 次元 (つまり、点を点に、直線を直線に、平面を平面に、といった具合に写像する)と平行 線分 の長さの比の両方を維持する。したがって、平行なアフィン部分空間の集合は、アフィン変換後も平行のままである。アフィン変換は、直線間の角度や点間の距離を必ずしも維持するわけではないが、直線上にある点間の距離の比は維持する。
X が アフィン空間の点集合である とき、 X上のすべてのアフィン変換は、 X 上の 線型変換 と X の平行 移動 との 合成 として表すことができます 。純粋な線型変換とは異なり、アフィン変換はアフィン空間の原点を保存する必要はありません。したがって、すべての線型変換はアフィン変換ですが、すべてのアフィン変換が線型であるとは限らないのです。
アフィン変換の例には、平行移動、 スケーリング 、 相似 、 相似 、 反射 、 回転 、 双曲回転 、 シアーマッピング 、およびこれらの任意の組み合わせと順序による合成が含まれます。
アフィン空間を射影空間 の 無限遠超平面 の補として見ると 、アフィン変換は、その射影空間の 射影変換 であり、無限遠超平面を 不変に 保ち、その超平面の補空間に制限されます。
アフィン変換の一般化は、同じ体 k 上の 2 つの(潜在的に異なる)アフィン空間間のアフィン写像 [1] (またはアフィン準同型写像、アフィン写像)である 。 ( X , V , ) と ( Z , W , k ) を 2 つ の アフィン 空間 と し 、 X と Z を 点 集合 、 V と W を それぞれ体 k 上の関連する ベクトル空間と する。写像 f : X → Z がアフィン写像であるとは、 X 内の すべての x, yに対して m f ( x − y ) = f ( x ) − f ( y ) となるような 線型写像 m f : V → W が存在することを意味する。
意味
X を 体 k 上のアフィン空間とし 、 V を その 付随ベクトル空間とする。 アフィン変換と は、 X から それ自身への 単射 fであり、これは アフィン写像 である。これは、 V から V への 線型写像 g が 次式によって適切に定義されていることを意味する 。ここで、通常通り、2点の減算は 2点目から1点目への 自由ベクトルを表し、「 適切に定義されている 」とは、次を意味することを 意味する。
g
(
y
−
x
)
=
f
(
y
)
−
f
(
x
)
;
{\displaystyle g(y-x)=f(y)-f(x);}
y
−
x
=
y
′
−
x
′
{\displaystyle y-x=y'-x'}
f
(
y
)
−
f
(
x
)
=
f
(
y
′
)
−
f
(
x
′
)
.
{\displaystyle f(y)-f(x)=f(y')-f(x').}
X の次元 が少なくとも2であれば、 X の 半アフィン変換 fは X からそれ自身への 単射 であり 、次を満たす:
X の すべての d 次元 アフィン部分空間 S に対して、 f ( S )も Xの d 次元アフィン部分空間 です 。
S と Tが X の平行アフィン部分空間である 場合 、 f ( S ) と f ( T ) は平行です。
これら 2 つの条件はアフィン変換によって満たされ、「 f は 平行性を維持する」という表現が正確に意味するところを表現します 。
これらの条件は独立ではなく、2番目の条件は1番目の条件から従う。 さらに、体 kが 少なくとも3つの要素を持つ場合、最初の条件は次のように簡略化される。f は 共線写像 であり 、つまり直線を直線に写像する。
構造
アフィン空間の定義により、 V は X に作用する ので、 X × V のすべてのペアに対して、 X の 点 y が関連付けられます。この作用を で表すことができます 。ここでは、 V の元を表す2つの互換性のある表記法である という規則を使用します 。 X の 点 c を固定すると、関数 m c : X → V を m c ( x ) = cx → で定義できます。任意の c に対して 、この関数は1対1であるため、 の逆関数 m c −1 : V → X はで与えられます。これらの関数を使用して、次を定義することで、 X を(点 c に関して )ベクトル空間に 変換できます。
(
x
,
v
)
{\displaystyle (x,\mathbf {v} )}
v
→
(
x
)
=
y
{\displaystyle {\vec {v}}(x)=y}
v
→
=
v
{\displaystyle {\vec {v}}={\textbf {v}}}
m
c
−
1
(
v
)
=
v
→
(
c
)
{\displaystyle m_{c}^{-1}({\textbf {v}})={\vec {v}}(c)}
x
+
y
=
m
c
−
1
(
m
c
(
x
)
+
m
c
(
y
)
)
,
for all
x
,
y
in
X
,
{\displaystyle x+y=m_{c}^{-1}\left(m_{c}(x)+m_{c}(y)\right),{\text{ for all }}x,y{\text{ in }}X,}
そして
r
x
=
m
c
−
1
(
r
m
c
(
x
)
)
,
for all
r
in
k
and
x
in
X
.
{\displaystyle rx=m_{c}^{-1}\left(rm_{c}(x)\right),{\text{ for all }}r{\text{ in }}k{\text{ and }}x{\text{ in }}X.}
このベクトル空間は原点 c を持ち、形式的にはアフィン空間 Xと区別する必要があるが、慣例的には原点を指定した 後に 同じ記号で表記し、ベクトル空間であることを明示する 。この同一視により、点をベクトルと見なし、ベクトルを点と見なすことが可能となる。
V の任意 の線形変換 λ に対して、関数 L ( c , λ ): X → Xを 次のように
定義できる。
L
(
c
,
λ
)
(
x
)
=
m
c
−
1
(
λ
(
m
c
(
x
)
)
)
=
c
+
λ
(
c
x
→
)
.
{\displaystyle L(c,\lambda )(x)=m_{c}^{-1}\left(\lambda (m_{c}(x))\right)=c+\lambda ({\vec {cx}}).}
このとき、 L ( c , λ ) は点 cを固定した X のアフィン変換となる 。 c を持つベクトル空間として見た X の線型変換である 。
σ を X の任意のアフィン変換とする 。X 内の 点 c を 選び、ベクトル T w による X の平行移動を考える 。平行移動はアフィン変換であり、アフィン変換の合成はアフィン変換である。この cの選択に対して、 V の唯一の線形変換 λ が存在し、 となる。つまり、 X
の任意のアフィン変換は、 (ベクトル空間として見た) Xの線形変換と X の平行移動の合成である 。
w
=
c
σ
(
c
)
→
{\displaystyle {\mathbf {w}}={\overrightarrow {c\sigma (c)}}}
σ
(
x
)
=
T
w
(
L
(
c
,
λ
)
(
x
)
)
.
{\displaystyle \sigma (x)=T_{\mathbf {w}}\left(L(c,\lambda )(x)\right).}
このアフィン変換の表現は、しばしばアフィン変換の定義として扱われる(原点の選択は暗黙的である)。
表現
上に示したように、アフィン写像は2つの関数、すなわち並進写像と線型写像の合成である。通常のベクトル代数では、線型写像を表すために 行列の乗算 を用い、並進写像を表すために ベクトルの加算を 用いる。形式的には、有限次元の場合、線型写像を可逆行列の乗算 、並進写像をベクトルの加算として表すと、 ベクトルに作用する アフィン写像は 次のように表すことができる。
A
{\displaystyle A}
b
{\displaystyle \mathbf {b} }
f
{\displaystyle f}
x
{\displaystyle \mathbf {x} }
y
=
f
(
x
)
=
A
x
+
b
.
{\displaystyle \mathbf {y} =f(\mathbf {x} )=A\mathbf {x} +\mathbf {b} .}
拡張マトリックス
2次元平面上のアフィン変換は、3次元における線形変換によって実行できます。平行移動はZ軸に沿ったせん断によって行われ、回転はZ軸を中心に行われます。
拡張行列 と拡張ベクトルを用いることで、単一の 行列乗算 で平行移動と線形写像の両方を表現することが可能です 。この手法では、全てのベクトルの末尾に「1」を追加し、全ての行列の下部にゼロの行を追加し、右側に平行移動ベクトルとなる列を追加し、右下隅に「1」を追加する必要があります。が 行列である場合、
A
{\displaystyle A}
[
y
1
]
=
[
A
b
0
⋯
0
1
]
[
x
1
]
{\displaystyle {\begin{bmatrix}\mathbf {y} \\1\end{bmatrix}}=\left[{\begin{array}{ccc|c}&A&&\mathbf {b} \\0&\cdots &0&1\end{array}}\right]{\begin{bmatrix}\mathbf {x} \\1\end{bmatrix}}}
は次のものと同等である
y
=
A
x
+
b
.
{\displaystyle \mathbf {y} =A\mathbf {x} +\mathbf {b} .}
上記の拡張行列は アフィン変換行列 と呼ばれます。一般的な場合、最後の行ベクトルが に制限されない場合 、行列は 射影変換行列になります( 射影変換 を 実行するためにも使用できるため )。
[
0
⋯
0
1
]
{\displaystyle \left[{\begin{array}{ccc|c}0&\cdots &0&1\end{array}}\right]}
この表現は、 すべての 可逆 アフィン変換の 集合 をと の 半直積 として表す。これは 関数の合成の作用下にある 群であり、 アフィン群 と呼ばれる。
K
n
{\displaystyle K^{n}}
GL
(
n
,
K
)
{\displaystyle \operatorname {GL} (n,K)}
通常の行列ベクトルの乗算では、常に原点が原点に写像されるため、原点が必然的に他の点に写像されるような並進を表すことはできません。すべてのベクトルに追加の座標「1」を付与することで、写像する空間を、次元を追加した空間のサブセットとして本質的に考えることができます。その空間では、元の空間は、追加座標が1であるサブセットを占めます。したがって、元の空間の原点は にあります 。すると、高次元空間の線形変換(具体的には、せん断変換)によって、元の空間内で並進が可能になります。高次元空間の座標は、 同次座標 の例です。元の空間が ユークリッド で ある場合、高次元空間は 実射影空間 です。
(
0
,
0
,
…
,
0
,
1
)
{\displaystyle (0,0,\dotsc ,0,1)}
同次座標系を使用する利点は、任意の数のアフィン変換を、それぞれの行列を乗算することで1つに まとめることができることです。この特性は、 コンピュータグラフィックス 、 コンピュータビジョン 、 ロボット工学 において広く利用されています 。
拡張行列の例
平面上で非退化三角形を定義する3点、または3次元空間上で非退化四面体を定義する4点、あるいは一般に n 次元空間上で 非退化 単体を定義する n + 1 点 x 1 , ..., x n +1 があるとする。対応する移動先点 y 1 , ..., y n +1 があるとする。これらの新しい点は任意の次元数の空間に存在する可能性がある。(さらに、新しい点は非退化単体を形成する必要はなく、互いに異なる必要もない。)すべての i
に対して アフィン変換を実現する
唯一の拡張行列 M は、
[
y
i
1
]
=
M
[
x
i
1
]
{\displaystyle {\begin{bmatrix}\mathbf {y} _{i}\\1\end{bmatrix}}=M{\begin{bmatrix}\mathbf {x} _{i}\\1\end{bmatrix}}}
M
=
[
y
1
⋯
y
n
+
1
1
⋯
1
]
[
x
1
⋯
x
n
+
1
1
⋯
1
]
−
1
.
{\displaystyle M={\begin{bmatrix}\mathbf {y} _{1}&\cdots &\mathbf {y} _{n+1}\\1&\cdots &1\end{bmatrix}}{\begin{bmatrix}\mathbf {x} _{1}&\cdots &\mathbf {x} _{n+1}\\1&\cdots &1\end{bmatrix}}^{-1}.}
プロパティ
スクイーズ マッピング の 1 つのパラメータのグループは、ここでは 双曲セクター で示されている領域を保存します 。
保存されるプロパティ
アフィン変換では次のものが保存されます。
点間の共線性 : 同じ直線上にある 3 つ以上の点 (共線点と呼ばれる) は、変換後も共線性を維持します。
平行性 : 2 つ以上の平行な線は、変換後も平行のままです。
集合の凸性 :凸集合は変換後も凸であり続ける。さらに、元の集合の 端点は 変換後の集合の端点に写像される。 [12]
平行線分の長さの比: 点 および 、 およびで定義される別個の平行線分について、 と の比は および の比と同じです 。
p
1
{\displaystyle p_{1}}
p
2
{\displaystyle p_{2}}
p
3
{\displaystyle p_{3}}
p
4
{\displaystyle p_{4}}
p
1
p
2
→
{\displaystyle {\overrightarrow {p_{1}p_{2}}}}
p
3
p
4
→
{\displaystyle {\overrightarrow {p_{3}p_{4}}}}
f
(
p
1
)
f
(
p
2
)
→
{\displaystyle {\overrightarrow {f(p_{1})f(p_{2})}}}
f
(
p
3
)
f
(
p
4
)
→
{\displaystyle {\overrightarrow {f(p_{3})f(p_{4})}}}
重み付けされた点の集合の 重心。
グループ
アフィン変換は 逆 変換なので、 その行列表現に現れる 正方行列も 逆変換 である。したがって、逆変換の行列表現は
A
{\displaystyle A}
[
A
−
1
−
A
−
1
b
→
0
…
0
1
]
.
{\displaystyle \left[{\begin{array}{ccc|c}&A^{-1}&&-A^{-1}{\vec {b}}\ \\0&\ldots &0&1\end{array}}\right].}
可逆なアフィン変換(アフィン空間からそれ自身への変換)は アフィン群 を形成します。アフィン群は次数の 一般線型群 を部分群として持ち 、それ自体は次数の一般線型群の部分群です 。
n
{\displaystyle n}
n
+
1
{\displaystyle n+1}
相似 変換は、 スカラー と 直交行列 の 積である部分群 を形成します 。例えば、アフィン変換が平面 に作用し、 の 行列式 が1 または −1 である場合、この変換は 等面積写像となります。このような変換は、 等アフィン群 と呼ばれる部分群を形成します 。 [13] 等アフィンかつ相似である変換は、 ユークリッド距離 でとられた平面 の 等長写像 です。
A
{\displaystyle A}
A
{\displaystyle A}
これらの群はそれぞれ、 向きを 保存する 、あるいは 正の アフィン変換のサブグループを持ちます。つまり、 の行列式が正であるような変換です。後者の場合、3次元では、これは 剛体変換 ( 真回転 と純粋な並進)
のグループです。
A
{\displaystyle A}
固定点がある場合、それを原点とすれば、アフィン変換は線形変換に帰着します。これにより、変換の分類と理解が容易になります。例えば、変換を特定の軸に対する特定の角度の回転として記述する方が、変換の全体的な動作をより明確に理解できる場合があります。ただし、これは応用分野や文脈によって異なります。
アフィン写像
2つのアフィン空間 間の アフィン写像 は、点上の写像であり、 ベクトル(つまり、空間上の点間のベクトル)に 線型的に 作用する。記号的に、任意の点のペアに対して、以下の 線型変換が成立する 。
f
:
A
→
B
{\displaystyle f\colon {\mathcal {A}}\to {\mathcal {B}}}
f
{\displaystyle f}
φ
{\displaystyle \varphi }
P
,
Q
∈
A
{\displaystyle P,Q\in {\mathcal {A}}}
f
(
P
)
f
(
Q
)
→
=
φ
(
P
Q
→
)
{\displaystyle {\overrightarrow {f(P)~f(Q)}}=\varphi ({\overrightarrow {PQ}})}
または
f
(
Q
)
−
f
(
P
)
=
φ
(
Q
−
P
)
.
{\displaystyle f(Q)-f(P)=\varphi (Q-P).}
この定義は、次のように他のいくつかの方法で解釈できます。
原点 が選択され、 その像 が表される場合 、任意のベクトル に対して次のようになります 。
O
∈
A
{\displaystyle O\in {\mathcal {A}}}
B
{\displaystyle B}
f
(
O
)
∈
B
{\displaystyle f(O)\in {\mathcal {B}}}
x
→
{\displaystyle {\vec {x}}}
f
:
(
O
+
x
→
)
↦
(
B
+
φ
(
x
→
)
)
.
{\displaystyle f\colon (O+{\vec {x}})\mapsto (B+\varphi ({\vec {x}})).}
原点も選択されると、これは を送る アフィン変換として分解することができ 、すなわち
O
′
∈
B
{\displaystyle O'\in {\mathcal {B}}}
g
:
A
→
B
{\displaystyle g\colon {\mathcal {A}}\to {\mathcal {B}}}
O
↦
O
′
{\displaystyle O\mapsto O'}
g
:
(
O
+
x
→
)
↦
(
O
′
+
φ
(
x
→
)
)
,
{\displaystyle g\colon (O+{\vec {x}})\mapsto (O'+\varphi ({\vec {x}})),}
続いてベクトルによる変換が行われます 。
b
→
=
O
′
B
→
{\displaystyle {\vec {b}}={\overrightarrow {O'B}}}
結論は、直感的には、 変換と線形マップから構成されるということです。
f
{\displaystyle f}
代替定義
同じ体上の2つの アフィン空間 とが与えられたとき、 関数が アフィン写像となるのは、 任意の重み付き点の 族に対して次が
成り立つ場合かつその 場合
のみである。 [14]
言い換えれば、は 重心を 保存する 。
A
{\displaystyle {\mathcal {A}}}
B
{\displaystyle {\mathcal {B}}}
f
:
A
→
B
{\displaystyle f\colon {\mathcal {A}}\to {\mathcal {B}}}
{
(
P
i
,
λ
i
)
}
i
∈
I
{\displaystyle \{(P_{i},\lambda _{i})\}_{i\in I}}
A
{\displaystyle {\mathcal {A}}}
∑
i
∈
I
λ
i
=
1
,
{\displaystyle \sum _{i\in I}\lambda _{i}=1,}
f
(
∑
i
∈
I
λ
i
P
i
)
=
∑
i
∈
I
λ
i
f
(
P
i
)
.
{\displaystyle f\left(\sum _{i\in I}\lambda _{i}P_{i}\right)=\sum _{i\in I}\lambda _{i}f(P_{i}).}
f
{\displaystyle f}
例
を 三次元ユークリッド空間 、 を 平面とし、両者に 直交座標系 が備わっていると する 。 が 平行射影、あるいはより一般的には 軸測射影 によって生成される場合 、 は アフィンかつ 射影的である。したがって、これは 階数 2 の 行列と 列ベクトル を
用い て で表すことができる。
この 点については、 「軸測射影における 座標計算」のセクション でより詳細に扱う 。
A
{\displaystyle {\mathcal {A}}}
B
⊆
A
{\displaystyle {\mathcal {B}}\subseteq {\mathcal {A}}}
f
:
A
→
B
{\displaystyle f\colon \,{\mathcal {A}}\to {\mathcal {B}}}
f
{\displaystyle f}
[
x
y
z
]
⟼
[
x
′
y
′
]
=
A
[
x
y
z
]
+
b
{\displaystyle {\begin{bmatrix}x\\y\\z\end{bmatrix}}\longmapsto {\begin{bmatrix}x'\\y'\end{bmatrix}}=A{\begin{bmatrix}x\\y\\z\end{bmatrix}}+\,b}
A
∈
R
2
×
3
{\displaystyle A\in \mathbb {R} ^{2\times 3}}
b
∈
R
2
.
{\displaystyle b\in \mathbb {R} ^{2}.}
b
=
(
0
,
0
)
T
,
{\displaystyle b=(0,0)^{\mathsf {T}},}
歴史
数学用語としての「アフィン」という言葉は、 1748年の オイラーの 著書『無限解析入門』の中で、 曲線の接線との関連で定義されている。 [15] フェリックス・クラインは 「アフィン変換」という用語を メビウス と ガウス に帰している。
デジタル画像処理 への応用において 、アフィン変換はゴムシートに印刷し、その端を平面に平行に伸ばすのに似ています。この変換では、移動したピクセルの値を近似するために強度補間を必要とするピクセルを再配置します。画像処理アプリケーションにおける画像変換の標準は双三次補間です。アフィン 変換 は、以下の例に示すように、画像の拡大縮小、回転、平行移動、鏡像化、およびせん断を行います。 [16]
アフィン変換は、2枚以上の画像を位置合わせ(レジストレーション)するレジストレーション処理に適用できます。 画像レジストレーションの一例として、複数の画像 をつなぎ 合わせてパノラマ画像を生成することが挙げられます 。
アフィンワーピング
アフィン変換は平行線を維持します。ただし、伸縮変換とせん断変換は、次の例に示すように、形状を歪ませます。
これは画像の歪みの一例です。ただし、アフィン変換では曲面への投影や 放射状の歪みは 実現できません。
飛行機の中で
相似 性 。三角形 A 1 B 1 Z、B 1 C 1 Z、A 1 C 1 Z は、それぞれ A 2 B 2 Z、B 2 C 2 Z、A 2 C 2 Zにマッピングされます 。
ユークリッド平面 におけるすべてのアフィン変換は、 平行移動 と点を固定するアフィン変換の組み合わせである 。後者は
相 同性 、
固定点の周りの 回転、
2方向(必ずしも垂直ではない)のスケーリング(負のスケーリング係数を持つ場合もある)。これには 反射 が 含ま れる。
せん断 マッピング
スクイーズ マッピング 。
ユークリッド平面上の 2つの非退化 三角形 ABC と A′B′C′に対して、 Aを A′ に 、 Bを B′ に 、 Cを C′ に 写す唯一のアフィン変換 T が存在する。ABC と A′B′C′ は それぞれ、 アフィン座標系 と 重心座標系 を定義する 。点 P が与えられたとき、点 T (P) は、第2の座標系における P の座標が、第1の座標系における P の座標と同じである点である 。
アフィン変換は長さや角度を考慮せず、面積に定数倍する。
A′B′C′ の面積 / ABC の面積。
与えられた Tは 直接的 (方向を尊重) または 間接的 (方向を逆にする)のいずれかであり 、これは三角形の方向を比較することによって決定できます。
例
実数を超える
および における および の 関数は、まさに 実数直線 のアフィン変換です 。
f
:
R
→
R
,
f
(
x
)
=
m
x
+
c
{\displaystyle f\colon \mathbb {R} \to \mathbb {R} ,\;f(x)=mx+c}
m
{\displaystyle m}
c
{\displaystyle c}
R
{\displaystyle \mathbb {R} }
m
≠
0
{\displaystyle m\neq 0}
平面幾何学
実平面上の単純なアフィン変換
単位正方形に様々な2次元アフィン変換行列を適用した場合の効果。反射行列はスケーリング行列の特殊なケースであることに注意してください。
では 、左に示した変換は次に示すマップを使用して実行されます。
R
2
{\displaystyle \mathbb {R} ^{2}}
[
x
y
]
↦
[
0
1
2
1
]
[
x
y
]
+
[
−
100
−
100
]
{\displaystyle {\begin{bmatrix}x\\y\end{bmatrix}}\mapsto {\begin{bmatrix}0&1\\2&1\end{bmatrix}}{\begin{bmatrix}x\\y\end{bmatrix}}+{\begin{bmatrix}-100\\-100\end{bmatrix}}}
元の三角形(赤色)の3つの頂点を変換すると、3つの新しい点が生成され、新しい三角形(青色)を形成します。この変換により、元の三角形は歪んで平行移動します。
実際、すべての三角形はアフィン変換によって互いに関連しています。これはすべての平行四辺形にも当てはまりますが、すべての四角形には当てはまりません。
参照
注記
^ ラインハルト・シュルツ. 「アフィン変換と凸性」 (PDF) . 2017年 2月27日 閲覧 。
^ オズワルド・ヴェブレン (1918) 射影幾何学 、第2巻、pp.105-7。
^ シュナイダー、フィリップ・K.、エバリー、デイビッド・H. (2003). コンピュータグラフィックスのための幾何学的ツール. モーガン・カウフマン. p. 98. ISBN
978-1-55860-594-7 。
^ オイラー、レオンハルト (1748)。 『analysin infinitorum』の紹介(ラテン語)。 Vol. II. 第 II 巻、宗派。 XVIII、芸術。 442
^ ゴンザレス、ラファエル(2008年)。 「デジタル画像処理 第3回」 ピアソンホール 。ISBN 9780131687288 。
参考文献
外部リンク