主要内容

自定义标签功能

您可以使用信号贴标器执行自动标记任务。除了高峰贴标器, 这自动化价值画廊上的画廊标签选项卡包含可自动标记信号的功能。

自动化价值库

创建自定义标签功能

每个自定义自动标签函数中的第一行由表单的定义语句组成

功能[labelvals,labellocs] = fx(x,t,parentlabelval,parentlabelloc,varargin)
定义语句包含函数名称和一组强制性和可选参数:

  • 第一个输入参数,X,是输入信号。写作功能时,期待X作为一个矩阵,其中每列包含对应于频道的数据。如果频道具有不同的长度,则期望X是列向量的单元阵列。

  • 第二个输入参数,T.,存储时间值。写作功能时,期待T.作为一个矩阵,其中每列包含与频道对应的时间信息。如果频道具有不同的长度,则期望T.是列向量的单元阵列。

    笔记

    • 对于单通道成员,自定义自动标签功能将数据和时间值作为双精度向量获取。

    • 对于多通道成员,自定义自动标签功能将数据和时间值作为矩阵或单元格阵列获取。

    • 自定义自动标签功能将成员的所有通道作为输入获取,但它们不必全部操作。您可以选择哪些频道您希望函数操作。

  • 第三个输入参数,parentlabelval.,是与输出sublabel关联的父标记值,并包含一个数字,逻辑或字符串标量。此参数仅用于自动化Sublabels标签的函数。如果函数用于父标签,期待parentlabelval.是空的。

  • 第四个输入论点,parentLabelloc.,包含:

    • 当父标签是属性时的空向量

    • 当父标签是ROI时,感兴趣区域的两个元素数字行向量(ROI)限制

    • 表示父标签是一个点时的点位置的数字标量

    此参数仅用于自动化Sublabels标签的函数。如果函数用于父标签,期待parentLabelloc.是空的。

    笔记

    • 对于父标签,Autolabeling函数在每个选定的成员上运行。

    • 对于Sublabels,Autolabeling函数一次在一个父标签实例上运行每个选定的成员。

  • varargin.指定其他输入参数。如果您没有其他输入参数,则可以省略varargin.。在单击时显示的对话框中输入附加参数作为有序的逗号分隔列表自动标签按钮。

  • 第一个输出参数,标签,包含标签值。标签一定是:

    • 输出标签是属性时的数字,逻辑或字符串标量

    • 当输出标签为ROI或点时,具有数字,逻辑或字符串值的列向量

  • 第二个输出参数,Labellocs.,包含标签位置。Labellocs.一定是:

    • 输出标签为属性时的空向量

    • 当输出标签是ROI时,ROI的两列矩阵限制

    • 输出标签为点时点位置的列向量

  • 要实现算法,可以使用来自MATLAB的任何功能®或从系统中安装的任何工具箱。

有关更多详细信息,请参阅使用深度学习网络标记QRS复合物和ECG信号的R峰值使用外部API标记音频信号中的口头单词

示例:指平均值值

此函数计算信号的平均RMS值,并将值标记为数字属性。如果成员具有多个通道,则该函数计算每个通道的RMS值并平均值。通道可以具有不同的长度。

功能[labelvals,labellocs] = valinrms(x,t,parentlabelval,parentlabelloc,varargin)%标签信号,其平均rms值作为属性如果Iscell(x)labelvals =均值(Cellfun(@ rms,x))别的labelvals =均值(rms(x));结尾Labellocs = [];结尾

示例:过零点

此功能发现信号的过零点并将其标记为“崛起”积极过渡和“堕落”对于负面的过渡。

功能[labelvals,labellocs] =转换(x,t,parentlabelval,parentlabelloc,varargin)%标记零交叉作为“上升”或“落下”nchan =尺寸(x,2);tt = t(:,1);labelvals = cell(nchan,1);Labellocs = Cell(Nchan,1);为了kj = 1:nchan [〜,ltup,utup] = risetime(x(:,kj),tt,'statelevels',0.1 * [ -  1 1]);UPS =(UTUP + LTUP)/ 2;UPC = REPMAT(“崛起”,长度(UPS),1);[〜,ltdn,utdn] =秋季(x(:,kj),tt,'statelevels',0.1 * [ -  1 1]);DNS =(UTDN + LTDN)/ 2;dnc = repmat(“堕落”,长度(DNS),1);labelvals {kj} = [UPC; DNC];Labellocs {kj} = [UPS; DNS];结尾labelvals = cat(1,labelvals {:});Labellocs = Cell2mat(Labellocs);结尾

示例:MultiShannel标签

该逻辑函数标签为TRUE MULTICKINEL信号的那些区域,其中:

  • 第一通道的幅度为负。

  • 第三频道的幅度大于用户指定的值,MX.。如果未指定,MX.默认为0.1。

功能[LabelVals,Labellocs] = Gryalthan(x,t,parentlabelval,parentlabelloc,varargin)具有负第一通道的%标签区域和大于给定值的第三通道如果nargin <5 mx = 0.1;别的mx = varargin {1};结尾XR = X(:,1);xx = x(:,3);tt = t(:,1);ss = signalmask(xr <0&xx> = mx);x = Roimask(SS);Labellocs = tt(x.roilimits);labelvals =逻辑(double(x.value));结尾

将自定义标记函数添加到库中

要添加自定义自动标签功能,请单击旁边的箭头自动化价值画廊然后选择添加自定义功能。在对话框中,指定这些字段:

  • 名称- 指定要添加的函数的名称。

  • 描述- 添加函数的简短描述并描述了可选的输入参数。

  • 标签类型- 指定函数生成的标签类型。选择属性(默认),ROI., 或者观点

    笔记

    基于这一点标签类型您指定,信号贴标器将功能放在相应的类别中自动化价值画廊。选择标签定义时,库仅启用可与该定义类型一起使用的函数。

如果您已经编写了函数,则该函数位于当前文件夹或MATLAB路径中,信号贴标器在画廊中包含它。如果您还没有写入该功能,信号贴标器在编辑器中打开一个空白模板。

在库中管理自定义标记函数

请随时使用函数,编辑功能描述或使用删除功能管理自定义功能选项在自动化价值画廊。

笔记

使用管理自定义功能选项仅更改显示中显示的功能描述自动化价值画廊。如果要更改包含该函数的文件中的描述,则必须编辑文件。

也可以看看

应用

职能

相关例子

更多关于