バックナンバーはこちら。
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
アフィン変換を実施する上での問題

前回の最後に、「アフィン変換を実施する上での問題」みたいな話が出てたけど、
具体的にはどんなん?

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

画像がはみ出るのは分かるが、どう対策すればいいんだ?

単純に画像の外側の領域を拡張すればOK。
イメージとしては以下になる。


なるほど。
一度、大き目な領域を確保して、そのあとに元画像を張り付ければ良いのか。

事前に画像編集ソフトで加工しておくでもOKだが、
今回はプログラム的に開設する予定だ。

画像編集ソフトで何とかなるんだったら、そっちで良いんじゃない?

それを言い出したら、アフィン変換も画像編集ソフトでなんとかなっちゃう。
まぁ、それほど複雑な処理ではないからやってしまおう。
まだら模様対策

次がまだら模様の話だけど、具体的にどうなるの?

こうなるの。


あー、なるほど。これは問題だ。

でもなんでこんなことになるの?

これについては、原因と対策を別途説明しよう。
何からやっていく?

で、結局何をどうすればいいんだ?

まずは領域拡張ことキャンパス拡張だな。
これを先に終わらせておかないと、アフィン変換しても空間不足でイマイチになっちゃう。

画像がはみ出る対策だね。
まずはキャンパス拡張を各言語でやっていく感じか。

そうそう。
まとめ

まとめだよ。
- アフィン変換を実施する上での問題を確認。
- 空間不足問題とまだら模様問題。
- 空間不足問題に対しては、キャンパス拡張にて対策。
- まだら模様問題は、別途原因と対策を説明予定。
バックナンバーはこちら。
コメント