phased.MatchedFilter

Согласованный фильтр

Описание

MatchedFilter возразите согласованной фильтрации реализаций входного сигнала.

Вычислить совпадающий отфильтрованный сигнал:

  1. Задайте и настройте свой согласованный фильтр. Смотрите Конструкцию.

  2. Вызовите step выполнять согласованную фильтрацию согласно свойствам phased.MatchedFilter. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

Запуск в R2016b, вместо того, чтобы использовать step метод, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполните эквивалентные операции.

Конструкция

H = phased.MatchedFilter создает Системный объект согласованного фильтра, H. Объект выполняет согласованную фильтрацию на входных данных.

H = phased.MatchedFilter(Name,Value) создает объект согласованного фильтра, H, с каждым заданным набором имени свойства к заданному значению. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

Свойства

CoefficientsSource

Источник коэффициентов согласованного фильтра

Задайте, прибывают ли коэффициенты согласованного фильтра из Coefficients свойство этого объекта или от входного параметра в step. Значения этого свойства:

'Property'Coefficients свойство этого объекта задает коэффициенты.
'Input port'Входной параметр в каждом вызове step задает коэффициенты.

Значение по умолчанию: 'Property'

Coefficients

Коэффициенты согласованного фильтра

Задайте коэффициенты согласованного фильтра как вектор-столбец. Это свойство применяется, когда вы устанавливаете CoefficientsSource свойство к 'Property'. Это свойство является настраиваемым.

Значение по умолчанию: [1;1]

SpectrumWindow

Окно для взвешивания спектра

Задайте окно, используемое во взвешивании спектра с помощью одного из 'None', 'Hamming', 'Chebyshev', 'Hann', 'Kaiser', 'Taylor', или 'Custom'. Взвешивание спектра часто используется с линейной формой волны FM, чтобы уменьшать боковые лепестки во временном интервале. Объект вычисляет длину окна внутренне, чтобы совпадать с длиной БПФ.

Значение по умолчанию: 'None'

CustomSpectrumWindow

Пользовательское окно для взвешивания спектра

Задайте пользовательское окно для взвешивания спектра с помощью указателя на функцию или массива ячеек. Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к 'Custom'.

Если CustomSpectrumWindow указатель на функцию, заданная функция берет длину окна в качестве входа и генерирует соответствующие коэффициенты окна.

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

Значение по умолчанию: @hamming

SpectrumRange

Зона обслуживания окна Spectrum

Задайте область спектра, на которую окно спектра применяется как 1 2 вектор в форме  [StartFrequency EndFrequency] (в герц). Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к значению кроме 'None'.

Обратите внимание на то, что оба StartFrequency и EndFrequency измеряются в основной полосе. Таким образом, они в  [-Fs/2 Fs/2], где Fs частота дискретизации, которую вы задаете в SampleRate свойство. StartFrequency не может быть больше, чем EndFrequency.

Значение по умолчанию: [0 1e5]

SampleRate

Содействующая частота дискретизации

Задайте содействующую частоту дискретизации согласованного фильтра (в герц) как положительная скалярная величина. Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к значению кроме 'None'.

Значение по умолчанию: 1e6

SidelobeAttenuation

Уровень затухания бокового лепестка окна

Задайте уровень затухания бокового лепестка (в децибелах) окна Чебышева или Тейлора как положительная скалярная величина. Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к 'Chebyshev' или 'Taylor'.

Значение по умолчанию: 30

Beta

Параметр окна Кайзера

Задайте параметр, который влияет на затухание бокового лепестка окна Кайзера как на неотрицательный скаляр. Обратитесь к kaiser для получения дополнительной информации. Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к 'Kaiser'.

Значение по умолчанию: 0.5

Nbar

Количество почти постоянных боковых лепестков в окне Тейлора

Задайте количество почти постоянных боковых лепестков уровня, смежных с mainlobe в окне Тейлора как положительное целое число. Это свойство применяется, когда вы устанавливаете SpectrumWindow свойство к 'Taylor'.

Значение по умолчанию: 4

GainOutputPort

Выведите усиление

Чтобы получить усиление согласованного фильтра, установите это свойство на true и используйте соответствующий выходной аргумент при вызове step. Если вы не хотите получать усиление согласованного фильтра, установите это свойство на false.

По умолчанию: false

Методы

шагВыполните согласованную фильтрацию
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

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

Создайте согласованный фильтр для линейной формы волны FM.

waveform = phased.LinearFMWaveform('PulseWidth',1e-4,'PRF',5e3);
x = waveform();
filter = phased.MatchedFilter( ...
    'Coefficients',getMatchedFilter(waveform));
y = filter(x);
subplot(2,1,1),plot(real(x))
xlabel('Samples')
ylabel('Amplitude')
title('Input Signal')
subplot(2,1,2),plot(real(y))
xlabel('Samples')
ylabel('Amplitude')
title('Matched Filter Output')

Примените согласованный фильтр, с помощью Окна Хэмминга, чтобы сделать взвешивание спектра.

waveform = phased.LinearFMWaveform('PulseWidth',1e-4,'PRF',5e3);
x = waveform();
filter = phased.MatchedFilter( ...
    'Coefficients',getMatchedFilter(waveform), ...
	'SpectrumWindow','Hamming');
y = filter(x);
subplot(2,1,1)
plot(real(x))
xlabel('Samples')
ylabel('Amplitude')
title('Input Signal')
subplot(2,1,2)
plot(real(y))
xlabel('Samples')
ylabel('Amplitude')
title('Matched Filter Output')

Примените согласованный фильтр, с помощью пользовательского окна Gaussian во взвешивании спектра.

waveform = phased.LinearFMWaveform('PulseWidth',1e-4,'PRF',5e3);
x = waveform();
filter = phased.MatchedFilter( ...
    'Coefficients',getMatchedFilter(waveform), ...
	'SpectrumWindow','Custom', ...
	'CustomSpectrumWindow',{@gausswin,2.5});
y = filter(x);
subplot(2,1,1)
plot(real(x))
xlabel('Samples')
ylabel('Amplitude')
title('Input Signal')
subplot(2,1,2)
plot(real(y))
xlabel('Samples')
ylabel('Amplitude')
title('Matched Filter Output')

Алгоритмы

Операция фильтрации использует метод перекрытия-суммы.

Взвешивание спектра производит передаточную функцию

H'(F)=w(F)H(F)

где w (F) является окном, и H (F) является исходной передаточной функцией.

Для получения дальнейшей информации на теории согласованного фильтра, см. [1] или [2].

Ссылки

[1] Ричардс, M. A. Основные принципы радарной обработки сигналов. Нью-Йорк: McGraw-Hill, 2005.

[2] Skolnik, M. Введение в радиолокационные системы, 3-го Эда. Нью-Йорк: McGraw-Hill, 2001.

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

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