dsp. MovingMinimum

Движущийся минимум

Описание

Система dsp.MovingMinimum object™ определяет движущийся минимум входного сигнала вдоль каждого канала независимо в зависимости от времени. Объект использует метод раздвижного окна, чтобы определить движущийся минимум. В этом методе окно заданной длины отодвинуто каждый канал, выборка выборкой, и объект определяет минимум данных в окне. Для получения дополнительной информации см. Алгоритмы.

Определить движущийся минимум входа:

  1. Создайте объект dsp.MovingMinimum и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

movMin = dsp.MovingMinimum
movMin = dsp.MovingMinimum(Len)
movMin = dsp.MovingMinimum(Name,Value)

Описание

movMin = dsp.MovingMinimum возвращает движущийся минимальный объект, movMin, с помощью свойств по умолчанию.

пример

movMin = dsp.MovingMinimum(Len) устанавливает свойство WindowLength на Len.

movMin = dsp.MovingMinimum(Name,Value) задает дополнительные свойства с помощью пар Name,Value. Незаданные свойства имеют значения по умолчанию.

Пример: movMin = dsp.MovingMinimum('SpecifyWindowLength',1,'WindowLength',10);

Свойства

развернуть все

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

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Отметьте, чтобы задать длину окна, заданную как скалярная булевская переменная.

  • tRUE Длина раздвижного окна равна значению, которое вы задаете в свойстве WindowLength.

  • ложь Длина раздвижного окна бесконечна. В этом режиме объект определяет минимум текущей выборки и всех прошлых выборок.

Длина раздвижного окна, заданного как положительное скалярное целое число.

Зависимости

Это свойство применяется, когда вы устанавливаете SpecifyWindowLength на true.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Использование

Синтаксис

y = movMin(x)

Описание

пример

y = movMin(x) определяет движущийся минимум входного сигнала, x, с помощью метода раздвижного окна.

Входные параметры

развернуть все

Ввод данных, заданный как вектор или матрица. Если x является матрицей, каждый столбец обработан как независимый канал. Движущийся минимум определяется вдоль каждого канала. Объект также принимает входные параметры переменного размера. Если объект заблокирован, можно изменить размер каждого входного канала, но вы не можете изменить количество каналов.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходные аргументы

развернуть все

Движущийся минимальный выходной параметр, возвращенный как вектор или матрица.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

развернуть все

Вычислите движущийся минимум суммы трех синусоид с переменной амплитудой. Используйте раздвижное окно длины 30.

Инициализация

Настройте входной сигнал, который является суммой трех синусоид с частотами на уровне 2 Гц, 5 Гц и 10 Гц. Частота дискретизации составляет 100 Гц. Создайте объект dsp.MovingMinimum с длиной окна 30. Создайте осциллограф времени для просмотра вывода.

sin = dsp.SineWave('SampleRate',100,...
    'Frequency',[2 5 10],...
    'SamplesPerFrame',100);
movMin = dsp.MovingMinimum(30);
scope  = dsp.TimeScope('SampleRate',100,...
    'TimeSpanOverrunAction','Scroll',...
    'TimeSpan',10,'ShowGrid',true,...
    'YLimits',[-4.5 4.5]);

Вычислите движущийся минимум

Каждый компонент синусоиды входного сигнала имеет различную амплитуду, которая меняется в зависимости от итерации. Используйте объект movMin определить минимальное значение текущей выборки и прошлых 29 выборок входного сигнала.

for index = 1:100
    sin.Amplitude = rand(1,3);
    x = sum(sin(),2);
    xmin = movMin(x);
    scope([x,xmin])
end

Алгоритмы

развернуть все

Ссылки

[1] Боденхэм, декан. “Адаптивное обнаружение фильтрации и изменения для потоковой передачи данных”. PH.D. Тезис. Имперский колледж, Лондон, 2012.

Расширенные возможности

Введенный в R2017b

Для просмотра документации необходимо авторизоваться на сайте