Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

signalLabelDefinition

Cree la definición de etiqueta de señal

Descripción

Se utiliza para crear definiciones de etiquetas de señal para conjuntos de datos.signalLabelDefinition Las etiquetas pueden corresponder a atributos, regiones o puntos de interés. Utilice un vector de objetos para crear un.signalLabelDefinitionlabeledSignalSet

Creación

Descripción

sld = signalLabelDefinition(name) crea un objeto de definición de etiqueta de señal, con la propiedad establecida y otras propiedades establecidas en valores predeterminados.sldNamename

ejemplo

sld = signalLabelDefinition(name,Name,Value) establece con pares nombre-valor.Propiedades Puede especificar varios pares nombre-valor. Incluya cada nombre de propiedad entre comillas.

Argumentos de entrada

expandir todo

Nombre de etiqueta, especificado como un vector de caracteres o escalar de cadena.

Tipos de datos: char | string

Propiedades

expandir todo

Nombre de la etiqueta, especificada como un vector de caracteres o un escalar de cadena.

Tipos de datos: char | string

Tipo de etiqueta, especificada como una de las siguientes:

  • — Definir las características de la señal.'attribute'

  • : Defina las características de la señal en las regiones de interés.'roi'

  • — Definir las características de la señal sobre los puntos de interés.'point'

Tipos de datos: char | string

Tipo de datos de etiqueta, especificado como,,,,, o.'logical''categorical''numeric''string''table''timetable' Utilice la propiedad para especificar la matriz de categorías cuando esta propiedad está establecida en.Categories'categorical'

Tipos de datos: char | string

Nombres de categoría de etiqueta, especificados como una matriz de cadenas o una matriz de vectores de caracteres. La matriz debe tener elementos únicos. Esta propiedad solo se aplica cuando la propiedad está establecida en.LabelDataType'categorical'

Ejemplo: 'LabelDataType','categorical','Categories',["apple","orange"]

Tipos de datos: char | string

Tipo de datos de los límites de ROI, especificados como cualquiera o.'double''duration' Esta propiedad solo se aplica cuando se establece en.LabelType'roi'

Tipos de datos: char | string

Tipo de datos de ubicaciones de puntos, especificadas como cualquiera o.'double''duration' Esta propiedad solo se aplica cuando se establece en.LabelType'point'

Tipos de datos: char | string

Función de validación, especificada como un identificador de función y se utiliza al establecer los valores de etiqueta en un objeto.labeledSignalSet Esta propiedad solo se aplica cuando se establece en,,, o.LabelDataType'categorical''logical''numeric''table''timetable' Si no se especifica, la función solo comprueba que sus valores de entrada son del tipo de datos correcto. Si se establece en, la función comprueba que la entrada es uno de los valores especificados mediante.LabelDataType'categorical'Categories La función toma un valor de entrada y devuelve si el valor es válido y si el valor no es válido.truefalse

Ejemplo: 'LabelDataType','numeric','DefaultValue',1,'ValidationFunction',@(x)x<2

Tipos de datos: function_handle

Valor predeterminado de Label, especificado como un valor del tipo especificado mediante.LabelDataType Si se establece en, a continuación, debe ser uno de los valores especificados mediante.LabelDataType'categorical'DefaultValueCategories

Ejemplo: 'LabelDataType','categorical','Categories',["apple","orange"],'DefaultValue',"apple"

Tipos de datos: char | double | logical | string | table

Descripción de etiqueta, especificada como un vector de caracteres o un escalar de cadena.

Ejemplo: 'Description','Patient is asleep'

Tipos de datos: char | string

Identificador de etiqueta de etiqueta, especificado como un vector de caracteres o escalar de cadena. Utilice esta propiedad para identificar la misma etiqueta en un esquema de etiquetado más grande o en un conjunto de etiquetado público.

Ejemplo: 'Tag','Peak1'

Tipos de datos: char | string

Matriz de subetes, especificada como un objeto de definición de etiqueta de señal. Para especificar más de una subetiqueta, establezca esta propiedad en un vector de objetos de definición de etiqueta de señal. Utilice esta propiedad para crear una relación entre una etiqueta principal y sus elementos secundarios.

Nota

Los Sublabels no pueden tener Sublabels.

Ejemplo: 'Sublabels',[signalLabelDefinition("negative"),signalLabelDefinition("positive")]

