主要内容

createFeatureData

创建功能表和响应向量或矩阵

自从R2022a

    描述

    例子

    ftdata= createFeatureData (lss)创建一个表的特征数据ftdata与功能对应的所有属性和区域(ROI)功能标签在输入信号设置的标签。

    例子

    (ftdata,respdata)= createFeatureData (lss,名称=值)返回一个表的回答respdata在每个变量对应于指定的响应的数据标签。您可以指定一个函数添加的标签名称列表作为回应respdata和其他可选的输入名称参数。例如,反应=“物种”指定物种作为响应标签。

    请注意

    所有指定的标签数据标签名称必须是垂直和水平concatenable。

    例子

    全部折叠

    创建一组标签定义。

    • 定义三个数值属性功能标签,对应于平均频率,频带能量和峰值振幅。

    • 定义两个数字的(ROI)功能标签,对应于均值和信噪比(信噪比)。

    • 这些类别的定义一个类别属性标签:一个,B,C

    创建一个包含所有的标记信号设置6个标签定义。

    ld1 = signalLabelDefinition (“MeanFrequency”LabelType =“attributeFeature”LabelDataType =“数字”);ld2 = signalLabelDefinition (“BandPower”LabelType =“attributeFeature”LabelDataType =“数字”);ld3 = signalLabelDefinition (“PeakAmplitude”LabelType =“attributeFeature”LabelDataType =“数字”);ld4 = signalLabelDefinition (“的意思是”LabelType =“roiFeature”LabelDataType =“数字”,FrameSize = 500, FrameOverlapLength = 250);ld5 = signalLabelDefinition (“信噪比”LabelType =“roiFeature”LabelDataType =“数字”,FrameSize = 500, FrameOverlapLength = 250);catValues = [“一个”“B”“C”];ld6 = signalLabelDefinition (“类”LabelType =“属性”LabelDataType =“分类”,类别= catValues);lss = labeledSignalSet ([], [ld1、ld2 ld3, ld4, ld5, ld6]);

    创建一个signalFrequencyFeatureExtractor对象提取平均频率、频带能量和峰值振幅值在整个信号。创建一个signalTimeFeatureExtractor对象从信号中提取的意思和信噪比的值帧长500样品,有250个样本的重叠。每个器对象的输出格式设置为一个表。

    H = signalFrequencyFeatureExtractor ();H。FeatureFormat =“表”;H。MeanFrequency = true;H。B和Power = true; H.PeakAmplitude= true; H.setExtractorParameters(“PeakAmplitude”MaxNumExtrema = 5) G = signalTimeFeatureExtractor ();G。FeatureFormat =“表”;G。FrameSize = 500;G。FrameOverlapLength = 250;G。意味着= true;G。信噪比= true;

    创建一个信号,x,由几个具有不同频率的正弦信号。十迭代,添加随机噪声x生成xn,并添加这个新的信号作为成员lss。提取指定的特性xn并设置标签中的标签值信号设置的值等于提取的特征。显示标签中包含的信号设置的标签。

    t = (1:1000) / 1 e3;x =罪(2 *π* 10 * t) +罪(2 *π* 100 * t) +罪(2 *π* 200 * t) +罪(2 *π* 350 * t) +罪(2 *π* 450 * t);idx = 1:10 xn = x + randn(大小(t));p =提取(H, xn);同时(lss xn);setLabelValue (lss idx,“MeanFrequency”,p.MeanFrequency);setLabelValue (lss idx,“BandPower”,p.BandPower);setLabelValue (lss idx,“PeakAmplitude”,p.PeakAmplitude);q =提取(G, xn);roi q = {: [1, 2]};setLabelValue (lss idx,“的意思是”roi, q.Mean);setLabelValue (lss idx,“信噪比”roi, q.SNR);setLabelValue (lss idx,“类”catValues (randi ([1])));结束LBLS = lss.Labels
    LBLS =10×6表MeanFrequency BandPower PeakAmplitude意味着信噪比类_________________ __________ ___________________________________________ ___________ ___________ _____成员{1}{[1.4789]}{[3.4261]}{[9.0290 11.1191 11.4532 12.0216 13.2064]}{3 x2表}{2}{3 x2表}C成员{[1.4040]}{[3.4643]}{[11.3509 9.5855 12.0983 11.9682 12.5628]}{3 x2表}{3}{3 x2表}C成员{[1.4642]}{[3.5901]}{[10.9591 10.3477 14.7581 11.1874 12.6932]}{3 x2表}{3 x2表}一员{4}{[1.3684]}{[3.5572]}{[12.9701 11.7092 13.0650 9.5547 12.5720]}{3 x2表}{5}{}3 x2表B成员{[1.4672]}{[3.4403]}{[10.7361 9.3758 13.8124 10.7749 13.3737]}{3 x2表}{3 x2表}一员{6}{[1.4241]}{[3.5225]}{[10.3302 11.5979 11.6696 11.2745 12.2777]}{3 x2表}}{3 x2表C成员{7}{[1.4070]}{[3.3863]}{[10.5294 11.4855 12.5187 9.8425 12.6257]}{3 x2表}{3 x2表}一员{8}{[1.4529]}{[3.4818]}{[9.8225 10.6672 13.3820 10.7357 12.6096]}{3 x2表}}{3 x2表B成员{9}{[1.4181]}{[3.5552]}{[12.4350 11.5933 12.0069 11.1148 12.9654]}{3 x2表}}{3 x2表B成员{10}{[1.4198]}{[3.5516]}{[11.3011 10.5433 13.6415 11.5888 13.1569]}{3 x2表}}{3 x2表C

    创建一个表,其中包含功能标签数据对应的所有特性lss。的表中数据不包括因为不是一个特性标签。

    ConvertFeaturesToRows = true FTs = createFeatureData (lss)
    FTs =10×5表MeanFrequency BandPower PeakAmplitude意味着信噪比_________________ _____ ______________________________________________ _____________________________________ _____________________________ 1.4789 3.4261 9.029 11.119 11.453 12.022 13.206 -0.021921 -0.04995 -0.043343 -4.7744 -6.8315 -5.7233 1.404 3.4643 11.351 9.5855 12.098 11.968 12.563 0.058634 0.037199 0.014408 -6.6994 -4.8069 -6.049 1.4642 3.5901 10.959 10.348 14.758 11.187 12.693 0.023716 0.022439 0.052243 -4.4364 -5.5243 -5.9047 1.3684 3.5572 12.97 11.709 13.065 9.5547 12.572 0.04709 0.04225 0.0099387 -5.2615 -5.9997 -4.9845 1.4672 3.4403 10.736 9.3758 13.812 10.775 13.374 0.014723 0.023537 0.044529 -4.5713 -5.9291 -5.9603 1.4241 3.5225 10.33 11.598 11.67 11.274 12.278 -0.032001 -0.050336 -0.081017 -5.1732 -5.8918 -6.9184 1.407 3.3863 10.529 11.486 12.519 9.8425 12.626 0.016776 0.029752 -0.016017 -6.5449 -3.5879 -5.754 1.4529 3.4818 9.8225 10.667 13.382 10.736 12.61 -0.003218 0.0095321 0.017105 -5.8408 -6.5075 -6.0452 1.4181 3.5552 12.435 11.593 12.007 11.115 12.965 -0.092008 -0.055926 -0.037221 -6.9075 -6.6543 -5.6822 1.4198 3.5516 11.301 10.543 13.641 11.589 13.157 0.066601 0.011827 -0.0096364 -6.3197 -5.7298 -7.0011

    创建另一个表只包含特性数据对应的属性特性标签。使用getLabelNames函数来指定标签名称对应的属性特征。指定作为响应标签获得第二个输出表包含每个成员属于类别。

    [attFTs R] = createFeatureData (lss特性= getLabelNames (lss LabelType =“attributeFeature”),ConvertFeaturesToRows = true,反应=“类”)
    attFTs =10×3表MeanFrequency BandPower PeakAmplitude _________________ _____ ______________________________________________ 1.4789 3.4261 9.029 11.119 11.453 12.022 13.206 1.404 3.4643 11.351 9.5855 12.098 11.968 12.563 1.4642 3.5901 10.959 10.348 14.758 11.187 12.693 1.3684 3.5572 12.97 11.709 13.065 9.5547 12.572 1.4672 3.4403 10.736 9.3758 13.812 10.775 13.374 1.4241 3.5225 10.33 11.598 11.67 11.274 12.278 1.407 3.3863 10.529 11.486 12.519 9.8425 12.626 1.4529 3.4818 9.8225 10.667 13.382 10.736 12.61 1.4181 3.5552 12.435 11.593 12.007 11.115 12.965 1.4198 3.5516 11.301 10.543 13.641 11.589 13.157
    R =10×1表类_____ C C C A B C

    您可以使用getLabelIndices函数来指定索引标签您想要包含在功能表。创建一个表只包含特性数据对应的ROI特征标签。使用ExpandResponseLabels参数对每个成员重复反应标签。

    [roiFTs R] = createFeatureData (lss特性= getLabelIndices (lss LabelType =“roiFeature”),反应=“类”ExpandResponseLabels = true)
    roiFTs =30×2表平均信噪比____ ____ -0.021921 -4.7744 -0.04995 -6.8315 -0.043343 -5.7233 0.058634 -6.6994 0.037199 -4.8069 0.014408 -6.049 0.023716 -4.4364 0.022439 -5.5243 0.052243 -5.9047 0.04709 -5.2615 0.04225 -5.9997 0.0099387 -4.9845 0.014723 -4.5713 0.023537 -5.9291 0.044529 -5.9603 -0.032001 -5.1732⋮
    R =30×1表类_____ C C C C C C一百一十一B B B一百一十一C⋮

    加载一个标记信号设置包含鲸鱼歌曲的录音。

    负载鲸鱼lss
    lss = labeledSignalSet属性:来源:{2 x1细胞}NumMembers: 2 TimeInformation:“sampleRate”sampleRate: 4000标签:[2 x3表)描述:”描述波歌地区“使用labelDefinitionsHierarchy查看标签和sublabels的列表。使用setLabelValue添加数据集。

    检索和情节中包含的信号lss。鲸歌由四个声音。

    k = 1: lss。NumMembers[年代,信息]= getSignal (lss k);fs = lss.SampleRate;t = 0:长度(s) 1 / f;次要情节(2,1,k)情节(t, s)结束

    图包含2轴对象。坐标轴对象1包含一个类型的对象。坐标轴对象2包含一个类型的对象。

    添加数字的标签定义(ROI)特性lss你将使用指定的形状系数和高峰值信号。指定一个框架大小等于信号长度的25%,所以,每个区域对应一个不同的声音。

    创建一个signalTimeFeatureExtractor对象提取形状系数和峰值的ROI。设置roiFeature标签中的标签值信号提取特征的值。

    sld1 = signalLabelDefinition (“ShapeROI”LabelType =“roiFeature”,LabelDataType =“数字”,FrameSize =(0.25 *长度(s)) 1);sld2 = signalLabelDefinition (“PeakROI”LabelType =“roiFeature”,LabelDataType =“数字”,FrameSize =(0.25 *长度(s)) 1);addLabelDefinitions (lss [sld1 sld2]);= signalTimeFeatureExtractor医药(SampleRate = fs, FrameSize =圆(0.25 *长度(s)) 1);超临界流体。FeatureFormat =“表”;超临界流体。ShapeFactor = true;超临界流体。PeakValue = true;我= 1:lss。NumMembers团体= getSignal (lss);fts =提取(超临界流体、团体);setLabelValue (lss,我,“ShapeROI”,罚球。FrameStartTime fts.FrameEndTime], fts.ShapeFactor);setLabelValue (lss,我,“PeakROI”,罚球。FrameStartTime fts.FrameEndTime], fts.PeakValue);结束

    使用getLabelDefinitions函数来获得相对应的标签名称roiFeature标签lss。创建一个矩阵的数据对应的ROI特征标签标记信号集合,其中每一列是一个特性。

    lbldefs = getLabelDefinitions (lss LabelType =“roiFeature”);lbldefs (:) . name
    ans = " ShapeROI "
    ans = " PeakROI "
    ftdata = createFeatureData (lss特性= [lbldefs (1)。名字lbldefs (2) . Name], OutputFormat =“矩阵”)
    ftdata =8×21.6908 0.2694 1.7483 0.2850 1.6517 0.2421 1.5930 0.2264 1.4750 0.1599 1.8366 0.3791 1.3921 0.1612 1.6176 0.2633

    输入参数

    全部折叠

    标记信号设置,指定为一个labeledSignalSet对象。获得可用的功能标签定义列表lss,可以使用getLabelDefinitionsgetLabelNames功能和指定“attributeFeature”“roiFeature”作为标签类型。

    名称-值参数

    指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

    例子:= getLabelDefinitions createFeatureData (lss特性(lss LabelType =“roiFeature FrameSize = 60), OutputFormat =“矩阵”)返回一个矩阵的特性对应的标签(ROI)特性的输入标记信号集60帧的大小。

    标签名称对应功能列表,指定为一个字符串向量包含标签名称或包含指数的数值向量指向标签定义lss。函数添加指定的标签名称功能ftdata。你可以得到所有标签的列表定义,标签名称,或标签定义指标lss使用getLabelDefinitions,getLabelNames,getLabelIndices,分别。如果你不指定特性,那么函数使用可用的属性和ROI特征标签列表lss

    例子:特点= getLabelNames (lss LabelType =“点”)指定的标签名称对应点标签在输入信号设置的标签。

    数据类型:|逻辑|字符串|分类

    标签列表名称对应的反应,指定为一个字符串向量包含标签名称或包含指数的数值向量指向标签定义lss。指定的函数添加标签名称作为回应respdata。你不能指定特性标签作为响应。如果你不指定反应,然后respdata是空的。

    例子:反应= [1 5 7 12]指定响应提供指标的对应标签定义输入信号设置的标签。

    请注意

    特性反应必须包含不同的标签名称或索引。

    数据类型:|逻辑|字符串|分类

    输出数据格式,指定为“表”“矩阵”。如果您指定OutputFormat作为“表”,那么函数返回ftdatarespdata表。如果您指定OutputFormat作为“矩阵”,那么函数返回ftdatarespdata矩阵。

    数据类型:字符|字符串

    选择应用标量扩张反应标签,指定为逻辑标量。这个论点适用于相应的功能包含多个行。例如,您可以设置这个参数为true时计算框架的特性和想分配相同的反应标签每一帧。当ExpandResponseLabels设置为false时,每个成员必须匹配响应标签值的数量特征的数量每成员行。

    数据类型:逻辑

    选择功能包含多个行转换为一个行向量,指定为一个逻辑标量。如果您指定ConvertFeaturesToRows是真实的,那么相对应的函数转换特性列向量或矩阵行向量。所有功能时使用这个论点没有相同数量的行。

    数据类型:逻辑

    输出参数

    全部折叠

    特性数据,返回一个表或矩阵。默认情况下,函数返回ftdata作为一个表。输出特性数据矩阵,指定OutputFormat作为“矩阵”

    响应数据,返回一个表或矩阵。默认情况下,函数返回respdata作为一个表。输出响应数据矩阵,指定OutputFormat作为“矩阵”

    版本历史

    介绍了R2022a