基于Matlab的主动降噪实验(优.选)

合集下载

基于MATLAB的声音采集及去噪音处理方法

基于MATLAB的声音采集及去噪音处理方法
波器。
采样位数
f t =Y ( : , 1 ) ; %抽 取第 一通 道 s i g L e n g t h:l e n g t h ( f t ) ; %获取声 音 长度 声 音 文 件 导 入 完 成 后 画 出处 理 前 的波 形 图 ( 见图 1 ) 以及 频谱 图( 见图2 ) 。
%绘制 波形 图
t =( 0 : s i g L e n g t h 一 1 ) / F s ;
ig f ur e ;
p l o t ( t , f t ) , t i t l e ( P l o t o f t h e T o n e ) , g r i d ; x l a b e l ( " T i me ( s ) , ) :
P y y = a b s ( P y y ) ; % 用于计算向量 y 的振幅
f =( ( 0 : h a l f L e n g t h ) +1 ) F s / s i g L e n g t h ;
w a v r e a d ( c e s h i 1 , ) . % 读人声音文件 [ y , F s , b i t s ] =w a v r e a d ( c e s h i l , ) . %读 取语音 ,
y l a b e l ( " A mp l i t u d e , ) :
表示采样位数 。F i l e n a m e 为文件名 , 此 文件需放
在 MA T L AB当前路 径 中 。也可 以将 声音 信 号 录制
到 MA T L A B里面 , A=a u d i o r e c o r d e r ( 4 4 1 0 0 , 1 6 , 2 ) ;
Y=m( t t , s i g L e n g t h ) ; % 返 回s i g L e n g t h点 的离 散傅 里 叶 变换 , 如果 向量 f t 的长 度 小 于 s i g L e n g t h , 函数 要将 向量 f t * b 零 到长度 s i g L e n g t h ; 如 果 向量 f t

基于MATLAB的信号消噪处理和程序设计

基于MATLAB的信号消噪处理和程序设计

基于MATLAB的信号消噪处理和程序设计信号消噪是一种常见的信号处理技术,其目的是从噪声中提取出原始信号,并去除或减小噪声对信号质量的影响。

MATLAB是一个功能强大的数学计算和数据分析软件,提供了丰富的信号处理工具,可以轻松实现信号消噪的算法和程序设计。

在MATLAB中,信号消噪处理通常包含以下几个步骤:1.加载和预处理数据:首先,需要将采集到的原始信号加载到MATLAB中。

根据具体的信号类型和采集方式,可能需要进行一些预处理操作,如数据格式转换、归一化、滤波等。

2.信号分析与噪声检测:在进行信号消噪之前,需要进行信号分析以及确定噪声的类型和特性。

MATLAB提供了丰富的信号处理工具箱,如信号分析工具箱和统计工具箱,可以对信号进行频域分析、时域分析、小波分析等,并根据分析结果确定噪声的频谱、功率和分布等信息。

3.信号消噪算法选择和实现:根据噪声的特性和分析结果,选择适当的信号消噪算法进行处理。

常见的信号消噪算法包括滑动平均法、小波降噪法、谱减法、自适应滤波法等。

MATLAB提供了这些算法的函数和工具箱,可以直接调用并实现。

4.参数调优和性能评估:在实际应用中,不同的信号消噪算法可能涉及到一些数值参数的设置。

通过对不同参数的调优,可以进一步提高信号消噪的效果。

MATLAB提供了一系列调优工具和性能评估函数,可以辅助进行参数选择和算法优化。

5.可视化和结果分析:最后,将去噪后的信号进行可视化展示,并进行结果分析。

MATLAB提供了丰富的绘图函数和数据分析工具,可以帮助用户对去噪结果进行直观的展示和评估。

除了信号消噪处理,MATLAB还可以用于信号生成、信号变换、信号模型建立等方面的程序设计。

可以通过编写MATLAB脚本或函数,结合信号处理工具箱中的函数和工具,实现更复杂的信号处理任务,如语音识别、图像去噪、振动分析等。

总结起来,基于MATLAB的信号消噪处理和程序设计能够快速、高效地实现信号处理任务。

利用Matlab进行图像去噪和图像增强

利用Matlab进行图像去噪和图像增强

利用Matlab进行图像去噪和图像增强随着数字图像处理技术的不断发展和成熟,图像去噪和图像增强在各个领域都有广泛的应用。

而在数字图像处理的工具中,Matlab凭借其强大的功能和易于使用的特点,成为了许多研究者和工程师首选的软件之一。

本文将介绍如何利用Matlab进行图像去噪和图像增强的方法和技巧。

一、图像去噪图像去噪是指通过一系列算法和技术,将图像中的噪声信号去除或减弱,提高图像的质量和清晰度。

Matlab提供了多种去噪方法,其中最常用的方法之一是利用小波变换进行去噪。

1. 小波变换去噪小波变换是一种多尺度分析方法,能够对信号进行时频分析,通过将信号分解到不同的尺度上,实现对图像的去噪。

在Matlab中,可以使用"dwt"函数进行小波变换,将图像分解为低频和高频子带,然后通过对高频子带进行阈值处理,将噪声信号滤除。

最后通过逆小波变换将去噪后的图像重构出来。

这种方法能够有效抑制高频噪声,保留图像的细节信息。

2. 均值滤波去噪均值滤波是一种基于平均值的线性滤波方法,通过计算像素周围邻域内像素的平均值,替代原始像素的值来去除噪声。

在Matlab中,可以使用"imfilter"函数进行均值滤波,通过设置适当的滤波模板大小和滤波器系数,实现对图像的去噪。

二、图像增强图像增强是指通过一系列算法和技术,改善图像的质量、增强图像的细节和对比度,使图像更容易被观察和理解。

Matlab提供了多种图像增强方法,以下将介绍其中的两种常用方法。

1. 直方图均衡化直方图均衡化是一种通过对图像像素值的分布进行调整,增强图像对比度的方法。

在Matlab中,可以使用"histeq"函数进行直方图均衡化处理。

该函数能够将图像的像素值分布拉伸到整个灰度级范围内,提高图像的动态范围和对比度。

2. 锐化增强锐化增强是一种通过增强图像边缘和细节来改善图像质量的方法。

在Matlab中,可以使用"imsharpen"函数进行图像的锐化增强处理。

基于matlab声音信号的滤波去噪处理

基于matlab声音信号的滤波去噪处理

基于matlab声音信号的滤波去噪处理基于matlab声音信号的滤波去噪处理摘要滤波器设计在数字信号处理中占有极其重要的地位FIR数字滤波器和IIR滤波器是滤波器设计的重要组成部分Matlab功能强大简单易学编程效率高深受广大科技工作者的欢迎特别是Matlab还具有信号分析工具箱不需具备很强的编程能力就可以很方便地进行信号分析处理和设计利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器课题基于MATLAB有噪音语音信号处理的设计与实现综合运用数字信号处理的理论知识对加噪声语音信号进行时域频域分析和滤波通过理论推导得出相应结论再利用MATLAB作为编程工具进行计算机实现在设计实现的过程中使用窗函数法来设计FIR数字滤波器用巴特沃斯切比雪夫和双线性变法设计IIR数字滤波器并利用MATLAB作为辅助工具完成设计中的计算与图形的绘制通过对对所设计滤波器的仿真和频率特性分析可知利用MATLAB信号处理工具箱可以有效快捷地设计FIR和IIR数字滤波器过程简单方便结果的各项性能指标均达到指定要求目录摘要 ABSTRACT绪论 11研究的目的和意义12国内外同行的研究状况13本课题的研究内容和方法语音信号去噪方法的研究21去噪的原理22去噪的方法去噪和仿真的研究31语音文件在MATLAB平台上的录入与打开32 原始语音信号频谱分析及仿真33 加噪语音信号频谱分析及仿真34 去噪及仿真35 结合去噪后的频谱图对比两种方式滤波的优缺点总结致谢参考文献1绪论 11研究的目的和意义语音信号的采集与分析技术是一门涉及面很广的交叉科学它的应用和发展与语音学声音测量学电子测量技术以及数字信号处理等学科紧密联系语音是人类获取信息的重要来源和利用信息的重要手段在信号传输过程中由于实验条件或各种其他主观或客观条件的原因语音处理系统都不可避免地要受到各种噪声的干扰噪声不但降低了语音质量和语音的可懂度而且还将导致系统性能的急剧恶化严重时使整个系统无法正常工作MATLAB是由美国mathworks公司发布的主要面对科学计算可视化以及交互式程序设计的高科技计算环境它将数值分析矩阵计算科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中为科学研究工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案并在很大程度上摆脱了传统非交互式程序设计语言如CFortran的编辑模式代表了当今国际科学计算软件的先进水平其强大的数据处理能力可以极大程度上削弱噪声影响还原出真实的语音信号相符度在90以上12 国内外同行研究现状20世纪60年代中期形成的一系列数字信号处理的理论和算法如数字滤波器快速傅立叶变换FFT等是语音信号数字处理的理论和技术基础随着信息科学技术的飞速发展语音信号处理取得了重大的进展进入70年代之后提出了用于语音信号的信息压缩和特征提取的线性预测技术LPC并已成为语音信号处理最强有力的工具广泛应用于语音信号的分析合成及各个应用领域以及用于输入语音与参考样本之间时间匹配的动态规划方法80年代初一种新的基于聚类分析的高效数据压缩技术矢量量化VQ应用于语音信号处理中而用隐马尔可夫模型HMM描述语音信号过程的产生是80年代语音信号处理技术的重大发展目前HMM已构成了现代语音识别研究的重要基石近年来人工神经网络ANN 的研究取得了迅速发展语音信号处理的各项课题是促进其发展的重要动力之一他的各项成果也体现在语音信号处理的各项技术之中 13本课题的研究内容和方法maxcom 研究内容本论文主要介绍的是的语音信号的简单处理本论文针对以上问题运用数字信号学基本原理实现语音信号的处理在matlab70环境下综合运用信号提取幅频变换以及傅里叶变换滤波等技术来进行语音信号处理我所做的工作就是在matlab70软件上编写一个处理语音信号的程序能对语音信号进行采集并对其进行各种处理达到简单的语音信号处理的目的 maxcom 运行环境运行环境主要介绍了硬件环境和软件环境硬件环境① 处理器Inter Pentium B950 ② 内存2G ③ 硬盘空间460G④ 显卡NVIDIA GeForce GT520 操作系统Window 764位旗舰版 maxcom 开发环境开发环境主要介绍了本系统采用的操作系统开发语言操作系统Windows 7 2 开发环境Matlab 70 maxcom骤语音信号的录制在MATLAB平台上读入语音信号绘制频谱图并回放原始语音信号利用MATLAB编程加入一段正弦波噪音设计滤波器去噪利用MATLAB编程加入一段随机噪音信号设计FIR和IIR滤波器去噪并分别绘制频谱图回放语音信号6 通过仿真后的图像以及对语音信号的回放对比两种去噪方式的优缺点具体流程图如下所示图11论文设计流程 2语音信号去噪方法的研究21 去噪的原理maxcom 采样定理在进行模拟数字信号的转换过程中当采样频率fsmax大于信号中最高频率fmax的2倍时即fsmax 2fmax则采样之后的数字信号完整地保留了原始信号中的信息一般实际应用中保证采样频率为信号最高频率的5~10倍采样定理又称奈奎斯特定理1924年奈奎斯特Nyquist 就推导出在理想低通信道的最高大码元传输速率的公式理想低通信道的最高大码元传输速率2Wlog2 N 其中W是理想低通信道的带宽N是电平强度为什么把采样频率设为8kHz在数字通信中根据采样定理最小采样频率为语音信号最高频率的2倍频带为F的连续信号f t 可用一系列离散的采样值f t1 f t1±Δt f t1±2Δt 来表示只要这些采样点的时间间隔Δt≤12F便可根据各采样值完全恢复原来的信号f t 这是时域采样定理的一种表述方式时域采样定理的另一种表述方式是当时间信号函数f t 的最高频率分量为fM时f t 的值可由一系列采样间隔小于或等于12fM的采样值来确定即采样点的重复频率f≥2fM图为模拟信号和采样样本的示意图时域采样定理是采样误差理论随机变量采样理论和多变量采样理论的基础对于时间上受限制的连续信号f t 即当│t│ T时f t 0这里T T2-T1是信号的持续时间若其频谱为Fω则可在频域上用一系列离散的采样值采样值来表示只要这些采样点的频率间隔采样频率也称为采样速度或者采样率定义了每秒从连续信号中提取并组成离散信号的采样个数它用赫兹Hz来表示采样频率的倒数是采样周期或者叫作采样时间它是采样之间的时间间隔通俗的讲采样频率是指计算机每秒钟采集多少个声音样本是描述声音文件的音质音调衡量声卡声音文件的质量标准采样频率只能用于周期性采样的采样器对于非周期性采样的采样器没有规则限制采样频率的常用的表示符号是 fs 通俗的讲采样频率是指计算机每秒钟采集多少个声音样本是描述声音文件的音质音调衡量声卡声音文件的质量标准采样频率越高即采样的间隔时间越短则在单位时间内计算机得到的声音样本数据就越多对声音波形的表示也越精确采样频率与声音频率之间有一定的关系只有采样频率高于声音信号最高频率的两倍时才能把数字信号表示的声音还原成为原来的声音这就是说采样频率是衡量声卡采集记录和还原声音文件的质量标准采样位数和采样率对于音频接口来说是最为重要的两个指标也是选择音频接口的两个重要标准无论采样频率如何理论上来说采样的位数决定了音频数据最大的力度范围每增加一个采样位数相当于力度范围增加了6dB采样位数越多则捕捉到的信号越精确对于采样率来说你可以想象它类似于一个照相机441kHz意味着音频流进入计算机时计算机每秒会对其拍照达441000次显然采样率越高计算机摄取的图片越多对于原始音频的还原也越加精确在我们的日常交流和语音通信系统中加性宽带噪声严重影响了语音质量和可懂度从带噪语音中提取原始语音信号的方法很多在单信道条件下谱相减算法以其运算量小原理简单易于实现并且有不错的增强效果而得到了广泛的应用谱相减语音增强算法的核心是噪声检测和谱减规则在分析了语音增强算法理论的基础上本文首先研究了语音激活检测算法对基于短时能量和短时过零率双门限法语音激活检测的噪声估计算法做了研究及仿真同时还研究了一种基于最小子带能量的噪声估计方法然后通过分析经典谱减法的原理及其一般改进形式研究了一种基于噪声残差的谱相减改进算法和一种可以不以噪声是零均值的高斯分布为前提的谱减法改进算法最后通过大量的仿真实验验证了所研究的几种改进算法都能有效地提高增强效果在进入FIR滤波器前首先要将信号通过AD器件进行模数转换使之成为8bit的数字信号一般可用速度较高的逐次逼进式AD转换器不论采用乘累加方法还是分布式算法设计FIR滤波器滤波器输出的数据都是一串序列要使它能直观地反应出来还需经过数模转换因此由FPGA 构成的FIR滤波器的输出须外接DA模块FPGA有着规整的内部逻辑阵列和丰富的连线资源特别适合于数字信号处理任务相对于串行运算为主导的通用DSP芯片来说其并行性和可扩展性更好利用FPGA乘累加的快速算法可以设计出高速的FIR数字滤波器有限长单位冲激响应FIR 滤波器有以下特点位冲激响应h n 在有限个n值处不为零0处收敛极点全部在z 0处结构上主要是非递归结构没有输出到输入的反馈但有些结构中例如频率抽样结构也包含有反馈的递归部分设FIR滤波器的单位冲激响应h n 为一个N点序列0 ≤ n ≤N 1则滤波器的系统函数为H z ∑h n z-n 2-3 就是说它有N1阶极点在z 0处有N1个零点位于有限z 平面的任何位置FIR滤波器基本结构 FIR滤波器有以下几种基本结构横截型式的系统的差分方程表达式为y n ∑h m x n-m 2-4 很明显这就是线性移不变系统的卷积和公式也是x n 的延时链的横向结构称为横截型结构或卷积型结构也可称为直接型结构将转置定理用于可得到的转置直接型结构 FIR滤波器的横截型结构级联型其中[N2]表示取N2的整数部分若N为偶数则N1为奇数故系数B2K中有一个为零这是因为这时有奇数个根其中复数根成共轭对必为偶数必然有奇数个实根画出N为奇数时FIR滤波器的级联结构其中每一个二阶因子用图4-11的横型结构这种结构的每一节控制一对零点因而再需要控制传输零点时可以采用它但是这种结构所需要的系数B2kI 012k 12...[N2]比卷积型的系数h n 要多因而所需的乘法次数也比卷积型的要多 nfinite Impulse Response 数字滤波器又名无限脉冲响应数字滤波器或递归滤波器递归滤波器也就是IIR数字滤波器顾名思义具有反馈一般认为具有无限的脉冲响应IIR数字滤波器的设计利用分析工具 FDATool 可以很方便地设计出符合应用要求的未经量化的IIR数字滤波器需要将MATLAB设计出的IIR数字滤波器进一步分解和量化从而获得可用FPGA实现的滤波器系数IIR数字滤波器的设计步骤由于采用了级联结构因此如何将滤波器的每一个极点和零点相组合从而使得数字滤波器输出所含的噪声最小是个十分关键的问题为了产生最优的量化后的IIR 数字滤波器采用如下步骤进行设计首先计算整体传递函数的零极点选取具有最大幅度的极点以及距离它最近的零点使用它们组成一个二阶基本节的传递函数对于剩下的极点和零点采用与相类似的步骤直至形成所有的二阶基本节通过上面三步法进行的设计可以保证IIR数字滤波器中N位乘法器产生的量化舍入误差最小获得最优IIR数字滤波器系数为了设计出可用FPGA实现的数字滤波器需要对上一步分解获得的二阶基本节的滤波器系数进行量化即用一个固定的字长加以表示量化过程中由于存在不同程度的量化误差由此会导致滤波器的频率响应出现偏差严重时会使IIR滤波器的极点移到单位圆之外系统因而失去稳定性为了获得最优的滤波器系数采用以下步骤进行量化计算每个系数的B查找出每个系数绝对值中的最大值计算比此绝对值大的最小整数maxcom取反获得负整数计算需要表示此整数的最小位数计算用于表示系数值分数部分的余下位数除了系数存在量化误差数字滤波器运算过程中有限字长效应也会造成误差因此对滤波器中乘法器加法器及寄存器的数据宽度要也进行合理的设计以防止产生极限环现象和溢出振荡与FIR数字滤波器的设计不同IIR滤波器设计时的阶数不是由设计者指定而是根据设计者输入的各个滤波器参数截止频率通带滤纹阻带衰减等由软件设计出满足这些参数的最低滤波器阶数在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择利用MATLAB 中的wavread命令来读入采集语音信号将它赋值给某一向量 Wavread 函数可得出信号的采样频率为22500并且声音是单声道的利用Sound 函数可以清晰的听到毕业设计声音文件的语音采集数据并画出波形图在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换下面介绍这些函数函数FFT用于序列快速傅立叶变换函数的一种调用格式y fft x 其中x是序列y是序列的FFTx可以为一向量或矩阵若x为一向量y是x的FFT且和x相同长度若x为一矩阵则y是对矩阵的每一列向量进行FFT 如果x长度是2的幂次方函数fft执行高速基-2FFT算法否则fft执行一种混合基的离散傅立叶变换算法计算速度较慢函数FFT的另一种调用格式为y fft xN 式中xy意义同前N为正整数函数执行N点的FFT若x为向量且长度小于N则函数将x补零至长度N若向量x的长度大于N则函数截短x使之长度为N若x 为矩阵按相同方法对x进行处理经函数fft求得的序列y一般是复序列通常要求其幅值和相位MATLAB提供求复数的幅值和相位函数absangle 这些函数一般和FFT同时使用函数abs x 用于计算复向量x的幅值函数angle x 用于计算复向量的相角介于和之间以弧度表示用MATLAB 工具箱函数fft进行频谱分析时需注意1函数fft返回值y的数据结构对称性一般而言对N点的x n 序列的FFT是N点的复数序列其点n N21对应Nyquist频率作频谱分析时仅取序列X k 的前一半即前N2点即可X k 的后一半序列和前一半序列时对称的频率计算若N点序列x n n 01N-1 是在采样频率下获得的它的FFT也是N点序列即X k k 012N-1 则第k点所对应实际频率值为 f kf N 绘出了语音信号的波形频谱图[xfsbits] wavread wangqingtianwav sound xfsbits X fft x4096 magX abs X angX angle X subplot 221 plot x title 原始信号波形 subplot 222 plot X title 原始语音信号采样后的频谱图 subplot 223 plot magX title 原始信号幅值 subplot 224 plotangX title 原始信号相位程序运行可以听到声音得到的图形为atlab函数randn产生正态分布的随机数或矩阵的函数产生均值为0方差σ2 1标准差σ 1的正态分布的随机数或矩阵的函数用法Y randn n 返回一个nn的随机项的矩阵如果n不是个数量将返回错误信息Y randn mn 或 Y randn [m n] 返回一个mn的随机项矩阵 Y randn size A 返回一个和A有同样维数大小的随机数组randn返回一个每次都变化的数量[yfsbits] wavread chushiwav sound yfs n length y y_p fft yn f fs 0n2-1 n figure 1 subplot 211 plot y title 原始语音信号采样后的时域波形 xlabel 时间轴 ylabel 幅值A subplot 212 plot fabs y_p 1n2 title 原始语音信号采样后的频谱图 xlabel 频率Hz ylabel 频率幅值 L length y noise 01randn L2 y_z ynoise sound y_zfs n length y y_zp fft y_zn f fs 0n2-1 n figure 2 subplot 211 plot y_z title 加噪语音信号时域波形 xlabel 时间轴 ylabel 幅值A subplot 212 plot fabs y_zp 1n2 title 加噪语音信号频谱图 xlabel 频率Hz ylabel 频率幅值初始信号的时域波形频谱图与加噪后语音信号的时域波形频谱图分别如图3536所示图35 图36 通过对两张图片的对比很明显可以看加噪后的语音信号时域波形比原始语音信号浑浊了许多在时间轴上可以明显看出005S的幅值增大了通过对原始语音信号的频谱图与加噪后的语音信号频谱图的对比也可以看出在频率5000Hz以后的频率幅值发生了明显的增加再通过对原始语音信号的回放效果与加噪后的语音信号回放的效果的对比人耳可以明显辨别出两种语音信号不一样了加噪后的语音信号在听觉上比原始语音信号要浑浊很多而且还有吱吱嘎嘎的混杂音34 去噪及仿真1FIR滤波器法去噪通过对上一节中加噪语音信号和原始语音信号频谱图对比可以知道噪音大部分是Hz大于5000的部分故设计低通滤波器进行滤波处理接下来我们要用设计的FIR低通滤波器对上一节中加噪语音信号进行滤波处理用自己设计的FIR数字低通滤波器对加噪的语音信号进行滤波时在Matlab中FIR滤波器利用函数fftfilt对信号进行滤波函数fftfilt用的是重叠相加法实现线性卷积的计算调用格式为y fftfilter hxM 其中h是系统单位冲击响应向量x是输入序列向量y是系统的输出序列向量M是有用户选择的输入序列的分段长度缺省时默认的输入向量的重长度M 512 用设计好的FIR数字低通滤波器对加噪语音信号的滤波程序[yfsbits] wavread chushiwav sound yfs n length y y_p fft yn f fs 0n2-1 n figure 1 subplot 211 plot y title 原始语音信号采样后的时域波形 xlabel 时间轴 ylabel 幅值A subplot 212 plot fabs y_p 1n2 title 原始语音信号采样后的频谱图xlabel 频率Hz ylabel 频率幅值L length y noise 01randn L2 y_z ynoise sound y_zfs n length y y_zp fft y_zn f fs 0n2-1 n figure 2 subplot 211 plot y_z title 加噪语音信号时域波形xlabel 时间轴ylabel 幅值A subplot 212 plot fabs y_zp 1n2 title 加噪语音信号频谱图 xlabel 频率Hz ylabel 频率幅值 Ft 5000 Fp 1000 Fs 1200 wp2FpFt ws 2FsFt rp 1 rs 50 p 1-10 -rp20 s 10 -rs20 fpts [wp ws] mag [1 0] dev [p s] [n21wn21betaftype] kaiserord fptsmagdev b21 fir1 n21wn21Kaiser n211beta [hw] freqz b211 plot wpiabs h title FIR低通滤波器 x fftfilt b21y_z X fft xn figure 4 subplot 221 plot fabs y_zp 1n2 title 滤波前信号的频谱 subplot 222 plot fabs X 1n2 title 滤波后信号的频谱 subplot 223 plot y_z title 滤波前信号的时域波形subplot 224 plot x title 滤波后信号的时域波形sound xfsbits 而后得到图像如下图37 分析从以上四图可以很明显和直观的看出原始语音信号和加噪语音信号时域波形和频谱图的区别加噪后的语音信号的时域波形比原始语音信号要模糊得多频谱图则是在频率5000Hz 以后出现了明显的变化再通过滤波前的信号波形和频谱图的对比可以明显看出滤波后的波形开始变得清晰了有点接近原始信号的波形图了滤波后信号的频谱图也在5000Hz以后开始逐渐接近原始语音信号的频谱图再从对语音信号的回放人耳可以明显辨别出加噪后的语音信号比较浑浊还有很明显嘎吱嘎吱的杂音在里面滤波后语音信号较加噪后的信号有了明显的改善基本可以听清楚了而且杂音也没有那么强烈但是声音依然没有原始语音信号那么清晰脆耳2IIR滤波器法去噪同样也设计一个IIR低通滤波器对加噪语音信号进行内部处理程序如下Ft 8000 Fp 1000 Fs 1200 wp 2piFpFt ws 2piFsFt fp 2Fttan wp2 fs 2Fstan wp2 [n11wn11] buttord wpws150s 求低通滤波器的阶数和截止频率[b11a11] butter n11wn11s 求S域的频率响应的参数[num11den11] bilinear b11a1105 双线性变换实现S域到Z域的变换[hw] freqz num11den11 根据参数求出频率响应plot w800005piabs h legend 用butter设计grid [yfsnbits] wavread BYSJwav n length y 求出语音信号的长度 noise 001randn n2 随机函数产生噪声 s ynoise 语音信号加入噪声 S fft s 傅里叶变换 z11 filter num11den11s sound z11 m11 fft z11 求滤波后的信号 subplot 221 plot abs S g title 滤波前信号的频谱 grid subplot 222 plot abs m11 r title 滤波后信号的频谱grid subplot 223 plot s title 滤波前信号的波形 grid subplot 224 plot z11 title 滤波后的信号波形得到图像如下图38 通过程序运行我们可以听出滤波效果很不好失真现象严重并且出现了严重的寄生震荡 35 结合去噪后的频谱图对比两种方式滤波的优缺点IIR数字滤波器采用递归型结构即结构上带有反馈环路IIR滤波器运算结构通常由延时乘以系数和相加等基本运算组成可以组合成直接型正准型级联型并联型四种结构形式都具有反馈回路由于运算中的舍入处理使误差不断累积有时会产生微弱的寄生振荡1IIR数字滤波器的相位特性不好控制对相位要求较高时需加相位校准网络FIR滤波器则要求较低2IIR滤波器运算误差大有可能出现极限环振荡FIR相比之下运算误差较小不会出现极限环振荡3IIR幅频特性精度很高不是线性相位的可以应用于对相位信息不敏感的音频信号上4与FIR滤波器的设计不同IIR滤波器设计时的阶数不是由设计者指定而是根据设计者输入的各个滤波器参数截止频率通带滤纹阻带衰减等由软件设计出满足这些参数的最低滤波器阶数在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择5IIR单位响应为无限脉冲序列FIR单位响应为有限的6FIR幅频特性精度较之于iir低但是线性相位就是不同频率分量的信号经过FIR滤波器后他们的时间差不变这是很好的性质7IIR滤波器有噪声反馈而且噪声较大FIR滤波器噪声较小FIR幅频特性精度较之于iir低但是线性相位就是不同频率分量的信号经过FIR滤波器后他们的时间差不变这是很好的性质4总结本文对语音信号处理系统的设计作了详细的介绍采用一系列图像分析和处理技术实现了语音信号的基本处理的功能经过测试运行本设计圆满的完成了对语音信号的读取与打开较好的完成了对语音信号的频谱分析通过fft变换得出了语音信号的频谱图在滤波这一块课题主要是从滤波器入手来设计滤波器基本实现了滤波与课题的要求十分相符在此论文撰写过程中要特别感谢我的导师的指导与督促同时感谢的谅解与包容没有的帮助也就没有今天的这篇论文求学历程是艰苦的但又是快乐的感谢我的老师谢谢他在这四年中为我们全班所做的一切他不求回报无私奉献的精神很让我感动再次向表示由衷的感谢在这四年的学期中结识的各位生活和学习上的挚友让我得到了人生最大的一笔财富在此也对他们表示衷心感谢本文参考了大量的文献资料在此向各学。

如何利用Matlab进行语音降噪

如何利用Matlab进行语音降噪

如何利用Matlab进行语音降噪引言:随着科技的不断进步,语音处理技术得到了广泛应用。

在日常生活中,我们经常会遇到因环境噪音而影响语音质量的情况,比如通话中的噪音干扰、音频文件中的杂音等。

而语音降噪技术的出现,为我们解决这些问题提供了更加便捷和高效的方法。

本文将着重介绍如何利用Matlab进行语音降噪的方法和步骤。

一、了解语音降噪的原理在进行语音降噪之前,我们需要先了解语音降噪的原理。

语音降噪的核心目标是通过滤波等处理方法,尽可能减小或去除语音信号中的噪音成分,使得经过降噪处理后的语音信号更加纯净和清晰。

常用的语音降噪方法包括时域滤波法、频域滤波法等。

而在Matlab中,我们通常使用基于频域滤波的方法来实现语音降噪。

二、准备工作在使用Matlab进行语音降噪之前,首先需要准备好相关的工具和材料。

我们需要安装Matlab软件,并确保具备一定的编程能力和相关的信号处理知识。

此外,还需要一段包含噪音的语音信号作为我们的输入数据,方便我们进行处理和测试。

三、确定降噪算法在进行语音降噪之前,我们需要选择合适的降噪算法。

降噪算法的选择至关重要,直接影响到降噪效果的好坏。

常用的降噪算法有小波降噪、谱减法、模糊集合等。

在Matlab中,我们可以根据实际情况和特定需求选择适合的降噪算法。

四、准备输入数据在进行语音降噪之前,我们需要将相关的语音数据导入到Matlab中进行处理。

可以通过直接录制语音、导入.wav格式的音频文件等方式进行数据的准备。

在准备数据时,需要注意选择含有噪音的语音信号作为输入数据,以便进行后续的降噪处理。

五、实施降噪处理通过上述步骤的准备工作,我们可以开始进行语音降噪处理。

在Matlab中,我们可以根据选择的降噪算法,编写相应的代码进行处理。

具体实施过程中,可以结合Matlab提供的信号处理工具和函数,如fft、ifft、滤波器设计等进行降噪处理。

六、优化和调整在进行语音降噪处理之后,需要对结果进行优化和调整。

基于MATLAB语音信号处理去噪毕业设计(含源文件)

基于MATLAB语音信号处理去噪毕业设计(含源文件)

在Matlab平台上实现对语音信号的去噪研究和仿真摘要语音信号在数字信号处理中占有极其重要的地位,因此选择通过对语音信号的研究来巩固和掌握数字信号处理的基本能力十分具有代表性。

对数字信号处理离不开滤波器,因此滤波器的设计在信号处理中占有极其重要的地位。

而MATLAB软件工具箱提供了对各种数字滤波器的设计。

本论文“在MATLAB平台上实现对语音信号的去噪研究与仿真”综合运用了数字信号处理的各种基本知识,进而对不带噪语音信号进行谱分析以及带噪语音信号进行谱分析和滤波处理。

通过理论推导得出相应的结论,再通过利用MATLAB作为编程工具来进行计算机实现比价已验证推导出来的结论。

在设计过程中,通过设计FIR数字滤波器和IIR数字滤波器来完成滤波处理。

在设计过程中,运用了MATLAB对整个设计中的图形的绘制和一些数据的计算以及仿真。

关键字滤波器;MATLAB;仿真;滤波Speech signle denoising and simulation inMATLAB platformABSTRACTDigital signal processing can not be separated from the filter, the filter design occupies an extremely important role in signal processing. The MATLAB software toolbox provides a variety of digital filter design. The subject of the use of basic knowledge of digital signal processing, speech signal and the noisy speech signal specctral snalysis and filtering,By the theoretical derivation of the corresponding conclusions, then to the computer through the use of MATLAB as a programming tool To achieve parity to verify the conclusions derived. In the design process, using the windoow function design FIR digital filter,IIR digital filter using cut design than Chebyshev, Butterworth and bilinear variation method. In the design process,the use of computer and simulation of MATLAB the entire design, graphics rendering,and some date.Key words filter;MATLAB;simulation;filtering目录摘要 (I)ABSTRACT (II)第1章前言 (1)1.1 研究的意义 (1)1.2 国内外研究现状 (1)1.3 研究的内容 (2)第2章语音信号去噪方法的研究 (4)2.2 去噪的原理 (4)2.2.1 采样定理 (4)2.2.2 采样频率 (5)2.2 去噪的方法 (5)FIR滤波器基本结构: (7)IIR数字滤波器的设计 (8)第3章滤波器的设计及实现 (10)3.1数字滤波器设计的基本原理 (10)3.3 IIR数字滤波器的设计及实现 (13)第四章去噪及仿真的研究 (16)4.1 语音文件在MATLAB平台上的录入与打开 (16)4.2 原始语音信号频谱分析及仿真 (16)4.3 加噪语音信号频谱分析及仿真 (20)(1)正弦波信号加入原始语音信号 (20)4.4 去噪及仿真 (23)4.5 结合去噪后的频谱图对比两种方式滤波的优缺点 (25)总结 (26)致谢 ................................................................................................................... 错误!未定义书签。

基于MATLAB语音信号降噪处理-刘芬

基于MATLAB语音信号降噪处理-刘芬

目录插图清单 (I)摘要.............................................................................................................................................................. I I Abstract .. (III)引言.......................................................................................................................................................... - 0 - 第一章语音信号的采集................................................................................................................................ - 1 -1.1 语音信号产生数字模型.................................................................................................................. - 1 -1.2 语音信号的数字化和预处理.......................................................................................................... - 2 - 第二章语音信号的分析................................................................................................................................ - 3 -2.1 语音信号的时域分析和频域分析.................................................................................................. - 3 -2.1.1 语音信号的时域分析.................................................................................................................. - 3 -2.1.2 语音信号的频域分析.......................................................................................................... - 3 -2.2 语音信号处理软件介绍....................................................................................... 错误!未定义书签。

基于MATLAB语音信号处理去噪毕业设计(含源文件)

基于MATLAB语音信号处理去噪毕业设计(含源文件)

在Matlab平台上实现对语音信号的去噪研究和仿真摘要语音信号在数字信号处理中占有极其重要的地位,因此选择通过对语音信号的研究来巩固和掌握数字信号处理的基本能力十分具有代表性。

对数字信号处理离不开滤波器,因此滤波器的设计在信号处理中占有极其重要的地位。

而MATLAB软件工具箱提供了对各种数字滤波器的设计。

本论文“在MATLAB平台上实现对语音信号的去噪研究与仿真”综合运用了数字信号处理的各种基本知识,进而对不带噪语音信号进行谱分析以及带噪语音信号进行谱分析和滤波处理。

通过理论推导得出相应的结论,再通过利用MATLAB作为编程工具来进行计算机实现比价已验证推导出来的结论。

在设计过程中,通过设计FIR数字滤波器和IIR数字滤波器来完成滤波处理。

在设计过程中,运用了MATLAB对整个设计中的图形的绘制和一些数据的计算以及仿真。

关键字滤波器;MATLAB;仿真;滤波Speech signle denoising and simulation inMATLAB platformABSTRACTDigital signal processing can not be separated from the filter, the filter design occupies an extremely important role in signal processing. The MATLAB software toolbox provides a variety of digital filter design. The subject of the use of basic knowledge of digital signal processing, speech signal and the noisy speech signal specctral snalysis and filtering,By the theoretical derivation of the corresponding conclusions, then to the computer through the use of MATLAB as a programming tool To achieve parity to verify the conclusions derived. In the design process, using the windoow function design FIR digital filter,IIR digital filter using cut design than Chebyshev, Butterworth and bilinear variation method. In the design process,the use of computer and simulation of MATLAB the entire design, graphics rendering,and some date.Key words filter;MATLAB;simulation;filtering目录摘要 (I)ABSTRACT (II)第1章前言 (1)1.1 研究的意义 (1)1.2 国内外研究现状 (1)1.3 研究的内容 (2)第2章语音信号去噪方法的研究 (4)2.2 去噪的原理 (4)2.2.1 采样定理 (4)2.2.2 采样频率 (5)2.2 去噪的方法 (5)FIR滤波器基本结构: (7)IIR数字滤波器的设计 (8)第3章滤波器的设计及实现 (10)3.1数字滤波器设计的基本原理 (10)3.3 IIR数字滤波器的设计及实现 (13)第四章去噪及仿真的研究 (16)4.1 语音文件在MATLAB平台上的录入与打开 (16)4.2 原始语音信号频谱分析及仿真 (16)4.3 加噪语音信号频谱分析及仿真 (20)(1)正弦波信号加入原始语音信号 (20)4.4 去噪及仿真 (23)4.5 结合去噪后的频谱图对比两种方式滤波的优缺点 (25)总结 (26)致谢 ................................................................................................................... 错误!未定义书签。

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

word. word. SHANGHAI JIAO TONG UNIVERSITY

实验三 主动降噪实验 指导老师:王旭永 小组成员:吴淑标 5110209352 汤剑宏 5110209355 朱安林 5110209344 word.

word. 目录

一、实验目的 ......................................................................................... 1 二、实验原理 ......................................................................................... 1 三、实验仪器 ......................................................................................... 3 四、实验步骤 ......................................................................................... 4 五、实验过程 ......................................................................................... 5 六、程序代码及解释.............................................................................. 7 七、实验数据观察及解释 .................................................................... 10 八、误差分析 ....................................................................................... 11 九、实验感想 ....................................................................................... 12 word.

word. 一、实验目的 1. 了解噪声的基本概念; 2. 了解工程中处理噪声的常规方法; 3. 掌握主动降噪的基本原理与方法; 4. 通过实验模拟主动降噪,分析降噪效果。

二、实验原理 主动降噪(主动噪声控制),又称为有源噪声控制。早在1933年就由德国物理学家Paul Lueg提出了。其主要依据了声波的干涉原理,来消除噪声。主动降噪的基本原理图如图1所示:

简单的说就是用传感器检测噪声信号,通过控制系统反馈给次声源,由次生源发出与原噪声信号频率相同、幅值大小相同、相位相反的声信号,根据声波叠加原理,达到一种降噪的效果。其逻辑程序框图如图2所示:

图1 主动降噪的原理

图2 主动降噪逻辑框图 word.

word. 主动降噪,习惯上可以进行如下分类: 1)有源声控制和有源力控制; 2)单通道有源控制和多通道有源控制; 3)非自适应有源控制和自适应有源控制。 对于有源噪声控制系统而言,也可以这样分类: 1)模拟系统和数字系统; 2)前馈控制系统和反馈控制系统; 3)单通道系统和多通道系统。 主动降噪的实现: 以单通道有源噪声控制系统为例,这里也分非自适应有源噪声控制系统和自适应有源噪声控制系统。 1)自适应有源噪声控制系统: 该系统一般由初级声源、自适应控制器、次级声源和误差传感器组成。其特点是控制器带反馈,并具有自适应控制算法,控制器多为数字控制器。这种系统适用的范围宽,相对灵活,但其结构复杂,实现难度加大,成本增加。本系统原理图如图3所示:

