プロが教える店舗&オフィスのセキュリティ対策術

「画像などを対象にする2次元フーリエ変換は、縦方向の1次元フーリエ変換と横方向の1次元フーリエ変換を組み合わせることにより計算できます」
との解説があります。下に示すような2次元の値で計算する場合、具体的にどのようにすればよいのでしょうか?
(9×9ピクセルの2次元画像でa1~a9はピクセル値とする)
          a1 a2 a3
           a4 a5 a6
           a7 a8 a9
計算方法
1)横方向(→方向)の1次元フーリエ変換をおこなう
         →a1 a2 a3
         →a4 a5 a6
         →a7 a8 a9
2)縦方向(→方向)の1次元フーリエ変換をおこなう
         →a1 a4 a7
         →a2 a5 a8
         →a3 a6 a9
これはできるのですが、「縦方向の1次元フーリエ変換と横方向の1次元フーリエ変換を組み合わせる」の意味がわかりません。

横方向や縦方向の1次元フーリエ変換した値をどのようにすればいいのでしょうか?
具体的に教えてください。

A 回答 (3件)

実際に扱ったことがあるのはN=2**n 点数 FFTですが、任意点数のFFTも可能のようです。



但し、2**nの場合は N*log2(N)に比例した時間で処理可能、in place computation 可能
任意点数の場合は  N*Nに比例した時間が必要、in place computation不可能 (temporary working arrayが必要)等の点が異なってきます。
点数が少ない場合は余り差はないのですが、512,1024point等と点数が増えた場合、大きな差となります。

少しサーチしてみました。

演算時間が問題になるような場合には次のフリーソフトが参考になると思われます。
http://www.fftw.org/

"二次元 FFT OR フーリエ変換 画像" 等でサーチしてみて下さい。
http://www.enjoy.ne.jp/~k-ichikawa/
フーリエ解析とは...
    • good
    • 0
この回答へのお礼

ありがとうございました。
またのご指導よろしくお願いします。

お礼日時:2009/09/09 18:11

"二次元 FFT" 等でサーチすれば色々と資料が見つかります。



例えば
http://www.metro-hs.ac.jp/rs/sinohara/dft_210/mr …
フーリエ変換の実際の計算法

http://ja.wikipedia.org/wiki/離散フーリエ変換

また、サブルーチンなどは次でサーチすることが出来ます。
http://www.google.com/codesearch/advanced_code_s …
http://www.koders.com/

FFT 2-dimension 等でサーチして下さい。
    • good
    • 0
この回答へのお礼

ありがとうございました。
検索して調べてみます。
補足ですが、エクセルの分析でフーリエ変換させるときデータ数は2のn乗が必要ですが、フーリエ変換はデータ数が奇数ではできないのですか?

お礼日時:2009/09/09 06:52

フーリエ変換した結果に対してフーリエ変換を行います。

この回答への補足

ありがとうございました。
フーリエ変換した結果に対しての「結果」とは、横方向で計算したフーリエ変換の値の絶対値〈振幅)を求め、それをまた縦方向にフーリエ変換し、同じように振幅で示せばよいのでしょうか?(振幅を求めたいとき)

補足日時:2009/09/09 06:40
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!