本发明涉及模式识别领域,尤其涉及一种振动事件的模式识别方法。
背景技术:
国境线、铁路沿线、工业管道沿线、重要场所、住宅小区,到处都有着振动传感器的身影,已经在安防监控等领域得到了广泛的应用。如在铁路沿线防范中,可以发现潜在的安全隐患,使工作人员能提前防范;再如周界防范,可用于家庭、学校、住宅、重要机关、金融重地等场所,即时发现外界入侵;此外,在地震和海啸检测方面,振动传感器也得到了重要应用。但目前国内外已出现商用的周界入侵警戒系统,大都只能用于定位可能异常事件的位置,对入侵行为识别采用的方法通常是对振动信号的时间域和频谱域进行分析,但此方法对于识别复杂的振动事件而言有些单一,局限性较大。对入侵行为的识别率较低,即无法有效地区分干扰事件与真正入侵事件,导致不能准确获知入侵行为的方式,因而无法对入侵事件进行有效的管控和处置。
技术实现要素:
有鉴于此,本发明提供了一种振动事件的模式识别方法,该方法可应用于周界入侵警戒系统中对振动事件的智能识别分类,使得系统对振动事件的正确识别率提高,从而提供更加详细的报警信息,为加强周界入侵防范提供强有力的支持。
为了达到上述目的,本发明的技术方案为:一种振动事件的模式识别方法,包括如下步骤:
步骤一、通过振动传感器采集获取原始振动信号,原始振动信号中包含振动信号与非振动信号;并将原始振动信号中的振动信号分割出来。
步骤二、对振动信号进行去噪处理。
步骤三、对去噪后的振动信号进行特征提取,获得特征向量,包括三个方面特征:
特征A、在时频域上进行小波包分解,获得能量特征向量。
特征B、在进行倒频谱分析,提取倒频谱参数特征。
特征C、在时域上提取信号特征。
步骤四、建立识别模型,由二级分类器组成。
一级分类器是基于支持向量机SVM分类器,利用从振动信号中提取出的特征向量作为输入,将振动事件分为非入侵事件和入侵事件。
二级分类器是针对入侵事件,进行基于人工神经网络的识别,采用入侵事件样本及其人工分类结果作为人工神经网络的训练样本对该人工神经网络进行训练,则将入侵事件作为人工神经网络的输入,获得分类结果。
进一步地,还包括步骤五:通过人机交互机制,对二级分类器的分类结果进行判断,当出现分类结果错误后进行人工修订,修订结果存入数据库,当分类错误结果累计到一定数目后,重新训练二级分类器中的人工神经网络,更新分类器的神经网络参数。
进一步地,步骤一中,将原始振动信号中的振动信号分割出来采用的分割方法具体为:
步骤101:以设定长度的窗口为单位,将原始振动信号f(t)根据窗口长度划分为多段窗口信号x(t),t为时间变量;
计算每一段窗口信号中N个采样点的平均能量,对于平均能量大于自适应阈值value的窗口,则该窗口信号为备选振动片段s(t);如果两备选振动片段间隔范围在设定个数个窗口范围内,则将该两备选振动片段合并作为一个备选振动片段,否则,作为不同的备选振动片段;
阈值value的初始值为Max(N)×0.025,Max(N)代表窗口内N个采样点中的最大值;
步骤102:针对每个备选振动片段,如果备选振动片段长度小于一个阈值Length,则认为是噪声,将其舍弃;然后对备选振动片段进行小波分解,对分解后的信号进行滤波,得到滤波后重构信号;
步骤103:判断是否存在至少一个备选振动片段的重构信号满足预设振动信号标准,若存在,将重构信号满足预设振动信号要求的备选振动片段作为振动信号从原始振动信号中分割出来;若不存在,将阈值value增加一个增量Δ,重复步骤101至步骤103,直至分割出振动信号为止;其中增量Δ公式如下所示:
其中Mean为重构信号的均值。
进一步地,特征A的获取方法为:
对去噪后的振动信号做小波包分解,通过对一个设定尺度上各频带内的分解系数重构,在每个分解节点上构成新的时间序列,对这些时间序列分别做能量特征提取,获得能量特征向量。
进一步地,在特征A的获取方法中,对去噪后的振动信号进行三层小波包能量特征提取,具体方法为:
步骤301.对去噪后的振动信号进行三层小波包分解,获得分解树,以(i,j)表示第i层的第j个节点,每个节点对应一个小波包系数;
步骤303.将分解树中的每一个节点分别进行重构,得到对应每个节点的重构信号,每个小波包系统的权重为Wij,针对200Hz以下的分解频带的小波包系数赋予相对其它频带高的权重;
计算各频带信号的对数能量,其中节点(i,j)对应的频带信号的对数能量为Lij,有
式中,cij表示节点(i,j)对应的重构信号的离散值的幅值,n表示p(t)的采样点数,Δt为采样时间间隔;k为节点(i,j)对应的重构信号的采样点数;
则所有节点的对数能量组成能量特征向量。
进一步地,步骤二中采用小波阈值去噪算法。
进一步地,步骤三、对去噪后的振动信号进行特征提取,获得A、B和C三方面的特征组成的特征向量后,采用主成分分析法PCA降维。
有益效果:
1、本发明的目的是为了克服已有技术的缺陷,为了解决目前周界入侵警戒系统对入侵行为的识别率较低的问题,提出一种振动事件的模式识别方法,该方法可应用于周界入侵警戒系统中对振动事件的智能识别分类,使得系统对振动事件的正确识别率提高,从而提供更加详细的报警信息,为加强周界入侵防范提供强有力的支持。
2、本发明中在进行振动信号分割时,采用了自适应阈值的方法,能够使得分割更加精确。
3、振动信号来自各种不同的环境,外界环境如耕作、车辆、生活噪声、工厂噪声、水的流动等背景噪声非常复杂,采集到的信号中含有大量的噪声,对于在时域上提取出的振动信号,这些信号中有用的信息淹没在大量的噪声中。本发明中使用小波阈值去噪算法,能实现信号与噪声频带相互叠加情况下的去噪。
4、本发明在进行特征提取时,通过对原始信号数据进行变换,提取具有高度的代表性、典型性和稳定性的特征量,最终能有效地反映目标本质特征。另外,特征的维数直接关系后续分类的计算量和精度,所以特征提取后需要进行降维,使得最后得到的特征向量相互独立、正交。
本发明中建立的识别模型,具备自适应学习的能力,形成一个闭合反馈系统,该功能通过一个人机交互机制来实现,当出现分类错误后进行人工修订,修订结果将会存入数据库,当分类错误结果累计到一定数目后自适应学习模块将自动运行,重新训练神经网络,训练后将更新分类器的神经网络参数,从而提高下一次神经网络的事件识别率。
附图说明
图1为一种振动事件的模式识别方法的实现流程;
图2为自适应分割算法流程图;
图3为小波包三层分解树结构。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
实施例1、
本振动事件的模式识别方法是这样实现的:
一种振动事件的模式识别方法,其基本实施过程如图1所示:
步骤一、原始信号中振动与非振动信号的分割
当无振动事件发生情况下,振动传感器所采集的原始信号不含有振动信息。当振动事件发生时,采集的一段原始信号中会包含振动信号与非振动信号,二者交替出现,其中只有振动信号才是有用信息。因此,把振动信号从原始信号中切分出来,只让振动信号进入后续处理可以大大降低系统资源消耗、提高系统实时性。本发明中使用了希尔伯特变换求包络原理,进行振动信号增强与噪声抑制,从而达到简单、快速地对振动信号分割。
步骤二、振动信号的去噪
振动信号来自各种不同的环境,外界环境如耕作、车辆、生活噪声、工厂噪声、水的流动等背景噪声非常复杂,采集到的信号中含有大量的噪声,对于在时域上提取出的振动信号,这些信号中有用的信息淹没在大量的噪声中。本发明中使用小波阈值去噪算法,能实现信号与噪声频带相互叠加情况下的去噪。
小波变换具有一种“集中”的能力,它能将信号的能量集中到少数小波系数上;而白噪声在任何正交基上的变换仍然是白噪声,并且有着相同的幅度。相对来说,信号的小波系数值必然大于那些能量分散且幅值较小的噪声的小波系数值。选择一个合适的阈值,对小波系数进行阈值处理,就可以达到去除噪声而保留有用信号的目的。
步骤三、特征提取
特征提取就是对原始信号数据进行变换。通过变换,提取具有高度的代表性、典型性和稳定性的特征量,最终能有效地反映目标本质特征。另外,特征的维数直接关系后续分类的计算量和精度,所以特征提取后需要进行降维,使得最后得到的特征向量相互独立、正交。
本发明中对振动信号的特征提取结合了三个方面特征,一是在时频域上进行小波包时频分析提取时频特征;二是在进行倒频谱分析,提取倒频谱参数特征;三是在时域上提取了信号特征。最后,对以上三方面的特征向量进行了PCA(主成分分析)降维,获得了一组精炼的特征向量。
步骤四、建立识别模型
本发明中建立的识别模型,由二级分类器组成。一级分类器是基于SVM(支持向量机),利用从振动信号中提取出的特征向量作为输入,将振动事件分为非入侵事件和入侵事件;二级分类器是针对入侵事件,进行基于人工神经网络的识别,将入侵事件细分,例如挖掘、攀爬、凿墙等行为。
步骤五:自适应学习功能
为了使得二级识别模型是一个闭合反馈系统,模型具有自适应学习功能,该功能通过一个人机交互机制来实现,当出现分类错误后进行人工修订,修订结果将会存入数据库,当分类错误结果累计到一定数目后自适应学习模块将自动运行,重新训练神经网络,训练后将更新分类器的神经网络参数,从而提高下一次神经网络的事件识别率。
实施例、
1)信号分割
原始信号f(t)分割就是从一段原始信号中提取真正振动片段,作为后续处理对象。信号振动部分提取时需要注意三点:一要把振动信号片段切分出,否则会造成系统漏报;二是要切分完整,否则会丢失信号信息,影响后续识别;三是不能把非振动信号当作振动信号切分出来,否则造成系统误报。
对于信号分割,下面介绍一下用于本发明中的自适应分割算法,图2为自适应分割算法流程图,详细步骤如下:
步骤101:预设振动信号标准,对原始振动信号f(t)进行初步分析,t为时间变量;
步骤102:设置划分窗口,长度为N,(对原始信号进行初步分析,获取其中振动片段的大概长度,并以此来设定N值)以窗口为单位,将原始信号f(t)根据窗口长度划分为每一段信号x(t)。计算每一个窗口中N个采样点的平均能量。对于平均能量大于某一个阈值value的窗口(阈值value最初赋予一个初始值,通常为value=Max(N)×0.025经验值,Max(N)代表窗口N个采样点中的最大值),则认为是备选振动片段s(t)。然后,如果候选振动片段间隔范围在Windownum 个窗口范围内,则将其合并作为一个振动片段,否则,作为不同的振动片段。
步骤103:对于步骤102切分出的信号振动片段,如果其长度小于一个阈值Length,则认为是噪声,将其舍弃。
经分析,有用信号通常表现为低频信号或一些比较平稳的信号,而噪声信号则通常为高频信号,因此将备选振动片段s(t)进行小波分解,对分解后的低、高频信号进行滤波,得到滤波后重构信号q(t)。
步骤104:判断是否存在至少一个备选振动片段的重构信号满足预设振动信号标准,若存在,将重构信号满足预设振动信号要求的备选振动片段作为振动信号从原始振动信号中分割出来;若不存在,将阈值value增加一个增量Δ,重复步骤101至步骤105,直至分割出振动信号为止;其中增量Δ公式如下所示:
其中Mean(q(t))为q(t)的均值。
自适应阈值的方法能够使得分割更加精确
2)降噪
提取出的振动信号混杂着大量背景噪声,对于噪声与振动信号频带分离的情形,可以使用带通滤波器去除噪声。而对于当前噪声与信号频带相互重叠的情形下,本发明中采用的是小波阈值去噪的方法。
由于在小波变换过程中,信号与噪声表现出不同的分解特性,随着分解尺度的增加,信号对应的小波系数包含有信号的重要信息,其幅值较大,但数目较少,而噪声对应的小波系数是一致分布的,个数较多,但幅值较小。基于这一思想,首先对信号进行小波分解,一般的噪声信号多包含在具有较高频率的细节信号中,从而可利用阈值等方式对所分解的小波系数进行处理,然后对处理后的信号进行小波重构即可得到信号去噪的目的。
获得降噪后的信号p(t)
3)特征提取
由于振动信号的数据量比较大,为了有效地实现分类识别,首先需要特征提取,即对振动信号片段进行变换得到最能反映信号本质的特征。本发明中对振动信号的特征提取结合了三个方面特征,一是在时频域上采用改进的小波包能量特征提取方法;二是在进行倒频谱分析,提取倒频谱参数特征;三是在时域上提取了信号特征。这些特征向量从不同层面反映了振动信号的统计特征和时变特性,能够反映不同入侵事件的特征。
当分析有用振动入侵信号时,其输出信号能量的空间分布与正常系统输出相比会发生相应变化,即输出能量的改变包含着丰富的入侵特征信息。因此,如果从信号能量在各子空间中的分布来提取故障特征,即利用小波包变换在多层分解后的不同频带内分析信号,使本不明显的信号频率特征在不同分辨率的若干子空间中以显著的能量变化的形式表现出来,并与系统的正常输出相比较,提取出反映入侵行为的特征向量。
改进的小波包能量特征提取方法与传统的小波能量方法相比,首先考虑到每个分解频带上的小波系数所占的权重不一样。对于铁路上的振动信号而言,人为入侵事件的频率主要集中在200Hz以下,噪声多数集中在高频段。故对于200Hz以下的分解频带的小波系数赋予相对其它频带而言较高的权重。其次,考虑到小波包能量与时间轴的分布特性,因此计算的是分解频带信号在各时间段内的能量,并构成特征向量。详细步骤如下:
首先对振动信号做小波包分解,通过对某一尺度上各频带内的分解系数重构,在每个分解节点上构成新的时间序列,对这些时间序列分别做能量分析,提取反映信号的特征向量。以对信号进行三层小波包能量特征提取为例:
a.对振动信号q(t)进行降噪处理得到p(t)
b.对p(t)进行小波包分解,如图3所示。图中,每个子树的左节点代表分解的低频部分,右节点代表高频部分,(i,j)表示第i层的第j个节点,每个节点代表一定的信号特征,其中(0,0)节点代表原始信号p(t),p30代表小波分解节点(3,0)的重构信号,其它依次类推。
c.将上一步得到的8个小波包系数分别进行重构,权重为Wij,针对200Hz以下的分解频带的小波系数赋予相对其它频带而言较高的权重,共计8个。计算各频带信号的对数能量,设pij对应的能量系数为Lij,有
式中,cij表示节点(i,j)对应的重构信号的离散值的幅值,n表示p(t)的采样点数,Δt为采样时间间隔;k为节点(i,j)对应的重构信号的采样点数。
频谱是振动信号最主要的一个特征,对采集到的各种入侵振动信号进行声音回放后发现,人耳也可以区分出部分振动事件,所以特征提取可以从人耳的感觉方面考虑,倒频谱系数特征正是着眼于人耳的听觉特性。倒频谱系数特征提取步骤如下:
步骤l:将时域信号X(n)经过离散傅立叶变换(DFT)后得到线性频谱X(k)
步骤2:求线性频谱X(k)幅度的平方,获得其能量谱,然后通过一组Mel尺度的三角形滤波器。
步骤3:对所有滤波器输出取对数运算,再进一步进行离散余弦变换(DCT)
即可得倒频谱系数,共计24个。
这里L为滤波器个数,m(l)为第1个滤波器输出,N为时域信号X(n)傅立叶变换后点数,C(i)为第i个倒频谱系数,M为倒频谱系数个数。L取24,M取24。
时域特征提取步骤如下:
时域特征提取就是分析信号的组成和特征量,时域特征包括有量纲参数和无量纲参数,一共六个。本发明中,采用的有量纲参数包括峰值、均值、均方根值;无量纲参数包括波形指标、峰值指标、脉冲指标。对于离散的时序数据xi(i=1,2,…,n),以上参数的表达式如下所示
峰值Xmax=max|xi|
均值
均方根值
波形指标
峰值指标
脉冲指标
对振动信号采用以上的特征提取方法求出38维特征向量后,特征之间可能存在冗余,这不但会造成后续识别中运算量大,而且可能降低识别率。因此,需要对提取出的特征向量降维,去掉冗余数据。采用主成分分析法(PCA)来实现降维,例如前17个主成分累计贡献值超过99%,则降维后特征为17维,这将作为后续识别模型的输入。
4)建立识别模型
本发明中建立的识别模型,由二级分类器组成。一级分类器是基于SVM(支持向量机),利用从振动信号中提取出的特征向量作为输入,将振动事件分为非入侵事件和入侵事件;二级分类器是针对入侵事件,进行基于人工神经网络的识别,将入侵事件细分,例如挖掘、攀爬、凿墙等行为。
一级分类器用SVM(支持向量机)分类,确定是入侵事件还是非入侵事件,本发明中采用Libsvm对SVM模型进行训练,并基于训练出来的模型测试样品分类结果。Libsvm是台湾大学林智仁等人开发设计的一个简单、易用,且快速有效的SVM模式识别与回归的软件。
二级分类器是针对入侵事件,进行基于人工神经网络的识别,采用入侵事件样本及其人工分类结果作为人工神经网络的训练样本对该人工神经网络进行训练,则将入侵事件作为人工神经网络的输入,获得分类结果。
综上,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。