Excelによる2次元画像処理の実際
2次元でフィルタと画像の周波数処理をおこなってみます。
フィルターと画像の周波数処理
実空間で2次元フィルターと画像の処理をおこなう場合は重畳積分を用いました。周波数空間では、フィルターの離散フーリエ変換と画像の離散フーリエ変換をおこない
その積を求め、それを逆離散フーリエ変換して、フィルター処理された画像を描出します。
手 順
<画像データ>
@ 画像の2次元データを準備する。(n x n ピクセル画像)
A @のデータ―の入れ替え(配置変換)をおこなってから2次元逆離散フーリエ変換を実施
B Aで求めたデータ結果の配置を元にもどす。
<フィルター>
C 画像データと同じマトリックスのフィルターを準備する。(n x n ピクセル画像)
D Cのデータ―の入れ替え(配置変換)をおこなってから2次元逆離散フーリエ変換を実施
E Dで求めたデータ結果の配置を元にもどす。
<フィルター処理(画像とフィルター)>
F 画像の2次元離散フーリエ変換したデータB とフィルターの2次元離散フーリエ変換したデータE との積を求める。
G Fで求めたデータの入れ替えをおこなってから2次元逆離散フーリエ変換を実施
H Gで求めたデータ結果の配置を元にもどす。
実際の手順(4X4ピクセルの画像を利用して手順を示します)
<Excelの分析ツールを用いたフーリエ変換は2のべき乗のピクセルでしか利用できませんので4x4としました>
<画像データ>
@ 4x4ピクセルの画像データを準備して、データの入れ替えをおこないます。
A データの入れ替えをおこなった画像の2次元離散フーリエ変換をおこなう。
B データの配置を元にもどす
<フィルター>
@ 3x3ピクセルの1-2-1平滑化フィルターを準備して、データの入れ替えをおこなう。
注意: 準備するフィルターは画像データと同じマトリックスですが、フィルターは左右上下対象のものであるため3×3の配置になります。
ここで、画像データと同じマトリックスが必要ですので、3×3の外側に0を埋めて4×4にしてしまいます。
A 1-2-1平滑化フィルタのピクセル値の合計は1にする必要があるので、各ピクセル値を16で除しておく。
B Aのデータの2次元離散フーリエ変換を求める。
C データの配置を元にもどす
<フィルター処理(画像とフィルター)>
@ 画像の2次元離散フーリエ変換したデータ とフィルターの2次元離散フーリエ変換したデータ との積を求める。
A 上で求めたデータの入れ替えをおこなってから2次元逆離散フーリエ変換を実施
B データの配置を元にもどす。
これで終了です。(画像データを1−2−1の平滑化フィルターで処理した画像は下のようなピクセル値となります)