フーリエ変換の性質

フーリエ変換は、関数を時間領域と周波数領域を変換する手法です。
フーリエ変換の性質を理解することによって、信号処理や計算において以下のような利点が得られます。
フィルタリング処理:フーリエ変換により、周波数領域で信号をフィルタリングすることができます。つまり、不要な周波数成分を取り除くことができます。
高速フーリエ変換:高速フーリエ変換(FFT)は、フーリエ変換を高速に計算するためのアルゴリズムです。
デジタル信号処理:デジタル信号処理では、アナログ信号をデジタル信号に変換し、その後、フーリエ変換によってデジタル信号を周波数領域に変換します。このようにして、デジタル信号を処理することができます。

以上のように、フーリエ変換の性質を学習することデジタル信号処理や計算において、高速かつ効率的な処理が可能になります。
次の式で表されます。

F(ω) = ∫[ -∞ , ∞ ] f(t) e^{-iωt} dt ・・・ フーリエ変換

f(t) = (1/2π) ∫[ -∞ , ∞ ] F(ω) e^(iωt) dω ・・・逆フーリエ変換

 

ここで、e^{-jωt}は複素指数関数であり、jは虚数単位です。

 

フーリエ変換は以下の性質を持ちます。

  1. 線型性
    フーリエ変換は線型性を持ちます。つまり、信号の加算・減算に対しても線型的に処理できます。具体的には、2つの信号f(x)g(x)の和に対するフーリエ変換F(ω)G(ω)は、それぞれのフーリエ変換の和と等しくなります。すなわち、F(ω) + G(ω) (f+g)(x)のフーリエ変換と一致します。
  2. 対称性
    X(-ω)=X(ω)*
    実数値関数のフーリエ変換は、周波数の正負に関する対称性を持つことがわかります。
  3. 時間(空間)シフトの定理
    フーリエ変換は、時間(空間)シフトの定理を持ちます。時間軸方向に信号を時間遅延すると、周波数領域では位相が変化することを表します。具体的には、f(x-τ)のフーリエ変換F(ω)は、exp(-jωτ)をかけたf(x)のフーリエ変換F(ω)と等しくなります。
  4. 周波数(波数)シフトの定理
    フーリエ変換は、周波数(波数)シフトの定理を持ちます。周波数領域での位相の変化に対応して、時間(空間)領域での位置の移動を表します。具体的には、exp(jkx)をかけたf(x)のフーリエ変換F(ω)は、F(ω-k)と等しくなります。
  5. 時間軸スケーリング
    時間軸方向の拡大・縮小を意味します。元の信号を時刻軸方向に縮小すると、周波数領域でのフーリエ変換はその倍数、すなわち周波数軸方向に拡大します。
    F[x(at)]=1/|a|X(
    ω/a)
  6. 周波数軸スケーリング
    時間領域の信号を時間方向に伸縮させた場合、周波数領域の信号は周波数方向に縮小されます。
    F[1/|a|x(t/a)]=X(a
    ω)
  7. 畳み込みの定理
    フーリエ変換は、畳み込みの定理を持ちます。畳み込み演算は、周波数領域では積に相当します。すなわち、2つの信号f(x)g(x)の畳み込みh(x)のフーリエ変換H(ω)は、f(x)g(x)のそれぞれのフーリエ変換F(ω)G(ω)の積と等しくなります。
    畳み込み演算とは、2つの関数(または信号)を入力として、それらを積分して得られる新たな関数(または信号)を出力する演算です。数式で表すと以下のようになります。
    $$f*g(t) = \int_{-\infty}^{\infty} f(\tau) g(t-\tau) d\tau$$
    ここで、$f(t)$と$g(t)$は入力となる2つの関数、$f*g(t)$は畳み込み演算の結果となる新たな関数です。畳み込み演算は、2つの関数がどのように重なり合っているかを表現することができます。また、畳み込み演算は、フーリエ変換において非常に重要な役割を果たします。
  8. パーセバルの定理
    フーリエ変換は、パーセバルの定理に従います。パーセバルの定理は、フーリエ変換におけるエネルギー保存則とも呼ばれ、信号の時間領域と周波数領域でのエネルギー量が等しいことを示しています。つまり、信号が時間領域でどれだけ大きくなっているか(信号のエネルギー)は、周波数領域での振幅によって表されます。

 

参考:慶應大学講義 物理情報数学C 第八回 フーリエ変換の性質,ラプラス変換

 

離散データのフーリエ変換

離散データのフーリエ変換には、信号処理やデータ解析において重要な役割があります。

 

一般に、実際の現象やデータは、アナログ信号や連続的なデータとして存在しますが、計測や処理の段階でデジタルデータとして扱われることが多くあります。このような場合、離散データのフーリエ変換を行うことで、デジタルデータを周波数成分に分解することができます。離散信号の周波数スペクトルを正しく解釈するために下記の現象について知っておくことは重要です。

 

ナイキストの臨界周波数

ナイキストの臨界周波数とは、サンプリング周波数において信号を正しく再構成するために必要な最小の周波数を指します。具体的には、サンプリング周波数を f_s とすると、ナイキストの臨界周波数は f_s/2 になります。これは、サンプリング周波数の半分以下の周波数成分までしか正確に再構成できないことを意味しています。

 

エイリアシング

エイリアシングとは、サンプリング周波数が十分でない場合に生じる、元の信号とは異なる周波数成分が混入してしまう現象のことを指します。具体的には、サンプリング周波数が信号の最高周波数成分の2倍未満の場合、高周波成分が低周波成分として誤って検出され、元の信号とは異なる波形に歪んでしまいます。

 

エイリアシングが生じると、元の信号を正確に復元することができなくなります。そのため、サンプリング周波数は、信号の最高周波数成分の2倍以上であることが望ましいです。また、アンチエイリアシングフィルターを使用することで、エイリアシングを軽減することができます。

 

参考:サンプリングされた信号から元の連続時間信号を復元できるか

 

離散フーリエ変換

一般的なフーリエ変換は連続時間信号を周波数領域に変換するものであり、積分が使われます。一方、離散フーリエ変換は、離散時間信号を周波数領域に変換するものであり、和が使われます。和が用いられるのは周波数領域での信号の振幅と位相は、サンプリング周波数の整数倍の周波数の成分のみで決まり、それ以外の周波数成分では0となるからです。つまり積分型のフーリエ変換をすると結果が0になります。

 

 

離散フーリエ変換の公式

離散的な時系列関数 x[n] に対して、離散フーリエ変換 X[k] は以下のように定義される。

 

X[k] = ∑_{n=0}^{N-1} x[n] e^{-i(2π/N)kn}

ここで、N x[n] のサンプル数である。

 

離散フーリエ逆変換は以下の式で表されます。

 

x[n] = (1/N) * ∑_{k=0}^{N-1} X[k] e^{i(2π/N)kn}

 

ここで、X[k]は離散フーリエ変換の結果であり、x[n]は元の離散信号です。

 

詳しくはこちら:離散フーリエ変換(DFT)の仕組みを完全に理解するやる夫で学ぶデジタル信号処理

高速フーリエ変換

離散フーリエ変換(DFT)の計算量は $N^2$ であり、$N$ が大きい場合には計算時間が非常に長くなります。一方、高速フーリエ変換(FFT)は、DFTの計算アルゴリズムを最適化したもので、計算量は $N \log N$ です。つまり、FFTはDFTに比べて計算時間が短くて済むため、大規模な信号処理には必須のアルゴリズムとなっています。また、FFTには様々な高速化手法が存在し、多くのプログラムやライブラリで実装されているため、実装の容易さでもDFTに勝るとされています。