離散フーリエ変換の練習(平滑化フィルタ)


平滑化フィルタの離散フーリエ変換をしてみよう

1.はじめに、1,2,1の平滑化フィルタを準備します。

の1,2,1のフィルタを16画素に周期性を考え配置します。
(カーネル値を1,2,1として考えても良いのですが、ここではカーネル値の和が1となるようにするために、0.25,0.5,0.25とします。)
(注)・・・・・・カーネル値とは各々ピクセルの数値のことだと考えてください
0番目の画素にに0.5、1番目の画素に0.25、15番目の画素に0.25を配置します。


2.つぎに、2つの式を準備します。
 
この式の右辺のNはピクセルの個数です。
  (ここでは16ピクセルなのでNは16となります。)


2.uは周波数の番号で、周波数ではありません。この番号も0からはじまり ます。
u=0とは0番目の周波数を意味します。u=1は1番目の周波数のことです。
uの周波数は(uの番号)/Nとなります。
R(u)の式に代入していきます。

式は次のようになります。
( N=16 、uは0から15まで、xも0から15まで)

周波数u=0番目 周波数では0/16のR(u)は
(u=0、N=16 xは変数で0〜15)
周波数u=1番目 周波数では1/16のR(u)は
 (u=1、N=16 xは変数で0〜15)


周波数u=14番目 周波数では14/16のR(u)は
 (u=14、N=16 xは変数で0〜15)
周波数u=15番目 周波数では15/16のR(u)は
 (u=15、N=16 xは変数で0〜15)



このようにu=16番目まで計算してみてください。Excelで計算したら簡単です。


3. 同じようにI(u)も計算します。

4. 計算されたR(u)、I(u)からSQR(R(u)2+I(u)2) を計算しま す。

         (SQRとは√のことです。)


5. 横軸にu=0のときの周波数(0/16)、u=1のときの周波数(1/16)、u=2のときの周波数(2/16)……u=14のときの周波数(14/16)、u=15のときの周波数(15/16)を取り、それぞれの周波数におけるSQR(R(u)2+I(u)2)の値をプロットすると周波数特性が求まります。


6. 結果


最高空間周波数は0.5(8/16)なので8画素までの値をプロットすると、実空間での0.25,0.5,0.25 は下のような特性になります。