Funciones del objeto

labelDefinitionsHierarchyObtenga una lista jerárquica de nombres de etiquetas y subetiqueta
labelDefinitionsSummaryObtener tabla de Resumen de definiciones de etiquetas de señal

Ejemplos

contraer todo

Considere un conjunto de grabaciones de sonido de ballenas. Los sonidos de ballena grabados consisten en trinos y GEMIOS. Desea mirar cada señal y etiquetarla para identificar el tipo de ballena, las regiones trill y las regiones gemir. Para cada región de Trill, también desea etiquetar los picos de señal más altos que un determinado umbral.

Definiciones de etiquetas de señal

Defina una etiqueta de atributo para almacenar los tipos de ballena. Las posibles categorías son ballena azul, ballena jorobada y ballena blanca.

dWhaleType = signalLabelDefinition('WhaleType',...    'LabelType','attribute',...    'LabelDataType','categorical',...    'Categories', ["blue" "humpback" "white"],...    'Description','Whale type'); 

Defina una etiqueta de región de interés (ROI) para capturar regiones de gemir. Defina otra etiqueta de ROI para capturar regiones de Trill.

dMoans = signalLabelDefinition('MoanRegions',...    'LabelType','roi',...    'LabelDataType','logical',...    'Description','Regions where moans occur');  dTrills = signalLabelDefinition('TrillRegions',...    'LabelType','roi',...    'LabelDataType','logical',...    'Description','Regions where trills occur');        

Por último, defina una etiqueta de punto para capturar los picos de Trill. Establezca esta etiqueta como una subetiqueta de la definición.dTrills

dTrillPeaks = signalLabelDefinition('TrillPeaks',...    'LabelType','point',...    'LabelDataType','numeric',...    'Description','Trill peaks');  dTrills.Sublabels = dTrillPeaks;

Conjunto de señal etiquetado

Cree una con las señales de ballena y las definiciones de etiquetas.labeledSignalSet Añada valores de etiqueta para identificar el tipo de ballena, las regiones de gemir y Trill, y los picos de los trinos.

load labelwhalesignals lbldefs = [dWhaleType dMoans dTrills];  lss = labeledSignalSet({whale1 whale2},lbldefs,...    'SampleRate',Fs,'Description','Characterize wave song regions');     

Visualice la jerarquía de etiquetas y las propiedades de etiqueta utilizando y.labelDefinitionsHierarchylabelDefinitionsSummary

labelDefinitionsHierarchy(lss)
ans =      'WhaleType        Sublabels: []      MoanRegions        Sublabels: []      TrillRegions        Sublabels: TrillPeaks      '  
labelDefinitionsSummary(lss)
ans=3×9 table
      LabelName        LabelType     LabelDataType     Categories     ValidationFunction    DefaultValue             Sublabels             Tag            Description         
    ______________    ___________    _____________    ____________    __________________    ____________    ___________________________    ___    ____________________________

    "WhaleType"       "attribute"    "categorical"    [3x1 string]         ["N/A"]               []         []                             ""     "Whale type"                
    "MoanRegions"     "roi"          "logical"        ["N/A"     ]         []                    []         []                             ""     "Regions where moans occur" 
    "TrillRegions"    "roi"          "logical"        ["N/A"     ]         []                    []         [1x1 signalLabelDefinition]    ""     "Regions where trills occur"

Las señales en los datos cargados corresponden a las canciones de dos ballenas azules. Establezca los valores para ambas señales.'WhaleType'

setLabelValue(lss,1,'WhaleType','blue'); setLabelValue(lss,2,'WhaleType','blue');

Visualice la propiedad.'Labels' La tabla tiene los valores agregados recientemente para ambas señales.'WhaleType'

lss.Labels      
ans=2×3 table
                 WhaleType    MoanRegions    TrillRegions
                 _________    ___________    ____________

    Member{1}      blue       [0x2 table]    [0x3 table] 
    Member{2}      blue       [0x2 table]    [0x3 table] 

Visualice regiones y puntos

Visualiza las canciones de las ballenas para identificar las regiones trill y gemir.

subplot(2,1,1) plot((0:length(whale1)-1)/Fs,whale1) ylabel('Whale 1') hold on  subplot(2,1,2) plot((0:length(whale2)-1)/Fs,whale2) ylabel('Whale 2') hold on

