[数学的モデリング]テンソル係数-nから高次元フーリエ変換(コード付き)に拡張

フーリエ変換から2Dフーリエ変換へ

MATLABには高速フーリエ変換関数が付属しています 。fft 、列ベクトルaの場合、高速フーリエ変換を実行する本質は、左側のDFT行列(Fに設定)を乗算することです。これは、次のように標準化されていません。

fft(a)= F * a;

MATLABには、2次元フーリエ変換関数 fft2 も付属しています。同時に、公式Webサイトにもその本質が示されています。つまり、各方向にフーリエ変換が実行されます。行列Aの場合、2次元フーリエ変換が実行されます。その上で、すなわち、次のように表すことができます:

fft2(A)= fft(fft(A)。')。';

(MATLABでは'は共役転置を意味し、。'は共役ではなく転置を意味することに言及する価値があります)

もちろん、F行列を取得できれば、fft2(A)をF * A * Fとして直接表現できます。これは実際には非常に単純です。fft(E)= Fであるため、単位行列をfftに入れる必要があります。 * E = Fであるため、2次元フーリエ変換は次のように表すこともできます。 

fft2(A)= fft(A)* fft(eye(n))

MATLABは、3つの2次元フーリエ変換を実装します

A = [1 2 3; 4 5 6; 7 8 9] 

fft2A1 = fft2(A)
fft2A2 = fft(fft(A)。')。' 
fft2A3 = fft(A)* fft(eye(3))

A =

     1 2 3

     4 5 6

     7 8 9

fft2A1 =

  45.0000&#

おすすめ

転載: blog.csdn.net/wenyusuran/article/details/123553826