本实验主要采用此种控制方式。 2)非自适应有源噪声控制系统: 该系统一般由初级声源、控制器、次级声源和传感器组成。其特点是控制器不带反馈,可以是模拟控制器,也可以是数字控制器。这种系统适用的范围有限。 影响主动降噪性能的主要因素: 1)初级声源的类型与特征:

图3 自适应有源噪声控制系统 word. word. 此时,最适合的噪声源是集中参数噪声源,最好是点噪声源。这样,可以使用尽可能少的次级声源获得最大降噪量。 2)次级声源的位置: 一般为获得全局空间噪声能量的降低,在进行次级声源的布置时,应该遵循从空间和时间上完全能够复制初级声场的原则,使得次级声源称为初级声源的“镜像”。 3)传感器(误差传感器)的位置与个数: 对于有源降噪而言,所使用的传感器(误差传感器)位置与个数是至关重要的。因为其位置是否合适,直接影响到获取初级声源的质量;其个数多少关系到降噪效果。 4)参考信号与质量: 参考信号能够获得并质量好,就可以构造性能良好的前馈控制器,因为前馈控制器相对于反馈控制器而言,结构简单,性能易于稳定。 5)自适应算法与控制器硬件: 对于宽带噪声的降噪而言,好的自适应算法将扮演重要的角色。它不仅关系着控制器的复杂程度、系统稳定性。因此,一个好的自适应算法应该兼顾收敛性、鲁棒性和计算量三个方面。 控制器硬件设置应该以能够实时地、准确地完成自适应算法为目标。