Agregue las regiones de gemir y trill al conjunto etiquetado. Para las etiquetas de ROI, especifique los límites de ROI en segundos y los valores de etiqueta. Etiquete las distintas regiones de los trazados utilizando una función auxiliar.

moanRegionsWhale1 = [6.1 7.7; 11.4 13.1; 16.5 18.1]; setLabelValue(lss,1,'MoanRegions',moanRegionsWhale1,[true true true]);  trillRegionWhale1 = [1.4 3.1]; setLabelValue(lss,1,'TrillRegions',trillRegionWhale1,true);  subplot(2,1,1) labelIntervals([moanRegionsWhale1;trillRegionWhale1])  moanRegionsWhale2 = [2.5 3.5; 5.8 8; 15.4 16.7]; setLabelValue(lss,2,'MoanRegions',moanRegionsWhale2,[true true true]);  trillRegionWhale2 = [11.1 13]; setLabelValue(lss,2,'TrillRegions',trillRegionWhale2,true);  subplot(2,1,2) labelIntervals([moanRegionsWhale2;trillRegionWhale2])

Etiquete tres picos para cada región de Trill. Para las etiquetas de punto, especifique las ubicaciones de puntos y los valores de etiqueta. En este ejemplo, las ubicaciones de punto se encuentran en segundos.

peakLocsWhale1 = [1.553 1.626 1.7]; peakValsWhale1 = [0.211 0.254 0.211];  setLabelValue(lss,1,["TrillRegions" "TrillPeaks"],...    peakLocsWhale1,peakValsWhale1,'LabelRowIndex',1);  subplot(2,1,1) plot(peakLocsWhale1,peakValsWhale1,'v') hold off  peakLocsWhale2 = [11.214 11.288 11.437]; peakValsWhale2 = [0.119 0.14 0.15];  setLabelValue(lss,2,["TrillRegions" "TrillPeaks"],...    peakLocsWhale2,peakValsWhale2,'LabelRowIndex',1);  subplot(2,1,2) plot(peakLocsWhale2,peakValsWhale2,'v') hold off

Explore valores de etiqueta

Explore los valores de etiqueta utilizando.getLabelValues

getLabelValues(lss)
ans=2×3 table
                 WhaleType    MoanRegions    TrillRegions
                 _________    ___________    ____________

    Member{1}      blue       [3x2 table]    [1x3 table] 
    Member{2}      blue       [3x2 table]    [1x3 table] 

Recupere las regiones de gemir para el primer miembro del conjunto etiquetado.

getLabelValues(lss,1,'MoanRegions')
ans=3×2 table
     ROILimits      Value
    ____________    _____

     6.1     7.7     [1] 
    11.4    13.1     [1] 
    16.5    18.1     [1] 

Utilice un segundo argumento de salida para enumerar los subetes de una etiqueta.

[value,valueWithSublabel] = getLabelValues(lss,1,'TrillRegions')
value=1×2 table
    ROILimits     Value
    __________    _____

    1.4    3.1     [1] 

valueWithSublabel=1×3 table
    ROILimits     Value     Sublabels 
                           TrillPeaks 
    __________    _____    ___________

    1.4    3.1     [1]     [3x2 table]

Para recuperar los valores de una subetiqueta, exprese el nombre de la etiqueta como una matriz de dos elementos.

getLabelValues(lss,1,["TrillRegions" "TrillPeaks"])
ans=3×2 table
    Location     Value  
    ________    ________

     1.553      [0.2110]
     1.626      [0.2540]
       1.7      [0.2110]

Encuentre el valor del tercer pico de Trill correspondiente al segundo miembro del conjunto.

getLabelValues(lss,2,["TrillRegions" "TrillPeaks"], ...     'LabelRowIndex',1,'SublabelRowIndex',3)
ans=1×2 table
    Location     Value  
    ________    ________

     11.437     [0.1500]

function labelIntervals(moansTrills) % Auxiliary function to label moan and trill regions in plots     [X,Y] = meshgrid(moansTrills,ylim);     plot(X,Y,'k:')     topts = {'HorizontalAlignment','center','FontWeight','bold', ...         'FontSize',12,'Color',[139 69 19]/255};     text((X(1,1:4)+X(1,5:end))/2,Y(2,5:end)-0.1, ...         ["moan" "moan" "moan" "trill"],topts{:}) end

Consulte también

|

Introducido en R2018b