傅里叶级数:Fourier Serie

  • 傅里叶级数针对周期性函数:任意周期函数都可写成三角函数之和
  • 公式
    • f(x)=a0×1+i=1(ai×cos(2×π×iT×x)+bi×sin(2×π×iT×x))=k=(gk(x))f(x) = a_0 \times 1 + \sum_{i=1}^{\infty}(a_i \times cos(\frac{2 \times \pi \times i}{T} \times x) + b_i \times sin(\frac{2 \times \pi \times i}{T} \times x)) = \sum_{k=-\infty}^{\infty}(g_k(x))
      • gk(x)=ak×ej×k×(2×πT)×xg_k(x) = a_k \times e^{j \times k \times (\frac{2 \times \pi}{T}) \times x},其中欧拉公式为:ej×θ=cos(θ)+j×sin(θ)e^{j \times \theta} = cos(\theta) + j \times sin(\theta)
      • a0Ra_0 \in \mathbb{R}
      • TT为函数周期
    • 时域:f(x)f(x)函数
    • 频域:以(1,cos(i×x)/sin(i×x))(1, cos(i \times x)/sin(i \times x))为基的对应向量(a0,ai/bi)(a_0, a_i/b_i)。叠加波的映射
    • 即:级数ii越大,频域向量维度变高,越密集。周期TT越大,频域越密集(正弦/余弦图更紧凑)
    • gk(x)g_k(x)是周期为TT的周期函数,kk值不同时,周期信号具有谐波关系(即它们都具有一个共同周期TT)。k×(2×πT)k \times (\frac{2 \times \pi}{T})即为kk次谐波,其中k=0k=0时为常值a0a_0
  • 本质:是将一个周期的信号分解成无限多分开的(离散的)波

傅里叶变换:Fourier Transformation

  • 时域是叠加波,频域就是几条竖线(振幅就是高度),时域很复杂的东西,很可能在频域就很简单。
  • A×sin(w×x+θ)A \times sin(w \times x + \theta)
    • AA:振幅
    • ww:频率
    • θ\theta:相位
  • F(w)F(w)叫做f(t)f(t)的象函数,f(t)f(t)叫做F(w)F(w)的象原函数
    • 傅里叶变换:F(w)=F[f(t)]=(f(t)×ei×w×t)dtF(w) = \mathscr{F}[f(t)] = \int_{-\infty}^{\infty}(f(t) \times e^{-i \times w \times t})\mathrm{d}t
    • 傅里叶逆变换:f(t)=F1[F(w)]=12×π×(F(w)×ei×w×t)dwf(t) = \mathscr{F}^{-1}[F(w)] = \frac{1}{2 \times \pi} \times \int_{-\infty}^{\infty}(F(w) \times e^{i \times w \times t})\mathrm{d}w
  • 指数形式傅里叶变换:欧拉公式

关系

  • 傅里叶级数:时域是一个周期且连续的函数,而频域是一个非周期离散函数
  • 傅里叶变换:将一个时域非周期的连续信号,转化为一个在频域非周期的连续信号
    傅里叶分析 & 应用
  • 一个极度有意思的总结图
    傅里叶分析 & 应用

应用

  • 周期时间序列
    • R:fourier。参考kk为级数
  • 滤波(图像,音频,交易信号):去掉特点的频率成分,在频域就是去掉其对应的竖线
  • 求解微分方程:时域的需要计算微分和积分,映射到频域就是加减法

Python API:scipy.fft; numpy.fft

  • fft:一维离散傅里叶变换。返回傅里叶级数展开的yiy_i
  • ifft:一维离散傅里叶逆变换
  • fft2, ifft2:同上
  • fftn, ifftnnn
  • rfft:入参接受为实数,略掉虚数部分
  • irfft:逆函数
  • hfft:Compute the FFT of a signal that has Hermitian symmetry

Reference

相关文章: