ftrans2

2D КИХ-фильтр с помощью преобразования частоты

Описание

h = ftrans2(b,t) производит двумерный КИХ-фильтр h это соответствует одномерному КИХ-фильтру b использование преобразования t. Матрица преобразования t содержит коэффициенты, которые задают преобразование частоты, чтобы использовать.

пример

h = ftrans2(b) использование Макклеллан преобразовывает матричный t.

t = [1 2 1; 2 -4 2; 1 2 1]/8;

Примеры

свернуть все

Используйте ftrans2 спроектировать приблизительно циркулярный симметричный двумерный полосовой фильтр с полосой пропускания между 0,1 и 0.6 (нормированная частота, где 1.0 соответствует половине частоты дискретизации или π радианов). Начиная с ftrans2 преобразовывает одномерный КИХ-фильтр, чтобы создать двумерный фильтр, сначала спроектировать одномерный КИХ-полосовой фильтр с помощью функции Signal Processing Toolbox firpm.

colormap(jet(64))
b = firpm(10,[0 0.05 0.15 0.55 0.65 1],[0 0 1 1 0 0]);
[H,w] = freqz(b,1,128,'whole');
plot(w/pi-1,fftshift(abs(H)))

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

Используйте ftrans2 со значением по умолчанию преобразование Макклеллана, чтобы создать желаемый приблизительно циркулярный симметричный фильтр.

h = ftrans2(b);
freqz2(h)

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

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

свернуть все

КИХ-фильтр в виде числовой матрицы. b должен быть 1D Тип I (даже симметричный, нечетная длина) фильтр тот, который может быть возвращен fir1 (Signal Processing Toolbox), fir2 (Signal Processing Toolbox), или firpm (Signal Processing Toolbox).

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

Матрица преобразования в виде числовой матрицы. t содержит коэффициенты, которые задают преобразование частоты, чтобы использовать. По умолчанию, ftrans2 использование Макклеллан преобразовывает матрицу.

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

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

свернуть все

2D КИХ-фильтр, возвращенный как числовая матрица. ftrans2 возвращает h как вычислительная молекула, которая является соответствующей формой, чтобы использовать с filter2. Если t m- n и b имеет длину Q, затем h размер ((m-1)*(Q-1)/2+1)- ((n-1)*(Q-1)/2+1).

Алгоритмы

Преобразование ниже задает частотную характеристику двумерного фильтра, возвращенного ftrans2.

H(ω1,ω2)=B(ω)|cosω=T(ω1,ω2),

где B (ω) является преобразованием Фурье одномерного фильтра b:

B(ω)=n=NNb(n)ejωn

и T (ω1, ω2) является преобразованием Фурье матрицы преобразования t:

T(ω1,ω2)=n2n1t(n1,n2)ejω1n1ejω2n2.

Возвращенный фильтр h обратное преобразование Фурье H (ω1, ω2):

h(n1,n2)=1(2π)2ππππH(ω1,ω2)ejω1n1ejω2n2dω1dω2.

Ссылки

[1] Лим, Джэ С., Двумерная Обработка сигналов и Обработка изображений, Englewood Cliffs, NJ, Prentice Hall, 1990, стр 218-237.

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