Приложение Signal Analyzer можно использовать для выполнения нескольких задач предварительной обработки сигналов. На вкладке Analyzer появятся различные опции обработки:

Операции предварительной обработки, отмены операций и генерации функций применяются ко всем сигналам, выбранным в настоящее время в таблице Сигнал (Signal). Чтобы выбрать сигналы, щелкните их столбцы Имя (Name), Информация (Info), Время (Time) или Время начала (Start Time) в таблице Сигнал (Signal).
Примечание
Предварительная обработка не поддерживается для маркированных наборов сигналов. Если необходимо предварительно обработать сигнал, принадлежащий маркированному набору сигналов, необходимо сначала извлечь сигнал из набора. Для получения дополнительной информации см. раздел Извлечение областей сигналов, представляющих интерес.
Операции предварительной обработки перезаписывают сигнал, на котором они работают. Если вы хотите сохранить исходный сигнал, скопируйте его и используйте дубликат.
Действия предварительной обработки можно выполнять любое количество раз и в любом порядке. Столбец Информация (Info) в таблице Сигнал (Signal) содержит значок
, указывающий, была ли выполнена предварительная обработка сигнала. При нажатии на значок перечисляются действия и порядок их выполнения. Шаги предварительной обработки можно отменить, щелкнув Отменить предварительную обработку на вкладке Анализатор или на любой вкладке, возникающей в результате действия предварительной обработки. Шаги отменяются по одному, начиная с самых последних.
Совет
Чтобы просмотреть полную сводку шагов предварительной обработки, включая все выбранные настройки, щелкните Создать функцию (Generate Function) на вкладке Анализатор (Analyzer).
Можно предварительно обработать отдельные каналы многоканального сигнала. При выборе многоканального сигнала и одного из его каналов для предварительной обработки приложение выполняет предварительную обработку отдельного канала только один раз.
Анализатор сигналов позволяет дублировать и переименовывать сигналы, которые затем можно предварительно обработать или экспортировать для дальнейшего анализа.
Для дублирования сигнала используйте кнопку «Копировать» на вкладке «Анализатор» или на любой вкладке, возникающей в результате предварительной обработки. Либо щелкните правой кнопкой мыши сигнал в таблице Сигнал (Signal) и выберите Копировать (Duplicate). Дубликат имеет то же имя, что и исходный сигнал с _copy прилагается.
При выборе сигнала и одного из его каналов для дублирования приложение создает дубликат сигнала и независимый дубликат выбранного канала.
Чтобы переименовать сигнал, дважды щелкните имя сигнала в таблице Сигнал (Signal) и измените имя. Либо щелкните правой кнопкой мыши сигнал в таблице Сигнал (Signal) и выберите Переименовать (Rename).
Примечание
Нельзя переименовать отдельные каналы многоканального сигнала.
Чтобы отфильтровать один или несколько выбранных сигналов, на вкладке Analyzer щелкните значок Lowpass, Highpass, Bandpass или Bandstop в галерее Preprocessing. Приложение использует lowpass, highpass, bandpass, и bandstop для выполнения фильтрации. Можно управлять затуханием полосы останова, частотами полосы пропускания и шириной переходных областей. Для получения дополнительной информации см. справочные страницы функций. Фильтрация не поддерживает неравномерно дискретизированные сигналы.
Чтобы сгладить один или несколько выбранных сигналов, на вкладке «Анализатор» щелкните значок «Сгладить» в галерее предварительной обработки. Приложение использует функцию MATLAB ®smoothdata для выполнения сглаживания. Доступны следующие методы сглаживания:
Скользящее среднее
Подвижная медиана
Гауссовский
Линейная регрессия
Квадратичная регрессия
Надежная линейная регрессия
Надежная квадратичная регрессия
Фильтрация Савицкого-Голая
Чтобы выполнить повторную выборку одного или нескольких выбранных сигналов, на вкладке Анализатор разверните галерею Предварительная обработка и щелкните значок Повторная выборка. Анализатор сигналов использует функцию Toolbox™ обработки сигналов resample для выполнения повторной выборки. Доступны следующие опции:
Когда ваш сигнал дискретизирован неравномерно, вы можете использовать приложение для его интерполяции в однородную сетку. Можно указать метод интерполяции и частоту дискретизации, с которой требуется дискретизировать сигнал. Доступны следующие методы интерполяции:
Линейная интерполяция
Фасонно-сохраняющая кусочно-кубическая интерполяция
Интерполяция кубического сплайна с использованием условий конца без узла
См. раздел interp1 для получения дополнительной информации.
Когда ваш сигнал равномерно дискретизирован, вы можете использовать приложение, чтобы изменить его частоту выборки. Можно указать либо требуемую частоту дискретизации, либо коэффициент, на который требуется увеличить или понизить частоту дискретизации сигнала. В этом случае панель интерполяции на вкладке «Повторная выборка» отключена, так как операция интерполяции не имеет смысла для равномерно дискретизированных сигналов.
Операция повторной выборки требует информации о времени. При попытке повторной выборки сигнала в выборках приложение выдает предупреждение.
Чтобы уменьшить количество выбранных сигналов, на вкладке Анализатор разверните галерею Предварительная обработка и щелкните значок Детренд. Анализатор сигналов использует функцию MATLAB detrend для выполнения отпугивания. Приложение может удалить из сигналов следующие тенденции:
Постоянные тенденции.
Линейные тренды.
Кусочно-линейные тренды. Чтобы удалить кусочно-линейный тренд, укажите точки останова в виде списка, разделенного запятыми.
Чтобы вычислить оболочку одного или нескольких выбранных сигналов, на вкладке Анализатор разверните галерею Предварительная обработка и щелкните значок Оболочка. Анализатор сигналов использует функцию панели инструментов обработки сигналов envelope для оценки конвертов. Можно вычислить верхнюю огибающую или нижнюю огибающую каждого сигнала. Доступны следующие алгоритмы оценки огибающей:
Hilbert - Приложение вычисляет огибающую сигнала как величину аналитического сигнала, найденного с использованием дискретного преобразования Фурье, реализованного в hilbert.
FIR - Приложение вычисляет огибающую сигнала, фильтруя сигнал с помощью фильтра FIR Гильберта регулируемого размера и используя результат в качестве мнимой части аналитического сигнала.
RMS - Приложение вычисляет огибающую сигнала путем соединения среднеквадратичных значений, вычисленных с использованием подвижного окна регулируемой длины.
Peak - Приложение вычисляет огибающую сигнала, используя сплайн-интерполяцию по локальным максимумам, разделенным регулируемым количеством выборок.
Примечание
Вычисление огибающей не поддерживает сложные сигналы.
Чтобы добавить пользовательскую функцию предварительной обработки, на вкладке Анализатор щелкните стрелку рядом с галереей предварительной обработки и выберите Добавить пользовательскую функцию. Приложение предлагает ввести имя функции и краткое описание:
Если функция предварительной обработки уже записана, и она находится в текущей папке или в пути MATLAB, приложение включает ее в галерею. Для поиска имени функции можно использовать заполнение вкладки.
Если функция еще не записана, приложение откроет пустой шаблон в редакторе.
Пользовательские функции предварительной обработки имеют обязательные и необязательные аргументы:
Первый входной аргумент, x, - входной сигнал. Этот аргумент должен быть вектором и обрабатываться как один канал.
Второй входной аргумент, tIn, - вектор значений времени. Вектор должен иметь ту же длину, что и сигнал. Если входной сигнал не содержит временной информации, функция считывает этот аргумент как пустой массив.
Использовать varargin для указания дополнительных входных аргументов. Если у вас нет дополнительных входных аргументов, вы можете опустить varargin. Введите дополнительные аргументы в виде упорядоченного списка, разделенного запятыми, на вкладке Предварительный процесс.
Первый выходной аргумент, y, является предварительно обработанным сигналом.
Второй выходной аргумент, tOut, - вектор выходных значений времени. Если входной сигнал не содержит временной информации, tOut возвращается как пустой массив.
Для реализации алгоритма можно использовать любую функцию MATLAB или панель инструментов обработки сигналов.
Дополнительные сведения см. в разделе Распаковка насыщенных сигналов с использованием собственной функции.
Пример: Эта функция удаляет значение постоянного тока сигнала, вычитая его среднее значение.
function [y,tOut] = removeDC(x,tIn) % Remove the DC value of a signal by subtracting its mean y = x - mean(x); tOut = tIn; end
Пример: Эта функция изменяет время начала сигнала на заданное значение.
function [y,tOut] = timealign(x,tIn,startTime) % Change the starting time of a signal y = x; t = tIn; if ~isempty(t) t = t - t(1) + startTime; end tOut = t; end
В любое время можно редактировать функции, редактировать их описания или удалять их с помощью параметра «Управление пользовательскими функциями» в галерее.

Примечание
Пользовательские функции предварительной обработки не должны изменять сложность входного сигнала.