傅里叶变
法国科学家傅里叶提出,任何一条周期曲线,无论多么跳跃或不规则,都能表示成一组光滑正弦曲线叠加之和。傅里叶变换即是把一条不规则的曲线拆解成一组光滑正弦曲线的过程。
傅里叶变换的目的是将时域(即时间域)上的信号转变为频域(即频率域)上的信号,随着域的变换,对同一个事物的了解角度也就随之改变,因此在时域中某些不好处理的地方,在频域就可以较为简单的处理。这就可以大量减少处理信号存储量。
例如:弹钢琴
假设有一时间域函数:y = f(x),根据傅里叶的理论它可以被分解为一系列正弦函数的叠加,他们的振幅A,频率ω或初相位φ不同:
y=A1sin(ω1x+ϕ1)+A2sin(ω2x+ϕ2)+A2sin(ω2x+ϕ2)+R
所以傅里叶变换可以把一个比较复杂的函数转换为多个简单函数的叠加,看问题的角度也从时间域转到了频率域,有些的问题处理起来就会比较简单。
傅里叶变换相关函数
freqs = np.fft.fft.fftfreq(采样数量, 采样周期) 通过采样数与采样周期求得傅里叶变换分解所得数组的频率序列
np.fft.fft.fft(原序列) 原函数值的序列经过快速傅里叶变换得到一个复数数组,复数的模代表的是振幅,复数的辐角代表初相位
np.fft.fft.ifft(复数序列) 复数数组 经过逆向傅里叶变换得到合成的函数值数组
案例:针对合成波做快速傅里叶变换,得到分解波数组的频率、振幅、初相位数组,并绘制频域图像。
import numpy as np
import matplotlib.pyplot as plt
import numpy.ff