【算法】时域处理方法

数字变换与信号变换

要理解三种变换的联系区别,首先要理解什么是数学变换,什么是积分变换。傅立叶变换以及拉普拉斯变换本质上都是积分变换,而傅立叶变换是拉普拉斯变换的特殊形式,而Z变换是拉普拉斯变换的离散形式。每种变换都有其应用价值,傅立叶变换在信号处理的频域分析中提供了强大的数学工具,而拉普拉斯变换在电子学、控制工程、航空航天等领域提供了建模、分析的数学分析工具;Z变换则将这些变换进而落地为数字实现提供数学理论依据。DFT为FFT的离散化形式,而FFT是DFT的算法优化实现。
在这里插入图片描述
Z变换本质上是拉普拉斯变换的离散形式。也称为Fisher-Z变换。对于连续信号进行抽样变换就得到了原函数的离散序列:差分方程是离散系统的时域数学模型,相当于连续系统的微分方程。
在这里插入图片描述
在这里插入图片描述
那么Z变换的意义在于什么呢?在数字信号处理以及数字控制系统中,Z变换提供了数学基础。利用Z变换很快就能将一个传递函数描述成差分方程形式,这就为编程实现提供了数学依据,比如一个数字滤波器知道其Z变换形式,写代码就是分分钟的事情了,同样知道一个控制算法的Z变换形式,同样编代码也是水到渠成的事情。

从线性时不变系统到线性周期时变系统

