この記事では、画像を拡大・縮小・回転させる「アフィン変換」の原理や計算方法についてまとめました。
アフィン変換とは
アフィン変換とは、平行移動と線形変換を組み合わせた変換です。
つまり、アフィン変換で画像の拡大・縮小、回転、移動などを行うことができます。
■入力画像(左)と出力画像(右)
アフィン変換の式
2次元平面の場合、線形変換は元座標に
の行列を掛けることで表現できます。
平行移動は2次元ベクトルを加算することで表現できます。
(1)
ここで、は変換後の座標です。
次のようにの行列を用いて、線形変換と平行移動の計算を1つの乗算にまとめることもできます。
(2)
回転の計算式
アフィン変換での回転だけを考えます。
原点で点
を角度
だけ回転した後の点
は次の式で計算できます。
(3)
さらに展開すると次の式になります。
(4)
画像の回転
画像を回転する場合、原点ではなく画像の中心周りに回転させるのが一般的です。
そのため、画像の回転に利用する際は、以下の2点について考慮する必要があります。
– | 説明 |
---|---|
① | 画像の中心を原点![]() ![]() ![]() ![]() |
② | 変換後の座標![]() ![]() ![]() ![]() |
①②を考慮したとき、アフィン変換による回転の計算式は次のようになります。
(5)

【画像処理入門】アルゴリズム&プログラミング
この記事では、画像処理における基本的なアルゴリズムとその実装例(プログラム)についてまとめました。
コメント