Оптимальное извлечение признаков времени сигнала
Использование signalTimeFeatureExtractor
извлекать функции временного интервала из сигнала. Можно использовать извлеченные функции, чтобы обучить модель машинного обучения или нейронную сеть для глубокого обучения.
создает sFE
= signalTimeFeatureExtractorsignalTimeFeatureExtractor
объект со значениями свойств по умолчанию.
задает значения свойств не по умолчанию sFE
= signalTimeFeatureExtractor(Name,Value
)signalTimeFeatureExtractor
объект. Например, signalTimeFeatureExtractor(FeatureFormat="table")
устанавливает выходной формат генерированных признаков к таблице.
FrameSize
— Количество отсчетов в системе координатКоличество отсчетов в системе координат в виде положительного целого числа. Объект делит сигнал на системы координат заданной длины и извлекает функции каждой системы координат. Если вы не задаете FrameSize
, или если вы задаете FrameSize
как пустой, объект извлекает функции целого сигнала.
Типы данных: single
| double
FrameRate
— Количество отсчетов между запуском систем координатКоличество отсчетов между запуском систем координат в виде положительного целого числа. Частота кадров определяет расстояние в выборках между начальными точками систем координат. Если вы задаете FrameRate
, затем необходимо также задать FrameSize
. Если вы не задаете FrameRate
или FrameOverlapLength
, затем FrameRate
принят, чтобы быть равным FrameSize
. Вы не можете задать FrameRate
и FrameOverlapLength
одновременно.
Типы данных: single
| double
FrameOverlapLength
— Количество перекрывающихся выборок между последовательными системами координатКоличество перекрывающихся выборок между последовательными системами координат в виде положительного целого числа. FrameOverlapLength
должно быть меньше чем или равно формату кадра. Если вы задаете FrameOverlapLength
, затем необходимо также задать FrameSize
. Вы не можете задать FrameOverlapLength
и FrameRate
одновременно.
Типы данных: single
| double
SampleRate
— Частота дискретизации[]
(значение по умолчанию) | положительная скалярная величинаВведите частоту дискретизации в виде положительной скалярной величины в герц.
Типы данных: single
| double
FeatureFormat
— Формат генерированных признаков"matrix"
(значение по умолчанию) | "table"
Формат генерированных признаков в виде "matrix"
или "table"
. extract
функция возвращает функции как один из них:
matrix
— Матрица со столбцами, соответствующими, чтобы показать значения.
table
— Таблица с каждой табличной переменной, соответствующей значению функции.
Типы данных: char |
string
IncompleteFrameRule
— Управляйте, чтобы обработать неполные системы координат"drop"
(значение по умолчанию) | "zeropad"
Управляйте, чтобы обработать неполные системы координат в виде "drop"
или "zeropad"
. Это правило применяется, когда текущий формат кадра меньше заданного FrameSize
свойство.
drop
— Пропустите неполную систему координат и не используйте ее, чтобы вычислить функции.
zeropad
— Нулевая клавиатура неполная система координат и использование это, чтобы вычислить функции.
Типы данных: char |
string
Mean
— Опция, чтобы извлечь среднее значениеfalse
(значение по умолчанию) | true
Опция, чтобы извлечь среднее значение в виде true
или false
. Если вы задаете Mean
как верный, объект извлекает среднее значение и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
RMS
— Опция, чтобы извлечь среднеквадратичное значениеfalse
(значение по умолчанию) | true
Опция, чтобы извлечь среднеквадратичное значение (RMS) в виде true
или false
. Если вы задаете RMS
как верный, объект извлекает RMS и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
StandardDeviation
— Опция, чтобы извлечь стандартное отклонениеfalse
(значение по умолчанию) | true
Опция, чтобы извлечь стандартное отклонение в виде true
или false
. Если вы задаете StandardDeviation
как верный, объект извлекает стандартное отклонение и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
ShapeFactor
— Опция, чтобы извлечь масштабный факторfalse
(значение по умолчанию) | true
Опция, чтобы извлечь масштабный фактор в виде true
или false
. Масштабный фактор равен значению RMS, разделенному на среднее абсолютное значение сигнала. Если вы задаете ShapeFactor
как верный, объект извлекает масштабный фактор и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
SNR
— Опция, чтобы извлечь отношение сигнал-шумfalse
(значение по умолчанию) | true
Опция, чтобы извлечь отношение сигнал-шум (SNR) в виде true
или false
. Если вы задаете SNR
как верный, объект извлекает ОСШ и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
THD
— Опция, чтобы извлечь общее гармоническое искажениеfalse
(значение по умолчанию) | true
Опция, чтобы извлечь общее гармоническое искажение (THD) в виде true
или false
. Если вы задаете THD
как верный, объект извлекает THD и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
SINAD
— Опция, чтобы извлечь отношение сигнала к шуму и искажениямfalse
(значение по умолчанию) | true
Опция, чтобы извлечь отношение сигнала к шуму и искажениям (SINAD) в децибелах в виде true
или false
. Если вы задаете Sinad
как верный, объект извлекает SINAD и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
PeakValue
— Опция, чтобы извлечь пиковое значениеfalse
(значение по умолчанию) | true
Опция, чтобы извлечь пиковое значение в виде true
или false
. Пиковое значение соответствует максимальному абсолютному значению сигнала. Если вы задаете PeakValue
как верный, объект извлекает пик и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
CrestFactor
— Опция, чтобы извлечь фактор гребняfalse
(значение по умолчанию) | true
Опция, чтобы извлечь фактор гребня в виде true
или false
. Фактор гребня равен пиковому значению, разделенному на RMS. Если вы задаете CrestFactor
как верный, объект извлекает фактор гребня и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
ClearanceFactor
— Опция, чтобы извлечь фактор разрешенияfalse
(значение по умолчанию) | true
Опция, чтобы извлечь фактор разрешения в виде true
или false
. Фактор разрешения равен пиковому значению, разделенному на среднее значение в квадрате квадратных корней из абсолютной амплитуды. Если вы задаете ClearanceFactor
как верный, объект извлекает фактор разрешения и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
ImpulseFactor
— Опция, чтобы извлечь импульсный факторfalse
(значение по умолчанию) | true
Опция, чтобы извлечь импульсный фактор в виде true
или false
. Импульсный фактор равен пиковому значению, разделенному на среднее значение абсолютной амплитуды. Если вы задаете ImpulseFactor
как верный, объект извлекает импульсный фактор и добавляет значение к функциям, возвращенным extract
функция.
Типы данных: логический
extract | Извлеките функции частотного диапазона или временной интервал |
generateMATLABFunction | Создайте функцию MATLAB, совместимую с генерацией кода C/C++ |
Извлеките функции временного интервала из электромиографических данных (EMG) для дальнейшего использования в рабочем процессе машинного обучения, чтобы классифицировать движения предплечья. Файлы доступны в этом местоположении: https://ssd.mathworks.com/supportfiles/SPT/data/MyoelectricData.zip.
Этот пример использует сигналы EMG, собранные из предплечий 30 предметов [1]. Набор данных состоит из 720 файлов. Каждый предмет участвовал в четырех сеансах тестирования и выполнил шесть испытаний различных движений предплечья на сеанс. Загрузите и разархивируйте файлы в свою временную директорию.
localfile = matlab.internal.examples.downloadSupportFile('SPT','data/MyoelectricData.zip'); datasetFolder = fullfile(tempdir,'MyoelectricData'); unzip(localfile,datasetFolder)
Каждый файл содержит сигнал EMG с восемью каналами, который представляет активацию восьми мышц предплечья во время серии движений. Частота дискретизации составляет 1 000 Гц. Создайте signalDatastore
это указывает на папку набора данных.
fs = 1000; sds = signalDatastore(datasetFolder,IncludeSubfolders=true);
В данном примере анализируйте только последний (шестой) суд над каждым сеансом. Используйте endsWith
функционируйте, чтобы найти индексы, которые соответствуют этим файлам. Создайте новый datastore, который содержит это подмножество сигналов.
p = endsWith(sds.Files,'6d.mat');
sdssub = subset(sds,p);
data = readall(sdssub);
Создайте signalTimeFeatureExtractor
возразите, чтобы извлечь среднее значение, среднеквадратичное значение (RMS) и пиковые значения от сигналов EMG. Вызовите extract
функционируйте, чтобы извлечь заданные функции. Постройте пиковые значения для вторых и восьмых каналов EMG.
sFE = signalTimeFeatureExtractor(SampleRate=fs,Mean=true,RMS=true,PeakValue=true); M = []; F = []; for i = 1:length(sdssub.Files) M{i,1} = extract(sFE,data{i}); end for k = 1:30 peak2 = M{k,1}(:,3,2); peak8 = M{k,1}(:,3,8); F(k,1) = peak2; F(k,2) = peak8; end bar(F) xlabel('Subject') ylabel('EMG Peak values (mV)') legend(['Channel 2';'Channel 8'])
[1] Канал, Эдриан Д.К., и Джеффри К. Грин. 2007. "Миоэлектрический Тулбокс Разработки Управления". Доклад, сделанный на 30-й Конференции канадской Medical & Biological Engineering Society, Торонто, Канада, 2007.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.