如何实现Matlab fvtool滤波器频响的幅度显示归一化

发布时间:2021-12-30 17:43:14 作者:小新
来源:亿速云 阅读:585

这篇文章给大家分享的是有关如何实现Matlab fvtool滤波器频响的幅度显示归一化的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

  我们在用matlab设计滤波器后,可以用fvtool来看滤波器的频响,比如我们有了滤波器的系数后,直接用fvtool。

fircoe = [0.018641, 0.018275,-0.020377,-0.071243,-0.049673,...
    0.094562, 0.28841, 0.37949, 0.28841, 0.094562,-0.049673,...
    -0.071243,-0.020377, 0.018275, 0.018641];
fvtool(fircoe);
 

如何实现Matlab fvtool滤波器频响的幅度显示归一化

  从图中可以很容易看出,阻带衰减大概在40db左右。

  但还有些滤波器,设计出来后增益并不是0,比如下面的cic滤波器。我们首先用dsp.CICDecimator设计了一个CIC滤波器,然后紧跟着一个CIC补偿滤波器,该补偿滤波是一个FIR滤波器。最后把这两个滤波器和CIC+FIR级联后的频响画到一图中。

fs = 100e6;
cic_rate = 4;
cic_flt = dsp.CICDecimator(cic_rate,1,5);
fpass=fs/cic_rate*0.35/2;
fstop=fs/cic_rate*0.5/2;
cic_comp = design(fdesign.ciccomp(cic_flt.DifferentialDelay, ...
        cic_flt.NumSections,fpass,fstop,.3,20,fs/cic_rate));
comp_fir = dsp.FIRFilter('Numerator',cmop_coe);
cascade_flt = cascade(cic_flt,comp_fir);
fvtool(cic_flt,comp_fir,...
cascade_flt,'Fs',[fs fs/cic2_rate fs])
yticks([-200:20:0])
 

如何实现Matlab fvtool滤波器频响的幅度显示归一化

  从图中可以看出,补偿的FIR滤波器增益大概为0,而CIC滤波器增益在60dB。怎么把CIC滤波器的频响显示的幅度也归一化到0呢?(因为归一化到0后,在文档中就很容易看出该滤波器阻带抑制特性)

  可以在fvtool的窗口中,右键选择Analysis Parameters...,如下图。

如何实现Matlab fvtool滤波器频响的幅度显示归一化

然后再勾选Normalize Magnitude to 1(0dB),再点Save as Default


如何实现Matlab fvtool滤波器频响的幅度显示归一化

这样以后我们再用fvtool画滤波器频谱时,就会显示成归一化的样式。

如何实现Matlab fvtool滤波器频响的幅度显示归一化


感谢各位的阅读!关于“如何实现Matlab fvtool滤波器频响的幅度显示归一化”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. 如何使用MATLAB和Python实现MFCC特征参数提取
  2. 梅尔频率倒谱系数(mfcc)及Python实现

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

matlab

上一篇:Python Django怎么实现登录注册

下一篇:全文搜索Sphinx怎么实现

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》