刚刚学信号处理时,我对傅里叶变换很不理解,尤其是什么是模?什么是相位?感觉很朦胧,这篇博客就算是写给和我当初有一样困惑的信号处理入门新人吧,大佬们请忽视。另外如果有不正确的地方,请大家提出来。
为了理解模与相位,首先就要对复数有一个清晰的认识。对于一个复数有以下这两种表示方式、
,这两种方式在复平面上分别如下所示。一个复数看作复平面上的一个向量
,复数的两种表示方式就是解析形式
,和幅角形式
,
是向量的幅度,
是向量的相位角。
对于虚数,它代表了复平面上向量的旋转。
,因此乘以
相当于逆时针旋转
。如下图所示,
掌握了复数、虚数的意义后,我们再来看现实中信号都是实信号,以一个最通用的信号为例,由欧拉公式可以知道,
,所以上述信号
,这两项e的复指数项的傅里叶变换就是两个单位冲激函数。通常在教科书或者用Matlab做傅里叶变换时,都会得到一个幅度频率响应、相位频率响应如下所示。
我刚刚学的时候就感觉这个很抽象。其实傅里叶变换后的频谱是个复数,那么用一个三维图像(实部、虚部、频率)表示其实更清晰,其实我觉得教科书如果用这种方式展示的话,会非常利于教学的,不信请往下看。
一个实信号经过傅里叶变换后,其频谱在(实部、虚部、频率)三维空间中的图像,也就是它的频谱如上图所示,这么看就能更清楚地看出来它的频谱的模和相位了。更详细的变换过程如下图所示。
上图展示了详细的对的傅里叶变换的过程。首先根据欧拉公式
,那么对
的傅里叶变换就可以看成对
、
这两项傅里叶变换之和。这两项的傅里叶变换又分别可以看成对
、
的傅里叶变换再乘以
。由之前对于虚数的意义的描述可以知道,乘以
,相当于在复平面上做顺时针直角旋转。因此如上图所示,
对应的傅里叶变换顺时针旋转90度,
对应的傅里叶变换顺时针旋转90度再取负,相当于逆时针旋转90度。
对于任何信号,都可以看成正弦信号的线性组合,因此可以由正弦信号的变换过程,举一反三出任以信号。对于任意信号,想象出它的谱在(实部、虚部、频率)三维空间上的图形,更加有利于理解。下面举一个例子。
一个带限实信号通过一个线性时不变系统
,输出
。这个例子中,线性时不变系统
,即它只改变输入信号的相位,不改变幅值。那么一个带限实信号
通过该系统的输出
,与
的谱如上图所示。
只在实部取值,经过
后,
即相对于
,只是相位角上有改变,幅度无变化。那么如上图所示,谱向虚轴方向旋转了
。
对于线性相位的线性时不变系统,例如FIR滤波器而言,其实分析的过程是类似的,但是我手工三维画图能力有限,那种三维上还加上旋转的图我画不出,但是我觉得经过这么一番讲解后,大家应该能够想象出各种变换后的谱在(实部、虚部、频率)三维空间的样子了吧。那么对谱的幅度、相位的理解也就更加清楚了吧。
最后,我希望大家帮我挑挑错,如果可以,也希望大神帮我补充补充。提前谢谢各位了!