実関数のフーリエ変換

POINT

  • 「実関数のフーリエ変換」の性質について.

現実のデータをフーリエ変換で解析する場合,実数値関数のフーリエ変換となる場合が多い.

その性質を知っておくと解析で役に立つ場合がある.

【関連記事】

連続フーリエ変換

実関数$g$のフーリエ変換
\begin{aligned}
G(f)
=\mathcal{F}[g](f)
=\int_{-\infty}^{\infty} g(t) e^{-i 2\pi f t} \,\mathrm{d}t
\end{aligned}
を考える.

一般論

まずは,$g$が「実関数」であることだけから示せる性質を調べる.

上のフーリエ変換の定義式から,$G$の複素共役は$G^{*}(f) = G(-f)$を満たす.これは,

\begin{aligned}
\begin{cases}
\, \mathrm{Re\,} G(f) = \mathrm{Re\,} G(-f) & (\text{$G$の実部が偶関数}) \\
\, - \mathrm{Im\,} G(f) = \mathrm{Im\,} G(-f) & (\text{$G$の虚部が奇関数})
\end{cases}
\end{aligned}
と同値である.
このとき,振幅スペクトルは
\begin{aligned}
|G(f)|
& = \sqrt{[\mathrm{Re\,} G(f)]^{2} + [\mathrm{Im\,} G(f)]^{2}} \\
& = \sqrt{[\mathrm{Re\,} G(-f)]^{2} + [\mathrm{Im\,} G(-f)]^{2}} \\
& = |G(-f)|
\end{aligned}
(あるいは$ |G(f)| = |G^{*}(f)| = |G(-f)|$)より偶関数となり,位相スペクトルは
\begin{aligned}
\theta(f)
&= \tan^{-1} \biggl[ \frac{\mathrm{Im\,} G(f)}{\mathrm{Re\,} G(f)} \biggr] \\
&=- \tan^{-1} \biggl[ \frac{\mathrm{Im\,} G(-f)}{\mathrm{Re\,} G(-f)} \biggr] \\
&=- \theta(-f)
\end{aligned}
より奇関数となる.

偶関数の場合

実関数$g$が「偶関数」の場合を考える.

フーリエ変換の定義から

\begin{aligned}
G(f)
& =\mathcal{F}[g](f)
=\int_{-\infty}^{\infty} g(t) e^{-i 2\pi f t} \,\mathrm{d}t \\
&=\int_{0}^{\infty} [g(t) e^{-i 2\pi f t} + g(-t) e^{i 2\pi f t} ] \,\mathrm{d}t \\
&=2 \int_{0}^{\infty} g(t) \cos(2\pi f t) \,\mathrm{d}t
\end{aligned}
なので,$G(f)$は「実数値関数 & 偶関数」になる.

このとき,$G(f)$の位相スペクトルはすべての$f$でゼロとなる.

奇関数の場合

実関数$g$が「奇関数」の場合を考える.

フーリエ変換の定義から

\begin{aligned}
G(f)
& =\mathcal{F}[g](f)
=\int_{-\infty}^{\infty} g(t) e^{-i 2\pi f t} \,\mathrm{d}t \\
&=\int_{0}^{\infty} [g(t) e^{-i 2\pi f t} + g(-t) e^{i 2\pi f t} ] \,\mathrm{d}t \\
&=-2i \int_{0}^{\infty} g(t) \sin(2\pi f t) \,\mathrm{d}t
\end{aligned}
なので,$G(f)$は「純虚数値関数 & 奇関数」になる.

このとき,$G(f)$の位相スペクトルは$\pm \pi/2$のいずれかとなる.

離散フーリエ変換

実関数$g$の離散フーリエ変換
\begin{aligned}
& G(n) = \sum_{k=0}^{N-1} g(k) e^{-i 2\pi nk/N} \\
& (n = 0,1,...,N - 1)
\end{aligned}
を考える.

一般論

