離散フ,リエ変換
離散フリエ変換(dft)は,デジタル信号処理の基本となるルです。製品の基礎をなしているのは高速フーリエ変換 (FFT) で、短い実行時間で DFT を計算します。多くのツールボックス関数 (Z領域周波数応答,スペクトル解析とケプストラム解析,および一部のフィルター設計関数やフィルター実装関数を含む)には,FFTが組み込まれています。
Matlab®環境には,関数fft
と传输线
があり,それぞれ離散フ,リエ変換と逆離散フ,リエ変換の計算に使用できます。入力シ,ケンスxとこのシ,ケンスから変換したX(単位円周上における等間隔の周波数での離散時間フーリエ変換)に対し,この2つの関数によって次の関係が実装されます。
と
これらの方程式では,MATLABのベクトルインデックス方式のため,級数の添字は0ではなく1から始まります。また,次の関係があります。
メモ:Matlabでは,慣例により,関数fft
に負のjが使用されます。これは工学上の慣例であり,物理学や純粋数学では一般に正符号のjが使用されます。
関数fft
では,単一の入力引数x
を使用して,入力ベクトルまたは入力行列のDFTが計算されます。x
がベクトルの場合,関数fft
ではベクトルのDFTが計算されます。x
が方形配列の場合は,関数fft
では配列の各列のDFTが計算されます。
例として,次のような時間ベクトルと信号を作成しましょう。
T = 0:1/100:10-1/100;%时间向量X = sin(2* *15*t) + sin(2* *40*t);%的信号
信号のDFTおよび変換後のシ,ケンスの振幅と位相を計算します。小さい振幅の変換の値をゼロに設定して位相を計算する際の丸め誤差を減らします。
Y = fft(x);计算x的DFTM = abs(y);%级Y (m<1e-6) = 0;P =打开(角度(y));%的阶段
この振幅と位相を角度でプロットするには,次のコマンドを入力します。
F =(0:长度(y)-1)*100/长度(y);频率向量Subplot (2,1,1) plot(f,m)标题(“级”) ax = gca;斧子。XTick = [15 40 60 85]; subplot(2,1,2) plot(f,p*180/pi) title(“阶段”) ax = gca;斧子。XTick = [15 40 60 85];
関数fft
の2番目の引数は,変換する点の数n
を指定し,dftの長さを表しています。
N = 512;Y = fft(x,n);M = abs(y);P =打开(角度(y));F =(0:长度(y)-1)*100/长度(y);Subplot (2,1,1) plot(f,m)标题(“级”) ax = gca;斧子。XTick = [15 40 60 85]; subplot(2,1,2) plot(f,p*180/pi) title(“阶段”) ax = gca;斧子。XTick = [15 40 60 85];
この場合,関数fft
によって入力シ,ケンスの長さがn
より短い場合にはゼロが付加され,n
より長い場合にはシ,ケンスが切り取られます。n
が指定されていない場合は,入力シ,ケンスの長さが既定値として使用されます。関数fft
の実行時間は,実行するDFTの長さn
に左右されます。このアルゴリズムの詳細は,fft
のリファレンスペ,ジを参照してください。
メモ:結果として返されるFFT振幅は* n / 2
で,一个
は元の振幅,n
はFFTデ,タ点数です。これは,fftデ,タ点の数がデ,タサンプルの数以上である場合にのみ真になります。FFTデ,タ点の数が少ない場合は,FFT振幅は元の振幅より上記の分だけ小さくなります。
逆離散フ,リエ変換関数传输线
も入力シ,ケンスを受け入れることができ,オプションで変換する点の数も指定できます。次の例を見てください。元のシ,ケンスx
と,再構成されたシ,ケンスは丸め誤差の範囲内で一致しています。
T = 0:1/255:1;X = sin(2*pi*120*t);Y = real(ifft(fft(x)));图绘制(t, x - y)
また,このルボックスには,2次元FFTとその逆変換に使用する関数のfft2
およびifft2
が含まれています。これらの関数は,2次元の信号やメジ処理に便利です。Goertzel写到関数はDFTを計算するもう1つのアルゴリズムで,ツールボックスに含まれています。この関数は,長い信号の部分に対するDFTの計算に有効です。
場合によっては,関数fft
または関数fft2
の出力を再配列して,ゼロ周波数成分がシ,ケンスの中央になるようにすると便利なことがあります。関数fftshift
により,ゼロ周波数成分をベクトルまたは行列の中央に移動することができます。