Импортируйте элементы в Signal Labeler одним из трех способов создания маркированных наборов сигналов:
Импортировать сигналы из рабочей области MATLAB (Import Signals from the MATLAB Workspace) - импортировать каждый сигнал как элемент, чтобы маркировать их по отдельности, или импортировать маркированный набор сигналов.
Импортировать сигналы из файлов (Import Signals from Files) - импортировать каждый файл в качестве члена, чтобы маркировать все сигналы, содержащиеся в файле вместе.
Импорт данных аудиофайлов в Signal Labeler - импорт аудиофайлов и папок (требуется лицензия Audio Toolbox™).
Приложение Signal Labeler работает с векторами реального или комплексного значения, матрицами, расписаниями MATLAB ® ,labeledSignalSet объекты, и signalDatastore объекты. Приложение также поддерживает MAT-файлы и CSV-файлы.
Примечание
Signal Labeler не поддерживает сигналы с Inf или NaN значения, многомерные массивы или разреженные матрицы.
Пример: Числовые массивы
num = cos(pi./[4;2]*(0:159))'+randn(160,2);
Пример: MATLAB Расписания
tt1 = timetable(num,'SampleRate',100);
tt2 = timetable(seconds((0:159)'/100),num);timetable документация.Пример: labeledSignalSet Объекты
lss = labeledSignalSet(num);
Пример: labeledSignalSet Объекты с информацией о времени
lst1 = labeledSignalSet(num,'SampleRate',100);
lst2 = labeledSignalSet(timetable(seconds((0:159)'/100),num));Пример: Мультисигнальные элементы
msn = labeledSignalSet({randn(10,3),randn(17,9)});
mst = labeledSignalSet({{timetable(seconds(1:10)',randn(10,3))}, ...
{timetable(seconds(1:7)',randn(7,2)), ...
timetable(randn(30,1),'SampleRate',100)}});Пример: signalDatastore Объект, указывающий на файлы
Укажите путь к набору образцов звуковых сигналов, включенных в MAT-файлы с MATLAB ®. Каждый файл содержит переменную сигнала и частоту дискретизации. Перечислите имена файлов.
folder = fullfile(matlabroot,"toolbox","matlab","audiovideo"); lst = dir(append(folder,"/*.mat")); nms = {lst(:).name}'
nms = 7x1 cell
{'chirp.mat' }
{'gong.mat' }
{'handel.mat' }
{'laughter.mat'}
{'mtlb.mat' }
{'splat.mat' }
{'train.mat' }
Создайте хранилище данных сигнала, указывающее на указанную папку. Задайте имя переменной частоты выборки как Fs, что является общим для всех файлов. Создание подмножества хранилища данных, исключающего файл mtlb.mat, который отличается от других файлов тем, что переменная сигнала не вызывается y.
sds = signalDatastore(folder,"SampleRateVariableName","Fs"); sdss = subset(sds,~strcmp(nms,"mtlb.mat"));
Использовать хранилище данных подмножества в качестве источника для labeledSignalSet объект.
lss = labeledSignalSet(sdss)
lss =
labeledSignalSet with properties:
Source: [1x1 signalDatastore]
NumMembers: 6
TimeInformation: "inherent"
Labels: [6x0 table]
Description: ""
Use labelDefinitionsHierarchy to see a list of labels and sublabels.
Use setLabelValue to add data to the set.
Сигналы, импортируемые в Signal Labeler, могут быть помечены в выборках или во времени. Эта спецификация остается неизменной для обеспечения согласованности маркировки. Нельзя смешивать сигналы в выборках и сигналы с информацией о времени в одном сеансе.
При указании временной информации для набора сигналов, у которых ее нет, выберите опцию спецификации времени в диалоговом окне импорта.
| Опция спецификации времени | Описание |
|---|---|
Samples | Эта опция позволяет исследовать и маркировать сигналы без необходимости указывать частоту выборки или время выборки. Это эквивалентно печати сигнала в MATLAB без информации по оси X. |
Sample Rate | Используйте эту опцию, если известна скорость дискретизации сигнала. Частота дискретизации может быть выражена в Гц, кГц, МГц или ГГц. Чтобы задать частоту выборки, можно использовать числовое значение, имя скалярной переменной в рабочей области MATLAB или любое допустимое выражение MATLAB. Установите частоту выборки таким образом, чтобы элементы отображались в единицах времени. |
Sample Rate Variable From File | Эта опция используется, когда частота дискретизации сохраняется как переменная в импортируемом файле. |
Sample Time | Эта опция используется, если известен интервал времени между выборками. Время выборки может быть выражено в секундах, годах, днях, часах, минутах, миллисекундах, микросекундах или наносекундах. Для задания времени выборки можно использовать числовое значение, имя скалярной переменной в рабочей области MATLAB или любое допустимое выражение MATLAB. Задайте время выборки таким образом, чтобы элементы печатались в единицах времени. |
Sample Time Variable From File | Эта опция используется, когда время образца сохраняется как переменная в импортируемом файле. |
Time Values | Эта опция используется, когда известно значение времени, соответствующее каждому образцу. Укажите значения времени, используя допустимое выражение MATLAB или имя переменной в рабочей области MATLAB. Значения времени могут храниться в числовом или Во всех случаях приложение извлекает частоту выборки из значений времени и отображает ее в столбце «Время» браузера набора маркированных сигналов. Звездочка, предшествующая частоте дискретизации, указывает, что выборка элементов выполняется неравномерно. |
Time Values Variable From File | Эта опция используется при сохранении значений времени в качестве переменной в импортируемом файле. |
После импорта сигнала или набора сигналов в Signal Labeler выбранная временная спецификация остается фиксированной в течение всего сеанса маркировки.
Чтобы импортировать сигналы в Signal Labeler из рабочей области MATLAB, на вкладке Labeler щелкните Импорт и выберите From workspace в списке Участники. В диалоговом окне выберите сигналы, которые требуется импортировать.

Каждая переменная сигнала рассматривается как член набора маркированных сигналов и может быть помечена отдельно. Эту процедуру также можно выполнить, если требуется пометить несколько переменных сигнала в различных наборах сигналов с метками.
Если первоначально импортирован числовой массив и указан в образцах, или если первоначально импортирован labeledSignalSet объект в выборках, впоследствии можно выбрать только сигналы в выборках. При выборе числового массива Signal Labeler импортирует его и обрабатывает в образцах.
Если вы первоначально импортировали числовой массив и указали его временные данные, или если вы первоначально импортировали расписание MATLAB или labeledSignalSet объект с информацией о времени, впоследствии можно выбрать только сигналы с информацией о времени. При выборе числового массива необходимо задать его временные данные при импорте.
Примечание
Невозможно изменить информацию о времени labeledSignalSet из Signal Labeler. Если маркированный набор сигналов не имеет временной информации, приложение рассматривает своих членов как находящихся в выборках. Если маркированный набор сигналов содержит информацию о времени, приложение включает эту информацию при импорте сигналов. Дополнительные сведения см. в разделе labeledSignalSet документация.
Для успешного импорта маркированные наборы сигналов должны соответствовать следующим дополнительным правилам:
Если выбор включает в себя два или более маркированных набора сигналов, маркированные наборы сигналов должны иметь уникальные определения меток сигналов. Если определение метки совместно используется двумя или несколькими наборами, определение должно иметь одинаковый тип и тип данных для всех наборов. Дополнительные сведения см. в разделе Создание или импорт определений меток сигналов.
Если выбор включает в себя два или более маркированных набора сигналов, маркированные наборы сигналов должны иметь уникальные имена членов. Нельзя изменять имена членов внутри Signal Labeler. Чтобы изменить имя члена маркированного набора сигналов, используйте команду setMemberNames в командной строке.
При выборе двух или более labeledSignalSet объекты для маркировки, Signal Labeler объединяет их и создает единый маркированный набор сигналов, содержащий все элементы и значения меток входных наборов. Это действие эквивалентно использованию merge в командной строке.
Значения меток в labeledSignalSet объекты должны быть скалярами. Signal Labeler игнорирует те метки, которые не имеют скалярных значений.
Чтобы импортировать сигналы в Signal Labeler из файлов, на вкладке Labeler щелкните Импорт и выберите From files в списке Участники. В диалоговом окне выберите файлы, содержащие сигналы, которые требуется импортировать.
Примечание
Signal Labeler поддерживает файлы MAT и CSV. Все значения в CSV-файле, отличные от заголовков, должны быть числовыми.
С помощью лицензии Audio Toolbox можно импортировать сигналы из файлов с совместимыми расширениями аудиофайлов в Signal Labeler с помощью From Audio Files или From Audio Folder.
Импортирование labeledSignalSet объекты из файлов не поддерживаются. Импорт labeledSignalSet загрузите его в рабочую область MATLAB и импортируйте оттуда.

Каждый файл рассматривается как элемент маркированного набора сигналов. Все сигналы, содержащиеся в файле, принадлежат одному члену и помечены вместе. Можно также импортировать другие файлы с теми же переменными сигнала, что и члены того же набора маркированных сигналов.
Все импортируемые элементы должны иметь одинаковое расширение и одинаковые переменные.
Signal Labeler не поддерживает одновременную работу с данными в памяти и данными из файлов.
При первоначальном импорте элементов в памяти из рабочей области MATLAB From files отключена в меню «Импорт» вкладки «Маркировщик».
При первоначальном импорте данных из файлов единственными переменными рабочей области, которые можно импортировать из рабочей области MATLAB, являются labeledSignalSet объекты, источниками входных данных которых являются signalDatastore объекты, указывающие на файлы. Пример см. в разделе Поддерживаемые типы сигналов.
По умолчанию Signal Labeler считывает первую переменную сигнала каждого файла. Чтобы определить имя первой переменной в файле, signalDatastore выполните следующие действия:
Для файлов MAT:
s = load(fileName);
varNames = fieldnames(s);
firstVar = s.(varNames{1});Для CSV-файлов:
opts = detectImportOptions(fileName,'PreserveVariableNames',true);
varNames = opts.VariableNames;
firstVar = string(varNames{1});Чтобы указать переменные сигнала, которые требуется прочитать, нажмите кнопку «Указать» и введите список имен переменных сигнала, разделенных запятыми.
Совет
Если CSV-файл не имеет имен переменных, указанных в строке заголовка, то переменные вызываются Var1 для первого столбца, Var2 для второго столбца и так далее.