小波变换教程文档格式.docx
- 文档编号:19559280
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:56
- 大小:624.74KB
小波变换教程文档格式.docx
《小波变换教程文档格式.docx》由会员分享,可在线阅读,更多相关《小波变换教程文档格式.docx(56页珍藏版)》请在冰豆网上搜索。
换言之,当我们画信号图的时候,横轴代表时间(独立变量),纵轴代表信号幅度(非独立变量)。
当我们画信号的时域图时,我们得到了信号的时幅表示。
对大多数信号处理应用来说,这种表示经常不是最好的表示。
在很多时候,大量特殊的信息是隐藏在信号的频率分量中的。
信号的频谱图表示的一般是信号中的频率分量。
频谱图展示了原始信号中存在哪些频率分量。
直觉上,我们都知道频率意味着某种事物的变化速率。
如果某种东西(用正确的技术术语来说是一个数学或物理变量)变化的很快,我们说它的频率高,如果它变换的不快,我们就说它的频率低。
如果这个变量一直保持不变,我们说它的频率为0,或者说没有频率。
举例来说,日报的频率就比月刊高(因为它出版快)。
频率用周期/秒,或者用一个更广泛的说法,赫兹来衡量。
举例来说,我们日常生活中用的电的频率是60Hz(世界上的其他国家是50Hz)。
这意味着如果我们想要画一条电流曲线的话,我们将会看到的是1秒内出现的50个重复的正弦波。
现在,观看以下这些图。
第一幅图中正弦信号的频率是3Hz,第二幅是10Hz,第三幅则是50Hz。
那么我们怎样测量频率呢?
或者我们怎样找到一个信号中所含的频率分量呢?
答案是傅立叶变换(FT)。
如果对时域内的信号做傅立叶变换,就会得到信号的幅频表示。
也就是说,我们现在画图的话,横轴就是频率,纵轴则是信号的幅度。
这种图告诉我们信号中存在哪些频率分量。
频率轴从0开始直到正无穷。
每一个频率都对应着一个幅度。
举例来说,如果我们对房间里正在使用的电流信号做傅立叶变换,频谱图中将会在50Hz处出现一个尖峰,其它频率对应的幅值则为0,因为电流信号中只包含了50Hz的频率分量。
当然,(实际应用中)没有一个信号的傅立叶变换是这么简单的。
对大多数应用来说,信号中包含的频率分量都大于一个。
下图展示了50Hz信号的傅立叶变换。
这里有一点需要注意:
图1.4给出了两幅图,第二幅显示的其实是第一幅图的前半部分,这是因为实数的频谱图是左右对称的(这里你不理解也没关系)。
图1.4中上方的图展示了这一点。
不过,因为对称部分的后一半只不过是前一半的镜像,它并没有提供更多的信息,因此,这部分经常不画在图里。
下文中出现的大部分频谱图,我只画前半部分。
三、为什么我们需要频率信息
(1)?
通常,我们可以容易的从频域中看到一些在时域中看不到的信息。
让我们举一个生物信号的例子。
假如我们正在观看一个心电图,心脏病专家一般都熟知一些典型的健康心电图。
如果某个心电图与一般的心电图有较大的偏差,这往往是发病的征兆。
在心电图的时域信号中一般很难找到这些病情。
心脏病专家们一般用记录在磁带上的时域心电图来分析心电信号。
最近,新的心电记录仪/分析仪还可以提供心电图的频域信息,通过这些信息,他们就可以确定病症是否存在。
对频域图进行分析能使他们更容易的诊断病情。
上面只是一个说明了为何频率幅值有用的简单例子。
当前,傅立叶变换已经被用于不同的领域,这些领域包括工程学的各个分支。
虽然傅立叶变换是最流行的数学变换,但它并不是唯一的。
工程师和数学家们还经常会用到很多其他的变换。
如希尔伯特变换、短时傅立叶变换(后文对此有详细阐述)、魏格纳分布和雷登变换,当然还有我们要讲的特征变换——小波变换。
这些变换只不过是工程师和数学家们所用到的变换中的一小部分。
每一种变换都有自己的应用领域,也都各有优缺点,小波变换也不例外。
为了更好的理解小波变换的必要性,让我们更详细的探讨一下傅立叶变换。
傅立叶变换是一种可逆变换,即它允许原始信号和变换过的信号之间互相转换。
不过,在任意时刻只有一种信息是可用的,也就是说,在傅立叶变换后的频域中不包含时间信息,逆变换后的时域中不包含时间信息。
说到这里,脑袋里很自然的就会提出这个问题,有没有一种变换可以同时提供时间和频率信息呢?
我们马上就会知道,答案是具体问题具体分析。
回想一下,傅立叶变换给出了信号中包含的频率信息,即它可以告诉我们原始信号中不同频率的信号到底有多少,但是并没有告诉我们某个频率信号是在何时出现的。
在处理平稳信号时,我们不需要知道这些。
让我们进一步探讨一下平稳这个概念,因为它在信号分析中具有重要意义。
如果某个信号中的频率分量一直保持不变,则我们叫这类信号为平稳信号。
换句话说,静态信号中的频率分量一直保持不变。
这种情况下,就不需要知道频率分量是什么时候出现的,因为所有的频率分量出现在信号的每一刻!
!
以下面这个信号为例:
x(t)=cos(2*pi*10*t)+cos(2*pi*25*t)+cos(2*pi*50*t)+cos(2*pi*100*t)
这是一个平稳信号,因为频率为10,25,50和100Hz的频率分量出现在整个时域内。
如下图所示:
图1.2
下图为它的傅立叶变换:
图1.3
图1.3中的上图是图1.2的频谱图,下图为上图的放大,仅仅显示了我们感兴趣部分的频率信息。
四个频谱分量分别对应着10,25,50和100Hz。
与图1.3不同,下图所示的信号就是一个非平稳的信号。
图1.4所示的信号,它的频率一直在改变,这种信号被称为变频信号,是一种非平稳信号。
图1.4
四、为什么我们需要频率信息
(2)?
让我们再看一个例子,图1.5显示了一个包含四个频率分量的信号,它们分别在不同时刻出现,因此这是一个非平稳信号。
0-300ms时是一个100Hz的正弦波,300-600ms时则是一个50Hz的正弦波,600-800ms时是一个25Hz的正弦波,最后的200ms内是一个10Hz正弦波。
图1.5
下图是它的傅立叶变换:
图1.6
不要担心图中出现那些毛刺,那是由于信号中频率的突变引起的,在这篇文章里这些没有意义。
注意到那些高频分量的幅度比低频分量大,这是因为高频信号比低频信号持续时间更长一些(分别为300ms和200ms)(信号中各频率分量的确切值并不重要)。
除了那些毛刺,图中的一切看起来都是正常的,有四个尖峰,对应原始信号中的四个频率分量,应该是正确的…
错!
当然了,也不完全错,但起码不完全对。
对图1.2,考虑以下问题:
各个频率分量都是在什么时刻出现的?
答案是
在所有时刻!
还记得平稳信号吗?
所有频率分量在信号的整个周期内一直存在,10Hz的信号一直存在,50Hz的信号亦然,100Hz的信号亦然。
现在,让我们来考虑一下图1.4或1.5展示的非平稳信号。
各个频率分量都是在什么时刻出现的?
对于图1.6来说,我们知道,在第一个时间段内出现的是最高频率的分量,在最后一个时间段内出现的是最低频率的分量。
图1.5中信号的频率分量一直在变,因此,对这些信号来说,各个频率分量并没有出现在任意时刻。
现在,比较一下图1.3和1.6,二者的相似之处是显而易见的,在图中都显示了四个几乎一样的频率分量,即10,25,50和100Hz。
除了1.6中的那些毛刺和两幅图中各频率分量的幅值(这些幅值可以做归一化处理),两幅频谱图几乎是一致的,虽然相应的时域信号之间差别很大。
两个信号都包含了相同的频率分量,但是前者中的各频率分量出现在信号的整个周期内,而后者的频率分量则在不同的时间段内出现。
那么,是什么导致两个完全不同的原始信号经傅立叶变换后的波形这么相像呢?
回想一下,傅立叶变换仅仅给出了信号的频谱分量,但是却没有给出这些频谱分量的出现时间。
因此,对于非平稳信号来说,傅立叶变换是不合适的,但有一个例外:
只有当我们仅仅关心信号中是否包含某个频率分量而不关心它出现的时间的时候,傅立叶变换才可以用于处理非平稳信号。
但是,如果这些信息是我们需要的(假设),如果我们想知道频率分量出现的确切时间,傅立叶变换就不是合适的选择了。
对实际应用来说,很难把两者的区分开来,因为现实中平稳的和非平稳的信号都很多。
举例来说,几乎所有的生物信号都是非平稳的,这其中著名的就是心电图(ECG)、脑电图(EEG)和肌电图(EMG)。
请注意,傅立叶变换仅仅给出了信号的频率分量信息,仅此而已,无它。
当需要对频谱分量进行时间定位时,则需要一个可以得到信号的时频表示的数学变换。
五、终极解决方案:
小波变换
小波变换是这样一种变换:
它提供了信号的时频表示(还有一些变换可以提供这些信息,如短时傅立叶变化,魏格纳分布等等)。
在任一刻出现的特殊的频谱分量都有特殊的意义。
这种情况下,如果知道了这些特殊的频谱分量出现的时间会比较有益。
举例来说,在脑电图中,一个事件相关电位的潜伏期是主要关注点(事件相关电位是指大脑对某一特定刺激的反应,例如闪灯,这种反应的潜伏期是从刺激的开始到反应发生这段时间)。
小波变换可以同时提供时间和频率信息,因此给出了信号的一种时频表示。
但是小波变换到底是如何变换的仍然是一个不同的有趣故事,需要在理解了短时傅立叶变换(STFT)之后再解释。
小波变换是被用来替代短时傅立叶变换(STFT)的。
我们将在后面详细阐述STFT。
现在可以说,一些在STFT中遇到的有关分辨率的问题,可以用小波变换解决。
为了长话短说,我们略过一些时域信号的高通和低通滤波处理,这些滤波器用来滤除信号中的低频和高频部分分量。
这个过程是重复进行的,每一刻都可以从信号中滤除一些频率分量。
这里解释一下滤波过程是如何工作的:
假定我们有一个信号,其中最高频分量为1000Hz。
第一步,我们通过高通和低通滤波器把信号分成两部分(滤波器必须满足某些特定的条件,即允许条件),结果产生了同一信号的两个不同版本,0-500Hz的信号(低通)和500-1000Hz的信号(高通)。
然后,我们可以拿任意一部分(通常是低频部分)或者二者来做相同的处理。
这个过程叫做分解。
假设我们拿低频部分做了处理,现在我们就有了3列数据,分别为0-250Hz,250-500Hz和500-1000Hz。
然后再对低通滤波过的信号做高通和低通滤波处理,现在我们就有了4列数据,分别为0-125Hz,125-250Hz,250-500Hz和500-1000Hz。
我们持续进行这个处理过程,直到将信号分解到一个预定义的级别。
这样我们就有了一系列信号,这些信号实际上表示相同的信号,但是每一个序列都有不同的频带。
我们知道哪些信号对应哪个频段,如果我们将这些信号放在一起画出三维图,一个轴表示时间,频率在另外一个轴上,幅度在第三个轴上。
这幅图会告诉我们在某时刻出现的是什么频率的信号(这里有一个问题,叫做“不确定性原理”,即我们不能确切的知道哪个频率出现在哪个时间点上,我们仅仅知道那个频段出现在哪个时间段内,后文中将有更多关于此的介绍)。
不过,我仍然想用一个简明扼要的方式解释它:
最初是由海森堡发现并阐述了不确定性原理(测不准原理),这个原理是这样的,移动粒子的动量和位置不能同时确定,对我们这个课题则是这样的:
在时频平面内的一个确切的点上,信号的频率和发生时间不能同时确定。
换句话说:
在任意一个时间点,我们不能确定哪个频谱分量存在。
我们能做到的是在一个给定的时间段内确定哪个频谱分量存在。
这是一个设计到分辨率的问题,正是因为这个原因,才使得研究者们从快速傅立叶变换(STFT)转到了小波变换(WT)上。
快速傅立叶变换的分辨率是固定的,而小波变换则能给出不同的分辨率:
高频信号在时域内可以得到很好的解决,低频信号则可以在频域内得到很好的解决,这意味着,相对于低频分量,高频分量更容易在时域内定位(因为有更小的相对误差)。
反而言之,低频分量更容易在频域内定位。
看下面这张图:
f^
|*******************************************
continuous
|*
*
wavelettransform
|*
*
*
*
-------------------------------------------->
time
对上图的解释是:
最上面一行是对高频信号的多个采样,其采样间隔时间也较短。
就是说高频信号更容易在时域内处理。
最下面的一行是对低频信号的采样,特征点较少,因此,低频信号在时域内并不容易处理。
^frequency
|
|
|
|*******************************************************
|
|*
discretetime
wavelettransform
|*
|---------------------------------------------------------->
在离散时间域内,信号的时间分辨率如上图所示,但是现在,频率信息的分辨率在每一个阶段都不相同。
注意,低频信号更容易在频域内处理,高频则正好相反。
注意到图中后续频率分量的间隔是如何随频率增高(这里应为降低)而增大的。
下图是一些连续小波变换的例子。
让我们以一个正弦波为例,这个正弦波包含了出现在不同时刻的两个频率分量。
前半部分是低频信号,后面是高频信号。
图1.7
对上图的连续小波变换如下:
图1.8
注意到上图中,以“尺度”为标签的轴代表频率。
“尺度”这个概念将会在后续章节进行阐述,但是这时需要注意的是尺度正好与频率成反比,即:
尺度越大频率越低,尺度越小频率越高。
因此,图中的小尖峰反映了信号中的高频分量,大的尖峰则反映了信号中的低频分量(在时域内低频信号是先出现的)。
你可能被图中的频率分辨率搞迷惑了,因为高频信号也得到了很好的频率分辨率。
但是需要注意的是,高频信号的尺度分辨率很高,高尺度分辨率意味着低频率分辨率,反之则反。
更多关于此的介绍在文章的后续部分。
六、小波变换基础:
傅立叶变换
(一)
让我们对前面的内容做个简要回顾。
基本上,我们要用小波变换来处理非平稳信号,即那些频率分量随时间变换而变换的信号。
上文我已经说过傅立叶变换不适合处理这些非平稳信号,并且举了例子来来佐证。
再做一个快速的回顾吧,看下面这个例子:
假定我们有两个不同的信号,再假设他们都有相同的频谱分量,只有一点不同,其中一个信号含有的四个频率分量在整个信号周期内都存在,另外一个也有相同的四个频率分量,但出现的时间各不相同。
两个信号的傅立叶变换将会是一样的,如同在文章的第一部分中所讲到的那个例子。
虽然这两个信号是完全不同的,但他们的傅立叶变换却是相同的!
这一点很明显告诉我们不能用傅立叶变换来处理非平稳信号。
但是这是为什么呢?
换句话说,为什么完全不同的两个信号却有同样的傅立叶变换呢?
傅立叶变换到底是怎么变换的?
信号处理中的一个重要里程碑:
傅立叶变换!
基于以下两个原因,我不想深究傅立叶变换的细节:
1、
这个课题对本教程来说太广了。
2、
它不是我们主要关注的对象。
不过,基于以下原因,我将会在文中涉及一些要点:
为了理解小波变换,你需要傅立叶变换作为背景知识。
它是到目前为止最重要的信号处理工具,已经被用了很多很多年了。
在十九世纪年(或许是1822年,不过你并不需要知道这么确切的时间,相信我,绝对比你能想起来的时间还早得多),法国数学家傅立叶,发现所有周期信号都可以表示为无限的周期复指数函数的和。
在他发现了这个著名的周期函数性质之后,其想法被推广到第一个非周期函数,然后是周期和非周期的离散信号。
在这之后,傅立叶变换就成了在计算机中非常适合的计算工具。
年,出现了一个叫做快速傅立叶变换的新算法,从此傅立叶变换更加流行了。
傅立叶变换将信号分解为具有不同频率的复指数函数,可以用以下两个公式来解释它的变换过程:
图2.1
在上式中,表示时间,表示频率,表示要分析的信号。
注意到表示信号的时域,表示信号的频域,这个约定用来区别对信号的两种表示。
公式叫做x(t)的傅立叶变换,公式叫做X(f)的傅立叶逆变换,其结果是。
用过傅立叶变换的人对这些已经很熟悉了,但不幸的是,很多人虽然用到了这些公式,却没有理解它的基本原理。
现在仔细看公式:
信号是一些指数项的累加和,每个项对应特定的频率,然后在整个时域内整合起来(这里的“整个时域”将在下面进行介绍)。
公式中的指数项还可以被写成下面这样:
cos(2.pi.f.t)+j.Sin(2.pi.f.t).......(3)
上面的表达式以一个频率为的余弦信号作为实部,一个频率为的正弦信号作为虚部。
所以我们实际要做的是用一些复数表达式叠加出原始信号,这些复数表达式包含了频率为的正弦和余弦分部。
然后我们对乘积积分,即我们把乘积中的所有的点叠加起来。
如果积分结果(只不过某种无限求和)的值很大,那么我们可以这样说:
信号x(t)在频率f处有一个大的频谱分量。
信号主要是由频率为的分量组成。
如果积分结果的值较小,就意味着信号中频率为的分量很少。
如果积分结果为,表明信号中根本不存在频率为的分量。
这里很有意思,让我们看看积分是怎么回事:
信号是由一些不同频率的正弦项叠加起来的,如果信号中频率为f的分量幅值较大,那么这个分量就和正弦项重叠,他们的积就会(相对)较大,这表明信号x有一个频率为f的主要分量。
不过,如果信号中不含频率为的分量,则乘积结果为,这表明信号没有频率为的分量。
如果频率为的分量不是信号的主要组成部分,则乘积会(相对)较小。
这就说明频率为f的分量在信号中的幅值很小,不是信号中的主要组成分量。
现在,变换公式中的积分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 变换 教程