微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 小波变换和motion信号处理:第一篇

小波变换和motion信号处理:第一篇

时间:05-22 来源:互联网 点击:

点,我们会在之后详细阐述。

小波展开的形式通常都是这样(注意,这个只是近似表达,严谨的展开形式请参考第二篇):

其中的

就是小波级数,这些级数的组合就形成了小波变换中的基basis。和傅立叶级数有一点不同的是,小波级数通常是orthonormal basis,也就是说,它们不仅两两正交,还归一化了。小波级数通常有很多种,但是都符合下面这些特性:

1. 小波变换对不管是一维还是高维的大部分信号都能cover很好。这个和傅立叶级数有很大区别。后者最擅长的是把一维的,类三角波连续变量函数信号映射到一维系数序列上,但对于突变信号或任何高维的非三角波信号则几乎无能为力。

2. 围绕小波级数的展开能够在时域和频域上同时定位信号,也就是说,信号的大部分能量都能由非常少的展开系数,比如a_{j,k},决定。这个特性是得益于小波变换是二维变换。我们从两者展开的表达式就可以看出来,傅立叶级数是

,而小波级数是

3. 从信号算出展开系数a需要很方便。普遍情况下,小波变换的复杂度是O(Nlog(N)),和FFT相当。有不少很快的变换甚至可以达到O(N),也就是说,计算复杂度和信号长度是线性的关系。小波变换的等式定义,可以没有积分,没有微分,仅仅是乘法和加法即可以做到,和现代计算机的计算指令完全match。

可能看到这里,你会有点晕了。这些特性是怎么来的?为什么需要有这些特性?具体到实践中,它们到底是怎么给小波变换带来比别人更强的好处的?计算简单这个可能好理解,因为前面我们已经讲过正交特性了。那么二维变换呢?频域和时域定位是如何进行的呢?恩,我完全理解你的感受,因为当初我看别的文章,也是有这些问题,就是看不到答案。要说想完全理解小波变换的这些本质,需要详细的讲解,所以我就把它放到下一篇了。

接下来,上几张图,我们以一些基本的信号处理来呈现小波变换比傅立叶变换好的地方,我保证,你看了这个比较之后,大概能隐约感受到小波变换的强大,并对背后的原理充满期待:)

假设我们现在有这么一个信号:

看到了吧,这个信号就是一个直流信号。我们用傅立叶将其展开,会发现形式非常简单:只有一个级数系数不是0,其他所有级数系数都是0。好,我们再看接下来这个信号:

简单说,就是在前一个直流信号上,增加了一个突变。其实这个突变,在时域中看来很简单,前面还是很平滑的直流,后面也是很平滑的直流,就是中间有一个阶跃嘛。但是,如果我们再次让其傅立叶展开呢?所有的傅立叶级数都为非0了!为什么?因为傅立叶必须用三角波来展开信号,对于这种变换突然而剧烈的信号来讲,即使只有一小段变换,傅立叶也不得不用大量的三角波去拟合,就像这样:

看看上面这个图。学过基本的信号知识的朋友估计都能想到,这不就是Gibbs现象么?Exactly。用比较八股的说法来解释,Gibbs现象是由于展开式在间断点邻域不能均匀收敛所引起的,即使在N趋于无穷大时,这一现象也依然存在。其实通俗一点解释,就是当变化太sharp的时候,三角波fit不过来了,就凑合出Gibbs了:)

接下来我们来看看,如果用刚才举例中的那种小波,展开之后是这样的:

看见了么?只要小波basis不和这个信号变化重叠,它所对应的级数系数都为0!也就是说,假如我们就用这个三级小波对此信号展开,那么只有3个级数系数不为0 。你可以使用更复杂的小波,不管什么小波,大部分级数系数都会是0。原因?由于小波basis的特殊性,任何小波和常量函数的内积都趋近于0。换句话说,选小波的时候,就需要保证母小波在一个周期的积分趋近于0。正是这个有趣的性质,让小波变换的计算以及对信号的诠释比傅立叶变换更胜一筹!原因在于,小波变换允许更加精确的局部描述以及信号特征的分离。一个傅立叶系数通常表示某个贯穿整个时间域的信号分量,因此,即使是临时的信号,其特征也被强扯到了整个时间周期去描述。而小波展开的系数则代表了对应分量它当下的自己,因此非常容易诠释。

小波变换的优势不仅仅在这里。事实上,对于傅立叶变换以及大部分的信号变换系统,他们的函数基都是固定的,那么变换后的结果只能按部就班被分析推导出来,没有任何灵活性,比如你如果决定使用傅立叶变换了,那basis function就是正弦波,你不管怎么scale,它都是正弦波,即使你举出余弦波,它还是移相后的正弦波。总之你就只能用正弦波,没有任何商量的余地。而对于小波变换来讲,基是变的,是可以根据信号来推导或者构建出来的,只要符合小波变换的性质和特点即可。也就是说,如果你有着比较特殊的信号需要处理,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top