三、实验仪器 本实验用到的实验设备比较简单:笔记本电脑(图4)、扬声器即音箱(图5)、传感器即麦克风(图6);所使用的编程软件是Matlab,方案简单易行。

图4 笔记本电脑 图5 扬声器 word. word. 四、实验步骤 1)完成各仪器能否正常工作的检验,保证实验正常进行; 2)按计划搭建实验平台,如图7所示;

3)打开Matlab软件,将编好的程序烧录其中,准备开始实验; 4)选择相对安静的空间,运行程序,程序会自动会输出8张图,分别包括降噪前、后的波形图和幅值频谱图; 5)待程序运行完毕,观察最后一次降噪的幅值频谱图,和原噪声进行比较是否达到了降噪的效果,如不满足需要进行调试,再次重复实验; 6)满足要求后,结束程序,拆除实验平台,整理实验设备; 7)整理相关实验图片和数据,进行数据分析;

图6 传感器 图7 实验整体平台 word.

word. 8)分析实验误差,得出结论并撰写实验报告。

五、实验过程 实验平台搭建过程: 1)选择相对安静的空间环境,将平整的桌面当做实验平台; 2)将这对音箱间隔合适的距离对放,并且使发声源在一条直线上,连接电脑USB接口加耳机接口,将其中一个声道当做噪声源,另一个声道做次生源;(本实验并没有选择添加声道) 3)把麦克风的接收点放置在上述直线上的任意一点,保持稳定位置不变,连接电脑的USB接口,作为声音传感器。 正式实验过程: 1)选择噪声频率1100Hz,声源持续时间为120s,次生源除了相位值与原噪声不同,其余一致,检测控制时间为3s一个循环,目的就是不断改变相位,一切准备就绪,运行程序; 2)第一步为检测程序,结果会识别出原噪声的频率以及相应的幅值,会首先输出两幅图,分别是原噪声信号波形图和幅值频谱图,如图8所示:

