Добавьте члены в помеченный набор сигнала
Загрузите помеченный набор сигнала, содержащий записи песен кита.
load whales
lss
lss = labeledSignalSet with properties: Source: {2x1 cell} NumMembers: 2 TimeInformation: "sampleRate" SampleRate: 4000 Labels: [2x3 table] Description: "Characterize wave song regions" Use labelDefinitionsHierarchy to see a list of labels and sublabels. Use setLabelValue to add data to the set.
Получите второй член набора и постройте его.
[song,tinfo] = getSignal(lss,2); t = (0:length(song)-1)/tinfo.SampleRate; plot(t,song)
Удалите первые и последние секунды полученного сигнала.
song2 = song(t>1 & t<t(end)-1); t2 = (0:length(song2)-1)/tinfo.SampleRate; plot(t2,song2)
Добавьте более короткий сигнал как новый член помеченного набора.
addMembers(lss,song2) lss
lss = labeledSignalSet with properties: Source: {3x1 cell} NumMembers: 3 TimeInformation: "sampleRate" SampleRate: 4000 Labels: [3x3 table] Description: "Characterize wave song regions" Use labelDefinitionsHierarchy to see a list of labels and sublabels. Use setLabelValue to add data to the set.
Инвертируйте более короткий сигнал вверх тормашками и добавьте его как новый член помеченного набора. Укажите, что новый член производится на уровне 1 кГц.
addMembers(lss,flipud(song2),1000) lss.SampleRate
ans = 4×1
4000
4000
4000
1000
lss
— Помеченный набор сигналаlabeledSignalSet
объектПомеченный набор сигнала в виде labeledSignalSet
объект.
Пример:
задает набор 2D члена случайных сигналов, содержащих атрибут labeledSignalSet
({randn (100,1) randn (10,1)}, signalLabelDefinition ('розетка'))'female'
.
src
— Источник входных данныхsignalDatastore
возразите | audioDatastore
объектИсточник входных данных в виде матрицы, массива ячеек, расписания, signalDatastore
объект или audioDatastore
Объект (Audio Toolbox). Конкретная форма src
зависит от свойства Source lss
.
Если Источник является массивом ячеек матриц:
Задайте src
как матрица, чтобы добавить один член в набор.
Задайте src
как массив ячеек матриц, чтобы добавить несколько членов в набор.
Если Источник является массивом ячеек, содержащим массивы ячеек векторов:
Задайте src
как массив ячеек векторов, чтобы добавить один член в набор.
Задайте src
как массив ячеек, содержащий массивы ячеек векторов, чтобы добавить несколько членов в набор.
Если Источник является массивом ячеек расписаний:
Задайте src
как расписание, чтобы добавить один член в набор.
Задайте src
как массив ячеек расписаний, чтобы добавить несколько членов в набор.
Если Источник является datastore, то добавьте члены установкой src
как другой datastore, который указывает на новые файлы.
Пример: {
задает два члена. Первый член содержит три сигнала с 10 выборками. Второй член содержит девять сигналов с 17 выборками.randn
(10,3),randn
(17,9)}
Пример: {{
задает два члена. Первый член содержит один сигнал с 10 выборками. Второй член содержит сигнал с 17 выборками и сигнал с 27 выборками.randn
(10,1)},{randn
(17,1),randn
(27,1)}}
Пример: {{
задает два члена. Первый член содержит три сигнала, произведенные на уровне 1 Гц в течение 10 секунд и двух сигналов, произведенных на уровне 1 Гц в течение 7 секунд. Второй член содержит один сигнал, произведенный на уровне 1 Гц в течение 3 секунд.timetable
(seconds
(1:10)',randn
(10,3)),timetable
(seconds
(1:7)',randn
(7,2))},{timetable
(seconds
(1:3)',randn
(3,1))}}
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' }
Создайте datastore сигнала, который указывает на заданную папку. Определите имя переменной частоты дискретизации к Fs
, который характерен для всех файлов. Сгенерируйте подмножество datastore, который исключает файл mtlb.mat
, который отличается от других файлов, в которых переменная сигнала не называется y
.
sds = signalDatastore(folder,"SampleRateVariableName","Fs"); sdss = subset(sds,~strcmp(nms,"mtlb.mat"));
Используйте datastore подмножества в качестве источника для 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.
tinfo
— Информация времени для новых членовduration
скаляр | duration
векторИнформация времени для новых членов в виде скаляра, вектора, матрицы, скаляра длительности или вектора длительности. Этот аргумент допустим только если свойство TimeInformation lss
'sampleRate'
Размер шага
, или 'timeValues'
.
Если TimeInformation является 'sampleRate'
, затем tinfo
задает значения частоты дискретизации.
Если TimeInformation является 'sampleTime'
, затем tinfo
задает значения шага расчета.
Если TimeInformation является 'timeValues'
, затем tinfo
задает временные стоимости.
Если вы добавляете несколько членов в набор, то, задавая только одно значение tinfo
устанавливает то же значение для всех членов. Если вы хотите задать различное значение для каждого нового члена, то установленный tinfo
иметь несколько значений.
Когда никакой источник не был задан, или когда помеченный источник набора сигнала пуст, можно изменить свойство TimeInformation в 'sampleRate'
Размер шага
, или 'timeValues'
сделать lss
интерпретируйте tinfo
правильно.
Пример: addMembers (ks, {
добавляют два новых члена с различной информацией времени к randn
(10,5),randn
(10,3)},seconds
([1 2]))ks =
.labeledSignalSet
(randn
(10,3), 'SampleTime',seconds
(1))
Пример:
добавляют два новых члена с различной информацией времени к addMembers
(ks, {randn
(10,5),randn
(10,3)},[1:10;2:2:20]')ks =
.labeledSignalSet
(randn
(10,3), 'TimeValues', 1:10)
mnames
— Имена элементаИмена элемента в виде вектора символов, строкового скаляра, массива ячеек из символьных векторов или массива строк.
Пример: labeledSignalSet({randn(100,1) randn(10,1)},'MemberNames',{'llama' 'alpaca'})
задает набор случайных сигналов с двумя членами, 'llama'
и 'alpaca'
.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.