基于Matlab的信号平稳性检验系统
作者:眭
来源:《现代电子技术》2010年第03
        :信号的平稳性检验在信号处理中起着十分重要的作用。介绍Matlab环境下设计和实现信号平稳性检验系统。该系统主要利用替代数据的平稳性特点,通过在时频域中分别计算原数据和对应替代数据的平稳度并相互比较,以实现对信号平稳性的检验。它可以求出输入数据的替代数据,并分析原始数据和替代数据的频域和时频域性质,同时还可以通过计算原始数据和替代数据各自时频域的变化程度来判断原始数据的平稳性。该系统提供了友好的用户界面。实验表明,该系统可方便地完成信号的平稳性检验,对于测试数据给出了较好的检验结果。
        关键词:平稳性检验;替代数据;时频分布;随机信号
        中图分类号:TP274 文献标识码:A
        文章编号:1004-373X(2010)03-083-04
        System of Stationarity Test Based on Matlab
        SUI Ye,LI Ming
        (School of Information Science & Technology,East China Normal University,Shanghai,200241,China)
        Abstract:Stationarity test remains a challenge problem in the field of signal processing.Due to the importance of stationa- rity test,to find a solution to that problem is greatly desired.A stationarity test system designed and implemented based on Matlab is introduced.The system realizes stationarity test via comparing characteristics of original data and surrogate in time-frequency distribution which represent their stationarity.And the comparison on the basis of stationarization property of surrogate which is first explored in time-frequency perspective.The system can make surrogates from original data and display their characteristics in both frequency domain and time-frequency domain.The system can also compare original data with its surrogates in time-frequency domain to determine whether it is stationary or non-stationary.The system gives a friendly interface and is convenient to use.The experiment indicates our system can test stationarity of signal well.
        0
        信号的平稳性检验在随机信号处理中起着十分基础的作用。由于平稳信号和非平稳信号的性质差别显著,因此在处理信号之前先行判断它的平稳性就显得尤为重要。虽然信号平稳性的定义十分明确,但是实际判断过程却是复杂的,例如观察尺度对信号平稳性判断就有很大的影响。
        这一领域的研究已经取得了一定的成果。 一些人提出了受限和带参数的非平稳性判定方法,而另一些人则将他们的平稳性判定建立在对原始数据的 一些假设上[1]。而对于更一般信号的平稳性检验的研究还没有取得太多成果。文献[2,3]中又提到了这一问题,并且提出了一种新的检验平稳性框架。这一框架混合了时频透视法和有名的替代数据法[4,5]。它的基本思想是引入可控噪声”,即替代数据。并且由于替代数据的一些特性,它可以作为平稳性的评判标准。本文参考了文献[6]中的平稳性检验方法,设计了一个信号平稳性检验系统,并在MatlabGUI 开发环境下实现了图形用户界面的设计。实践表明,本系统不但提供了友好的用户界面,并且可以方便地完成信号的平稳性检验。
        1 平稳性检验原理
        1.1 平稳性定义及其检验的重要性
        假设有一个高斯过程 {x l(t)}(-∞
        μ x(t)=E[x l(t)](1)
        为任意确定 t 时刻的全体平均。同时:
        r(t 1,t 2)=E[x l(t 1)x l(t 2)](2)
        被称为自相关函数(ACF)
        对于一个弱平稳过程,它的 μ x(t)r(t 1,t 2) 都是时不变的或者说与时间无关的。因此有:
        μ x(t)= const (3)
        r(t 1,t 2)=E[x l(t+τ)x l(t)]=r(τ)(4)
        式中: τ=t 1-t 2被称为时延。因此,对于平稳高斯过程{x l(t)}, 它的自相关函数或者它的功率谱密度函数(PSD):
        Sxx(ω)=∫ ∞-∞rxx(τ) e  -j ωτ d τ(5)
        足以确定它的性质[7]
        另一方面,如果 {x l(t)}是非平稳的,它的μ x(t)r(t 1,t 2) 就是时变的或者说和时间相关的。这样它的PSD就应该放在时频域分析[8]
        由此可见,平稳性检验是任何信号处理前必不可少的一步,它决定了后续处理可以使用何种方法。
        1.2 替代数据
        替代数据的概念最初是由Theiler和其合作作者提出的[4],这种技术是用来产生一种所谓的替代数据”,这种替代数据是平稳的,同时保持了原数据的 一些相关的统计特性。
        Theiler在文献[4]中提出了一种具体的产生替代数据的方法。由这种方法产生的替代数据是平稳的,同时保持了原数据的二阶统计特性。具体地说,替代数据保持了原数据功率谱的幅度值不变。
        根据Wiener-Khintchin理论,信号的功率谱等于其傅里叶变换的幅值平方。因此保持信号的功率谱幅度值不变,就是保持其傅里叶变换的幅度值不变。因此,假设原数据为 x(t),它的傅里叶变换为X(f)=∫ e  -i2π tfx(t) d t。则替代数据s(t) :
         
        s(t)=∫ e  i2π tf|X(f)| e  i φ f d f
        (6)
        产生。其中, φ f是在 [-π,π] 上均匀分布的随机相位。这样就保证了s(t)x(t)有相同的傅里叶变换幅值。在下面的例子中也可以看到,这样产生的s(t) 也是平稳的。
        1.3 时频分布
        时频分布主要用于分析非平稳随机信号的功率谱。由于非平稳随机信号的功率谱是时变的,因此在原来功率谱的基础上再引入时间轴,成为时频分布(TFD)TFD可以显示出信号的功率谱随时间的变化情况。
        具体来说,根据文献[9]中的定义,信号 x(t)的时频分布Sx,K(t,f) 可以表示为:
         
        Sx,K(t,f)=1K∑Kk=1∫  +∞-∞x(s)h k(s-t) e  -i2π fs d s 2(7)
         
        式中: h k(t) k Hermite函数,定义式为:
        h k(t)=1k!2 k π  e  -t 2/2H k(t)(8)
        式中: H k(t) k Hermite多项式。
        1.4 平稳性检验
        平稳性可以体现在频谱随时间的波动上。具体来说,对于平稳信号,其频谱不随时间变化;而对于非平稳信号,其频谱会随时间改变。因此,可以通过比较不同时间点上频谱的相似程度来判断信号的平稳性。
        按照文献[4]中的检验方法,定义不同时间点上的频谱与频谱平均值的距离 c  (x) n :
         
        c  (x) n=κ(Sx,K(t n,•),n=1,2,…,N)
        (9)
        式中:符号“”表示求取平均。这里采用文献[10]中的距离定义:
        κ(G,H)=1+∫ log G(f)H(f) d f•
        ∫( G~(f)- H~(f)) log  G~(f) H~(f) d f(10)
         
        式中:符号“~”表示对应函数的归一化函数,例如  f~(x)=f(x)/ max (f(x))
        距离c  (x) n随时间的波动情况Θ 1可以被定义为c  (x) n 的方差,:
        Θ 1=1N∑Nn=1(c  (x) n-) 2(11)
        根据替代数据的定义,它是平稳的。将替代数据的 c  (x) n随时间的波动情况记作Θ 0。通过比较Θ 1Θ 0,可以确定原数据的平稳性。具体来说,Θ 0的概率密度函数记作f(Θ 0),选定适当的门限γ,f(Θ 1)
        2 用户界面生成
        2.1 Matlab中用户界面的生成
        Matlab为用户设计图形界面提供了一个高效、方便的集成环境。在Matlab,基本的图形对象主要包括坐标轴、控件、下拉菜单和内容菜单。用户可以通过这些对象设计出界面友好,功能强大,操作简单的图形用户界面。图形用户界面的生成主要分为以下几个步骤:
        (1) 规划所设计的图形用户界面,主要包括:确定需要哪些窗口,每个窗口怎样布局,窗口中的各个对象各有什么功能,对象之间如何配合工作,以及相应的异常处理;
        (2) Matlab提示行下输入GUIDE,载入用户界面开发环境;
        (3) 利用Layout Editor,完成用户面板以及界面的制作,并对相应的按钮及控件属性进行适当的设置;
        (4) Programme Editor中编辑各个对象的回调函数,实现各个对象的具体功能;
        (5) 利用Mfile 编译器生成客户端,完成随机数据仿真系统的设计。
        2.2 用户界面介绍
        本文所实现的用户界面主要包括两个窗口,分别是主窗口和数据生成窗口。由于Matlab对保存绘图区域有限制,因此设计时没有在窗口中设置固定的绘图区域。窗口只相当于一个命令菜单,所有的绘图将会以独立窗口的形式根据用户需求动态产生。这样便于用户对比和保存图片。下面对主要窗口分别加以介绍。
        2.2.1 主窗口介绍
        主窗口如图1所示。主窗口主要用于绘制原数据和替代数据的各种波形以及显示平稳性检验结果。
        1 正则化损伤识别matlab主窗口示意图
        其中,“Create / Open Original Data”按钮用来打开数据生成窗口。
        “View / Change Parameters”按钮用来查看或改变当前仿真参数,它在原始数据存在的情况下才有效。主要的仿真参数有:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。