FREQZ 是计算数字滤波器的频率响应的函数 [H,W] = FREQZ(B,A,N)
可以先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数及plot()函数,即可绘制出系统在或 范围内的频响曲线。
In its simplest form, freqz
accepts the filtercoefficient vectors b
and a
,and an integer p
specifying the number of pointsat which to calculate the frequency response. freqz
returnsthe complex frequency response in vector h
, andthe actual frequency points in vector w
in rad/s.
调用freqz()的格式有以下两种:
(1)[H,w]=freqz(B,A,N)
(2)[H,w]=freqz(B,A,N,’whole’)
(1)中B和A分别为离散系统的系统函数分子、分母多项式的系数向量,返回量H则包含了离散系统频响在0~pi范围内N个频率等分点的值(其中N为正整数),w则包含了范围内N个频率等分点。调用默认的N时,其值是512。
(2)中调用格式将计算离散系统在0~pi内的N个频率等分点的频率响应的值。
例:
绘制如下系统的频响曲线
H(z)=(z-0.5)/z
MATLAB命令如下:
B=[1-0.5];
A =[10];
[H,w]=freqz(B,A,400,'whole');
Hf=abs(H);
Hx=angle(H);
clf
figure(1)
plot(w,Hf)
title('离散系统幅频特性曲线')
figure(2)
plot(w,Hx)
title('离散系统相频特性曲线')
MATLAB官方实例 http://cn.mathworks.com/help/signal/ref/freqz.html?requestedDomain=true
2018年4月23日15:27:45
更:在图像处理算子过程中如果要得到掩模模板的幅频响应,直接可以用freqz2来得到
官方实例:https://ww2.mathworks.cn/help/images/ref/freqz2.html