2

-2 arcsec から +2 arcsec までの寸法 4x4 arcsec の正方形の画像を作成し、80x80 グリッド上に作成するコードがあります。これに別の画像を追加したいと思います。この 2 番目の画像は、80x80 グリッドの FFT によって作成されるため、フーリエ空間で開始されます。FFT の後、画像が最初の画像と実空間でまったく同じ寸法になるようにします。

フーリエ空間はスケールを表し、波数は k = 2pi/x として定義されるため (ただし、この場合、numpy.fft は k = 1/x と思われる定義を使用します)、最大のスケールは最小でなければならないと考えました。 k 値と最小のスケールは最大の k 値です。

したがって、x_max = 2 (最初の画像の x 方向の寸法) および dim_x = 80 (グリッド内の列の数) の場合:

k_x、最大 = 1/(2*x_max/dim_x)

k_x、最小 = 1/(2*x_max)

フーリエ空間のグリッドを k_x,min から k_x,max まで実行します (y 方向も同様)。

これを十分に明確に説明したことを願っていますが、FFTに関する文献でこれに関する確認や説明を見つけることができなかったので、これが正しいかどうか本当に知りたいです.

前もって感謝します

4

1 に答える 1

2

これは正しくありません。k 空間値の範囲は-N/2*omega_0(N-1)/2*omega_0です。ここomega_0で、 はサンプル長の逆数であり、2*pi/(max(x)-min(x))N はサンプル数です。したがって、あなたの場合、次のように何かを取得します。

N = len(x)
dx = x[-1]-x[0]
k = np.linspace(-N*pi/dx, (N+1)*pi/dx, N)
于 2012-05-02T07:36:36.870 に答える