ドキュメンテーションヘルプ センター
最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
2 次元の高速フーリエ変換
Y = fft2(X)
Y = fft2(X,m,n)
例
Y = fft2(X) は、高速フーリエ変換アルゴリズムを使用して行列の 2 次元フーリエ変換を返します。これは fft(fft(X).').' を計算することと等価です。X が多次元配列の場合、fft2 は、2 より高い各次元の 2 次元変換を実行します。出力 Y は、X と同じサイズです。
X
fft(fft(X).').'
fft2
Y
Y = fft2(X,m,n) は、変換を計算する前に X を切り捨てるか、X の末尾をゼロでパディングして、m 行 n 列の行列を形成します。Y は m 行 n 列です。X が多次元配列の場合、fft2 は m と n に従って X の最初の 2 次元を形成します。
m
n
すべて折りたたむ
2 次元フーリエ変換は、2 次元信号やイメージなどその他の 2 次元データを処理する場合に役立ちます。
ブロックの繰り返しを含む 2 次元データを作成してプロットします。
P = peaks(20); X = repmat(P,[5 10]); imagesc(X)
データの 2 次元フーリエ変換を計算します。ゼロ周波数成分を出力の中心にシフトし、結果の 100 行 200 列の行列をプロットします。これは X と同じサイズです。
Y = fft2(X); imagesc(abs(fftshift(Y)))
X をゼロでパディングして、128 行 256 列の変換を計算します。
Y = fft2(X,2^nextpow2(100),2^nextpow2(200)); imagesc(abs(fftshift(Y)));
入力配列。行列または多次元配列として指定します。X の型が single である場合、fft2 はネイティブ レベルの単精度で計算し、Y の型も single になります。それ以外の場合、Y は double 型として返されます。
single
double
データ型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical 複素数のサポート: あり
int8
int16
int32
uint8
uint16
uint32
logical
変換する行数。正の整数スカラーとして指定します。
データ型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical
変換する列数。正の整数スカラーとして指定します。
次の式は、m 行 n 列の行列 X の離散フーリエ変換 Y を定義します。
Yp+1,q+1=∑j=0m−1∑k=0n−1ωmjpωnkqXj+1,k+1
ωm と ωn は 1 の複素根です。
ωm=e−2πi/mωn=e−2πi/n
i は虚数単位、p と j は 0 から m–1 までのインデックス、q と k は 0 から n–1 までのインデックスです。この式では、MATLAB® の行列インデックスを反映して、X と Y のインデックスを 1 シフトしています。
使用上の注意事項および制限事項:
MEX 出力の場合、MATLAB Coder™ は MATLAB が FFT アルゴリズムに使用するライブラリを使用します。スタンドアロン C/C++ コードの場合、コード ジェネレーターは既定で、FFT ライブラリの呼び出しを生成する代わりに FFT アルゴリズムのコードを生成します。特定のインストールされた FFTW ライブラリの呼び出しを生成するには、FFT ライブラリ コールバック クラスを指定します。FFT ライブラリ コールバック クラスの詳細については、coder.fftw.StandaloneFFTW3Interface (MATLAB Coder) を参照してください。
coder.fftw.StandaloneFFTW3Interface
MATLAB Function ブロックのシミュレーションの場合、シミュレーション ソフトウェアは MATLAB が FFT アルゴリズムに使用するライブラリを使用します。C/C++ コード生成の場合、コード ジェネレーターは既定で、FFT ライブラリの呼び出しを生成する代わりに FFT アルゴリズム用のコードを生成します。特定のインストールされた FFTW ライブラリの呼び出しを生成するには、FFT ライブラリ コールバック クラスを指定します。FFT ライブラリ コールバック クラスの詳細については、coder.fftw.StandaloneFFTW3Interface (MATLAB Coder) を参照してください。
コード置換ライブラリ (CRL) を使用して、Neon 拡張を含む ARM® Cortex®-A Processors で実行される最適化されたコードを生成できます。最適化されたコードを生成するには、Embedded Coder® Support Package for ARM Cortex-A Processors (Embedded Coder Support Package for ARM Cortex-A Processors) をインストールしなければなりません。ARM Cortex-A で生成されたコードは Ne10 ライブラリを使用します。詳細については、Ne10 Conditions for MATLAB Functions to Support ARM Cortex-A Processors (Embedded Coder Support Package for ARM Cortex-A Processors) を参照してください。
コード置換ライブラリ (CRL) を使用して、ARM Cortex-M Processors で実行される最適化されたコードを生成できます。最適化されたコードを生成するには、Embedded Coder Support Package for ARM Cortex-M Processors (Embedded Coder Support Package for ARM Cortex-M Processors) をインストールしなければなりません。ARM Cortex-M で生成されたコードでは、CMSIS ライブラリを使用します。詳細については、CMSIS Conditions for MATLAB Functions to Support ARM Cortex-M Processors (Embedded Coder Support Package for ARM Cortex-M Processors) を参照してください。
虚数部がすべてゼロであっても、出力 Y は常に複素数です。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
fft | fftn | fftw | ifft2
fft
fftn
fftw
ifft2
この例の変更されたバージョンがシステム上にあります。代わりにこのバージョンを開きますか?
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office