基于MATLAB+GUI滤波器设计说明

合集下载

基于Matlab GUI的数字滤波器设计

基于Matlab GUI的数字滤波器设计

基于Matlab GUI的数字滤波器设计【摘要】基于数字信号处理原理,在分析数字滤波器设计理论和Matlab编程技术及其GUI图形用户界面设计的基础上,开发了具有交互式特点的数字滤波器软件,界面操作简单方便,可以根据需要选择滤波器类型,输入相关参数,然后选择相应的功能按钮,就可以得到滤波器的特性参数,并进行滤波器的性能分析,打破了以往滤波器设计过程中大量繁琐的数值计算问题,为数字滤波器的设计和应用提供了一个有效的辅助工具。

【关键词】FIR;IIR;GUI数字滤波器常通过一定的运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分来实现滤波,在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。

根据其冲击响应函数的时域特性可将数字滤波器分为FIR(有限长冲激响应)和IIR(无限长冲激响应)。

然而,在传统数字滤波器的设计过程中需要大量繁琐的数值计算,如果手工计算则费时费力。

目前,数字滤波器的设计常借助计算机,利用Matlab 软件来实现。

本文就GUI这一图形界面编写功能,设计并构建了人机交互式的数字滤波器。

1.数字滤波器的设计思路及结构数字滤波器的设计包括IIR滤波器和FIR滤波器,IIR滤波器包括巴特沃斯(Butterworth)、切比雪夫(ChebyshevⅠ)滤波器、切比雪夫Ⅱ(ChebyshevⅡ)滤波器、椭圆(Ellipse)滤波器。

FIR滤波器包括Boxar、Bartlett、Blackman、Hanning、Hamming、Kaiser滤波器。

IIR的设计思想:利用已有的模拟滤波器设计理论,首先根据设计指标设计一个合适的模拟滤波器,再通过脉冲响应不变法或双线性变换法,完成从模拟到数字的变换。

设计步骤如下:(1)根据设计指标,设计最小阶数N和频率参数Wn。

可供选用的阶数选择函数有:buttord,cheblord,cheb2ord,ellipord等。

基于MATLAB GUI的数字滤波器设计与实现

