fsamp2

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

Синтаксис

h = fsamp2(Hd)
h = fsamp2(f1,f2,Hd,[m n])

Описание

пример

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

h = fsamp2(f1,f2,Hd,[m n]) производит m-by-n КИХ-фильтр путем соответствия с ответом фильтра в точках в векторах f1 и f2. f1 векторов частоты и f2 находятся в нормированной частоте, где 1.0 соответствует половине частоты дискретизации или π радианов. Получившийся фильтр соответствует желаемому ответу максимально тесно в смысле наименьших квадратов. Для лучших результатов должны быть, по крайней мере, желаемые точки частоты m*n. fsamp2 выдает предупреждение, если вы задаете меньше, чем точки m*n.

Примеры

свернуть все

Используйте fsamp2, чтобы разработать приблизительно симметричный, двумерный полосовой фильтр с полосой пропускания между 0,1 и 0.5 (нормированная частота, где 1.0 соответствует половине частоты дискретизации, или π радианы).

Создайте матричный Hd, который содержит желаемый полосовой ответ. Используйте freqspace, чтобы создать векторы частоты f1 и f2.

[f1,f2] = freqspace(21,'meshgrid');
Hd = ones(21); 
r = sqrt(f1.^2 + f2.^2);
Hd((r<0.1)|(r>0.5)) = 0;
colormap(jet(64))
mesh(f1,f2,Hd)

Разработайте фильтр, который проходит через этот ответ.

h = fsamp2(Hd);
freqz2(h)

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

свернуть все

Частотная характеристика, заданная как числовая матрица. Hd является матрицей, содержащей желаемую частотную характеристику, выбранную в равномерно распределенных точках между-1.0 и 1.0 вдоль осей частоты X и Y. Значение 1.0 соответствует половине частоты дискретизации или π радианов.

Hd(f1,f2)=Hd(ω1,ω2)|ω1=πf1,ω2=πf1

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

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

Вектор частоты, заданный как числовой вектор.

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

Вектор частоты, заданный как числовой вектор.

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

Размер вывода FIR фильтрует h, заданный как вектор с 2 элементами положительных целых чисел. Фильтр имеет строки m и столбцы n.

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

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

свернуть все

2D КИХ-фильтр, возвращенный как числовой массив. fsamp2 возвращает h как вычислительную молекулу, которая является соответствующей формой, чтобы использовать с filter2. Если вы задаете матрицу частотной характеристики Hd, то h имеет тот же размер. Если Hd имеет класс single, h имеет также класс single. В противном случае h имеет класс double.

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

Алгоритмы

fsamp2 вычисляет фильтр h путем взятия обратного дискретного преобразования Фурье желаемой частотной характеристики. Если желаемая частотная характеристика действительна и симметрична (нулевая фаза), получившийся фильтр является также нулевой фазой.

Ссылки

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

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