主要内容

signalFrequencyFeatureExtractor

简化信号频率特征提取

    描述

    signalFrequencyFeatureExtractor从信号中提取频域特征。您可以使用提取的功能来培训机器学习模型或深度学习网络。

    创建

    描述

    超临界流体= SignalFrequencyFeatureextractor.创建一个signalFrequencyFeatureExtractor具有默认属性值的对象。

    例子

    超临界流体= signalFrequencyFeatureExtractor (名称,价值属性的非默认属性值signalFrequencyFeatureExtractor对象。例如,SignalFrequencyFeatureextractor(Framesize = 30,FrameOverlaplength = 6)将信号划分为重叠的30样本帧并从每个帧中提取特征。

    属性

    展开全部

    主要特性

    一帧内的采样数,指定为正整数。该对象将信号分成指定长度的帧,并为每帧提取特征。如果没有指定框架,或者如果您指定框架当为空时,对象提取整个信号的特征。

    数据类型:|双倍的

    帧头开始之间的样本数,指定为正整数。帧速率确定帧起点之间的样本中的距离。如果您指定帧速率,则还必须指定框架.如果没有指定帧速率FrameOverlapLength,然后帧速率等于多少框架.你不能指定帧速率FrameOverlapLength同时。

    数据类型:|双倍的

    连续帧之间的重叠样本数,指定为正整数。FrameOverlapLength必须小于或等于帧大小。如果您指定FrameOverlapLength,则还必须指定框架.你不能指定FrameOverlapLength帧速率同时。

    数据类型:|双倍的

    输入采样率,以赫兹为单位指定为正标量。

    数据类型:|双倍的

    生成特性的格式,指定为“矩阵”“表”.这提取函数返回功能作为其中之一:

    • 矩阵-具有对应特征值列的矩阵。

    • 桌子-表,每个表变量对应一个特征值。

    数据类型:char|字符串

    处理不完整框架的规则,指定为“降低”“zeropad”.此规则适用于当前帧大小小于指定的帧大小框架财产。

    • 下降—丢弃不完整的帧,不要使用它来计算特征。

    • zeropad-零填充不完整的帧,并使用它来计算特征。

    数据类型:char|字符串

    提取的功能

    选择提取功率谱的平均频率,指定为真正的.如果您指定惯例如果是真的,对象提取功率谱的平均频率,并将其附加到返回的特征提取函数。

    数据类型:逻辑

    选择提取功率频谱的中值频率,指定为真正的.如果您指定中间频率对象提取功率谱的中值频率,并将其附加到返回的特征中提取函数。

    数据类型:逻辑

    选择平均频带电源的选项,指定为真正的.如果您指定带球为真,对象提取频带电源并将其附加到返回的功能提取函数。

    数据类型:逻辑

    选择99%占用带宽的选项,指定为真正的.如果您指定OccupiedBandwidth对象抽取99%占用的带宽并将其附加到属性返回的特性中提取函数。

    如果需要设置占用带宽提取的参数,请使用setExtractorParameters

    setExtractorParameters(超临界流体,“占领带宽”名称=值)

    占用带宽提取的可设置参数是:

    • 百分比—功率百分比,取值范围为正整数0One hundred.

    数据类型:逻辑

    选择提取3 dB(半功率)带宽,指定为真正的.如果您指定PowerbanWidth.为true时,对象提取3db带宽值并将其附加到由提取函数。

    设置半功率带宽提取的参数,请使用setExtractorParameters

    setExtractorParameters(超临界流体,“PowerBandwidth”名称=值)

    半功率带宽提取的可设置参数为:

    • 相对放大—相对振幅,指定为整数。

    数据类型:逻辑

    选择提取功率谱密度(PSD)估计,指定为真正的.如果您指定WelchPSD为真,对象使用Welch的方法提取PSD估计,并将其附加到由返回的功能提取函数。

    要设置Welch的PSD估计参数,请使用setExtractorParameters

    setExtractorParameters(超临界流体,“WelchPSD”名称=值)

    Welch的PSD估算提取的可设置参数是:

    • FFTLength—DFT点的个数,指定为正整数。

    • FrequencyVector-估计PSD的频率,指定为至少有两个元素的向量。您可以指定FrequencyVector只有当FFTLength没有指定。

    • overtaplenth- 重叠样本的数量,指定为正整数。

    • 窗口- 窗口,指定为标量或向量。

    数据类型:逻辑

    选择提取峰值光谱振幅,指定为真正的.如果您指定PeakAmplitude如为真,对象提取计算Welch PSD估计的峰值振幅,并将它们附加到返回的特征提取函数。

    要设置峰值振幅提取的参数,请使用setExtractorParameters

    setExtractorParameters(超临界流体,“PeakAmplitude”名称=值)

    峰值振幅提取的可设置参数为:

    • PeakType—峰值类型,指定为“最小值”“马克西米”

    • MaxNumExtrema—最大值,指定为正整数标量。

    • MinProminence最小日珥,指定为正标量。该对象只返回突出度至少为指定值的峰值。

    • 撒尿- 峰之间的最小分离,指定为正标量。

    • FlatSelection-平坦区域指示符,指定为其中之一:

      • “中央”-仅表示平坦区域的中心元素为峰值。

      • “第一”- 仅指示平坦区域的第一元素作为峰值。

      • “最后的”-仅表示平坦区域的最后一个元素为峰值。

      • “所有”-表示一个平坦区域的所有元素为峰值。

    数据类型:逻辑

    选择提取谱峰位置,指定为真正的.如果您指定PeakLocation为真,对象提取计算的Welch PSD估计的峰值位置,并将它们附加到所返回的功能提取函数。

    设置峰值位置提取的参数,使用setExtractorParameters

    setExtractorParameters(超临界流体,“峰值位置”名称=值)

    峰值位置提取的可设置参数是:

    • PeakType—峰值类型,指定为“最小值”“马克西米”

    • MaxNumExtrema—最大值,指定为正整数标量。

    • MinProminence最小日珥,指定为正标量。这setExtractorParameters函数只返回突出度至少为指定值的峰值。

    • 撒尿- 峰之间的最小分离,指定为正标量。

    • FlatSelection-平坦区域指示符,指定为其中之一:

      • “中央”-仅表示平坦区域的中心元素为峰值。

      • “第一”- 仅指示平坦区域的第一元素作为峰值。

      • “最后的”-仅表示平坦区域的最后一个元素为峰值。

      • “所有”-表示一个平坦区域的所有元素为峰值。

    数据类型:逻辑

    请注意

    为了计算频率特征,signalFrequencyFeatureExtractor首先利用Welch方法估计输入时域信号的PSD。该对象使用计算得到的Welch PSD和相应的频率向量来计算指定的特征。属性配置计算的Welch PSD估计setExtractorParameters函数。

    对象的功能

    提取 提取时域或频域特征
    generatematlabfunction. 创建MATLAB函数与C/ c++兼容的代码生成
    GetExtractorParameters. 获取特征提取器对象的当前参数值
    setExtractorParameters 为特征提取器对象设置非默认值

    例子

    全部收缩

    在1024kHz上生成1024个啁啾样品。啁啾具有50 kHz的初始频率,在采样结束时达到100 kHz。添加白色高斯噪声,使得信噪比为40 dB。绘制功率谱密度(PSD)并注释平均频率。

    nSamp = 1024;Fs = 1024年e3;信噪比= 40;t = (0: nSamp-1) / Fs;x =唧唧声(t, 50 e3, nSamp / Fs 100 e3);x = x + randn(大小(x)) *性病(x) / db2mag(信噪比);meanfreq (x, Fs)

    图包含轴对象。具有标题平均频率估计的轴对象:75.032 kHz包含2个类型的2个物体。

    ans = 7.5032 e + 04

    创建一个signalFrequencyFeatureExtractor对象提取信号的平均频率、99%占用带宽和3db带宽。

    超临界流体= signalFrequencyFeatureExtractor (SampleRate = Fs, MeanFrequency = true, OccupiedBandwidth = true, PowerBandwidth = true)
    sfe = signalfrequency featureextractor

    调用提取提取指定功能的功能。

    [功能,信息] =提取物(SFE,x)
    特点=1×3104×7.2252 4.3783 3.7773
    信息=结构与字段:vianfrequency:1占领带宽:2 PowerBandWidth:3

    要查看表中提取的特性,请修改FeatureFormat对象的属性。

    超临界流体。FeatureFormat =“表”;=特征提取(超临界流体,x)
    特点=表1×5FrameStartTime Framendtime的意小职业占用宽度Width Wirt带宽浏览_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

    你可以使用GetExtractorParameters.要查看用于计算指定功能的参数的功能。占用带宽默认测量包含输入信号的总功率的99%的带宽。使用setExtractorParameters函数更改百分比为95%,并再次提取指定的特征。

    params = getExtractorParameters(超临界流体,'占领带宽'
    params =结构与字段:百分比: []
    参数个数。比例= 95;setExtractorParameters(超临界流体,'占领带宽'feature 2 = extract(sFE,x)
    features2 =表1×5FrameStartTime FrameEndTime MeanFrequency OccupiedBandwidth PowerBandwidth  ______________ ____________ _____________ _________________ ______________ 1 1024 72252 39840 37773

    扩展功能

    C / C ++代码生成
    使用MATLAB®Coder™生成C和C ++代码。

    介绍在R2021B.