1 简介

1.1 课题的背景与意义

通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息的形式。让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。

1.2 本文主要工作

本文运用语音信号的特征、采集与分析方法,先采用一小段音乐,借助Matlab进行仿真分析,最后加入噪声进行滤波处理,比较滤波前后的变化。

1.3本文的仿真软件Matlab

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

本文主要采用MATLAB的图形用户界面开发环境进行设计与仿真。

1.4 语音信号的特点

通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:

①在频域内,语音信号的频谱分量主要集中在300~3400Hz的范围内。利用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音信号频率分量取出,然后按8kHz的采样率对语音信号进行采样,就可以得到离散的语音信号。

②在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。

1.5语音信号的采集

在将语音信号进行数字化前,必须先进行防混叠预滤波,预滤波的目的有两个:①抑制输入信导各领域分量中频率超出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变换器变换为二址制数字码。这种防混叠滤波通常与模数转换器做在一个集成块内,因此目前来说,语音信号的数字化的质量还是有保证的。

采集到语音信号之后,需要对语音信号进行分析,如语音信号的时域分析、频谱分析、语谱图分析以及加噪滤波等处理。

1.6语音信号分析技术

语音信号分析是语音信号处理的前提和基础,只有分析出可表示语音信号本质特征的参数,才有可能利用这些参数进行高效的语音通信、语音合成和语音识别等处理[8]。而且,语音合成的音质好坏,语音识别率的高低,也都取决于对语音信号分桥的准确性和精确性。因此语音信号分析在语音信号处理应用中具有举足轻重的地位。

贯穿于语音分析全过程的是“短时分析技术”。因为,语音信号从整体来看其特性及表征其本质特征的参数均是随时间而变化的,所以它是一个非乎稳态过程,不能用处理乎稳信号的数字信号处理技术对其进行分析处理。但是,由于不同的语音是由人的口腔肌肉运动构成声道某种形状而产生的响应,而这种口腔肌肉运动相对于语音频率来说是非常缓慢的,所以从另一方面看,虽然语音倍号具有时变特性,但是在一个短时间范围内(一般认为在10~30ms的短时间内),其特性基本保持不变即相对稳定,因面可以将其看作是一个准稳态过程,即语音信号具有短时平稳性。所以任何语音信号的分析和处理必须建立在“短时”的基础上.即进行“短时分析”,将语音信号分为一段一段来分析其特征参数,其中每一段称为一“帧”,帧长一般取为10~30ms。这样,对于整体的语音信号来讲,分析出的是由每一帧特征参数组成的特征参数时间序列。

根据所分析出的参数的性质的不同,可将语音信号分析分为时域分析、频域分析、倒领域分析等;时域分析方法具有简单、计算量小、物理意义明确等优点,但由于语音信号最重要的感知特性反映在功率谱中,而相位变化只起着很小的作用,所以相对于时域分析来说频域分析更为重要。​

2 部分代码

function varargout = untitled(varargin)% UNTITLED M-file for untitled.fig%      UNTITLED, by itself, creates a new UNTITLED or raises the existing%      singleton*.%%      H = UNTITLED returns the handle to a new UNTITLED or the handle to%      the existing singleton*.%%      UNTITLED('CALLBACK',hObject,eventData,handles,...) calls the local%      function named CALLBACK in UNTITLED.M with the given input arguments.%%      UNTITLED('Property','Value',...) creates a new UNTITLED or raises the%      existing singleton*.  Starting from the left, property value pairs are%      applied to the GUI before untitled_OpeningFunction gets called.  An%      unrecognized property name or invalid value makes property application%      stop.  All inputs are passed to untitled_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 untitled% Last Modified by GUIDE v2.5 13-Feb-2022 16:10:31% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name',       mfilename, ...                   'gui_Singleton',  gui_Singleton, ...                   'gui_OpeningFcn', @untitled_OpeningFcn, ...                   'gui_OutputFcn',  @untitled_OutputFcn, ...                   'gui_LayoutFcn',  [] , ...                   'gui_Callback',   []);if nargin & isstr(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 untitled is made visible.function untitled_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 untitled (see VARARGIN)% Choose default command line output for untitledhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes untitled wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = untitled_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)

3 仿真结果

4 参考文献

[1]赵培瑶, 向凤红, 毛剑琳,等. 基于Matlab的不同数字滤波器对语音信号的去噪效果[J]. 化工自动化及仪表, 2016(7):3.

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

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

