上一篇文章中我们讲到了有量纲的特征值含义。(Mr.括号:时域分析——有量纲特征值含义一网打尽)然而在信号表征时,有量纲指标虽然对信号特征比较敏感,但也会因工作条件(如负载)的变化而变化,并极易受环境干扰的影响,具有表现不够稳定的缺陷。相比而言,无量纲指标能够排除这些扰动因素的影响,因而被广泛应用于特征提取的领域当中。
无量纲指标主要包括峰值因子,脉冲因子,裕度因子,峭度因子,波形因子以及峭度因子和偏度因子等。
1.峰值因子
峰值因子是信号峰值与有效值(RMS)的比值,用来检测信号中是否存在冲击的统计指标。峰值是一个时不稳参数,不同的时刻变动很大。由于峰值的稳定性不好,对冲击的敏感度也较差,因此在故障诊断中,该指标逐渐被峭度指标取代。
2.脉冲因子
脉冲因子是信号峰值与整流平均值(绝对值的平均值)的比值。脉冲因子和峰值因子的区别在分母上,由于对于同一组数据整流平均值小于有效值,所以脉冲因子大于峰值因子。脉冲因子也同样用以检测信号中是否存在冲击。
3.裕度因子
裕度因子是信号峰值与方根幅值的比值。与峰值因子类似,方根幅值和均方根值(有效值)是对应的,均方根的公式是信号平方和的平均值的算术平方根,方根幅值是算术平方根的平均值的平方(有点绕)。裕度因子可以用于检测机械设备的磨损情况。
4.波形因子
波型因子是有效值(RMS)与整流平均值的比值。在电子领域其物理含义可以理解为直流电流相对于等功率的交流电流的比值,其值大于等于1。说到这儿也许你已经发现了,波形因子=脉冲因子/峰值因子。
5.峭度因子
峭度因子是表示波形平缓程度的,用于描述变量的分布。正态分布的峭度等于3,峭度小于3时分布的曲线会较“平”,大于3时分布的曲线较“陡”。
6.偏度因子
偏度因子:偏度也叫偏斜度、偏态。偏度和峭度是有一定的相关性的,峭度因子是四阶中心矩和标准差的四次方的比值;偏度因子是三阶中心矩和标准差的三次方的比值。偏度与峭度相同,描述的是分布。物理含义简单理解的话,对于单峰分布,负偏度代表分布图线的“头”在右侧,“尾”在左侧;正偏度反之。参看下图:
综合来说:峰值因子、脉冲因子和裕度因子的物理意义是相似的,峰值因子和脉冲因子都是用来检测信号中有无冲击的指标,裕度因子常用来检测机械设备的磨损状况。峭度因子也是对振动信号冲击特性的反应,不过公式的表达形式上与前三个差异较大。
在评价这些指标的性能时,通常使用敏感性与稳定性来衡量。脉冲指标、峰值指标和峭度都对冲击类故障比较敏感,特别是当故障早期发生时,它们有明显的增加;但上升到一定程度后,随故障的逐渐发展,反而会下降,表明它们对早期故障有较高的敏感性,但稳定性不好。有效值的稳定性较好,但对早期故障信号不敏感。为了取得较好的效果,常常会将它们同时应用。
7. 特征提取的MATLAB代码实现
笔者最近在做这样一件事情。由于搞科研写论文时,对特征提取的需要往往是集中性的、多种类的、需求各异的,所以我把常用的特征值指标:
有量纲特征值8个——最大值、最小值、峰峰值、均值、方差、标准差、均方值、均方根值(RMS)
无量纲特征值6个——峭度、偏度、波形因子、峰值因子、脉冲因子、裕度因子
频域特征值5个——重心频率、均方频率、均方根频率、频率方差、频率标准差 (熵相关特征若干——这个后续补充。还会有其他常用、不常用的特征指标)
以上19种全都集中到一个封装函数里,实现一行代码完成特征提取。
比如提取数据“波形因子”就可以像这样写:
fea = genFeature(data,{'waveformF'}) %对data数据求波形因子
如果提取数据“最大值、最小值、峰峰值、均值、方差、标准差、均方值...”这全部19种特征,就可以这样写:
fea =genFeature(data,{'max','min','mean','peak','arv','var','std','kurtosis','skewness', 'rms','waveformF','peakF','impulseF','clearanceF'})%对data数据求波形因子
也就是说需要提取哪个特征,在函数中直接指定就可以了。输出的fea变量里就会得到相应的这些特征值,顺序也是与输入的排序保持一致的。
这个函数的介绍如下:
function fea = genFeature(data,fs,featureNamesCell)
% 时域信号特征提取
% 输入:
% data:待特征提取的时域信号
% fs:采样频率,如果不提取频域特征,fs值可以设置为1
% featureNamesCell:拟进行特征提取的特征名称,该变量为cell类型,其中包含的特征名称为字符串,特征名称需要在下边列表中:
% 目前支持的特征(2021.10.29):
% max :最大值
% min :最小值
% mean :平均值
% peak :峰峰值
% arv :整流平均值
% var :方差
% std :标准差
% kurtosis :峭度
% skewness :偏度
% rms :均方根
% waveformF :波形因子
% peakF :峰值因子
% impulseF :脉冲因子
% clearanceF:裕度因子
% FC:重心频率
% MSF:均方频率
% RMSF:均方根频率
% VF:频率方差
% RVF:频率标准差
%
% 输出:
% fea:数据data的特征值数组,其特征值顺序与featureNamesCell一一对应
需要上边这个函数文件以及测试代码的同学,可以在下述链接中获取:
这个函数会持续更新,有哪些想要加进去的特征指标,同学们可以在评论区留言,笔者会考虑纳入到这个“特征提取指标全家桶”中。
欢迎关注我的公众号“看海的城堡”,微信号为“khscience”,会有更多有趣的东西分享。
参考: