
前言傅里叶变换作为信号处理的基本功在教科书上常以数学公式来对其进行解释难免会产生较多的疑惑。实际上傅里叶变换最好通过图形化的方式进行解释会更好理解本文将以图形化的方式详细介绍傅里叶变换的实质。信号的本质世界上任何信号都是不同频率信号的叠加无论是方波、三角波、甚至是画像都可以被分解为不同频率信号的叠加。以上这句话可以用来概括所有信号的本质但是光看文字可能不好理解接下来我会利用这句话来合成一个方波。如上我现在只画了一个单一频率的信号表现为正弦波。现在我又叠加了四个奇次谐波。可以看到信号已经有了一点方波的雏形。我又叠加了四个奇次谐波。可以看到信号已经很接近方波了。这次一次性叠加了20次谐波可以看到信号已经与我们平时在示波器上见到的方波一致了。由此可见想要生成任何不同形状的信号都只需要将不同频率的信号进行叠加即可。傅里叶变换作用在信号处理时为了保证获取信号的频率信息常用的方法就是傅里叶变换。傅里叶变换的作用就是对原始信号进行数学变换从而获取原始信号所含有的信号的频率。如图所示我将一个通过四个奇次谐波简易合成的方波进行了傅里叶变换在频域上存在5个尖峰。其中频率最低的是它的基波其余的尖峰则是四个奇次谐波。在频域上横轴代表信号的频率纵轴代表信号的能量即幅度。傅里叶变换数学公式X ( f ) ∫ − ∞ ∞ x ( t ) e − j 2 π f t d t {X(f) \int_{-\infty}^{\infty} x(t)\, e^{-j 2\pi f t}\, dt}X(f)∫−∞∞x(t)e−j2πftdt如上这是傅里叶变换的基本公式。这个公式到底是什么意思 现在我们先不对其进行枯燥的数学推导直接用图形化的方式展示傅里叶变化。工作原理如图所示我们在对一个信号采样之后对于采样后的数据与一个频率不一致的正弦波探测信号相乘。各点的乘积有正有负在对每一点的乘积进行积分后积分值实际上是很小的因为正数与负数相互抵消了。调整探测信号频率与采样信号一致此时探测信号与采用信号的正数部分相乘后为正数负数部分相乘后为正数最终乘积结果全部极性为正。对乘积进行积分后积分值会很大。那么这和傅里叶变换有什么关系呢其实这就是傅里叶变换的底层原理。当我们采用傅里叶变换的时候会以探测信号的频率为横轴积分值作为竖轴构建坐标系称为频域。就像之前演示的对合成的方波进行傅里叶变换后的图像一样每一个尖峰对应的就是积分值突增的点即探测信号与采样信号频率一致的点。如此一来傅里叶变换的工作原理便清晰明了了傅里叶变换就是通过将不同频率的探测信号与采样信号相乘后对乘积进行积分根据积分后的数据激增点判断频率相关性的方法。看着很简单对吧但是目前还存在一个问题如果采样信号与探测信号存在相位差怎么办能量分散的解决方法如上图所示如果采样信号与探测信号存在π 2 \frac{\pi}{2}2π的相位差尽管此时探测信号的频率已经与采样信号一致了最终乘积的积分值却为0这会导致最终无法检测到数据激增点自然无法知道采样信号的频率。解决方法如上图所示。原本我们的探测信号是只有一个正弦波这会导致采样信号与探测信号存在相位差时输出结果异常。此时可以加入另外一个探测信号与原本正弦波频率一致的余弦波。此时可以看到通过余弦信号计算完以后的积分值是一个很大的值正弦信号计算出的值为0刚好互补。因此在实际应用中考虑到相位差不可忽略必须使探测信号包含正弦波和余弦波。此时设置采样信号相位差为π 4 \frac{\pi}{4}4π在两个探测信号都存在相位差的情况下两者都存在一定量的能量在频域上展示的话需要分为实轴与虚轴正常运用实轴和虚轴的数据往往需要求取二者的平方和再开方这样便能求得傅里叶变换常用的幅度谱。幅度谱的详细数学公式如下∣ X ( f ) ∣ ( Re [ X ( f ) ] ) 2 ( Im [ X ( f ) ] ) 2 连续形式 ( ∫ − ∞ ∞ x ( t ) cos ( 2 π f t ) d t ) 2 ( − ∫ − ∞ ∞ x ( t ) sin ( 2 π f t ) d t ) 2 离散形式 ≈ ( ∑ n x [ n ] cos ( 2 π f n Δ t ) Δ t ) 2 ( − ∑ n x [ n ] sin ( 2 π f n Δ t ) Δ t ) 2 \begin{align*} |X(f)| \sqrt{ \big(\operatorname{Re}[X(f)]\big)^2 \big(\operatorname{Im}[X(f)]\big)^2 } \\[6pt] \text{连续形式} \quad \sqrt{ \left( \int_{-\infty}^{\infty} x(t)\cos(2\pi ft)\,dt \right)^2 \left( -\int_{-\infty}^{\infty} x(t)\sin(2\pi ft)\,dt \right)^2 } \\[6pt] \text{离散形式} \quad \approx \sqrt{ \left( \sum_{n} x[n]\cos(2\pi f n\Delta t)\Delta t \right)^2 \left( -\sum_{n} x[n]\sin(2\pi f n\Delta t)\Delta t \right)^2 } \end{align*}∣X(f)∣连续形式离散形式(Re[X(f)])2(Im[X(f)])2(∫−∞∞x(t)cos(2πft)dt)2(−∫−∞∞x(t)sin(2πft)dt)2≈(n∑x[n]cos(2πfnΔt)Δt)2(−n∑x[n]sin(2πfnΔt)Δt)2如此一来傅里叶变换便已经解释完毕。现在回到一开始的傅里叶变换公式X ( f ) ∫ − ∞ ∞ x ( t ) e − j 2 π f t d t {X(f) \int_{-\infty}^{\infty} x(t)\, e^{-j 2\pi f t}\, dt}X(f)∫−∞∞x(t)e−j2πftdt这个公式又是什么意思其实这个公式要先看积分符号内部x ( t ) e − j 2 π f t x(t)\, e^{-j 2\pi f t}x(t)e−j2πft其中x ( t ) x(t)x(t)自然是我们的采样信号e − j 2 π f t e^{-j 2\pi f t}e−j2πft根据欧拉公式可知e i x cos x i sin x e − j 2 π f t cos ( 2 π f t ) − j sin ( 2 π f t ) e^{ix} \cos x i\sin x \\ e^{-j 2\pi f t} \cos(2\pi f t) - j\sin(2\pi f t)eixcosxisinxe−j2πftcos(2πft)−jsin(2πft)由此可知公式展开为x ( t ) e − j 2 π f t x ( t ) cos ( 2 π f t ) − j x ( t ) sin ( 2 π f t ) x(t) e^{-j 2\pi f t} x(t)\cos(2\pi f t) - j\, x(t)\sin(2\pi f t)x(t)e−j2πftx(t)cos(2πft)−jx(t)sin(2πft)此时可以发现这与我们求幅度谱的数学公式本质上是一致的。综上所述傅里叶变换公式就是对上式的整个坐标系各点的积分。实际效果展示讲了这么多最后实际展示下在合成波情况下傅里叶变换的效果总结所以傅里叶变换是基于信号的本质即任何信号是有不同频率的信号的叠加这一理论基础通过对采样信号与不同频率的正弦和余弦两个探测信号相乘后的点积根据最终积分值作为判断信号相关性的标准从而求出信号信息的方法。傅里叶变换不单单只能用来求采样信号的频率和幅度信息作为信号处理的基石还存在很多不同的应用方式如NUDFT、STFT、SDFT等拓展应用是信号处理不得不学习的一环。