$G$の複素共役は
\begin{aligned}
G^{*}(n)
&= \sum_{k=0}^{N-1} g(k) e^{i 2\pi nk/N} = G(-n) \\
&= \sum_{k=0}^{N-1} g(k) e^{-i 2\pi (N - n)k/N} \\
&=G(N - n)
\end{aligned}
を満たす.これは,
\begin{aligned}
\begin{cases}
\, \mathrm{Re\,} G(n) = \mathrm{Re\,} G(N-n) & (\text{$G$の実部が偶関数}) \\
\, - \mathrm{Im\,} G(n) = \mathrm{Im\,} G(N-n) & (\text{$G$の虚部が奇関数})
\end{cases}
\end{aligned}
と同値である.
このとき,振幅スペクトルは
\begin{aligned}
|G(n)|
& = \sqrt{[\mathrm{Re\,} G(n)]^{2} + [\mathrm{Im\,} G(n)]^{2}} \\
& = \sqrt{[\mathrm{Re\,} G(N-n)]^{2} + [\mathrm{Im\,} G(N-n)]^{2}} \\
& = |G(N-n)|
\end{aligned}
(あるいは$ |G(n)| = |G^{*}(n)| = |G(N-n)|$)より偶関数となり,位相スペクトルは
\begin{aligned}
\theta(n)
&= \tan^{-1} \biggl[ \frac{\mathrm{Im\,} G(n)}{\mathrm{Re\,} G(n)} \biggr] \\
&=- \tan^{-1} \biggl[ \frac{\mathrm{Im\,} G(N-n)}{\mathrm{Re\,} G(N-n)} \biggr] \\
&=- \theta(N-n)
\end{aligned}
より奇関数となる.


偶関数の場合

実関数$g$が「偶関数」の場合を考える.

離散フーリエ変換の定義から

\begin{aligned}
G(n)
&= \sum_{k=0}^{N-1} g(k) e^{-i 2\pi nk/N} \\
&= g(0)
+ \sum_{k=1}^{N-1} \frac{1}{2} \biggl[g(k) e^{-i 2\pi nk/N} \\
&\qquad\qquad\qquad\qquad
+ g(N - k) e^{-i 2\pi n (N - k)/N} \biggr]
\end{aligned}
が成り立つ(逆順に足して2で割る).

ここで,$g(k) = g(N - k)$,$e^{-i 2\pi n (N - k)/N} = e^{i 2\pi n k/N}$だから

\begin{aligned}
G(n)
&= g(0) + \sum_{k=1}^{N-1}g(k) \cos( 2\pi nk/N) \\
&= \sum_{k=0}^{N-1}g(k) \cos( 2\pi nk/N)
\end{aligned}
なので,$G(n)$は「実数値関数 & 偶関数」になる.

このとき,$G(n)$の位相スペクトルはすべての$n$でゼロとなる.

奇関数の場合

実関数$g$が「奇関数」の場合を考える.

$g(0)=0$なので,上で導いた式より

\begin{aligned}
& G(n) \\
&= \sum_{k=1}^{N-1} \frac{1}{2} \biggl[g(k) e^{-i 2\pi nk/N}
+ g(N - k) e^{-i 2\pi n (N - k)/N} \biggr] \\
&= \sum_{k=1}^{N-1} \frac{1}{2} \biggl[g(k) e^{-i 2\pi nk/N}
- g(k) e^{i 2\pi n k/N} \biggr] \\
&=-i \sum_{k=1}^{N-1} g(k) \sin(2\pi n k/N) \\
&=-i \sum_{k=0}^{N-1} g(k) \sin(2\pi n k/N)
\end{aligned}
なので,$G(n)$は「純虚数値関数 & 奇関数」になる.

このとき,$G(n)$の位相スペクトルは$\pm \pi/2$のいずれかとなる.

応用例

窓関数の線形位相成分を消す

以下の文献の「4.2 窓の実装による線形位相の違い」で,FFTで窓関数を実数値・偶関数として処理することで,窓関数の線形位相成分を消す方法について解説がある.
第五回:実装における諸注意

参考文献