生物工学演習E -第7回- 離散フーリエ変換

今回の概要

離散フーリエ変換を理解する.

離散フーリエ変換(Discrete Fourier transform:DFT)

離散フーリエ変換の対象となるのは離散時間周期信号,もしくは離散時間の有限信号である.

我々が計測した後,計算機に保存されるデータは基本的に離散時間の有限信号となる.
つまり,計測データがどのような周波数成分を持つかを計算機によって調べる際には離散フーリエ変換を行うことになる.

離散フーリエ変換の式は以下のように定義される.

参考までに離散時間フーリエ変換の定義を右に示した(今回は\(\frac{1}{2\pi}\)を変換の部分につけている).
このとき,\(\tilde{\omega} = \omega T_s = \frac{2\pi T_s}{T}\)

離散フーリエ変換(DFT)

\begin{align}
X_k= \frac{1}{N} \sum_{n=0}^{N-1} x_n e^{-j\tilde{\omega}_k n}
\end{align}

離散フーリエ逆変換

\begin{align}
x_n = \sum_{k=0}^{N-1} X_k e^{j\tilde{\omega}_k n}
\end{align}

離散時間フーリエ変換(DTFT)

\begin{align}
X(\tilde{\omega})= \frac{1}{2\pi}\sum_{n=-\infty}^{\infty} x_n e^{-j\tilde{\omega} n}
\end{align}

離散時間フーリエ逆変換

\begin{align}
x_n = \int_{-\pi}^{\pi} X(\tilde{\omega}) e^{j\tilde{\omega} n} d\tilde{\omega}
\end{align}

ここで\(\tilde{\omega}_k=2\pi k/N\)でデータ長Nに応じた基本周波数の第k高調波の角周波数.
ただし,離散時間フーリエ変換のときと同様に最も周波数の高い波を表すのが\(\tilde{\omega}_{N-1}\)でないことにも注意が必要である.

このように離散フーリエ変換では周波数領域も離散的になっており,逆変換においても積分ではなく和の記号であらわされる.

離散フーリエ変換の行列表現

離散フーリエ変換は変換の前後がどちらもベクトルのため線形変換ともみなせる.
他のフーリエ変換と同様に離散フーリエ変換も内積計算になっており,行列で表現すると特にそのことが理解しやすい.

離散フーリエ変換を行列で表すと以下の式のようになる.

\[ \left(
\begin{array}{c}
X_0 \\
X_1 \\
X_2 \\
\vdots \\
X_{N-1}
\end{array}
\right)
=
\frac{1}{N}
\left(
\begin{array}{ccccc}
1 & 1 & 1 & \ldots & 1\\
1 & e^{-j\tilde{\omega}_1\times 1} & e^{-j\tilde{\omega}_1\times 2} & \ldots & e^{-j\tilde{\omega}_1\times N-1} \\
1 & e^{-j\tilde{\omega}_2\times 1} & e^{-j\tilde{\omega}_2\times 2} & \ldots & e^{-j\tilde{\omega}_2\times N-1} \\
\vdots & \vdots& \vdots & \ddots & \vdots \\
1 & e^{-j\tilde{\omega}_{N-1}\times 1} & e^{-j\tilde{\omega}_{N-1}\times 2} & \ldots & e^{-j\tilde{\omega}_{N-1}\times N-1}
\end{array}
\right)
\left(
\begin{array}{c}
x_1 \\
x_2 \\
x_3 \\
\vdots \\
x_n
\end{array}
\right) \\
\boldsymbol{X} = F\boldsymbol{x}
\]

イメージとしてはこの行列の各行が特定の周波数の波を表している.

このことは\(N=4\)や\(N=8\)の場合の行列を作成してみるとつかみやすいかもしれない.

このように離散フーリエ変換も基本的には波と信号の内積になっている.