ウィーナー=ヒンチンの定理によると、$f[i]$ の自己相関関数$R[n]$ のFFT(高速フーリエ変換)の実数成分は $f[i]$ のパワースペクトル $|\textrm{C}[k]|^2$ と一致します。

逆に言うと、$f[i]$ のパワースペクトルの IFFT (逆高速フーリエ変換)は自己相関関数になります。

この関係を利用することで、以下の様に FFT を用いて自己相関関数を高速に求めることが可能です。

自己相関関数をFFTで高速に求める方法

 

  1. $f[i]$ をFFTして係数 $\textrm{C}[k]$ を求める
  2. 自乗してパワースペクトル $|\textrm{C}[k]|^2$ を求める
  3. パワースペクトル $|\textrm{C}[k]|^2$ をIFFTして自己相関関数 $R[n]$ を求める

なお白色雑音のパワースペクトルの理論値も自己相関関数の理論値

\[ R[0] = \mu^2 + \sigma^2 \] \[ R[n] = \mu^2 \ ,\ n \geq 1 \]

を FFT することで求められます。
具体的には $\textrm{N}$ を信号長としたとき

\[ |\textrm{C}[0]|^2 = \mu^2 + \frac{\sigma^2}{\textrm{N}} \] \[ |\textrm{C}[k]|^2 = \frac{\sigma^2}{\textrm{N}} \ ,\ (k\geq 1) \]

になります。