【入門】アフィン変換【数値計算】

【入門】アフィン変換【数値計算】 数値計算
【入門】アフィン変換【数値計算】

そのままやるといろいろと問題が?

この数式を元にアフィン変換をやればOKなのだが、
実際には、そのままやるといろいろ問題が起きる。

どんな問題かというと、
座標変換先の空間が足りなくなったり、変換が満遍なくできなかったり。

  • 画像がはみ出る。
    • 移動、回転した際に、画像の範囲からはみ出ることがある。
  • まだら模様になる。
    • 変換先のピクセルが重複することが多く、結果として変換元が存在しないピクセルが出てくる。

画像がはみ出る対策

画像がはみ出る問題の対策はシンプル。
単純に画像の外側の領域を拡張すればOK。
イメージとしては以下になる。

キャンパス拡張、画像の縦横を取得して大き目の画像を生成、元画像を中央にコピー

一度、大き目な領域を確保して、そのあとに元画像を張り付ければ良い。
事前に画像編集ソフトで加工しておくでもOKだが、
今回はプログラム的に開設する予定。

まだら模様対策

まずまだら模様になる症状を見てみよう。

アフィン変換でまだら模様

これについては、発生する理屈や対策がやや混み入っているので、
原因と対策を別途説明しよう。

何からやっていく?

アフィン変換の前にまずは、領域拡張ことキャンパス拡張を行う予定。
これを先に終わらせておかないと、アフィン変換しても空間不足でイマイチな結果になりやすい。

これは先ほどの画像がはみ出る対策。
キャンパス拡張を各言語でやっていく予定。

まとめ

  • 座標変換の代表的な手法としてアフィン変換がある。
  • アニメーションgifでアフィン変換のイメージを見てみた。
  • アフィン変換を実施する上での問題を確認。
    • 空間不足問題とまだら模様問題。

MATLAB、Python、Scilab、Julia比較ページはこちら

コメント

タイトルとURLをコピーしました