FIR数字滤波器的设计[Matlab][带源码]
本次为实验项目,在学习数字信号处理课程需要利用matlab来巩固所学知识
参考博主为整个项目实验,本次我们所需只需前三问即可。
FIR数字滤波器的设计_A Master的博客-CSDN博客_fir数字滤波器的设计
一、实验内容
(1)N=45,计算并画出矩形窗、汉明窗、布莱克曼窗归一化的幅度谱,并比较各自的主要特点。
(2) N=15,带通滤波器的两个通带边界分别是w1 =0.3π,w2=0.5π。用汉宁窗设计此线性相位带通滤波器,观察它的实际3dB和20dB带宽。N=45,重复这一设计,观察幅频和相位特性的变化 ,注意长度N变化的影响。
(3)分别改用矩形窗和布莱克曼窗,设计(2)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点。
二、实验流程
2.1 N=45,画出矩形窗、汉明窗、布莱克曼窗归一化的幅度谱。
可以看到图1为三种窗函数的汇总,图2为三种窗口函数的时域波形和分开展示的幅度谱。
具体代码见下:将汇总拆开只需要subplot函数来规划区域即可。
clear all;
N=45;
%矩形窗
wn1=boxcar(N);
%汉明窗
wn2=hanning(N);
%布莱克曼窗
wn3=blackman(N);
[h1,w1]=freqz(wn1,1);% 调用freqz函数求数字滤波器的频率响应[h2,w2]=freqz(wn2,1);
[h3,w3]=freqz(wn3,1);
%其分贝转化=20log10(h)
plot(w1/pi,20*log10(abs(h1)),'r-',w2/pi,20*log10(abs(h2)),'m--',w3/pi,20*log10(abs(h3)),'b-.');
xlable('归一化频率/\pi'); ylable('幅度/db');
title('矩形窗red','汉明窗purple','布莱克曼窗blue');
2.2 采样N=15和N=45汉宁窗设计带通滤波器,通带边界为0.3pi和0.5pi。
具体代码见下:第三问只需要将窗口函数hanning分别改为boxcar和blackman即可
clear all;
N1=15;
wn=[0.3,0.5];
window=hanning(N1+1);
b1=fir1(N1,wn,window);
[h1,w]=freqz(b1);
subplot(2,2,1);
plot(w/pi,20*log10(abs(h1)),'r');
xlabel('归一化频率/\pi');ylabel('幅度/dB');
title('N=15,幅度特性');
subplot(2,2,3);
plot(w/pi,angle(h1),'r');
title('N=15,相位特性');N2=45;
wn2=[0.3,0.5];
window2=hanning(N2+1);
b2=fir1(N2,wn2,window2);
[h2,w1]=freqz(b2);
subplot(2,2,2);
plot(w1/pi,20*log10(abs(h2)),'m');
title('N=45,幅度特性');
xlabel('归一化频率/\pi');ylabel('幅度/dB');
subplot(2,2,4);
plot(w/pi,angle(h2),'r');
title('N=45,相位特性');
上述代码主要使用了fir1函数来设计其滤波器,其函数中各个参数使用:
b:返回fir滤波器的单位脉冲相应,偶对称,长度为n+1;
n:滤波器的阶数,设计出的滤波器长度为n+1;
wn:滤波器的截止频率,取值范围0<wn<1,1对应采样频率的1/2。当需要设计低通/高通滤波器,wn是单个值的,即截至频率,ftype参数是low/high;;当设计带通/带阻滤波器时,wn由两个数组成的向量[wn1 wn2],ftype参数是bandpass/stop;
window:指定使用的窗函数,默认是汉明窗(Hamming),最常用的还有汉宁(Hanning)、布莱克曼窗(Blackman)、凯赛窗(Kaiser);
b=fir1(n,wn);b=fir1(n,wn,'ftype');b=fir1(n,wn,'ftype',window)
为了显示的更加美观和简便可以使用GUI交互界面来达到更好的展示效果:图片展示如下,可以看到其实验所需的图形在一个界面便可以展示,当我们想要使用时,点击相关控制按键即可。
本次实验相对来说代码量较少,主要为分析其设计的流程和效果分析,对于课程知识的巩固很有帮助,对于滤波器的设计是个较为复杂的过程,相关知识大家可以自行寻找资源查看。
FIR数字滤波器的设计[Matlab][带源码]相关推荐
- 中小型手机棋牌网络游戏服务端架构设计(带源码)
承接自己<中小型棋牌类网络游戏服务端架构>博文,用Golang实现基础架构逻辑后,准备再次谈谈我的想法. 已实现的逻辑与前文描述有几点不同: Gateway更名为Proxy,DBProxy ...
- 基于matlab数字滤波器设计,基于MATLAB的FIR数字滤波器的设计
摘 要 传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用.本文介绍了一种利用MATLAB信号处理工具箱(Signal Processing Toolbox)快速有效的设计 ...
- FIR数字滤波器的设计及应用——MATLAB
一.实验目的 1.掌握FIR数字滤波器设计的一般方法和步骤: 2.了解各种窗函数的性能 3.学会利用窗函数法设计FIR数字滤波器: 4.掌握FIR数字滤波器的实现方法 5.学会用所设计的滤波器对实际信 ...
- 基于Java毕业设计爱心公益网站设计与制作源码+系统+mysql+lw文档+部署软件
基于Java毕业设计爱心公益网站设计与制作源码+系统+mysql+lw文档+部署软件 基于Java毕业设计爱心公益网站设计与制作源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...
- 计算机毕业设计JavaVue垃圾分类指南平台设计与实现(源码+系统+mysql数据库+lw文档)
计算机毕业设计JavaVue垃圾分类指南平台设计与实现(源码+系统+mysql数据库+lw文档) 计算机毕业设计JavaVue垃圾分类指南平台设计与实现(源码+系统+mysql数据库+lw文档) 本源 ...
- Spring MVC 4 RESTFul Web Services CRUD例子(带源码)【这才是restful,超经典】
[本系列其他教程正在陆续翻译中,点击分类:spring 4 mvc 进行查看.源码下载地址在文章末尾.] [翻译 by 明明如月 QQ 605283073] 原文地址:http://websystiq ...
- java计算机毕业设计宠物救助网站的设计与实现源码+数据库+系统+lw文档+部署
java计算机毕业设计宠物救助网站的设计与实现源码+数据库+系统+lw文档+部署 java计算机毕业设计宠物救助网站的设计与实现源码+数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 ...
- 龙格库塔法解微分方程组的matlab程序,MATLAB实例源码教程:龙格库塔法求解微分方程组源代码实例.doc...
MATLAB实例源码教程:龙格库塔法求解微分方程组源代码实例.doc MATLAB实例源码教程龙格库塔法求解微分方程组源代码实例题目用经典 Runge-Kutta方法求下列一阶微分方程组的近似解y1 ...
- MyEclipse使用总结——使用MyEclipse打包带源码的jar包
平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今 ...
最新文章
- python从入门到实践笔记_Python编程从入门到实践二至七章笔记
- Protobuf在Unity中的通讯使用
- 一个简易的webpack开发环境
- 【jQuery】使用id选择器,找出外层div中嵌套的内层div
- Google Guava MultiMaps
- 傅里叶变换 直观_A / B测试的直观模拟
- [css] position的relative和absolute定位原点是哪里?
- Navicat premium查看数据库表中文注释的两种方式
- 360好搜鬼畜视频一下两下成洗脑热词
- 5.网络层(3)---路由选择协议
- mysql ON DUPLICATE KEY UPDATE重复插入时更新
- BZOJ-4706 B君的多边形 OEIS
- MTK GPS问题调试
- 【新农合专题】新农合系统资料汇总贴(新增134个)
- MCSA / Windows Server 2016 服务器升级和迁移
- 奥维互动地图自建服务器,奥维中如何添加在线自定义地图
- 爬虫小程序 - 周杰伦歌曲
- 湖中剑 GitHub周刊 #10 | 开源监控uptime-kuma、LVGL嵌入式UI、node版本管理nvm
- C++学习(一八一)android的NDK、SDK版本的对应关系
- FMVP詹姆斯,王者归来!英雄实至名归!
热门文章
- qqwry.dat的数据结构解释
- 创新数据库技术 成就IOD愿景携DB2 25载创新 IBM推新“信息议程”
- java 数据库连接池链接数据库
- JVM垃圾收集器(三)
- 打开FTP服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹
- oracle七参数坐标转换,MapGIS国土空间数据2000大地坐标系转换系统
- Android原生集成MUI框架进行混合开发
- h5 input type 属性为tel苹果系统可以直接获取数字短信验证码
- 一文带你了解Hive【详细介绍】Hive与传统数据库有什么区别?
- 李嘉诚--理财--如何支配你的金钱