搁置争议,共同开发——,澄清一个信号处理的概念
时间:12-13
整理:3721RD
点击:
正是胡主席将要访问日本之际,借用这样一个标题。打嘴仗并不易于解决问题本身,却往往把精力牵扯到争吵上面;同时既浪费自己的时间,也浪费别人的时间。浪费自己的时间是慢性自杀,浪费别人的时间是谋财害命。我在政治问题的BBS上已经不打嘴仗了,更何况VI是技术版。我用词不当,唐突了qeqe,再次道歉。有的地方可能我没有解释清楚(“周期”这个词在不同的地方有容易混淆的含义,下面解释),所以有些信号处理的概念还是澄清一下。
很多时候争执是误会引起的,而这个误会有可能是说的人自己没说清楚,也可能是听的人没真正理解对方的本意。就拿“周期”这个词来说,qeqe大概是认为只有类似sin(wt), 其中t负无穷到正无穷,这样的才能叫做“周期信号”,其实是说“周期的信号”,但是中文里面名词可以当成形容词来用。而我说太阳黑子的周期是11年,说的是这个周期的值。怪我没说清楚。
现在的学术分得越来越细,即使是一个学科内部,一个方向的专家也并不见得懂得其他方向的细节,也不是不会犯错误。去年遇到一位美国的声学教授,他居然认为“分贝”是“贝”的10倍,其实是1/10。某年夏天在Orlando开一个学术会议,遇到一位西安交大振动所的教授,聊天当中说起小波分析,然后我讲了Haar 小波的一个实际应用,他回答说,Haar小波不是“紧支”的,所以不能用在实际工程问题上。因为我学习小波是从英文开始的,所以不知道“紧支”到底是什么意思。我虽然不同意他说的Haar小波不能用在实际工程问题上这个观点,却也没有当时反驳。回来之后我一查书,“紧支”肯定是compact support的翻译,但是Haar小波恰恰是compact support的。
我在这里想强调信号处理的概念是,一个域内的周期信号在另一个域是离散的,反过来,一个域内的离散信号在另一个域是周期的。
我们从最开始的傅立叶级数(Fourier series)说起。大学一年级的高等数学里面就讲了Fourier series,大概的意思是时间域的一个连续的周期信号可以在频域表示成一个级数。这个周期信号的持续时间是从负无穷到正无穷。“级数”这个词本身就表明这个频域的表示是离散的,但是这个级数本身不是周期的。我们上的课程,不管是数学还是信号与系统,一般都是讲完傅立叶级数之后再讲傅立叶变换(Fourier transform) 。qeqe提到的Oppenheim的《信号与系统》的第三章和第四章,也是这样一个顺序(我用的是2nd Edition, Prentice Hall 1997) 。傅立叶变换是对时间域的连续非周期信号来说的。引入傅立叶变换的原因是我们即使有一个信号,实际上不可能在时间上从负无穷到正无穷。也就是说我们只能研究一段时间的信号。这个“非周期”的意思是说,这一段时间的信号并不是从从负无穷到正无穷重复它自己,至于这一段内部是什么,先不管。但是如果这一段内部是纯sine,那么这个sine的“周期的值”容易和这里讲的“周期”和“非周期”混淆。 Oppenheim这本书第四章一开始就解释了,我们可以把这个“非周期信号”看成是时间上从负无穷到正无穷是一个周期。正因为如此,这个非周期的连续时间信号的频域表示,也就是它的傅立叶变换,也是连续的和非周期的。
上面说的都是很连续时间信号,下面说时间上采样后的离散信号。这要涉及到离散傅立叶级数, 离散时间傅立叶变换(discrete-time Fourier transform), 最后在到离散傅立叶变换(discrete Fourier transform)三个概念。郑君里那套著名的《信号与系统》下册似乎也是这样一个顺序,不过我手边没有这本书。
先从离散傅立叶级数说起。比较上面说的傅立叶级数,当我们对时间域的一个连续的周期信号采样之后,频域内相应的离散的非周期级数变成了离散的周期级数。与引入傅立叶变换一个道理,我们实际上不可能研究从负无穷到正无穷的周期信号,那么对于时间上一段采样的信号,我们来做离散时间傅立叶变换。因为时间上只是一段,所以这个时间信号是“非周期的”。那么它的离散时间傅立叶变换是连续的,但是周期的,这个周期是指在频率域从负无穷到正无穷,周期的值与时间域的采样率成反比。也就是说时间上采样越快,频域的带宽就越宽。因为频域上是周期的,我们只要看一个周期就可以了解频谱的全部信息。这也正解释了为什么采样率低可能造成频谱的混叠。举例来说,假如我用1500 Hz来采样,那么频谱的一个周期是从-750 Hz到+750 Hz,下一个周期是从+750 到+2250 Hz。如果有一个实际频率是1000 Hz的信号,它超出了750 Hz的带宽,就会出现在+750 到+2250 Hz这个周期内。既然这个周期与-750 Hz到+750 Hz的周期完全相同,1000 Hz的信号就会出现在-500 Hz的地方,而我们只关心正频率的话,这个1000 Hz的信号出现在500 Hz的位置上,这就叫做混叠。
离散时间傅立叶变换是连续的,但是在计算机里表示频谱也只能是离散的,这就是从“离散时间傅立叶变换”,变成了最终的“离散傅立叶变换”。而正因为频率表示也是离散的,时间信号变成了周期的。但是这个“周期”只是数学意义上的,我们实际还是只处理它的一个周期,也就是原来的时间段。总结来说,discrete Fourier transform处理的信号在时域和频域都是离散的,所以也都是周期的。这就是我前几天解释为什么如果原始时间段只有半个sine的话,不可能得到这个sine正确的频率表示,因为研究对象不是全部的sine,而是它的一半。那么我们做DFT,也就意味着时间上以半个sine为周期从负无穷到正无穷。做了一个简单的例子,请看附件,一个完整的sine是2秒,但是我们如果只有1秒的半个sine,做DFT,得到的谱线就是1 Hz,而得不到0.5 Hz.
很多时候争执是误会引起的,而这个误会有可能是说的人自己没说清楚,也可能是听的人没真正理解对方的本意。就拿“周期”这个词来说,qeqe大概是认为只有类似sin(wt), 其中t负无穷到正无穷,这样的才能叫做“周期信号”,其实是说“周期的信号”,但是中文里面名词可以当成形容词来用。而我说太阳黑子的周期是11年,说的是这个周期的值。怪我没说清楚。
现在的学术分得越来越细,即使是一个学科内部,一个方向的专家也并不见得懂得其他方向的细节,也不是不会犯错误。去年遇到一位美国的声学教授,他居然认为“分贝”是“贝”的10倍,其实是1/10。某年夏天在Orlando开一个学术会议,遇到一位西安交大振动所的教授,聊天当中说起小波分析,然后我讲了Haar 小波的一个实际应用,他回答说,Haar小波不是“紧支”的,所以不能用在实际工程问题上。因为我学习小波是从英文开始的,所以不知道“紧支”到底是什么意思。我虽然不同意他说的Haar小波不能用在实际工程问题上这个观点,却也没有当时反驳。回来之后我一查书,“紧支”肯定是compact support的翻译,但是Haar小波恰恰是compact support的。
我在这里想强调信号处理的概念是,一个域内的周期信号在另一个域是离散的,反过来,一个域内的离散信号在另一个域是周期的。
我们从最开始的傅立叶级数(Fourier series)说起。大学一年级的高等数学里面就讲了Fourier series,大概的意思是时间域的一个连续的周期信号可以在频域表示成一个级数。这个周期信号的持续时间是从负无穷到正无穷。“级数”这个词本身就表明这个频域的表示是离散的,但是这个级数本身不是周期的。我们上的课程,不管是数学还是信号与系统,一般都是讲完傅立叶级数之后再讲傅立叶变换(Fourier transform) 。qeqe提到的Oppenheim的《信号与系统》的第三章和第四章,也是这样一个顺序(我用的是2nd Edition, Prentice Hall 1997) 。傅立叶变换是对时间域的连续非周期信号来说的。引入傅立叶变换的原因是我们即使有一个信号,实际上不可能在时间上从负无穷到正无穷。也就是说我们只能研究一段时间的信号。这个“非周期”的意思是说,这一段时间的信号并不是从从负无穷到正无穷重复它自己,至于这一段内部是什么,先不管。但是如果这一段内部是纯sine,那么这个sine的“周期的值”容易和这里讲的“周期”和“非周期”混淆。 Oppenheim这本书第四章一开始就解释了,我们可以把这个“非周期信号”看成是时间上从负无穷到正无穷是一个周期。正因为如此,这个非周期的连续时间信号的频域表示,也就是它的傅立叶变换,也是连续的和非周期的。
上面说的都是很连续时间信号,下面说时间上采样后的离散信号。这要涉及到离散傅立叶级数, 离散时间傅立叶变换(discrete-time Fourier transform), 最后在到离散傅立叶变换(discrete Fourier transform)三个概念。郑君里那套著名的《信号与系统》下册似乎也是这样一个顺序,不过我手边没有这本书。
先从离散傅立叶级数说起。比较上面说的傅立叶级数,当我们对时间域的一个连续的周期信号采样之后,频域内相应的离散的非周期级数变成了离散的周期级数。与引入傅立叶变换一个道理,我们实际上不可能研究从负无穷到正无穷的周期信号,那么对于时间上一段采样的信号,我们来做离散时间傅立叶变换。因为时间上只是一段,所以这个时间信号是“非周期的”。那么它的离散时间傅立叶变换是连续的,但是周期的,这个周期是指在频率域从负无穷到正无穷,周期的值与时间域的采样率成反比。也就是说时间上采样越快,频域的带宽就越宽。因为频域上是周期的,我们只要看一个周期就可以了解频谱的全部信息。这也正解释了为什么采样率低可能造成频谱的混叠。举例来说,假如我用1500 Hz来采样,那么频谱的一个周期是从-750 Hz到+750 Hz,下一个周期是从+750 到+2250 Hz。如果有一个实际频率是1000 Hz的信号,它超出了750 Hz的带宽,就会出现在+750 到+2250 Hz这个周期内。既然这个周期与-750 Hz到+750 Hz的周期完全相同,1000 Hz的信号就会出现在-500 Hz的地方,而我们只关心正频率的话,这个1000 Hz的信号出现在500 Hz的位置上,这就叫做混叠。
离散时间傅立叶变换是连续的,但是在计算机里表示频谱也只能是离散的,这就是从“离散时间傅立叶变换”,变成了最终的“离散傅立叶变换”。而正因为频率表示也是离散的,时间信号变成了周期的。但是这个“周期”只是数学意义上的,我们实际还是只处理它的一个周期,也就是原来的时间段。总结来说,discrete Fourier transform处理的信号在时域和频域都是离散的,所以也都是周期的。这就是我前几天解释为什么如果原始时间段只有半个sine的话,不可能得到这个sine正确的频率表示,因为研究对象不是全部的sine,而是它的一半。那么我们做DFT,也就意味着时间上以半个sine为周期从负无穷到正无穷。做了一个简单的例子,请看附件,一个完整的sine是2秒,但是我们如果只有1秒的半个sine,做DFT,得到的谱线就是1 Hz,而得不到0.5 Hz.