摘要学信号处理最重要的就是理解傅里叶之前我们学习了模拟信号的傅里叶级数和傅里叶变换我们用傅里叶级数FS的方法表示一个信号用傅里叶变换FT来表示这个信号的频域特性但我们讨论的都是基于连续时间信号的但是如果我们要传输这些信号我们大概率是需要把模拟信号转换成数字信号的形式发送所以我们更需要了解离散时间信号的特性。在这里我并不想仅用严格的数学推导来说明这几种傅里叶变化的联系教材上的推导要比我这里严谨可靠的多而且这里为了思路的统一性推导过程只是感性认识的过程所以在这里重要的是理解公式的物理意义我将用尽量通俗的语言来介绍我的理解。另外我希望读者对傅里叶变换的公式已经有一定的认识了而且有以下共识连续时间信号中周期信号的频域是离散的非周期信号频域是连续的。时域采样会带来频域的延拓频域采样会带来时域的延拓。求信号的频域信息是一种相关度计算。这是傅里叶变换的本质我先在这里放张图供读者阅读后文时返回参考以便有直观的认识一、 FS和FT先明确FS处理的是周期连续信号FT处理的是非周期连续信号。再回忆一下连续周期信号的傅里叶级数FS以及我们用傅里叶级数的系数推导出的频域特性根据公式可见连续时间周期信号的频域是离散的对于每一个频点的不同体现在积分对象指数上基波的倍数不同在此给一个图方便理解此图来自知乎Heinrich《傅里叶分析之掐死教程》图1 傅里叶变换之间的关系图观察“频域图像”一个方波对应公式中背后是一个个分立的正弦波对应公式中叠加的结果它们有着不同的频率依次映射到频域对应公式中。在当时系统学习的时候下面我们就要进入连续时间傅里叶变换FT了。对于周期信号其频谱是冲激串序列注意观察图2的频域图像其中是FS系数。物理意义周期信号的频谱是离散的冲激位于各次谐波频率处强度正比于FS系数。用大白话理解无论是周期信号还是非周期信号其频域显示的都是时域信号在各个频率处的强度。细心的朋友可能已经发现为什么我上面FS的频域表达是现在这里又是了先说结论描述的是时域周期信号因为他们的频谱是离散的这里的天然的取0、1、2...可以理解为描述信号频率的手段在后文我会借助一个简单的例题再介绍和的关系因为他们并不是一个固定公式这个简单描述的是时域非周期信号因为他们的频谱是连续的可以描述任意角频率角频率也可以理解为描述信号频率的手段使用它能带来数学计算、系统分析上有简洁性至于为什么有简洁性我们在此不去讨论这对于理解这几种变换没有影响你只要知道可以再来一步通过:,转化为频率就可以了)。那我们为什么有时候会遇到的写法这种写法纯粹是不严谨的写法它想表达的意思和一样这里的严谨的说是显式的表达了傅里叶变换和拉普拉斯变换的关系即我们直接理解为有即为频域上的表达就行了。那为什么中没有呢还是因为描述的对象不同FS描述周期信号与拉普拉斯公式的联系不紧密但它的也隐含在了中。有时候我们还会遇到的写法这个和个人习惯有关虽然更侧重于描述模拟角频率更侧重于描述数字角频率但是一般在这里不做区分仅表达习惯的问题。好现在我们回到这个公式我们这里用的原因是想把它作为一个桥梁我们想描述非周期信号的频域就需要用来描述其频域的连续性。但仔细观察这个公式会发现因为有的存在它并不是严格意义上的“连续”所以这只是个过渡公式你既可以把频谱看成“分立的”取、、...也可以看成“连续的”无穷小分立的、、...也逐渐密集成“连续的”但是根据之前的学习我们会意识到我们很少用FT去处理周期信号它更多是应用于非周期信号因为FS已经把周期信号处理的非常简洁了。所以我们干脆把它变成纯粹描述非周期的越专一越简洁越有表达的美感。那这个描述周期信号的冲激串序列怎么过渡到非周期信号具有积分基本素养的同学已经意识到了就是让那么离散谐波间隔趋于0从而使频谱连续化求和符变为积分将傅里叶级数的系数代入冲激串序列的系数变为对积分结果为1黎曼和变为连续的按照这一思路推导出公式如下其逆变换也叫合成方程为这里逆变换我们用的不多这个阶段主要学习怎么处理时域信号、对时域信号进行频域分析。二、 DTFT的理解、FS和DFS、DFS和DTFT(一)从公式上理解DTFT的物理意义简单回忆了FS到FT的推导那我们自然而然的会类比到离散时间信号的傅里叶级数DFS推导离散时间信号的傅里叶变换DTFT注意这里不是DFT只要我们推导通FS到DFS那么用的思路同样可以求得DTFT。但是在这里我先不通过数学证明的方式来验证公式的正确性而是先去理解它的物理意义所以我直接给出最终DTFT的公式。这里插一段解释我们为什么要把研究的重心放在DTFT上而不是DFS。我们知道DFS处理的信号是离散周期信号涉及到周期、连续等词我们意识到想要以数字的方式表示它们就要无限的空间这是不能实现的所以我们只需要截取其中一个周期分析即可这样研究对象就变成了非周期信号研究其频域就是DTFT变换这也解释为什么我们之后还会研究DFT变换因为DTFT变换后的频域是连续的也无法存储所以我们就会对DTFT变换后的频谱进行采样使其离散化可储存在电脑中进行数字运算、分析。我先直接给出DTFT的公式然后我们去理解它一句话求信号的频域信息是一种相关度计算(对FS、FT也适用)是离散时间序列在时刻n的值它代表了信号在时域中的幅度信息根据欧拉公式可以转化成这正余弦函数其频率与的取值有关所以对于每一个的取值都要遍历每一个时刻信号与的1倍、2倍、3倍频的正余弦信号相乘...算出信号在不同时间上的强度与该频率的相关性大小累加求和后得到该频率下的信号到底有多强。这时候可以回头看看文章开头的图1有一个感性的认识DFTF的时域是对连续信号的采样它来自FT的作用对象所以公式作用的对象是离散的一个个值得到的频域是连续的频域的连续可以类比FS推导FT且以为周期对时域采样相当于频域的周期延拓。这就是对DTFT最简单的理解和记忆以上足以应对信号处理的问题但是后面我还是要给出系统的解释。(二)从FS到DFS要想知道DTFT公式是怎么来的可以从FS推导到DFS时带来的周期性说起连续周期信号的傅里叶级数FS这里有三个关键点需要注意分别是、、。一句话来描述这个公式就是成谐波关系的复指数信号线性组合。成谐波关系就是指只能取以基波的整数倍关系他们的线性组合就是每一个数字角频率下的加和。下面我们看看离散周期傅里叶级数为了方便理解我先从FS直接类比过来写一个不标准的FS公式中的和在离散信号这里有了变化通过对连续时间进行采样后以前的基波本质上是(T是连续时间信号的周期)类比到离散时间信号的基波是。我们知道傅里叶级数讨论的都是周期信号所以需要承认和是成立的但离散时间傅里叶级数还有一个特殊的性质就是对于还有一个周期性。为什么有这样一个周期性呢下面我们展开说说首先我们回顾一下一个正余弦函数是怎么产生的第一个图正弦信号就是一个指针在单位圆上运动的投影因为是连续取值对于取的越大他运动的速度也就越快在一个固定时间内跑的圈数越多对应到正弦图就是在时间内的周期数越多。第二个图假设,也就是对连续信号一圈采样8次得到8个点对于加1时取相邻的点加1时跳过一个点取点加1相当于多绕一圈然后往前进1表现出来的效果和完全一样。所以这就是所带来的周期性写到这时我们不禁会感受到这一性质和奈奎斯特采样率是否很相像都是在超过某一阈值后折叠回指定范围后面结合采样详细说明。了解到离散周期信号中参数的特殊点现在我们回到这个式子这里的不需要从负无穷取到正无穷了因为当时都可以被折叠回0~N-1这个范围所以现在公式可以改成这样其中与不标准的写法区别在于k的约束。(三)DFS推导DTFT这部分的推导是我最不满意的中间定义了这其实也是我们的结论这里就类似于结论和条件互证了。现在我们将周期信号向非周期信号过渡那也就是非周期信号了这里的n也就不用限制在一个周期内取值了0~N-1扩展到全周期就是负无穷到正无穷再简化用,进而得根据这个式子看做高看做宽得这就是IDTFT而推导过程中我们定义的就是DTFT变换哈哈有点逆天了至于这个式子怎么蹦出来的我也解释不清好像数学答案中的“显而易见”还是那句话推导过程看看就行主要理解公式的意义或许我还可以给你提供个思路和FT进行比较发现就是积分和求和的区别这是因为作用的对象不同一个连续一个离散。而且我们还可以总结一个规律周期信号的傅里叶级数系数是其傅里叶变换结果也是对的傅里叶变换的等间隔采样结果可以看图1。和理解FS、FT一样我们也可以按FSFT的冲激串进行感性的理解当周期信号变为非周期信号后者需要更多的谐波信号去相互抵消以达到将有效信号之外的地方叠加为0的效果所以这些大量谐波信号在频域上就是很密集的排列在一起形成一个连续的频谱。观察图1中的不同FT的频谱是DTFT的频谱是虽然都是以为自变量但是又有不同给出解释从这两个表达本身来看没有周期性有周期性对应的时域连续对应的时域离散这也印证了最初的共识对时域的采样相当于对频域周期延拓。另外对总的理解可归纳为第一:离散指信号时域表示为离散形式第二:周期指信号频域围绕的圈旋转第三:频域指这是转换到频域的含义好了现在我们了解了FS到FT的变换和DFS到DTFT变换的本质是周期信号变为非周期信号需要更多的谐波分量去表示频谱冲激串逐渐密集形成连续频谱这些只是让你知道这些变换公式是怎么来的对于我们要使用它们不是重点以上内容重点是理解DTFT变换其实就是一种相关度计算计算时域信号接近哪些频率的正余弦信号。其实到这里连续和离散的、周期和非周期的傅里叶变换都已圆满但是想要真正在数字域使用这个工具还需要一步对DTFT频域进行采样将离散信号的频域也无损的变成离散的便于计算机存储处理。三、DTFT和DFT对DTFT采样就是DFTDFT是对DTFT等间隔采样的结果采样间隔为就是在DTFT频谱的一个范围内采集个点。DFT的相关公式根据细心的读者会发现DFT的公式其实就是给DFS加了约束,DFT对约束取其中一个周期DFT对约束取其中一个周期上面是DFT和DFS的关系下面说说DFT对DTFT的频域采样谈到采样就要注意混叠问题对于频率有限信号()可以对其进行时域采样采样频率fs而不丢失信息条件是对于时间有限信号长度为M可以对其进行频域采样采样点数N而不丢失信息条件是。下面举一个简单的例子来介绍DFT的使用,作的32点DFT。分析是有限长序列所以是非周期信号作32点DFT实际上就是对DFTF的进行32点采样对应公式中的N采样点数等于序列长度所以采样结果的频谱不会损失原序列,给出DFT频谱图作32点DFT频谱图上就会出现32个点且以中点对称X轴的k是频率索引通过与基频映射到数字角频率根据公式DFT公式得根据采样规律得所以两等式建立联系得这点很好的说明了DFT公式中k索引与模拟域信号频率的对应关系,也填了上面留下的坑。再结合采样规律图中的中点对应的就是fs/2处的频率那fs采样率是多少其实中只蕴含了fs和f0的关系是数字角频率等于,所以f0/fs 1/6,分辨率为fs/32所以这个fs往往作为已知量出现。再看看其他关系3/pi占2pi的1/6所以在32*1/6处应该是一个尖峰但由于不是整倍数的关系会有频谱泄露泄露到相邻的频率点。所以如果在采样频率确定的情况下我们就可以根据频谱图得到很多被采样信号的信息将时域叠加信号化繁为简。四、 FFTFFT是DFT的快速算法无论是处理的内容还是输出的结果和DFT的效果是一样的只是计算过程不一样FFT的出现是为了使计算更快、占用计算的存储空间更小在实际工程应用中往往都是借助FFT算法进行计算的不过他最大的问题就是上面说的频谱泄露。DFT可以控制变换的点数而FFT只能变换2的n次方个点数常见512、1024、4096。这些点数很难保证不泄露比如1Mhz的采样率FFT的点数是4096则分辨率是1MHz/4096244.140625如果被采样信号有一个50k的信号则在频谱图上50khz的信号的频率索引点为50k/244.140625204.79997不是整数所以204、205都会出现50khz这个频率处信号的能量。至于DFT在工程中具体怎么实现我现在这里埋个坑。五、总结“自然界中的一切波形都可以用正弦波叠加起来”这是对傅里叶变换的高度概括在学习傅里叶变换的过程中我无不感叹这个变换的神奇以及在傅里叶变换中起到关键作用的最美的数学公式——欧拉公式。在推导过程中我们知道公式中的信号的基波分量是关键在我们实际做信号处理的时候发现如果想要恢复信号知道它的直流分量和相位同样重要那这三个量在一起就能表示任意正弦波进而不同倍频叠加成一切波形。《道德经》中说的“道生一一生二二生三三生万物”呢那计算机语言中是不是用三种状态描述世界才是最终归宿呢以上是我个人对几种傅里叶变换的理解如果有表述严重错误希望读者能够及时批评和指正在此也感谢温柔的朱艳老师在我学习数字信号处理过程中给予的帮助和指导谢谢。感谢阅读。[1]奥本海姆Oppenheim, A.V.等著. 离散时间信号处理第三版. 黄建国刘树棠张国梅 译. 北京电子工业出版社2015.[2]韩 昊 . 傅里叶分析之掐死教程. 知乎Heinrich2014