Matlab/Octave/Scipy で、2 つの平面間で 2D フーリエ変換を行った後に周波数成分をシフトする正しい方法は何ですか (出力平面は入力平面の遠視野回折平面です)。
出力で特定の強度パターンを取得するために、ホログラム (入力平面に適用される位相遅延パターン) を計算するために、これら 2 つの平面間で反復フーリエ変換アルゴリズムを実行したいとします。飛行機。
入力面のフィールドを A、出力面のフィールドを B とします。
したがって、B は A のフーリエ変換になり、A は B の逆フーリエ変換になります (これはフランハウファー回折理論に従います)。
問題は、2 つの平面を接続するフーリエ変換の間でコマンド fftshift を使用して周波数成分をどの順序でシフトするかということです。
B=fftshift(fft2(A)); 次のように書いてもうまくいかないようです。A2=fftshift(ifft2(B));
これはおそらく一般的な問題ですが、どこにも答えが見つかりませんでした..