我们微电子的模拟课程基本上建立在线性时不变系统的分析上,信号与系统整整一本书基本都在讨论线性时不变系统,而电路分析的课程则将该理论应用到具体的应用中,例如gray的书,很多时候就是讨论传输函数,稳定性。因此我之前也说过,如果要选择一个最重要的概念来解释,那就是线性时不变。
但是在具体电路设计中,线性时不变其实只是一部分,我们遇到的很多系统是非线性,非时不变的。通常的做法就是把非线性小信号化,成为线性,把时变平均化,成为时不变。但是这些方法还是和真实的系统存在一定的偏差,那么偏差在哪里,什么时候偏差比较重要,什么时候可以忽略,这些问题说实话并没有人系统的讲解过。我想主要原因在于这个问题目前还没有普遍的解法。
在这个大问题之下,把我们的目标进一步缩小,针对线性周期时变系统,目前应该是有相对成熟的理论。cadence中的pss及其相关的分析就是一个应用实例。而虽然范围小了很多,但是这种系统也是相对常见的。开关电容电路,开关电源电路,pll电路,基本上都可以用这个系统来解释,这也是pss分析的目标电路。
但是即使是这种相对成熟的理论,也找不到比较合适的书来讲解其背后的原理。如果不知道原理,看着那么多选项,我想很多人仍然可以做出仿真,就像我们并不完全清楚tran仿真中trap,gear算法是用了哪个公式一样。但是如果能知道其背后的原理,我们也许可以更好的理解这个仿真以及仿真的结果,就像我们能大概了解trap,gear的优缺点一样。
最近无事,胡乱看了看相关的材料,觉得也许想清楚了一些问题,但是还有一些问题仍然没搞明白,所以准备在以后讨论一些相关的理论内容,对自己的好奇心也是一种交代。
作为讨论的引子,让我先来说一说一些我们可能习以为常,但是其实和线性周期时变系统分析相关的例子。
在开关电容电路里,几乎每个课本都会讨论一个开关电容,可以等效成一个电阻。那么问题来了,这个等效成电阻是什么含义?为什么OTA设计时又不认为它是个电阻,不会影响增益。这种“物理”性质的理解有时候可以帮助我们理解,但是再深入下去我觉得引发了困惑,因为它不严格。
在开关电容电路里,当负载是开关电容时,该如何讨论前级的驱动能力呢?当然我们可以分相位讨论,但是为什么这里需要分相位讨论,而不是状态平均呢?当前级是ref电路,后级开关电容上有信号时,还存在ref建立不足引入的谐波,这个谐波如何定量讨论呢?(谐波通常表明有非线性过程,因此不能完全被线性周期时变理论框架解释,但是可以类比线性时不变过程中的讨论
在开关电容电路里,我们需要讨论运放的稳定性。我们可以在每个相位讨论,可以用pstb讨论,可以把开关电容等效后讨论,这几种讨论有什么关系和区别?
在pll电路里,讨论系统函数通常是等效为线性时不变系统。但是gardener也给出了一个离散化的讨论结果,两者不完全等价。为什么两者会有不等价的情况,但是在很多时候两者又是近似相等的?有人会说是带宽决定。那么在带宽不是很窄的情况下发生了什么事情。
在开关电源设计中,使用状态平均法来将系统转为时不变。这个状态平均法的条件是什么,与pss,pac又是什么关系。同样是开关电源设计,在电流模中,状态平均法在高频处有问题,一种解决方案是用一个采样过程来描述,另一种是将这个采样过程近似展开继续用线性时不变系统近似。那么为什么会出现采样过程?似乎采样过程在pll的分析中也出现过,也起到了更精确的作用,这里是否有关联存在。
进一步,在周期时变中噪声如何分析?pnoise给出的分析是什么含义,如果一个简单系统,是否可以手工算出噪声?在understanding delta sigma adc的最后给出了一个开关电容算噪声的例子,在那个例子里是分相位计算,这与线性周期时变的普遍理论有什么关系?
可以看出,上面的问题要完美解答,需要一个
线性周期时变系统
的数学基础。有的问题还需要非线性系统线性化的一些理论基础。
在之后的blog里,计划对上面的问题尽可能做出相对严格的回答。当然也有一些问题目前自己还不清楚,希望有了解相关内容的同行可以一起讨论。
目前脑海里的一个大纲如下:
0. 线性时不变系统的分析方法

  1. 从大信号非线性系统到线性小信号系统
  2. 线性周期时变的分析方法之一:脉冲响应
  3. 线性周期时变的分析方法之二:频率响应
  4. 线性周期时变系统与采样的结合
  5. 脉冲响应与频率响应的关系
  6. 噪声与线性周期时变系统
  7. 理论分析与实践的结合

参考:从线性时不变系统到线性周期时变系统(前言)

时域处理方法

单纯的傅里叶变换无法区分频率随着时间变化的非平稳信号呢。
在这里插入图片描述
可见,傅里叶变换处理非平稳信号有天生缺陷。它只能获取一段信号总体上包含哪些频率的成分,但是对各成分出现的时刻并无所知。因此时域相差很大的两个信号,可能频谱图一样。
然而平稳信号大多是人为制造出来的,自然界的大量信号几乎都是非平稳的,所以在比如生物医学信号分析等领域的论文中,基本看不到单纯傅里叶变换这样naive的方法。
在这里插入图片描述
上图所示的是一个正常人的事件相关电位。对于这样的非平稳信号,只知道包含哪些频率成分是不够的,我们还想知道各个成分出现的时间。知道信号频率随时间变化的情况,各个时刻的瞬时频率及其幅值——这也就是时频分析。

短时傅里叶变换(Short-time Fourier Transform, STFT)

一个简单可行的方法就是——加窗。我又要套用方沁园同学的描述了,“把整个时域过程分解成无数个等长的小过程,每个小过程近似平稳,再傅里叶变换,就知道在哪个时间点上出现了什么频率了。”这就是短时傅里叶变换。
时域上分成一段一段做FFT,不就知道频率成分随着时间的变化情况了吗!
上图对同一个信号(4个频率成分)采用不同宽度的窗做STFT,结果如右图。用窄窗,时频图在时间轴上分辨率很高,几个峰基本成矩形,而用宽窗则变成了绵延的矮山。但是频率轴上,窄窗明显不如下边两个宽窗精确。
在这里插入图片描述

小波变换

那么你可能会想到,让窗口大小变起来,多做几次STFT不就可以了吗?!没错,小波变换就有着这样的思路。
但事实上小波并不是这么做的(关于这一点,方沁园同学的表述“小波变换就是根据算法,加不等长的窗,对每一小部分进行傅里叶变换”就不准确了。小波变换并没有采用窗的思想,更没有做傅里叶变换。)
至于为什么不采用可变窗的STFT呢,我认为是因为这样做冗余会太严重,STFT做不到正交化,这也是它的一大缺陷。
于是小波变换的出发点和STFT还是不同的。STFT是给信号加窗,分段做FFT;而小波直接把傅里叶变换的基给换了——将无限长的三角函数基换成了有限长的会衰减的小波基。这样不仅能够获取频率,还可以定位到时间了~
一些问题的回答:

  1. 关于海森堡不确定性原理
    不确定性原理,或者叫测不准原理,最早出自量子力学,意为在微观世界,粒子的位置与动量不可同时被确定。但是这个原理并不局限于量子力学,有很多物理量都有这样的特征,比如能量和时间、角动量和角度。体现在信号领域就是时域和频域。不过更准确一点的表述应该是:一个信号不能在时空域和频域上同时过于集中;一个函数时域越“窄”,它经傅里叶变换的频域后就越“宽”。
    如果有兴趣深入研究一下的话,这个原理其实非常耐人寻味。信号处理中的一些新理论在根本上也和它有所相连,比如压缩感知。如果你剥开它复杂的数学描述,最后会发现它在本质上能实现其实和不确定性原理密切相关。而且大家不觉得这样一些矛盾的东西在哲学意义上也很奇妙吗?

  2. 关于正交化
    什么是正交化?为什么说小波能实现正交化是优势?
    简单说,如果采用正交基,变换域系数会没有冗余信息,变换前后的信号能量相等,等于是用最少的数据表达最大的信息量,利于数值压缩等领域。JPEG2000压缩就是用正交小波变换。
    比如典型的正交基:二维笛卡尔坐标系的(1,0)、(0,1),用它们表达一个信号显然非常高效,计算简单。而如果用三个互成120°的向量表达,则会有信息冗余,有重复表达。
    但是并不意味着正交一定优于不正交。比如如果是做图像增强,有时候反而希望能有一些冗余信息,更利于对噪声的抑制和对某些特征的增强。

  3. 关于瞬时频率
      原问题:图中时刻点对应一频率值,一个时刻点只有一个信号值,又怎么能得到他的频率呢?
      很好的问题。如文中所说,绝对意义的瞬时频率其实是不存在的。单看一个时刻点的一个信号值,当然得不到它的频率。我们只不过是用很短的一段信号的频率作为该时刻的频率,所以我们得到的只是时间分辨率有限的近似分析结果。这一想法在STFT上体现得很明显。小波用衰减的基函数去测定信号的瞬时频率,思想也类似。(不过到了Hilbert变换,思路就不一样了,以后有机会细讲)

  4. 关于小波变换的不足
    这要看和谁比了。
    A.作为图像处理方法,和多尺度几何分析方法(超小波)比:
    对于图像这种二维信号的话,二维小波变换只能沿2个方向进行,对图像中点的信息表达还可以,但是对线就比较差。而图像中最重要的信息恰是那些边缘线,这时候ridgelet(脊波), curvelet(曲波)等多尺度几何分析方法就更有优势了。
    B. 作为时频分析方法,和希尔伯特-黄变换(HHT)比:
    相比于HHT等时频分析方法,小波依然没脱离海森堡测不准原理的束缚,某种尺度下,不能在时间和频率上同时具有很高的精度;以及小波是非适应性的,基函数选定了就不改了。

经验模态分解(EMD)

EMD最显著的特点,就是其克服了基函数无自适应性的问题。啥意思呢?回忆小波分析部分的内容,我们会知道小波分析是需要选定某一个小波基的,小波基的选择对整个小波分析的结果影响很大,一旦确定了小波基,在整个分析过程中将无法更换,即使该小波基在全局可能是最佳的,但在某些局部可能并不是,所以小波分析的基函数缺乏适应性。

通俗的说,用EMD有什么好处呢?对于一段未知信号,不需要做预先分析与研究,就可以直接开始分解。这个方法会自动按照一些固模式按层次分好,而不需要人为设置和干预。

内涵模态分量(Intrinsic Mode Functions, IMF)就是原始信号被EMD分解之后得到的各层信号分量。EMD的提出人黄锷认为,任何信号都可以拆分成若干个内涵模态分量之和。而内涵模态分量有两个约束条件:

1)在整个数据段内,极值点的个数和过零点的个数必须相等或相差最多不能超过一个。

2)在任意时刻,由局部极大值点形成的上包络线和由局部极小值点形成的下包络线的平均值为零,即上、下包络线相对于时间轴局部对称。

参考:这篇文章能让你明白经验模态分解(EMD)——基础理论篇
形象易懂讲解算法I——小波变换
小波变换完美通俗讲解系列之 (一)

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值