dsp.SubbandAnalysisFilter

Разложите сигнал на высокочастотные и низкочастотные поддиапазоны

Описание

dsp.SubbandAnalysisFilter объект разлагает сигнал на высокочастотные и низкочастотные поддиапазоны, каждого с половиной пропускной способности входа.

Разлагать сигнал на высокочастотные и низкочастотные поддиапазоны:

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

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

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

Создание

Описание

subAna = dsp.SubbandAnalysisFilter возвращает двухканальный аналитический фильтр поддиапазона, subAna, это разлагает входной сигнал на высокочастотный поддиапазон и низкочастотный поддиапазон, каждого с половиной пропускной способности входа.

пример

subAna = dsp.SubbandAnalysisFilter(lpc,hpc) возвращает двухканальный аналитический фильтр поддиапазона, subAna, с набором свойств LowpassCoefficients к lpc и HighpassCoefficients набор свойств к lpc.

subAna = dsp.SubbandAnalysisFilter(Name,Value) возвращает двухканальный аналитический фильтр поддиапазона, subAna, с каждым заданным набором свойств к заданному значению.

Свойства

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

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

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

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

Задайте вектор КИХ-коэффициентов фильтра lowpass в убывающих степенях z. Для фильтра lowpass используйте полуленточный фильтр, который передает диапазон частот, зашел в фильтр, заданный в HighpassCoefficients свойство. Значения по умолчанию этого свойства задают фильтр на основе третьего порядка вейвлет Daubechies.

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

Задайте вектор highpass КИХ-коэффициентов фильтра в убывающих степенях z. Для фильтра highpass используйте полуленточный фильтр, который передает диапазон частот, зашел в фильтр, заданный в свойстве LowpassCoefficients. Значения по умолчанию этого свойства задают фильтр на основе третьего порядка вейвлет Daubechies.

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

Свойства фиксированной точки

Задайте, использовать ли правила полной точности. Если вы устанавливаете FullPrecisionOverride к true, который является значением по умолчанию, объект вычисляет все внутренние типы арифметических и выходных данных, использующие правила полной точности. Эти правила обеспечивают самые точные численные данные фиксированной точки. Это также выключает отображение других свойств фиксированной точки, потому что они не применяются индивидуально. Эти правила гарантируют, что никакое квантование не происходит в объекте. Биты добавляются, по мере необходимости, чтобы гарантировать, что никакое округление или переполнение не происходят. Если вы устанавливаете FullPrecisionOverride к false, типами данных с фиксированной точкой управляют посредством отдельных настроек свойства фиксированной точки. Для получения дополнительной информации смотрите Полную точность для Системных объектов Фиксированной точки.

Типы данных: логический

Задайте метод округления.

Зависимости

Это свойство применяется, только если объект не находится в режиме максимальной точности.

Задайте действие переполнения как Wrap или Saturate.

Зависимости

Это свойство применяется, только если объект не находится в режиме максимальной точности.

Задайте КИХ-содействующий тип данных с фиксированной точкой фильтра как Same word length as input или Custom.

Задайте КИХ-содействующую фиксированную точку фильтра как numerictype объект с Signedness из Auto.

Зависимости

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

Задайте тип данных продукта как один из Full precision | Same as input | Custom.

Задайте фиксированную точку продукта как масштабированный numerictype объект с Signedness из Auto.

Зависимости

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

Задайте тип данных аккумулятора как Full precision, Same as input, Same as product, или Custom.

Задайте фиксированную точку аккумулятора как масштабированный numerictype объект с Signedness из Auto.

Зависимости

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

Задайте тип выходных данных как Same as accumulator, Same as product, Same as input, или Custom.

Задайте тип данных с фиксированной точкой на выходе как масштабированный numerictype объект с Signedness из Auto.

Зависимости

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

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

Синтаксис

Описание

пример

[hi,lo] = subAna(x) анализирует входной сигнал, x, в высокочастотный поддиапазон, hi, и низкочастотный поддиапазон, lo.

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

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

Ввод данных, заданный как вектор-столбец или матрица. Количество строк во входе должно быть четным числом.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fi
Поддержка комплексного числа: Да

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

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

Высокочастотный поддиапазон, возвращенный как вектор-столбец или матрица. Количество строк в этом выходе является половиной количества входных строк.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fi
Поддержка комплексного числа: Да

Низкочастотный поддиапазон, возвращенный как вектор-столбец или матрица. Количество строк в этом выходе является половиной количества входных строк.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fi
Поддержка комплексного числа: Да

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

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

release(obj)

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

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

Примеры

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

Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным step синтаксис. Например, myObject (x) становится шагом (myObject, x).

Разложите сигнал на низкую частоту и высокочастотные поддиапазоны с помощью аналитического фильтра поддиапазона. Восстановите сигнал с помощью фильтра синтеза поддиапазона.

load dspwlets; % load the filter coefficients lod, hid, lor and hir
subAna = dsp.SubbandAnalysisFilter(lod, hid);
subSynth = dsp.SubbandSynthesisFilter(lor, hir);
u = randn(128,1);

[hi, lo] = subAna(u); % Two channel analysis
y = subSynth(hi, lo); % Two channel synthesis

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

plot(u(1:end-7)-y(8:end));

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока Two-Channel Analysis Subband Filter. Свойства объектов соответствуют параметрам блоков, кроме:

  • SubbandAnalysisFilter объект не имеет свойства, которое соответствует параметру Input processing блока Two-Channel Analysis Subband Filter. Объект принимает, что вход является базирующейся системой координат и всегда обеспечивает уровень входного кадра.

  • Параметры блоков Rate options не поддержаны dsp.SubbandAnalysisFilter объект.

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

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

Системные объекты

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