基于MATLAB GUI的数字滤波器设计与实现
滤波器 的设计 加 以论 述 。
l ⅡR数 字滤 波器 的设计原理及步骤
Ⅱ R数字滤波器的设计实际上是求解滤波器系统函数 日 z 的分子分母 多项式系数 6 和 O , () z , 它是 g
数 学上 的一种逼 近 问题 。 即在 规定 意义 上去 逼近 系统 的特 性 , 如果 在 S平 面 上 去 逼 近 , 得 到模 拟滤 波 就
[ , ] btr Wp WsR , s s) N Wn = u o t d( , , p R , ; [ ,,] btp N [ ,] z2 ( , ,) zP k = ua ( );b a = p f zP k ; t
[s/] l 1( 。, ) [s/]=p h ( , , ) [ s8]= p b ( , , , w , b,8 b , = p p b aWo ,b 。 1 8 2 1 l p b aWo , b,5 l p b aWo B ) [ s/]= 8 2 2 1
维普资讯 陕ຫໍສະໝຸດ 西 理 工 学 院 学 报
第 2 卷 3
r za ]=bl e r b .s V )或 [ za ]: mp vr b ,S F ) b ,z in a( sa .s i b ,z i i a( s  ̄ ,s 。 n I
2 基 于 MA L B G I T A U 的数 字 滤 波器 设 计 思 路及 实现
[ 关
键 词 ] MA L B; ⅡR数 字 滤波 器 ; 图形用 户界 面 TA [ 中图分类号] T 9 17 N 1.2 [ 文献标识码] B
面对庞杂繁多的原始信号 , 如何提取所需信号 、 抑制不需要的信号?这就需要使用滤波器。滤波器 的作用主要是选择所需频带 的信号内容而抑制不需要 的其他频带的信号 内容。数字滤波器 因其精度 高、 可靠性好 、 灵活性大等优点 , 在语音信号处理 、 信号频谱估计 、 信号去噪、 无线通信中的数字变频以及 图像处理等工程实际应用中都很广泛。根据其冲击响应 函数 的时域特性可将数字滤波器分为 FR 有 I(

基于MATLABGUI的滤波器设计软件

基于MATLABGUI的滤波器设计软件

基于MATLABGUI的滤波器设计软件引言:滤波器是数字信号处理领域中很重要的一部分,用于对信号进行去噪、信号增强、频域变换等操作。

而滤波器设计的过程中需要进行参数调节、滤波器响应曲线的查看等操作,通过编写MATLABGUI的滤波器设计软件可以简化这一过程,提高滤波器设计的效率。

一、软件的基本功能1.滤波器类型选择功能在软件的界面上,可以选择滤波器的类型,例如低通滤波器、高通滤波器、带通滤波器、带阻滤波器等。

2.滤波器参数设置功能根据选择的滤波器类型,用户可以设置滤波器的参数。

例如,对于低通滤波器,可以设置截止频率;对于带通滤波器,可以设置通带和阻带的上下限等。

3.滤波器响应曲线展示功能软件还可以实时展示滤波器的频率响应或时域响应曲线。

用户可以通过滑动条等方式改变滤波器参数,实时查看响应曲线的变化,从而方便地进行调试和优化。

4.滤波器输出功能用户设计好滤波器后,软件可以将滤波器的参数输出为MATLAB代码或数据文件,方便用户在其他地方再次使用或进行二次开发。

二、软件的实现思路1.MATLABGUI界面设计通过MATLAB的GUI设计工具,创建软件的用户界面。

界面应该包括滤波器类型选择框、参数输入框、响应曲线图像和参数输出按钮等元素。

2.滤波器设计算法选择适合的滤波器设计算法,并将其实现为MATLAB函数。

例如,可以使用脉冲响应法、窗函数法等经典的滤波器设计算法。

3.界面与算法的交互根据用户在界面上的选择和输入,调用对应的滤波器设计算法进行滤波器设计。

设计完成后,将滤波器的响应曲线显示在界面上。

4.参数输出功能根据用户点击参数输出按钮的操作,将滤波器的参数输出为MATLAB代码或数据文件。

三、软件的优点1.操作方便:通过图形界面操作,减少了用户对MATLAB命令的使用,方便非专业用户进行滤波器设计。

2.实时展示:滤波器的响应曲线实时展示在界面上,用户可以直观地了解滤波器的性能,从而进行参数调节和优化。

MATLAB-GUI设计FIR滤波器(窗函数)

MATLAB-GUI设计FIR滤波器(窗函数)

1 数字滤波器的概述 (3)1.1 FIR数字滤波器设计原理 (3)1.2 FIR数字滤波器的特性 (4)1.3 窗函数的介绍 (6)2 FIR数字滤波器设计及实现 (7)2.1 低通滤波器的设计 (7)2.2 高通滤波器的设计 (9)2.3 带通滤波器的设计 (11)2.4 带阻滤波器的设计 (13)3基于MATLAB GUI的FIR滤波器的仿真 (15)3.1 FIR数字滤波器设计所实现的任务 (15)3.2 FIR数字滤波器界面设计 (16)3.3 FIR数字滤波器函数的编写 (17)3.3.1 菜单FilterType的回调函数 (17)3.3.2 显示类型DispType的函数 (19)3.3.3 阶数N和最小阶数N按钮的函数 (19)3.3.4 文本编辑框的回调函数 (20)3.3.5 滤波器波形按钮的回调函数 (20)3.3.6 文本框Rp和Rs的函数 (21)3.3.7 产生信号按钮的回调函数 (21)3.3.8 滤波后的信号按钮的回调函数 (22)3.3.9 按钮Quit的回调函数 (22)3.4总程序的编写 (22)4 实验结果与显示 (22)5 结束语 (22)6 感谢 (23)7 参考文献 (23)附录 (24)基于MATLAB的FIR数字滤波器的设计与仿真李宏华湛江师范学院信息科学与技术学院,湛江524048摘要:本文从FIR数字滤波器的设计原理和特性入手,实现了用MATLAB设计FIR数字滤波器的功能,重点阐述了通过MATLAB GUI实现了FIR数字滤波器的仿真。

详细介绍了MATLAB GUI界面的构建与回调函数的程序编写与调试。

关键词:MATLAB;GUI;FIR滤波器The Design and Simulation of FIR Digital Filter base onATLABLI HonghuaInformation Science & Technology School, Zhanjiang Normal University, zhanjiang,524048 ChinaAbstract:This paper starts with the design principles and characteristics of the FIR digital filter, Achieve the task of using MATLAB software to design the FIR digital filter, in particular introduction to complete the simulation of the FIR digital filter base on MATLAB GUI software. Comprehensive introduce to the building of GUI interface and the program compiled with debugging of the callback function.Key word:MATLAB; GUI; FIR Filter1 数字滤波器的概述1.1 FIR数字滤波器设计原理[1]中介绍了数字滤波器冲激响应的时域特征,可将数字滤波器分为2种,即无限长冲激响应滤波器( IIR)和有限长冲激响应滤波器(FIR) 。

基于MATLAB GUI的Gabor滤波器数字图像处理实验平台设计

基于MATLAB GUI的Gabor滤波器数字图像处理实验平台设计

基于MATLAB GUI的Gabor滤波器数字图像处理实验平台设计杨艳;夏福全;陈章宝【摘要】数字图像处理课程涉及知识面较广,颇具实用性,但现有的数字图像处理仿真实验平台体系结构复杂,对于本科生初学者来说,有一定的难度.如果缺少相应的实验系统,学生很难深入理解数字图像处理的技术原理和进行创新性的学习.利用MATLAB GUI良好的数字图像处理用户界面环境,设计了一种基于MATLAB GUI 的Ga-bor滤波器图像处理仿真实验平台.通过简单的交互操作即可完成相关图像的实验处理,即根据图像的时域和频域的窗口尺寸和方向,对图像进行特征提取,同时可选择性地呈现不同形式下的图像处理结果.实验证明该仿真平台不但为数字图像处理实验教学提供了有力的辅助工具,而且有效实现了知识的转化与应用.【期刊名称】《蚌埠学院学报》【年(卷),期】2019(008)002【总页数】4页(P57-60)【关键词】Gabor滤波器;图像处理;实验平台【作者】杨艳;夏福全;陈章宝【作者单位】蚌埠学院电子与电气工程学院,安徽蚌埠 233030;蚌埠学院理学院,安徽蚌埠 233030;蚌埠学院电子与电气工程学院,安徽蚌埠 233030【正文语种】中文【中图分类】TP391.41;TP273《数字图像处理》作为蚌埠学院电子信息工程、电子信息科学和光电信息科学与技术等电子信息类专业必修课程,涵盖的知识面比较宽,尤其是在图像特征提取、图像增强、图像滤波方面,每部分内容都涉及到了多种处理方法和算法,对学生来讲,学习和理解的难度也较大[1]。

目前,学校采用的是理论与实验相结合的教学方法,学生通过MATLAB编程方法对图像进行处理,加深对数字图像处理理论知识的理解。

但在目前的实验教学中,缺少与教材同步的实验系统,学生在深入理解数字图像处理技术原理方面有很大难度。

全国各高校教师为解决“数字图像处理”课程教学所面临的这些问题,做了很多图像处理的实验平台[2-4],在众多平台中多是一些常规的处理方法,而在图像特征提取方面基于Gabor滤波器的处理方法鲜有文献提及。

基于Matlab GUI的数字滤波器设计

基于Matlab GUI的数字滤波器设计

军一
; f 竺 H ! H
王 …

_ . L ! 』-
一ห้องสมุดไป่ตู้
岫 一 图1系统硬件组 成框 图
2 . 1核心器件 的选用 埘 与介 绍 本系统核心器件 主要 是控 制器与无线收发 态反转 器 件 ,控制器选 用台湾宏 晶科技 的S T C 1 5 W 4 0 4 S 3 . 1遥控器部分软件设计
本 系统 软件 主要分为两部分 :第一部 分, 遥控器 键盘扫描 ,将得 到的编码通过无线 模块 电 I H一 月 一f 发送 出去;第二部分 ,接 收开关板检测无 线模 — 接 、 部 腿 如 储的编码 比对 ,如果 块接 收的数据 ,与 自身存 自身存储 编码一致则将开 关状 ¨ 一 接 收到的编码与 收 比分 伽图
图3接收控制板软件工作流程图
无 线接 收 函数 的功 能是将 编 码信 息通过 . n R F 2 4 L O 1 无 线收发模块接收进来 ,具体接收 函 单 片机 ,无线收 发器件选用n R F 2 4 L 0 1 无线收发 遥 控器 部 分软 件任 务为 矩 阵键 盘 扫描 和 数如下: t i ns ig ne d ch ar nRF 24L O1 Rx Pac ket 模 块。 数据无 线发送 。单片机循 环扫描键盘 ,一旦键 S T C I 5 W 4 0 4 S 是宏 晶科 技作 为8 9 系列 盘有键 按下则将按键对应 u n s i g n e d c h a r *r x b u f ) M 替代 眦. , 敝 的编码通过无 线收发 ( 产 品推 出的一款 新型超低价 、宽电压、超低功 模 块发送 出去 。遥 控器 软件 工作流程 如 图2 所 { 耗 、高速高 可靠 、超强抗干扰 的增 强型I T 8 0 5 1 示。 u n s i g n e d c h a r r e v al e = O:

基于Matlab-GUI的EMI滤波器设计

基于Matlab-GUI的EMI滤波器设计

e q ui pme n t s. A ne w k i n d o f EM I f il t e r d e s i g n me t h o d.wh i c h a d o p t e d M a t l a b— GUI .I t ’ s a s i mpl e a l go r i t h m wi t h r e a l - t i me r e s po n s e .Th i s d e t e c t i o n me t ho d wa s it f f o r t h e s i ng l e — ph a s e a n d t h r e e— p ha s e d i f f e r e nt t o po l o g y il f t e r s .Th e il f e r wa s d e s i g n e d a c c o r d i n g t o s i mul a t i o n r e s u l t wh i c h c o mp a r e t he
的滤波器和加 入滤 波器 前后 的输入 电流干 扰进行 对 比,结果 表 明:采用 此设 计方 法是 切 实可行 的 。
பைடு நூலகம்
关键词 :E MI 滤波器 ; 电磁 兼容;共模 干扰 ;差模 干扰; 仿真
EM I Fi l t e r De s i g n Ba s e o n Ma t l a b- GUI
电子工业技术 的飞速发展 , 带动 了一系列新兴学
的状 况, 而且能把设计人 员从繁 重的计算工作 中解脱
出来,通过仿真就可 以了解 滤波 器各项性能指标 ,因
科 , 电磁 兼容 也成为 新秀 并不 断发展和 壮大 。经过 l 0 年发展 ,尤其 随着 变频器 以及 高频脉 宽调制等变 流技 术在 各种 电源设备 、 传动 设备等的广泛使用 , 其 工作频 率的不断提 高, 形成 设备间互相干扰 , 情况 日 益严重 , 电磁 兼容性 问题 已成 为电路设计工程师面 临 的极 为棘手 问题n J 。目前加装 电源 滤波器成 了解决传 导和辐射 的有效手段 , 并在 电子 设备的 电源输入 中广 泛应 用 。 但 是怎么选择一个现有 的滤波器或者设计一

基于MATLABGUI的数字滤波器设计开题报告

基于MATLABGUI的数字滤波器设计开题报告
1.2 课题研究的概况
MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。
数字滤波器早在20世纪40年代末就有人开始讨论它的可能性,50年代也有人讨论过,直到60年代中期才开始形成一套完整的正规理论。由于电子计算机技术和大规模集成电路的发展,数字滤波器已经可以用计算机软件实现,也可用大规模集成数字硬件实现。数字滤波器是对数字信号进行滤波处理[2]以得到期望的响应特性的离散时间系统。根据数字滤波器单脉冲响应的时域特性可将数字滤波器分为两种,即IIR(Infinite ImpulseResponse)无限长脉冲响应数字滤波器和FIR(Finite Impulse Response)有限长脉冲响应数字滤波器。从功能上分类,可分为低通、高通、带通、带阻滤波器。如果IIR滤波器和FIR滤波器具有相同的性能,那么通常IIR滤波器可以用较低的阶数获得高的选择性,执行速度更快,所用的存储单元更少。但相比模拟滤波器,数字滤波器具有精确度高,使用灵活,可靠性高等优点,已广泛地应用在各个科学技术领域,如语音、通信、雷达、声纳、遥感、图像、生物医学以及许多工程应用领域。随着数字信息时代的发展,数字滤波技术已经成为一门及其重要的科学和技术领域。以往的滤波器大多采用模拟电路技术,但是模拟电路技术存在很多难以解决的问题。而采用数字滤波器则可以避免很多类似的难题,当然它在其他方面也有很多突出的优点都是模拟技术所不能及的。所以采用数字滤波器对信号进行处理是目前的发展方向。目前,数字滤波器的设计在图像处理、数据压缩等方面的应用取得了令人瞩目的成就,近年来迅速发展。

基于 MATLAB GUI的 IIR 数字滤波器平台设计

基于 MATLAB GUI的 IIR 数字滤波器平台设计

基于 MATLAB GUI的 IIR 数字滤波器平台设计佚名【摘要】Combining with the research of digital filter in the digital signal processing′s theory,it analyzed the typical design methods of IIR digital filter ,built digital filter design model ,and used MATLAB to sim-ulate the design methods of IIR digital filter in this paper .It designed the interactive platform of IIR digit-al filter in MATLAB GUI graphical program environment ,which can design filter′s specifications accord-ing to the actual tasks required , compare and analyze the frequency characteristicsof analog and digital filters.Through the reading datas ,analyzing the amplitudes and the choice of filter the filting that can real-ize of the actual sample signals .%结合数字信号处理理论中对数字滤波器的研究,分析IIR数字滤波器的典型设计方法,建立数字滤波器设计模型,并利用MATLAB软件对IIR数字滤波器设计方法进行仿真。

同时,在MATLAB GUI图形界面编程环境下设计IIR数字滤波器交互式平台,该平台可根据实际任务需要来设计滤波器的技术指标,对比分析模拟滤波器和数字滤波器的频率特性,同时通过数据读取、幅值分析以及滤波器的选择实现对实际样本信号的滤波功能。

基于MATLAB GUI的图像滤波器的设计要点

基于MATLAB GUI的图像滤波器的设计要点

课程设计报告题目:图像滤波器的设计学生姓名:刘瑞学生学号: 1114030118 系别:电气信息工程学院专业:通信工程届别: 15届指导教师:陈帅电气信息工程学院制2014年6月图像滤波器的设计学生:刘瑞 指导教师:陈帅电气信息工程学院 通信工程专业1 目的与要求1.1目的:利用MATLAB 的GUI 程序设计一个简单实用的图像处理程序。

该程序具备1.2中所述的图像处理功能,以满足本次设计要求。

1.2要求:设计一个MATLAB 图形界面,可以选择输入图像文件,对图形文件进行多种加噪声,设计滤波器进行滤波处理,并显示结果。

2 方案制定2.1 设计原理:本设计利用MATLAB 软件设计图像界面以实现相应功能,图像界面,简称GUI ,是一种提供人机交互的工具和方法。

MATLAB 的GUI 为开发者提供了一个不脱离MATLAB 的开发环境,有助于MATLAB 程序的GUI 集成。

在MATLAB 中的GUIDE 就是图像用户界面开发环境,它向用户提供了一系列的创建用户图像界面的工具。

这大大简化了GUI 设计和生成的过程[]1。

2.2 功能分析设计要求该图形界面可以选择输入图像文件,可使用GUI 中的“Push Button ”按键或是通过工具条中的“Menu Editor ”设计相应功能。

本次设计采用后者实现。

在满足基本要求下,添加“保存图像”和“退出”两项菜单功能[]1。

通过三种噪声(椒盐、高斯、乘性)和两种滤波器(高通、低通)对图像进行加噪声和滤波处理。

噪声是不可预测的,只能用概率方法来认识的随机误差。

三种噪声特性见 4.2小节。

低通滤波器的功能是让低频率通过而滤掉高频,其作用是过滤包含在高频中的噪声。

所以低通滤波器的效果是图像去噪声平滑增强,但同时也抑制图像的边界,造成图像模糊。

对于大小M*N 的图像,频率点为(u,v )与频域中心距离为D (u,v ),则220.5(,)[()()]22M ND u v u v =-+- []2 (1)高通滤波器是抑制低频,让高频分量通过,其作用是使图像得到锐化处理,突出图像边界。

基于MATLABGUI的Kalman滤波程序

基于MATLABGUI的Kalman滤波程序

目录序言..................................................................................................... - 1 -第1章Kalman滤波理论................................................................... - 2 -1.1 Kalman滤波理论的应用背景.........................................................................- 2 -1.2 卡尔曼滤波的基本思想.................................................................................- 3 -1.3 卡尔曼滤波理论基础.....................................................................................- 4 -1.4 卡尔曼滤波参数的估计和调整.....................................................................- 5 -1.5 小结.................................................................................................................- 7 -第2章MATLAB及GUI编程概述 ..................................................... - 8 -2.1 MATLAB简介 ...................................................................................................- 8 -2.2 MATLAB_GUI概述...........................................................................................- 8 -第3章Kalman滤波GUI和程序的设计 ......................................... - 10 -3.1 Kalman滤波器的应用实例.......................................................................... - 10 -3.2 Kalman滤波GUI设计所实现的任务.......................................................... - 11 -3.3 GUI界面设计................................................................................................ - 11 -第4章在MATLAB_GUI下运行程序 .............................................. - 18 -4.1 通过MATLAB_GUI运行结果...................................................................... - 18 -4.2运行结果分析............................................................................................... - 18 -参考文献 ........................................................................................... - 20 -[1] Kalman R.E.A New Approach to Linear filtering and Prodiction Theory.Trans.ASME.Journal of Basic Eng,1960,82D:35-46. ................ - 20 -[2]..................................................................................................... - 20 -[4]..................................................................................................... - 20 -致谢.................................................................... 错误!未定义书签。

MATLAB-GUI设计FIR滤波器(窗函数)

MATLAB-GUI设计FIR滤波器(窗函数)

1 数字滤波器的概述 (3)1.1 FIR数字滤波器设计原理 (3)1.2 FIR数字滤波器的特性 (4)1.3 窗函数的介绍 (6)2 FIR数字滤波器设计及实现 (7)2.1 低通滤波器的设计 (7)2.2 高通滤波器的设计 (9)2.3 带通滤波器的设计 (11)2.4 带阻滤波器的设计 (13)3基于MATLAB GUI的FIR滤波器的仿真 (15)3.1 FIR数字滤波器设计所实现的任务 (15)3.2 FIR数字滤波器界面设计 (16)3.3 FIR数字滤波器函数的编写 (17)3.3.1 菜单FilterType的回调函数 (17)3.3.2 显示类型DispType的函数 (19)3.3.3 阶数N和最小阶数N按钮的函数 (19)3.3.4 文本编辑框的回调函数 (20)3.3.5 滤波器波形按钮的回调函数 (20)3.3.6 文本框Rp和Rs的函数 (21)3.3.7 产生信号按钮的回调函数 (21)3.3.8 滤波后的信号按钮的回调函数 (22)3.3.9 按钮Quit的回调函数 (22)3.4总程序的编写 (22)4 实验结果与显示 (22)5 结束语 (22)6 感谢 (23)7 参考文献 (23)附录 (24)基于MATLAB的FIR数字滤波器的设计与仿真李宏华湛江师范学院信息科学与技术学院,湛江524048摘要:本文从FIR数字滤波器的设计原理和特性入手,实现了用MATLAB设计FIR数字滤波器的功能,重点阐述了通过MATLAB GUI实现了FIR数字滤波器的仿真。

详细介绍了MATLAB GUI界面的构建与回调函数的程序编写与调试。

关键词:MATLAB;GUI;FIR滤波器The Design and Simulation of FIR Digital Filter base onATLABLI HonghuaInformation Science & Technology School, Zhanjiang Normal University, zhanjiang,524048 ChinaAbstract:This paper starts with the design principles and characteristics of the FIR digital filter, Achieve the task of using MATLAB software to design the FIR digital filter, in particular introduction to complete the simulation of the FIR digital filter base on MATLAB GUI software. Comprehensive introduce to the building of GUI interface and the program compiled with debugging of the callback function.Key word:MATLAB; GUI; FIR Filter1 数字滤波器的概述1.1 FIR数字滤波器设计原理[1]中介绍了数字滤波器冲激响应的时域特征,可将数字滤波器分为2种,即无限长冲激响应滤波器( IIR)和有限长冲激响应滤波器(FIR) 。

基于MATLAB GUI的图像滤波器的设计要点

基于MATLAB GUI的图像滤波器的设计要点

课程设计报告题目:图像滤波器的设计学生姓名:刘瑞学生学号: 1114030118 系别:电气信息工程学院专业:通信工程届别: 15届指导教师:陈帅电气信息工程学院制2014年6月图像滤波器的设计学生:刘瑞 指导教师:陈帅电气信息工程学院 通信工程专业1 目的与要求1.1目的:利用MATLAB 的GUI 程序设计一个简单实用的图像处理程序。

该程序具备1.2中所述的图像处理功能,以满足本次设计要求。

1.2要求:设计一个MATLAB 图形界面,可以选择输入图像文件,对图形文件进行多种加噪声,设计滤波器进行滤波处理,并显示结果。

2 方案制定2.1 设计原理:本设计利用MATLAB 软件设计图像界面以实现相应功能,图像界面,简称GUI ,是一种提供人机交互的工具和方法。

MATLAB 的GUI 为开发者提供了一个不脱离MATLAB 的开发环境,有助于MATLAB 程序的GUI 集成。

在MATLAB 中的GUIDE 就是图像用户界面开发环境,它向用户提供了一系列的创建用户图像界面的工具。

这大大简化了GUI 设计和生成的过程[]1。

2.2 功能分析设计要求该图形界面可以选择输入图像文件,可使用GUI 中的“Push Button ”按键或是通过工具条中的“Menu Editor ”设计相应功能。

本次设计采用后者实现。

在满足基本要求下,添加“保存图像”和“退出”两项菜单功能[]1。

通过三种噪声(椒盐、高斯、乘性)和两种滤波器(高通、低通)对图像进行加噪声和滤波处理。

噪声是不可预测的,只能用概率方法来认识的随机误差。

三种噪声特性见 4.2小节。

低通滤波器的功能是让低频率通过而滤掉高频,其作用是过滤包含在高频中的噪声。

所以低通滤波器的效果是图像去噪声平滑增强,但同时也抑制图像的边界,造成图像模糊。

对于大小M*N 的图像,频率点为(u,v )与频域中心距离为D (u,v ),则220.5(,)[()()]22M ND u v u v =-+- []2 (1)高通滤波器是抑制低频,让高频分量通过,其作用是使图像得到锐化处理,突出图像边界。

matlab简易gui界面滤波器 类型 参数 频率响应 选择信号

matlab简易gui界面滤波器 类型 参数 频率响应 选择信号

matlab简易gui界面滤波器类型参数频率响应选择信号在MATLAB 中,可以使用GUIDE 工具创建一个简易的GUI 界面,用于滤波器的设计和频率响应的显示。

以下是一个简单的示例:1. 打开MATLAB 并确保你已经安装了GUIDE 工具。

在MATLAB 命令窗口中输入`guide`命令,或者点击菜单栏的" GUIDE "按钮打开GUIDE 窗口。

2. 在GUIDE 窗口中,选择"Create New GUI"选项,并选择一个合适的模板,例如"Blank GUI"。

3. 在GUI 设计界面中,添加以下控件:- 一个下拉列表(ComboBox)用于选择滤波器类型。

- 一些文本框(EditText)用于输入滤波器的参数。

- 一个按钮(PushButton)用于生成频率响应。

- 一个图形(Graph)用于显示频率响应。

4. 设置下拉列表的"String"属性为不同的滤波器类型选项,例如"Lowpass", "Highpass", "Bandpass"等。

5. 设置文本框的"String"属性为相应的滤波器参数,例如"Cut-off Frequency"、"Bandwidth"等。

6. 在按钮的"Callback"属性中添加一个函数,用于生成频率响应并在图形中显示。

7. 在生成频率响应的函数中,根据用户选择的滤波器类型和输入的参数,使用MATLAB 的滤波器设计函数(例如`butter`、`cheby1`等)来计算频率响应,并将结果绘制在图形中。

8. 保存并运行GUI 界面,用户可以选择滤波器类型、输入参数,并点击按钮生成频率响应。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB课程设计报告基于MATLAB GUI的“滤波器设计软件”设计面对庞杂繁多的原始信号, 如何提取所需信号、抑制不需要的信号这就需要使用滤波器。

滤波器的作用主要是选择所需频带的信号容而抑制不需要的其他频带的信号容。

数字滤波器因其精度高、可靠性好、灵活性大等优点, 在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。

根据其冲击响应函数的时域特性可将数字滤波器分为IIR(有限长冲击响应)和FIR(无限长冲击响应)。

作为强大的计算软件, MATLAB提供了编写图形用户界面的功能。

所谓图形用户界面, 简称为GUI, 是由各种图形对象, 如图形窗口菜单按钮、文本框等构建的用户界面。

MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。

MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。

而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。

关键词:MATLAB GUI IIR滤波器FIR滤波器1设计任务 (1)2 MATLAB GUI的简介 (2)3 滤波器设计原理 (3)3.1滤波器概述 (3)3.2 IIR数字滤波器 (5)3.2.1 IIR数字滤波器设计原理 (5)3.2.2 IIR滤波器设计思想 (6)3.2.3 IIR滤波器设计编程实现 (7)3.3 FIR数字滤波器 (10)3.3.1 FIR数字滤波器设计原理 (10)3.3.2 FIR滤波器设计思想 (11)4 基于Matlab GUI的数字滤波器设计思路及实现 (15)4. 1 GUI界面设计概述 (15)4.2 “滤波器设计软件”设计所实现任务 (17)4.3 基于Matlab GUI的数字滤波器设计实现 (20)4.3.1 “滤波器设计软件”GUI界面设计 (20)4.3.2 “滤波器设计软件”回调函数编写 (21)4.3.3AutoChoose.m程序的编写 (28)4.4 运行和结果显示 (36)5 设计总结和心得 (42)5.1 设计总结 (42)5.2 设计心得 (44)Abstract (45)参考文献 (46)附录1设计任务1 设计目的1.巩固所学习过的关于数字信号处理的滤波器的设计2.学习使用MATLAB GUI设计工具应用平面2 设计要求要求:“滤波器设计软件”设计1、要有人机交互界面。

2、滤波器设计的类型、参数均有多个值可供选择。

3、当用户选择(或输入)滤波器的参数时,能够及时显示设计好的滤波器的频谱。

4、该软件可设计FIR或IIR型滤波器至少一种。

2 MATLAB GUI的简介MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。

它在数学类科技应用软件中在数值计算方面首屈一指。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB 成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。

MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。

MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。

而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。

3 滤波器设计原理3.1滤波器概述随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。

数字信号处理在通信、语音、图像,自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。

在数字信号处理中,数字滤波器占有极其重要的地位。

现代数字滤波器可以用软件或设计专用的数字处理硬件两种方式来实现,用软件来实现数字滤波器优点是随着滤波器参数的改变,很容易改变滤波器的性能。

根据数字滤波器单脉冲响应的时域特性可将数字滤波器分为两种, 即IIR(Infinite Impulse Response)无限长脉冲响应数字滤波器和FIR(Finite Impulse Response)有限长脉冲响应数字滤波器。

从功能上分类, 可分为低通、高通、带通、带阻滤波器。

3.2 IIR 数字滤波器3.2.1 IIR 数字滤波器设计原理滤波器的设计质上是寻找一个既能物理实现,又能满足给定频率特性指标要求的系统传输函数。

IIR 滤波器一般采用递归型的结构,系统的输入与输出服从N 阶差分方程:相应的传输函数为:设计IIR 数字滤波器就是要确定传输函数中的系数j a 、i b 或零极点增益i c 、j d 、A ,使滤波器的频率特性满足给定的性能指标要求。

设计原理主要包括两个方面:一是根据设计指标,先设计出相应的模拟滤波器再通过脉冲响应不变法或双线性变换法转换成对应的数字滤波器;二是选择一种优准则,如最小均方准则,再在 , 先最误差此准则下求出滤波器传输函数的系数。

根据设计理论,在MATLAB 环境下设计IIR 数字滤波器主要有四种方法:一是典型设计法;二是完全设计法;三是最优设计法;四是工具设计法。

由于完全设计法程序简单,我们在这里利用完全设计法设计滤波器。

3.2.2 IIR滤波器设计思想IIR滤波器设计思想是:利用已有的模拟滤波器设计理论,首先根据设计指标设计一个合适的模拟滤波器,然后再通过脉冲响应不变法或双线性变换法,完成从模拟到数字的变换。

常用的模拟滤波器有巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev) 滤波器、椭圆(Ellipse)滤波器、贝塞尔(Bessel)滤波器等,这些滤波器各有特点,供不同设计要求选用。

滤波器的模拟数字变换,通常是复变函数的映射变换,也必须满足一定的要求由于数字滤波器传输函数只与频域的相对值有关,故在设计时可先将滤波器设计指标进行归一化处理,设采样频率为Fs,归一化频率的计算公式是:利用完全设计法设计数字滤波器的步骤:(1)将设计指标归一化处理。

(2)根据归一化频率,确定最小阶数N 和频率参数Wn。

可供选用的阶数选择函数有:buttord,cheblord,cheb2ord,ellipord 等。

(3)运用最小阶数N 设计模拟低通滤波器原型。

根据最小阶数直接设计模拟低通滤波器原型,用到的函数有:butter, chebyl,cheby2, ellip 和bessel。

如[B,A] = butter(N,Wn,'type') 设计'type'型巴特沃斯(Butterworth)滤波器filter。

N为滤波器阶数,Wc为截止频率,type决定滤波器类型,type= high,设计高通IIR滤波器,ftype= stop,设计带阻IIR滤波器。

(4)再用freqz 函数验证设计结果。

3.2.3 IIR滤波器设计编程实现例如选择设计IIR的Butterworth低通滤波器,其Fs=22050Hz,Fp1=3400Hz,Fs1=5000Hz,Rp=2dB,Rs=20dB程序和效果图(图2)如下:Fs=22050;Fp1=3400;Fs1=5000;Rp=3;Rs=20;%设计指标wp1=2*Fp1 /Fs;ws1=2*Fs1 /Fs;%求归一化频率% 确定butterworth 的最小阶数N 和频率参数Wn[n,Wn]=buttord(wp1,ws1,Rp,Rs);[B,A] = butter(N,Wn);%确定传递函数的分子、分母系数[h,f]=freqz(b,a,Nn,Fs_value);%生成频率响应参数plot(f,20*log(abs(h))) %画幅频响应图plot(f,angle(h)); %画相频响应图%[N, Wn] = buttord(Wp, Ws, Rp, Rs) 确定butterworth 的N 和Wn%[N, Wn] = cheblord ( (Wp, Ws, Rp, Rs) 确定Chebyshev滤波器的N 和Wn%[N, Wn] = cheb2ord (Wp, Ws, Rp, Rs) 确定Chebyshev2滤波器的N 和Wn%[N, Wn] = ellipord (Wp, Ws, Rp, Rs)确定椭圆(Ellipse) 滤波器的N 和Wn %[B,A] = butter(N,Wn,'type') 设计'type'型巴特沃斯(Butterworth)滤波器filter.%[B,A] = cheby1 (N,R,Wn, 'type') 设计'type'型切比雪夫Ⅰ滤波器filter.%[B,A] = cheby2(N,R,Wn, 'type') 设计'type'型切比雪夫Ⅱ滤波器filter.%[B,A] = ellip(N,Rp,Rs,Wn, 'type') 设计'type' 型椭圆filter.图2 Butterworth低通滤波器3.3 FIR数字滤波器3.3.1 FIR数字滤波器设计原理根据数字滤波器冲激响应的时域特征,可将数字滤波器分为2种,即无限长冲激响应滤波器( IIR DF)和有限长冲激响应滤波器( F IR DF) 。

F IR DF具有突出的优点:系统总是稳定的、易于实现线性相位、允许设计多通带(或多阻带)滤波器。

因此F IR DF在数字信号处理中得到广泛的应用。

但与IIR DF相比,在满足同样的阻带衰减的情况下需要较高的阶数。

滤波器阶数越高将占用更多的DSP运算时间。

因此,对F IR DF的设计目标是在满足指标要求的情况下尽量减少滤波器的阶数。

相关文档
最新文档