图8 检测原噪声程序输出结果 word.

word. 3)第二步为降噪第一阶段,次生源会发出和原噪声一致的声信号,以pi/3为精度,不断移动次生源的相位,直到筛选出目标相位(相邻两点叠加后信号的幅值小于原噪声的幅值),此时跳出该循环,并输出另外两幅图,即第一步降噪的信号波形图和幅值频谱图,如图9所示:

4)第三步为降噪第二阶段,目标函数进入第二个循环,以pi/12为精度,不断移动次生源的相位,直到筛选出目标相位(叠加后信号的幅值降低50%),此时跳出该循环,并输出两幅图,即第二步降噪的信号波形图和幅值频谱图,如图10所示:

图9 第一步降噪程序输出结果

图10 第二步降噪程序输出结果 word.

word. 5)第四步为降噪第三阶段,目标函数进入第三个循环,以pi/24为精度,不断移动次生源的相位,直到筛选出目标相位(叠加后信号的幅值降低70%),此时跳出该循环,次生源便以该相位值持续发出信号,即持续降噪效果,输出最后两幅图,即第三步降噪的信号波形图和幅值频谱图,如图11所示:

6)若实验能够成功运行,则结束运行程序,整理实验器材,分析实验数据,并做误差分析。

六、程序代码及解释 Fs=8192; %采样频率为8192 t=1:(120*Fs); %定原噪声发声时间为120s yy=zeros(2,120*Fs); %建立两行零矩阵,以存储双声道不同的声信号 yy(1,:)=40*sin(2*pi*1100*(t/Fs)-pi/3); %原噪声的发声程序,频率1100Hz sound(yy,Fs); %Matlab发声代码 Y=audiorecorder(Fs,16,1); %Matlab声卡采集代码,采样精度为16,单声道 disp('Start speaking.'); recordblocking(Y,3); %声音收集时间为3s disp('End of Recording.'); y=getaudiodata(Y); %Matlab声信号转化为数值代码 figure(1); %Matlab画图代码 subplot(241); plot(y); %第一幅图原噪声波形图 xlabel('time'); ylabel('fuzhi');

图11 第三步降噪程序输出结果

相关文档
最新文档