【滤波器】基于低通滤波器语音信号加噪与去噪含Matlab源码相关推荐

  1. 【语音处理】基于matlab GUI低通滤波器语音信号加噪与去噪【含Matlab源码 1708期】

    ⛄一.语音处理简介(附课程作业报告) 1 语音信号的特点 通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点: ①在频域内,语音信号的频谱分量主要集中在300-3400Hz的范围内.利用这 ...

  2. 信号检测:基于双稳随机共振的微弱信号检测含Matlab源码

    信号检测:基于双稳随机共振的微弱信号检测含Matlab源码 双稳随机共振是一种有效的微弱信号检测方法,广泛应用于各个领域.本文将介绍如何使用Matlab实现基于双稳随机共振的微弱信号检测,并提供相应的 ...

  3. 【滤波器】基于汉宁窗FIR滤波器实现语音信号加噪去噪含Matlab源码

    1 简介 结合数字滤波器的理论基础和设计方法,在MATLAB程序语言环境下,设计出有限长单位脉冲响应(FIR)数字滤波器,同时利用GUI界面设计FIR数字滤波器人机交互平台,该系统平台界面直观.操作简 ...

  4. 【语音去噪】基于FIR滤波器实现音频去噪含Matlab源码

    1 简介 结合数字滤波器的理论基础和设计方法,在MATLAB程序语言环境下,设计出有限长单位脉冲响应(FIR)数字滤波器,同时利用GUI界面设计FIR数字滤波器人机交互平台,该系统平台界面直观.操作简 ...

  5. 【滤波器】基于低通、带通、高通滤波器实现语音去噪含Matlab源码

    1 简介 在本文中,我们分别研究了在MATLAB环境下IIR数字滤波器的典型设计和完全设计等方法. 典型设计是先按一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标,据此产生模拟滤波器 ...

  6. 【滤波器】基于FIR+IIR(高通+低通+带通)滤波器实现音频信号去噪含Matlab源码

    1 简介 结合数字滤波器的理论基础和设计方法,在MATLAB程序语言环境下,设计出有限长单位脉冲响应(FIR)数字滤波器,同时利用GUI界面设计FIR数字滤波器人机交互平台,该系统平台界面直观.操作简 ...

  7. 【信号去噪】基于改进的阈值高斯脉冲信号去噪含Matlab源码

    1 简介 为了有效消除信号中的噪声,提出一种改进小波阈值算法的信号去噪 方法.首先分析软阈值和硬阈值小波方法的优缺点,构造了一种任意阶可导的新阈值函数,然后通过调节参数的值来更好的获得阈值估计,最后在 ...

  8. 【信号去噪】 基于小波软阈值+硬阈值+改进阈值实现轴承故障仿真信号去噪含Matlab源码

    1 简介 软阈值消噪是信号消噪中的标准算法.故障检测中的信号去噪,要求在降低噪声水平的同时,保留信号中用于故障检测的奇异特征.通过分析信号和噪声的小波系数在小波空间的不同特性,在"" ...

  9. 【语音去噪】基于最小二乘自适应滤波LMS和RLS实现语音去噪含Matlab源码

    1 简介 自适应信号处理的理论和技术已经成为人们常用滤波和去噪技术.文中讲述了自适应滤波的原理以及LMS算法和RLS算法两种基本自适应算法的原理及步骤.并用MATLAB分别对两种算法进行了自适应滤波仿 ...

最新文章

  1. Directx11教程(11) 增加一个debug宏
  2. python错误提示:TypeError: ‘builtin_function_or_method‘ object is not subscriptable
  3. RPC的超时设置,一不小心就是线上事故
  4. python背景怎么自定义铃声_python爬取手机铃声
  5. ad放置网络标号_PCB工程师必备:AD常用快捷键总结,超级实用
  6. querybuilder 排序_elasticsearch的匹配与排序问题
  7. 技术圈儿001---分布式事务最经典的七种解决方案
  8. .NET异步编程总结----四种实现模式
  9. 解决iPhone、iPad 或 iPod touch 无法连接Wi-Fi网络问题
  10. 一些免费收费api收藏
  11. 【黑苹果教程】修复OS X 10.11+上HD4200/HD4400/HD4600/HD5600驱动
  12. 火热升级:360Safe VS 雅虎助手
  13. 西门子触摸屏脚本程序_西门子PLC触摸屏如何编写程序
  14. LaTex下载 、安装以及使用
  15. Ignite问题汇总
  16. C#读取xml节点数据方法小结
  17. 分治法 —— 循环比赛日程安排表
  18. 矩阵初等变换的“打洞技巧”与“分块矩阵的行列式公式”
  19. 串级PID的直立控制
  20. 备战秋招-oppo java一面 面经

热门文章

  1. Debian 6 无线上网
  2. (转)红包随机算法微信群红包随机算法
  3. 计算机二级邮件的考点有哪些,计算机二级office的考点
  4. javaWeb项目内存溢出解决方案
  5. node使用校验工具 ajv 报错 Ajv is not a constructor 解决
  6. 计算机电脑操作员培训计划,计算机操作员培训计划..doc
  7. 公众号引流如何写好软文?关于软文营销,高度重视高质量的软文
  8. C#-派生类及构造函数
  9. 餐桌3大“雷区”让你减寿
  10. NSA/SA到底有什么区别? “买手机擦亮双眼5G还分真假”