【语言去噪】IIR+FIR滤波器语音去噪【含Matlab GUI源码 1027期】
2021/7/21 14:42:15
本文主要是介绍【语言去噪】IIR+FIR滤波器语音去噪【含Matlab GUI源码 1027期】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、简介
1 设计原理
1.1 滤波器概念
1.2 数字滤波器的系统函数和差分方程
1.3 数字滤波器结构的表示
1.4 数字滤波器的分类
2.1 IIR滤波器与FIR滤波器的分析比较
2.2 FIR滤波器的原理
3 FIR滤波器的仿真步骤
二、源代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 | function varargout = DSP(varargin) % DSP MATLAB code for DSP.fig % DSP, by itself, creates a new DSP or raises the existing % singleton*. % % H = DSP returns the handle to a new DSP or the handle to % the existing singleton*. % % DSP('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in DSP.M with the given input arguments. % % DSP('Property','Value',...) creates a new DSP or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before DSP_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to DSP_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help DSP % Last Modified by GUIDE v2.5 13-Dec-2020 17:32:39 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @DSP_OpeningFcn, ... 'gui_OutputFcn', @DSP_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});% end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before DSP is made visible. function DSP_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to DSP (see VARARGIN) % Choose default command line output for DSP handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes DSP wait for user response (see UIRESUME) % uiwait(handles.main); % --- Outputs from this function are returned to the command line. function varargout = DSP_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % -------------------------------------------------------------------- function file_Callback(hObject, eventdata, handles) % hObject handle to file (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function noise_Callback(hObject, eventdata, handles) % hObject handle to noise (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function filter_Callback(hObject, eventdata, handles) % hObject handle to filter (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function help_Callback(hObject, eventdata, handles) % hObject handle to help (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function help_doc_Callback(hObject, eventdata, handles) % hObject handle to help_doc (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function about_Callback(hObject, eventdata, handles) % hObject handle to about (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) string =str2mat(' 声音处理示例程序',[],' 版本:1.0',[],' 开发:项晓强 褚倩云 徐如林',[],' 电子邮箱:xrlin@163.com',[],' 特别鸣谢:安大航模队大力赞助'); msgbox(string); % -------------------------------------------------------------------- function IIR_Callback(hObject, eventdata, handles) % hObject handle to IIR (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function FIR_Callback(hObject, eventdata, handles) % hObject handle to FIR (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------- function flat_noise_Callback(hObject, eventdata, handles) % hObject handle to flat_noise (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) set(handles.L1,'Visible','off'); set(handles.L2,'Visible','off'); set(handles.L3,'Visible','off'); set(handles.L4,'Visible','off'); set(handles.E1,'Visible','off'); set(handles.E2,'Visible','off'); set(handles.E3,'Visible','off'); set(handles.E4,'Visible','off'); set(handles.single_run,'Enable','off'); set(handles.multi_run,'Enable','off'); set(handles.IIR_run,'Enable','off'); set(handles.FIR_run,'Enable','off'); wav = evalin('base','data'); fs = evalin('base','Fs'); reswav = awgn(wav,20);%添加信噪比为10dB的高斯噪声 assignin('base','resdata',reswav); fftwav = abs(fft(reswav)); axes(handles.Time); x = (0:length(reswav)-1)/fs; handles.Line1 = plot(x,reswav); guidata(hObject,handles);%保存值 set(handles.Time,'XMinorTick','on'); grid on; xlabel('时间/s'); ylabel('幅度'); title('时域图'); axes(handles.Freq); xf = (0:length(reswav)-1)'*fs/length(fftwav); handles.Line2 = plot(xf,fftwav); guidata(hObject,handles);%保存值 set(handles.Freq,'XMinorTick','on'); grid on; xlabel('频率/Hz'); ylabel('幅度'); title('频域图'); assignin('base','flag',1); |
三、运行结果
四、备注
版本:2014a
这篇关于【语言去噪】IIR+FIR滤波器语音去噪【含Matlab GUI源码 1027期】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
原文链接: https://blog.csdn.net/m0_54742769/article/details/118963792
- 2025-01-12百万架构师第十五课:源码分析:Spring 源码分析:SpringMVC核心原理及源码分析|JavaGuide
- 2025-01-11有哪些好用的家政团队管理工具?
- 2025-01-11营销人必看的GTM五个指标
- 2025-01-11办公软件在直播电商前期筹划中的应用与推荐
- 2025-01-11提升组织效率:上级管理者如何优化跨部门任务分配
- 2025-01-11酒店精细化运营背后的协同工具支持
- 2025-01-11跨境电商选品全攻略:工具使用、市场数据与选品策略
- 2025-01-11数据驱动酒店管理:在线工具的核心价值解析
- 2025-01-11cursor试用出现:Too many free trial accounts used on this machine 的解决方法
- 2025-01-11百万架构师第十四课:源码分析:Spring 源码分析:深入分析IOC那些鲜为人知的细节|JavaGuide