exponenta event banner

fwind2

2-D FIR-фильтр методом окна 2-D

Описание

fwind2 конструирование функций 2-D фильтров FIR с использованием метода окна. fwind2 использует спецификацию окна 2-D для проектирования фильтра 2-D FIR на основе требуемой частотной характеристики. fwind2 работает только с окнами 2-D. Использовать fwind1 создать 2-й фильтр ЕЛИ из 1-D окна.

Вы можете применить 2-й фильтр ЕЛИ к изображениям при помощи filter2 функция.

пример

h = fwind2(Hd,win) создает фильтр 2-D FIR h с использованием обратного преобразования Фурье желаемой частотной характеристики Hd и умножение на окно win.

h = fwind2(f1,f2,Hd,win) позволяет указать требуемую частотную характеристику Hd на произвольных частотах f1 и f2 вдоль осей X и Y.

Примеры

свернуть все

В этом примере показано, как сконструировать приблизительно круговой симметричный двухмерный полосовой фильтр с использованием метода 2-D окна.

Создание векторов частотного диапазона f1 и f2 использование freqspace. Эти векторы имеют длину 21.

[f1,f2] = freqspace(21,'meshgrid');

Вычислите расстояние каждой позиции от центральной частоты.

r = sqrt(f1.^2 + f2.^2);

Создание матрицы Hd который содержит требуемый полосовой отклик. В этом примере желаемая полоса пропускания находится в диапазоне от 0,1 до 0,5 (нормированная частота, где 1,0 соответствует половине частоты дискретизации, или δ радиан).

Hd = ones(21); 
Hd((r<0.1)|(r>0.5)) = 0;

Отображение идеального полосового отклика.

colormap(parula(64))
mesh(f1,f2,Hd)

Figure contains an axes. The axes contains an object of type surface.

Создайте 2-е Гауссовское использование окна fspecial. Нормализуйте окно.

win = fspecial('gaussian',21,2);
win = win ./ max(win(:));

Откройте окно.

mesh(win)

Figure contains an axes. The axes contains an object of type surface.

С помощью окна 2-D спроектируйте фильтр, который наилучшим образом обеспечивает требуемую частотную характеристику.

h = fwind2(Hd,win);

Отображение фактической частотной характеристики этого фильтра.

freqz2(h)

Figure contains an axes. The axes contains an object of type surface.

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

свернуть все

Требуемая частотная характеристика в равноотстоящих точках декартовой плоскости, заданная как числовая матрица. Для получения точных результатов создайте Hd с помощью freqspace функция.

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

Окно 2-D, указанное как числовая матрица.

Типы данных: single | double

Требуемая частота вдоль оси X. Частотный вектор должен находиться в диапазоне [-1, 1], где 1,0 соответствует половине частоты дискретизации, или δ радиан.

Типы данных: single | double

Требуемая частота вдоль оси Y. Частотный вектор должен находиться в диапазоне [-1, 1], где 1,0 соответствует половине частоты дискретизации, или δ радиан.

Типы данных: single | double

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

свернуть все

2-D фильтр FIR, возвращаемый как числовая матрица того же размера, что и win.

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

Алгоритмы

fwind2 вычисляет h использование обратного преобразования Фурье и умножение на двумерное окно win.

hd (n1, n2) = 1 () 2∫−ππ∫−ππHd (start1, start2) ej

h (n1, n2) = hd (n1, n2) w (n1, n2)

Ссылки

[1] Lim, Jae S., двумерная обработка сигналов и изображений, Englewood Cliffs, NJ, Prentice Hall, 1990, стр. 202-213.

См. также

| | | | |

Представлен до R2006a