質問は少し広いです。
これが私がやったことです:
fftを適用する方法があります。正しいか間違っているかはここでは重要ではないため、投稿するつもりはありません。
メソッドを使用して画像を実行し、同じサイズの 2 つの画像 (1 つは実部用、もう 1 つは虚部用) として出力されるものを表示しようとします。
私の方法から得られるグレースケール値が通常255よりもはるかに大きいことを除いて、これはうまくいくようです。したがって、私が何を見ているのかわかりません。
次に、生の結果 (表示するピクセル値が何であれ、0 から 255 の間に収まるように変更されていると想定しているため) を取得し、前と同じ方法で実行しますが、ifft を達成するために符号を変更します。
次に、これも表示しようとします。繰り返しますが、ほとんどの場合、生の値は 255 よりもはるかに大きくなっています。
私の質問は次のとおりです。b.) ifft を実行するとき、このスケーリングを逆にする必要がありますか? c.) ifft を適用する前に、fft で行う必要がある変換はありますか?
パート c は、fft のコーナーを中央に配置することについて話していることをいくつか読んだという事実から生じますが、これが何を意味するのかはよくわかりません。
より少ない質問、パートdは、最初に1d fftをすべての行に適用し、次にすべての列に適用することにより、元の画像に2d fftを適用する場合、同じ順序でifftを適用する必要があるか、または順序を逆にする必要がありますか。
今はそれだけだと思います。私は多くの答えを探してきましたが、多くを見つけることができないようですので、どんな助けも大歓迎です。
編集:いくつかの画像を追加しました。おそらく役立つでしょう。1 つ目は元のイメージ、2 つ目は私の fft メソッド (大きさと虚数成分) の結果、3 つ目は中間イメージの ifft の結果です。
EDIT2:画像を新しい方法のものに更新しました。