dsp.ZeroCrossingDetector

Обнаружьте нулевые пересечения

Описание

dsp.ZeroCrossingDetector Система object™ считает число раз перекрестным нулем сигнала или изменяет знак. Чтобы обнаружить, если сигнал в данном канале пересекает нуль, объект ищет следующие условия, где, xi-l является текущим значением сигналов, и xi-1 является предыдущим значением сигналов:

  • xi <0 и xi-1> 0

  • xi> 0 и xi-1 <0

  • Для некоторого положительного целочисленного L, xi <0, xi-l = 0, и xi-L-1> 0, где 0lL.

  • Для некоторого положительного целочисленного L, xi> 0, xi-l = 0, и xi-L-1 <0, где 0lL.

Для первого входного значения xi-1 и xi-2 являются нулем.

Чтобы считать число раз, сигнал пересекает нуль или изменяет знак:

  1. Создайте dsp.ZeroCrossingDetector object.

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

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

Создание

Описание

пример

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

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

Синтаксис

Описание

пример

zcdOut = zcd(input) вычисляет количество нулевых пересечений входа. Каждый столбец входа обработан как независимый канал.

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

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

Ввод данных, нулевые пересечения которого считаются объектом в виде вектора или матрицы.

Пример: rand(20,1)-0.3

Пример: rand(20,2)-0.3

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

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

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

Количество нулевых пересечений во вводе данных, возвращенном как одно из следующего:

  • скаляр – Когда ввод данных является вектор-столбцом, скалярный выход, является количеством нулевых пересечений во вводе данных..

  • вектор-строка – Когда ввод данных является матрицей, каждым элементом в векторе-строке выход, является количеством нулевых пересечений в соответствующем столбце ввода данных.

Пример: 10

Пример: [9,6]

Типы данных: uint32

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

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

release(obj)

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

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

Примеры

свернуть все

Примечание: Если вы используете R2016a или более ранний релиз, заменяете каждый вызов объекта с эквивалентным step синтаксис. Например, obj(x) становится step(obj,x).

Найдите количество нулевых пересечений в данных об электрокардиограмме.

EcgData = ecg(500)';
zcd = dsp.ZeroCrossingDetector;
numZeroCross = zcd(EcgData)
numZeroCross = uint32
    4
plot(1:500,EcgData,'b',[0 500],[0 0],'r','linewidth',2)

Figure contains an axes object. The axes object contains 2 objects of type line.

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

Смотрите также

Объекты

Представленный в R2012a