精华内容
下载资源
问答
  • matlab汉宁窗代码
    2022-02-18 20:54:29

    一、代码运行视频(哔哩哔哩)

    【Matlab语音处理】汉宁窗FIR陷波滤波器语音信号加噪去噪【含GUI源码 1711期】

    二、matlab版本及参考文献

    1 matlab版本
    2014a

    2 参考文献
    [1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.
    [2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.
    [3]尹学爱,马国利,冯伟伟.基于MATLAB的声音信号频谱分析仪[J]. 广播与电视技术. 2019,46(01)

    更多相关内容
  • matlab汉宁窗代码短期客观可懂度测量 如 CH Taal、RC Hendriks、R. Heusdens、J. Jensen 'A Short-Time Objective Intelligibility Measure for Time-Frequency Weighted Noisy Speech' , ICASSP 2010, Texas 中所述...
  • matlab汉宁窗代码
  • matlab汉宁窗代码Matlab音频缓冲区 这个类旨在提供一个方便的界面来处理按块(音频)信号。 它可以与单通道或多通道信号一起使用,并处理音频文件和信号向量/矩阵。 它继承自matlab.System ,在未来的版本中,可用作...
  • matlab汉宁窗代码#Acceleration of Spectral Domain Phase Microscopy for Optical Coherence Tomography #Project for EECSE4750_001_2019_3 - HETEROGEN COMP-SIG PROCESSING #由于患者的隐私,我们无法在github...
  • matlab汉宁窗代码樱桃室 - 耳间相干估计应用程序版本 1.0 文档文件作者/开发者:Lampros Chantzis 日期:26/11/2019 一般的“Cherry Room”是用Matlab的App Designer开发的Matlab插件。 它使用帧处理算法来估计和...
  • matlab汉宁窗代码工程-振动 用于工程振动工程问题分析的 Matlab 代码文件。 P1 - 四个阻尼比的自由振动图。 (ζ = 0.01, 0.1, 1, 10) P2 - 考虑线性和非线性情况的简单钟摆运动图。 P3 - 具有初始条件的阻尼振动系统...
  • matlab汉宁窗代码
  • 可直接运行 MATLAB信号处理 频谱分析加汉宁窗函数 源代码程序.rar
  • 汉宁窗傅里叶变换matlab代码 功率谱图 该存储库具有用于计算和可视化基于傅立叶和小波变换的功率谱图的MATLAB脚本。 基于FT的方法包括hann_spectrogram.m和mtp_spectrogram.m ,它们分别使用Hanning窗函数和采用锥形...
  • 资源名:MATLAB信号处理 频谱分析加汉宁窗函数 源代码.rar 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合人群:...
  • 汉宁窗傅里叶变换matlab代码光谱 用于绘制音频频谱的MATLAB脚本 描述 频谱 读取音频文件,进行播放并实时绘制频谱。 频谱的样式取决于所选择的refreshFig函数。 要更改refreshFig功能,只需将refreshFig.m替换为...
  • 汉宁窗傅里叶变换matlab代码Matlab音频过滤 为了充分了解设备的性能,还必须在频域中分析信号。 这正是频谱分析仪的工作。 但是,应该指出的是,随着数字技术的飞速发展,这种区别变得越来越模糊。 一些示波器可以...
  • fir汉宁窗II型低通滤波器的matlab程序
  • 汉宁窗傅里叶变换matlab代码自适应陀螺陷波滤波 信号调理是控制策略的重要组成部分。 在多转子控制的情况下,机载陀螺仪提供角速度测量值,这些测量值直接用于将实际角速度驱动到所需的角速度。 在这种设置下,陀螺...
  • 快速傅里叶变换是应用最广泛的一种谐波检测方法,但直接利用快速傅里叶变换进行谐波检测存在较大的误差,影响谐波分析结果的准确性。...MATLAB仿真结果表明,加汉宁窗插值算法具有检测精度好,实现简单的优点。
  • 结合数字滤波器的理论基础和设计方法,在MATLAB程序语言环境下,设计出有限长单位脉冲响应(FIR)数字滤波器,同时利用GUI界面设计FIR数字滤波器人机交互平台,该系统平台界面直观、操作简单且功能齐全,可实现对加噪语音...

    1 简介

    结合数字滤波器的理论基础和设计方法,在MATLAB程序语言环境下,设计出有限长单位脉冲响应(FIR)数字滤波器,同时利用GUI界面设计FIR数字滤波器人机交互平台,该系统平台界面直观、操作简单且功能齐全,可实现对加噪语音信号的去噪滤波功能.平台主要包括语音信号、加噪信号、FIR数字滤波器设计和去噪信号四个模块,用户可根据读入的语音信号及噪声信号特点调整滤波器技术指标,实现滤波器的优化设计,最终达到FIR数字滤波器对语音信号的去噪处理效果.

    2 部分代码

    function varargout = filter_config(varargin)% FILTER_CONFIG M-file for filter_config.fig%      FILTER_CONFIG, by itself, creates a new FILTER_CONFIG or raises the existing%      singleton*.%%      H = FILTER_CONFIG returns the handle to a new FILTER_CONFIG or the handle to%      the existing singleton*.%%      FILTER_CONFIG('CALLBACK',hObject,eventData,handles,...) calls the local%      function named CALLBACK in FILTER_CONFIG.M with the given input arguments.%%      FILTER_CONFIG('Property','Value',...) creates a new FILTER_CONFIG or raises the%      existing singleton*.  Starting from the left, property value pairs are%      applied to the GUI before filter_config_OpeningFcn gets called.  An%      unrecognized property name or invalid value makes property application%      stop.  All inputs are passed to filter_config_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 filter_config% Last Modified by GUIDE v2.5 20-Nov-2012 22:45:50% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name',       mfilename, ...                   'gui_Singleton',  gui_Singleton, ...                   'gui_OpeningFcn', @filter_config_OpeningFcn, ...                   'gui_OutputFcn',  @filter_config_OutputFcn, ...                   'gui_LayoutFcn',  [] , ...                   'gui_Callback',   []);if nargin && ischar(varargin{1})    gui_State.gui_Callback = str2func(varargin{1});endif 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 filter_config is made visible.function filter_config_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 filter_config (see VARARGIN)% Choose default command line output for filter_confighandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes filter_config wait for user response (see UIRESUME)% uiwait(handles.panal1);% --- Outputs from this function are returned to the command line.function varargout = filter_config_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 structurevarargout{1} = handles.output;axes(handles.axes1);plot(20*log10(abs(fft(bs))));axis([0 3*Wn -inf inf]);axes(handles.axes2);plot(angle(fft(bs)));axis([-inf inf -inf inf]);setappdata(handles.panal1,'bl1',bl1);setappdata(handles.panal1,'bl2',bl2);setappdata(handles.panal1,'bf_window',bf_window);setappdata(handles.panal1,'bh',bh);setappdata(handles.panal1,'bs',bs);setappdata(handles.panal1,'Wn',Wn);setappdata(0,'bs',bs);setappdata(0,'bh',bh);setappdata(0,'bl1',bl1);% --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject    handle to pushbutton2 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --- Executes on button press in close.function close_Callback(hObject, eventdata, handles)% hObject    handle to close (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)clc;close filter_config;function Wn_Callback(hObject, eventdata, handles)% hObject    handle to Wn (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of Wn as text%        str2double(get(hObject,'String')) returns contents of Wn as a double% --- Executes during object creation, after setting all properties.function Wn_CreateFcn(hObject, eventdata, handles)% hObject    handle to Wn (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction band_Callback(hObject, eventdata, handles)% hObject    handle to band (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of band as text%        str2double(get(hObject,'String')) returns contents of band as a double% --- Executes during object creation, after setting all properties.function band_CreateFcn(hObject, eventdata, handles)% hObject    handle to band (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');endfunction Wdel_Callback(hObject, eventdata, handles)% hObject    handle to Wdel (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of Wdel as text%        str2double(get(hObject,'String')) returns contents of Wdel as a double% --- Executes during object creation, after setting all properties.function Wdel_CreateFcn(hObject, eventdata, handles)% hObject    handle to Wdel (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');end% --- Executes on selection change in filter_choose.function filter_choose_Callback(hObject, eventdata, handles)% hObject    handle to filter_choose (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: contents = cellstr(get(hObject,'String')) returns filter_choose contents as cell array%        contents{get(hObject,'Value')} returns selected item from filter_choosebl1=getappdata(handles.panal1,'bl1');bl2=getappdata(handles.panal1,'bl2');bf_window=getappdata(handles.panal1,'bf_window');bh=getappdata(handles.panal1,'bh');bs=getappdata(handles.panal1,'bs');Wn=getappdata(handles.panal1,'Wn');select=get(handles.filter_choose,'value');switch select    case 1        axes(handles.axes1);        plot(20*log10(abs(fft(bs))));        axis([0 3*Wn -40 1]);        axes(handles.axes2);        plot(angle(fft(bs)));        axis([0 Wn -4 1]);    case 2        axes(handles.axes1);        plot(20*log10(abs(fft(bl1))));        axis([0 3*Wn -40 1]);        axes(handles.axes2);        plot(angle(fft(bl1)));        axis([0 Wn -4 1]);    case 3        axes(handles.axes1);        plot(20*log10(abs(fft(bl2))));        axis([0 3*Wn -40 1]);        axes(handles.axes2);        plot(angle(fft(bl2)));        axis([0 Wn -4 1]);    case 4        axes(handles.axes1);        plot(20*log10(abs(fft(bf_window))));        axis([0 3*Wn -40 1]);        axes(handles.axes2);        plot(angle(fft(bf_window)));        axis([0 Wn -4 1]);    case 5        axes(handles.axes1);        plot(20*log10(abs(fft(bh))));        axis([0 3*Wn -40 1]);        axes(handles.axes2);        plot(angle(fft(bh)));        axis([Wn 2*Wn -4 1]);end% --- Executes during object creation, after setting all properties.function filter_choose_CreateFcn(hObject, eventdata, handles)% hObject    handle to filter_choose (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: popupmenu controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))    set(hObject,'BackgroundColor','white');end

    3 仿真结果

    4 参考文献

    [1]冯浩. 基于MATLAB GUI的FIR数字滤波器语音信号去噪处理[J]. 菏泽学院学报, 2016, 38(5):5.

    博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

    部分理论引用网络文献,若有侵权联系博主删除。

    展开全文
  • MATLAB信号处理 频谱分析加汉宁窗函数 源代码.7z
  • matlab下窗函数调用源代码汉宁窗,汉明窗,凯撒窗,矩形窗
  • 汉宁窗傅里叶变换matlab代码 这是我最喜欢的深度学习资源的粗略清单。 对于学习如何进行深度学习,用于重新访问主题或供参考,它对我很有用。 我()已建立此列表,并仔细浏览了此处列出的所有内容。 内容 发展趋势 ...
  • 二、部分源代码 function varargout = wwzl(varargin) % WWZL M-file for wwzl.fig % WWZL, by itself, creates a new WWZL or raises the existing % singleton*. % % H = WWZL returns the handle to a new WWZL ...

    一、语音处理简介

    1 语音信号的特点
    通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:
    ①在频域内,语音信号的频谱分量主要集中在300~3400Hz的范围内。利用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音信号频率分量取出,然后按8kHz的采样率对语音信号进行采样,就可以得到离散的语音信号。
    ②在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。

    2 语音信号的采集
    在将语音信号进行数字化前,必须先进行防混叠预滤波,预滤波的目的有两个:①抑制输入信导各领域分量中频率超出fs/2的所有分量(fs为采样频率),以防止混叠干扰。②抑制50Hz的电源工频干扰。这样,预滤波器必须是一个带通滤波器,设其上、下截止颜率分别是fH和fL,则对于绝人多数语音编译码器,fH=3400Hz、fL=60~100Hz、采样率为fs=8kHz;而对丁语音识别而言,当用于电话用户时,指标与语音编译码器相同。当使用要求较高或很高的场合时fH=4500Hz或8000Hz、fL=60Hz、fs=10kHz或20kHz。
    为了将原始模拟语音信号变为数字信号,必须经过采样和量化两个步骤,从而得到时间和幅度上均为离散的数字语音信号。采样也称抽样,是信号在时间上的离散化,即按照一定时间间隔△t在模拟信号x(t)上逐点采取其瞬时值。采样时必须要注意满足奈奎斯特定理,即采样频率fs必须以高于受测信号的最高频率两倍以上的速度进行取样,才能正确地重建波它是通过采样脉冲和模拟信号相乘来实现的。
    在采样的过程中应注意采样间隔的选择和信号混淆:对模拟信号采样首先要确定采样间隔。如何合理选择△t涉及到许多需要考虑的技术因素。一般而言,采样频率越高,采样点数就越密,所得离散信号就越逼近于原信号。但过高的采样频率并不可取,对固定长度(T)的信号,采集到过大的数据量(N=T/△t),给计算机增加不必要的计算工作量和存储空间;若数据量(N)限定,则采样时间过短,会导致一些数据信息被排斥在外。采样频率过低,采样点间隔过远,则离散信号不足以反映原有信号波形特征,无法使信号复原,造成信号混淆。根据采样定理,当采样频率大于信号的两倍带宽时,采样过程不会丢失信息,利用理想滤波器可从采样信号中不失真地重构原始信号波形。量化是对幅值进行离散化,即将振动幅值用二进制量化电平来表示。量化电平按级数变化,实际的振动值是连续的物理量。具体振值用舍入法归到靠近的量化电平上。
    语音信号经过预滤波和采样后,由A/D变换器变换为二址制数字码。这种防混叠滤波通常与模数转换器做在一个集成块内,因此目前来说,语音信号的数字化的质量还是有保证的。
    采集到语音信号之后,需要对语音信号进行分析,如语音信号的时域分析、频谱分析、语谱图分析以及加噪滤波等处理。

    3 语音信号分析技术
    语音信号分析是语音信号处理的前提和基础,只有分析出可表示语音信号本质特征的参数,才有可能利用这些参数进行高效的语音通信、语音合成和语音识别等处理[8]。而且,语音合成的音质好坏,语音识别率的高低,也都取决于对语音信号分桥的准确性和精确性。因此语音信号分析在语音信号处理应用中具有举足轻重的地位。
    贯穿于语音分析全过程的是“短时分析技术”。因为,语音信号从整体来看其特性及表征其本质特征的参数均是随时间而变化的,所以它是一个非乎稳态过程,不能用处理乎稳信号的数字信号处理技术对其进行分析处理。但是,由于不同的语音是由人的口腔肌肉运动构成声道某种形状而产生的响应,而这种口腔肌肉运动相对于语音频率来说是非常缓慢的,所以从另一方面看,虽然语音倍号具有时变特性,但是在一个短时间范围内(一般认为在10~30ms的短时间内),其特性基本保持不变即相对稳定,因面可以将其看作是一个准稳态过程,即语音信号具有短时平稳性。所以任何语音信号的分析和处理必须建立在“短时”的基础上.即进行“短时分析”,将语音信号分为一段一段来分析其特征参数,其中每一段称为一“帧”,帧长一般取为10~30ms。这样,对于整体的语音信号来讲,分析出的是由每一帧特征参数组成的特征参数时间序列。
    根据所分析出的参数的性质的不同,可将语音信号分析分为时域分析、频域分析、倒领域分析等;时域分析方法具有简单、计算量小、物理意义明确等优点,但由于语音信号最重要的感知特性反映在功率谱中,而相位变化只起着很小的作用,所以相对于时域分析来说频域分析更为重要。

    4 语音信号的时域分析
    语音信号的时域分析就是分析和提取语音信号的时域参数。进行语音分析时,最先接触到并且也是最直观的是它的时域波形。语音信号本身就是时域信号,因而时域分析是最早使用,也是应用最广泛的一种分析方法,这种方法直接利用语音信号的时域波形。时域分析通常用于最基本的参数分析及应用,如语音的分割、预处理、大分类等。这种分析方法的特点是:①表示语音信号比较直观、物理意义明确。②实现起来比较简单、运算且少。③可以得到语音的一些重要的参数。④只使用示波器等通用设备,使用较为简单等。
    语音信号的时域参数有短时能量、短时过零率、短时白相关函数和短时平均幅度差函数等,这是语音信号的一组最基本的短时参数,在各种语音信号数字处理技术中都要应用[6]。在计算这些参数时使用的一般是方窗或汉明窗。

    5 语音信号的频域分析
    语音信号的频域分析就是分析语音信号的频域持征。从广义上讲,语音信号的频域分析包括语音信号的频谱、功率谱、倒频谱、频谱包络分析等,而常用的频域分析方法有带通滤波器组法、傅里叶变换法、线件预测法等几种。

    二、部分源代码

    function varargout = wwzl(varargin)
    % WWZL M-file for wwzl.fig
    %      WWZL, by itself, creates a new WWZL or raises the existing
    %      singleton*.
    %
    %      H = WWZL returns the handle to a new WWZL or the handle to
    %      the existing singleton*.
    %
    %      WWZL('CALLBACK',hObject,eventData,handles,...) calls the local
    %      function named CALLBACK in WWZL.M with the given input arguments.
    %
    %      WWZL('Property','Value',...) creates a new WWZL or raises the
    %      existing singleton*.  Starting from the left, property value pairs are
    %      applied to the GUI before wwzl_OpeningFcn gets called.  An
    %      unrecognized property name or invalid value makes property application
    %      stop.  All inputs are passed to wwzl_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 wwzl
    
    % Last Modified by GUIDE v2.5 19-Nov-2012 23:20:06
    
    % Begin initialization code - DO NOT EDIT
    gui_Singleton = 1;
    gui_State = struct('gui_Name',       mfilename, ...
                       'gui_Singleton',  gui_Singleton, ...
                       'gui_OpeningFcn', @wwzl_OpeningFcn, ...
                       'gui_OutputFcn',  @wwzl_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 wwzl is made visible.
    function wwzl_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 wwzl (see VARARGIN)
    
    % Choose default command line output for wwzl
    handles.output = hObject;
    
    % Update handles structure
    guidata(hObject, handles);
    
    % UIWAIT makes wwzl wait for user response (see UIRESUME)
    % uiwait(handles.my_storage);
    
    
    % --- Outputs from this function are returned to the command line.
    function varargout = wwzl_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;
    
    
    % --- Executes on slider movement.
    function slider5_Callback(hObject, eventdata, handles)
    % hObject    handle to slider5 (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    
    % Hints: get(hObject,'Value') returns position of slider
    %        get(hObject,'Min') and get(hObject,'Max') to determine range of slider
    
    
    % --- Executes during object creation, after setting all properties.
    function slider5_CreateFcn(hObject, eventdata, handles)
    % hObject    handle to slider5 (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    empty - handles not created until after all CreateFcns called
    
    % Hint: slider controls usually have a light gray background.
    if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
        set(hObject,'BackgroundColor',[.9 .9 .9]);
    end
    
    
    % --- Executes on button press in noise_in.
    function noise_in_Callback(hObject, eventdata, handles)
    % hObject    handle to noise_in (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    
    x=getappdata(handles.my_storage,'x');
    n=getappdata(handles.my_storage,'n');
    t=getappdata(handles.my_storage,'t');
    
    if  get(handles.EN_open,'value')==1         %打开模式
        Xn=x+n;
        axes(handles.axes2);
        plot(t,Xn);grid on;
    elseif get(handles.EN_record,'value')==1    %录音模式
        n=getappdata(handles.my_storage,'n');   
        Xn=getappdata(handles.my_storage,'data1')+n; 
        axes(handles.axes2);
        plot(getappdata(handles.my_storage,'time'),Xn);grid on;
    end
    setappdata(handles.my_storage,'Xn',Xn);
    
    % --- Executes on button press in pushbutton9.
    function pushbutton9_Callback(hObject, eventdata, handles)
    % hObject    handle to pushbutton9 (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    
    
    % --- Executes on selection change in noises.
    function noises_Callback(hObject, eventdata, handles)
    % hObject    handle to noises (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    
    % Hints: contents = cellstr(get(hObject,'String')) returns noises contents as cell array
    %        contents{get(hObject,'Value')} returns selected item from noises
    
    Fn=str2num(get(handles.noise_f,'string'));  %从edit中获取信息
    Mn=str2num(get(handles.noise_M,'string'));
    
    if get(handles.EN_open,'value')==1      %打开模式
        x=getappdata(handles.my_storage,'x');
        fs=getappdata(handles.my_storage,'fs');
    elseif get(handles.EN_record,'value')==1    %录音模式
        x=getappdata(handles.my_storage,'data1');
        fs=getappdata(handles.my_storage,'Fs');
    end
    
    t=1:length(x);
    shap=get(handles.noises,'value');
    switch shap
        case 2
            n=(Mn*sin((2*pi*Fn/fs)*t))';       %可变频交流噪声
        case 3
            n=wgn(length(x),1,0.005);       %高斯白噪声
        case 4
            n=Mn*randn(length(x),1);        %随机噪声
        otherwise
            warndlg('请选择噪声类型','提示');
    end
    

    三、运行结果

    在这里插入图片描述
    在这里插入图片描述

    四、matlab版本及参考文献

    1 matlab版本
    2014a

    2 参考文献
    [1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.
    [2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.
    [3]宋云飞,姜占才,魏中华.基于MATLAB GUI的语音处理界面设计[J].科技信息. 2013,(02)

    展开全文
  • matlab生成正弦函数代码重要说明:建议您在执行程序之前阅读整个文件并对代码进行必要的修改。 用于使用Hausdorff-Sine损失函数在多协议MRI体积中推进胰腺分割的MATLAB代码 由Hykoush Asaturyan,E。Louise Thomas...
  • 减少频谱泄漏,通常在采样后对信号加窗。在电机故障诊断领域,需同时考虑频率分辨率和频谱泄漏。应用最广泛的窗函数是汉宁窗
  • MATLAB信号处理 频谱分析加汉宁窗函数 源代码.rar MATLAB光通过三稜镜色散动画.rar MATLAB动画 龟兔赛跑 源程序代码.rar MATLAB四阶龙格库塔法 求解微分方程数值解 源程序代码.rar MATLAB图像处理 Hough霍夫曼直线...
  • MATLAB中的函数

    千次阅读 2021-04-18 05:12:51
    如何在MATLAB中使用窗函数2008年05月23日星期五10:19一、在MATLAB 中的窗函数,十分简单:(1)矩形窗(Rectangle Window)调用格式:w=boxcar(n),根据长度n 产生一个矩形窗...(3)汉宁窗(Hanning Window)调用格式:w=han...

    如何在MATLAB中使用窗函数

    2008年05月23日星期五10:19

    一、在MATLAB 中的窗函数,十分简单:

    (1)矩形窗(Rectangle Window)调用格式:w=boxcar(n),根据长度n 产生一个矩形窗w。

    (2)三角窗(Triangular Window)调用格式:w=triang(n),根据长度n 产生一个三角窗w。

    (3)汉宁窗(Hanning Window)调用格式:w=hanning(n),根据长度n 产生一个汉宁窗w。

    (4)海明窗(Hamming Window)调用格式:w=hamming(n),根据长度n 产生一个海明窗w。

    (5)布拉克曼窗(Blackman Window)调用格式:w=blackman(n),根据长度n 产生一个布拉克曼窗w。

    (6)恺撒窗(Kaiser Window)调用格式:w=kaiser(n,beta),根据长度n 和影响窗函数旁瓣的β参数产生一个恺撒窗w。

    二、基于窗函数的FIR 滤波器设计

    利用MATLAB 提供的函数fir1来实现

    调用格式:fir1(n,Wn,’ftype’,Window),n 为阶数、Wn 是截止频率(如果输入是形如[W1 W2]的矢量时,本函数将设计带通滤波器,其通带为W1

    [例]设计一个长度为8 的线性相位FIR 滤波器。其理想幅频特性满足

    d35a08b658e5015df7feb484d420a53a.png

    用矩形窗:

    Window=boxcar(8);

    b=fir1(7,0.4,Window);

    freqz(b,1)

    用blackman窗:

    Window=blackman(8);

    b=fir1(7,0.4,Window);

    freqz(b,1)

    [例] 设计线性相位带通滤波器,其长度N=15,上下边带截止频率分别为W1= 0.3π,w2=0.5π

    Window=blackman(16);

    b=fir1(15,[0.3 0.5],Window);

    freqz(b,1)

    展开全文
  • 智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真模型及运行结果
  • 窗函数法是设计数字滤波器的一种方法,本文采用各种矩形窗、汉宁窗、哈明窗、布莱克曼窗等不同窗形式对滤波器性能的影响.最后运用Matlab进行仿真比较.​ 2 完整代码 function y = plot_freq(Fs,L,x,s,i) % 绘制...

空空如也

空空如也

1 2 3 4 5 ... 18
收藏数 352
精华内容 140
关键字:

matlab汉宁窗代码

matlab 订阅