收藏 分享(赏)

基于MATLAB的语音信号的采集与处理详解.doc

上传人:精品资料 文档编号:8547541 上传时间:2019-07-02 格式:DOC 页数:16 大小:304.50KB
下载 相关 举报
基于MATLAB的语音信号的采集与处理详解.doc_第1页
第1页 / 共16页
基于MATLAB的语音信号的采集与处理详解.doc_第2页
第2页 / 共16页
基于MATLAB的语音信号的采集与处理详解.doc_第3页
第3页 / 共16页
基于MATLAB的语音信号的采集与处理详解.doc_第4页
第4页 / 共16页
基于MATLAB的语音信号的采集与处理详解.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、数字信号处理数 字 信 号 处 理课程设计题目:基于 MATLAB 的语音信号的采集与处理 学院:皖西学院 专业:通信工程 班级:通信 1001 班 学号:2010013461 2010013494 姓名:刘敏 纵大庆 指导教师:何富贵 数字信号处理摘要:本 次 课 程 设 计 题 目 为 。 首 先我 们 利 用 计 算 机 上 的 录 音 软 件 获 得 语 音 信 号 , 然 后 利 用 MATLAB 对 语 音 信 号进 行 分 析 和 处 理 , 采 集 语 音 信 号 后 , 利 用 MATLAB 软 件 平 台 进 行 频 谱 分 析 ;并 对 所 采 集 的 语 音 信 号 加

2、 入 干 扰 噪 声 , 对 加 入 噪 声 的 信 号 进 行 频 谱 分 析 , 设计 合 适 的 滤 波 器 滤 除 噪 声 , 恢 复 原 信 号 !数字信号处理目 录1. 背景 12. 设计目的 23. 设计原理 24. 设计过程 35. 实验代码及结果 45.1 语音信号的采集 45.2 语音信号加噪与频谱分析 75.3 巴特沃斯滤波器的设计 95.4 比较滤波前后语音信号波形及频谱 106. 收获与体会 12参考文献 13数字信号处理第 0 页1.引言数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和

3、便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、度快等优点。数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite I

4、mpulse Response)滤波器。FIR滤波器结 构 上 主 要 是 非 递 归 结 构 , 没 有 输 出 到 输 入 的 反 馈 , 系 统 函 数 H (z)在z= 处 收 敛 , 极 点 全 部 在 z = 0处 ( 因 果 系 统 ) , 因 而 只 能 用 较 高 的 阶 数 达 到 高 的 选 择性 。 FIR数 字 滤 波 器 的 幅 频 特 性 精 度 较 之 于 IIR数 字 滤 波 器 低 , 但 是 线 性 相 位 , 就 是 不同 频 率 分 量 的 信 号 经 过 FIR滤 波 器 后 他 们 的 时 间 差 不 变 , 这 是 很 好 的 性 质 。 FIR

5、数 字滤 波 器 是 有 限 单 位 脉 冲 响 应 有 利 于 对 数 字 信 号 的 处 理 , 便 于 编 程 , 用 于 计 算 的 时 延 也小 , 这 对 实 时 的 信 号 处 理 很 重 要 。 FIR滤波器因具有系统稳定,易实现相位控制,允许设计多通带(或多阻带)滤波器等优点收到人们的青睐 1。IIR滤波器采 用 递 归 型 结 构 , 即 结 构 上 带 有 反 馈 环 路 。 IIR滤 波 器 运 算 结 构 通 常 由延 时 、 乘 以 系 数 和 相 加 等 基 本 运 算 组 成 , 可 以 组 合 成 直 接 型 、 正 准 型 、 级 联 型 、 并 联 型四

6、种 结 构 形 式 , 都 具 有 反 馈 回 路 。 同 时 , IIR数 字 滤 波 器 在 设 计 上 可 以 借 助 成 熟 的 模拟 滤 波 器 的 成 果 , 如 巴 特 沃 斯 滤 波 器 等 。数字信号处理第 1 页2.设计目的本 次 课 程 设 计 的 课 题 为 基 于 MATLAB 的 语 音 信 号 采 集 与 处 理 , 学 会 运 用MATLAB 的 信 号 处 理 功 能 , 采 集 语 音 信 号 , 并 对 语 音 信 号 进 行 滤 波 及 变 换 处 理 , 观 察 其 时域 和 频 域 特 性 , 加 深 对 信 号 处 理 理 论 的 理 解 , 并

7、为 今 后 熟 。 MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。由于信号与系统课程的许多内容都是基于公式演算,而 MATLAB借助符号数学工具箱提供的符号运算功能,能基本满足信号与系统课程的需求。例如解微分方程、傅里叶正反变换、拉普拉斯正反变换和 z正反变换等。MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的 S域分析和零极点图绘制等内容。数值计算仿真分析可以帮助学生更深入地理解理论知识,并为将来使用 MATLAB进行信号处理领域的各种分析和实际应用打下基础。

8、3.设计原理利 用 MATLAB对 语 音 信 号 进 行 分 析 和 处 理 , 采 集 语 音 信 号 后 , 利 用 MATLAB软 件 平 台进 行 频 谱 分 析 ; 并 对 所 采 集 的 语 音 信 号 加 入 干 扰 噪 声 , 对 加 入 噪 声 的 信 号 进 行 频 谱 分 析 ,设 计 合 适 的 滤 波 器 滤 除 噪 声 , 恢 复 原 信 号 。 语音信号的“ 短时谱”对于非平稳信号, 它是非周期的, 频谱随时间连续变化, 因此由傅里叶变换得到的频谱无法获知其在各个时刻的频谱特性。如果利用加窗的方法从语音流中取出其中一个短断, 再进行傅里叶变换, 就可以得到该语音

9、的短时谱。MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学工具箱提供的符号运算功能,能基本满足信号与系统课程的需求。例如解微分方程、傅里叶正反变换、拉普拉斯正反变换和z正反变换等。MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析和零极点图绘制等内容。数值计算仿真分析可以帮助学生更深入地理解理论知识,并为将来使用MATLAB进行信号处理领域的各种分析和实际应用打下基础 3。滤波器的设计可

10、以通过软件或设计专用的硬件两种方式来实现。随着MATLAB软件及信号处理工具箱的不断完善,MATLAB很快成为应用学科等领域不可或缺的基础软件。它可以数字信号处理第 2 页快速有效地实现数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化。利用MATLAB中的随机函数产生噪声加入到语音信号中,模仿语音信号被污染,并对其进行频谱分析;设计巴特沃斯滤波器, 并对被噪声污染的语音信号进行滤波, 对滤波前后信号进行时域分析。4.设计过程基于声卡进行数字信号的采集。将话筒插入计算机的语音输入插口上,启动录音机。按下录音按钮,对话筒说话,说完后停止录音。要保存文件时,利用了计算机上的

11、 A/D转换器,把模拟的声音信号变成了离散的量化了的数字信号,放音时,它又通过 D/A转换器,把保存的数字数据恢复为原来的模拟的声音信号。在 Matlab 软件平台下可以利用函数 wavread对语音信号进行采样,得到了声音数据变量 x1,同时把 x1的采样频率 fs=22050Hz和数据位 Nbits=16Bit放进了MATALB的工作空间。然后通过 freqz函数绘制原始语音信号的频率响应图。接着对语音信号进行频谱分析,在 Matlab中可以利用函数 fft对信号进行快速傅里叶变换,得到信号的频谱图。语音信号加噪与频谱分析在 Matlab中人为设计一个固定频率 5500Hz的噪声干扰信号,

12、噪声信号通常为随机序列,在本设计中用正弦序列代替,干扰信号构建命令函数为 d=Au*sin(2*pi*5500*t),给出的干扰信号为一个正弦信号,针对上面的语音信号 ,采集了其中一段。再对噪音信号进行频谱变换得到其频谱图.最后通过函数将原信号与噪声信号叠加在一起构成加噪的语音信号,采集他的加噪信号,接着对其进行 fourier变换,得到加噪信号的频谱图,最后设计一个高通滤波器,对加噪的信号进行滤波处理,得到的信号与原始信号进行比较!数字信号处理第 3 页5.实验代码及结果5.1语音信号的采集源程序为:fs=22050;%语音信号采样频率为22050x1=wavread(D:MATLABbin

13、zx.wav);%读取语音信号的数据,赋给变量x1sound(x1,22050); %播放语音信号y1=fft(x1,1024);%对信号做1024 点FFT 变换f=fs*(0:511)/1024;%将0到511 ,步长为1的序列的值与fs 相乘并除以1024的值,赋值给fPlot(x1);%做原始语音信号的时域图形图5-1:语音信号的采集数字信号处理第 4 页通过freqz函数绘制原始语音信号的频率响应图5-2。fs=22050;%语音信号采样频率为22050x1=wavread(D:MATLABbinzx.wav);%读取语音信号的数据,赋给变量x1sound(x1,22050); %播

14、放语音信号y1=fft(x1,1024);%对信号做1024 点FFT 变换f=fs*(0:511)/1024; %将0到511 ,步长为1的序列的值与fs相乘并除以1024的值,赋值给fFreqz(x1);%绘制原始语音信号的频率响应图图5-2:原始语音信号的频率采样数字信号处理第 5 页然后对语音信号进行频谱分析,在 Matlab中可以利用函数 fft对信号行快速傅里叶变换,得到信号的频谱图 5-3。fs=22050;%语音信号采样频率为22050x1=wavread(D:MATLABbinzx.wav);%读取语音信号的数据,赋给变量x1sound(x1,22050);%播放语音信号y1

15、=fft(x1,1024);%对信号做1024 点FFT 变换f=fs*(0:511)/1024;%将0到511 ,步长为1的序列的值与fs 相乘并除以1024的值,赋值给fsubplot(2,1,1); %创建两行一列绘图区间的第1个绘图区间 plot(abs(y1(1:512); %做原始语音信号的FFT频谱图title(原始语音信号FFT频谱);subplot(2,1,2);plot(f,abs(y1(1:512);%abs是绝对值,plot是直角坐标下线性刻度曲线数字信号处理第 6 页title(原始语音信号频谱);图 5-3:原始信号的 FFT 变换5.2语音信号加噪与频谱分析fs=

16、22050; %语音信号采样频率为22050x1=wavread(D:MATLABbinzx.wav); %读取语音信号的数据,赋给变量x1f=fs*(0:511)/1024; %将0到511 ,步长为1的序列的值与fs相乘并除以1024的值,赋值给ft=0:1/fs:(length(x1)-1)/fs; %将0到x1的长度减1后的值除以fs的值,且步长为1/fs的值,的序列的 值,赋予t数字信号处理第 7 页Au=0.005; %噪声幅值d=Au*sin(2*pi*5500*t); %所加的噪声是正弦信号x2=x1+d; %将正弦信号噪声加在语音信号上sound(x2,22050); %播放

17、语音信号y1=fft(x1,1024); %对信号y1做1024点FFT变换y2=fft(x2,1024); %对信号y2做1024点FFT变换figure(4); %创建图形窗1plot(t,x2); %做加噪后的信号时域title(加噪后的信号);图 5-4:加噪声后的语音信号数字信号处理第 8 页5-3:巴特沃斯滤波器的设计:wp=0.25*pi; %通带截止频率ws=0.3*pi; %阻带截止频率Rp=1; %通带最大衰减( db)Rs=15; %阻带最大衰减(db)Fs=22050;Ts=1/Fs;wp1=2/Ts*tan(wp/2); %将模拟指标转换成数字指标ws1=2/Ts*t

18、an(ws/2); %将模拟指标转换成数字指标N,Wn=buttord(wp1,ws1,Rp,Rs,s); %选择滤波器的最小阶数(估算得到Butterworth低通滤波器的最小阶数N和3dB 截止频率Wc)Z,P,K=buttap(N); %创建Butterworth 低通滤波器原型Bap,Aap=zp2tf(Z,P,K); %将零极点增益转换为普遍分子,分母b,a=lp2lp(Bap,Aap,Wn); %将普遍的分子和分母 转换为以Wn为截止频率bz,az=bilinear(b,a,Fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换(模拟转换为数字)H,W=freqz(bz,az)

19、; %求频率响应figure(6)plot(W*Fs/(2*pi),abs(H) %绘制Butterworth 低通滤波器频率响应曲线grid %添加图格xlabel(频率Hz)ylabel(频率响应幅度 )title(Butterworth)数字信号处理第 9 页图 5-5:巴特沃斯滤波器5-4比较滤波前后语音信号波形及频谱wp=0.25*pi; %通带截止频率ws=0.3*pi; %阻带截止频率Rp=1; %通带最大衰减( db)Rs=15; %阻带最大衰减(db)Fs=22050;Ts=1/Fs;wp1=2/Ts*tan(wp/2); %将模拟指标转换成数字指标ws1=2/Ts*tan(

20、ws/2); %将模拟指标转换成数字指标N,Wn=buttord(wp1,ws1,Rp,Rs,s); %选择滤波器的最小阶数(估算得到Butterworth低通滤波器的最小阶数N和3dB 截止频率Wc)数字信号处理第 10 页Z,P,K=buttap(N); %创建Butterworth 低通滤波器原型Bap,Aap=zp2tf(Z,P,K); %将零极点增益转换为普遍分子,分母b,a=lp2lp(Bap,Aap,Wn); %将普遍的分子和分母 转换为以Wn为截止频率bz,az=bilinear(b,a,Fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换(模拟转换为数字)H,W=fre

21、qz(bz,az); %求频率响应figure(6)plot(W*Fs/(2*pi),abs(H) %绘制Butterworth 低通滤波器频率响应曲线grid %添加图格xlabel(频率Hz)ylabel(频率响应幅度 )title(Butterworth)f1=filter(bz,az,x2); %利用上面已做好的滤波器(已bz和az为特征的滤 波器)对x2 信号 进行滤波,赋值给f1figure(7)subplot(2,1,1) %创建两行一列绘图区间的第1绘图区间plot(t,x2); %做加噪后的信号时域图形title(滤波前的时域波形);subplot(2,1,2) %创建两行一

22、列绘图区间的第2绘图区间plot(t,f1); title(滤波后的时域波形);数字信号处理第 11 页图 5-6:滤波前后图形比较通过对比分析可知,滤波后的输出波形和原始语音加噪声信号的图形发生了一些变化,在 3000-6000Hz之间的信号消失,出现 0-1000和 7000-8000之间的信号。滤波后的输出波形明显在对应时间幅度比原语音加噪声信号的要小,而且滤波的效果也与滤波器的选择有关,可以看出滤波器的性能差异以及参数的调节会对滤波器产生一定的影响,并且通过回放可以发现滤波前后的声音有变化.低通滤波后,已很接近原来的声音,人耳几乎辨别不出 。从频谱图中我们还可以看出声音的能量信号主要集

23、中在低频部分,说明高频语音信号被滤出,滤波器达到既定要求。信噪比为 0.62。第 6章 收获与体会通过用巴特沃斯滤波器对原始信号进行滤波,对滤波前后的波形分析对比可知,总体可以恢复原始信号波形,效果很明显,稍有点误差,在以后的设计中需要改进。滤波后的输出波形明显在对应时间幅度比原语音加噪声信号的要小,而且滤波的效果也与滤波器的数字信号处理第 12 页选择有关,可以看出滤波器的性能差异以及参数的调节会对滤波器产生一定的影响,并且通过回放可以发现滤波前后的声音有变化.低通滤波后,已很接近原来的声音,人耳几乎辨别不出。通过为期两周的 MATLAB课程设计,我对 MATLAB这个仿真软件有了更进一步的

24、认识和了解。在这两周时间里,我通过自己摸索,查阅资料,并且在指导老师朱老师的指导下完成了:语音信号的采集及分析;给原始信号加上一个高频噪声;设计一个滤波器,滤除高频噪声;并最终将课程设计报告总结完毕。在整个设计过程中我懂得了许多东西,也培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力, 使自己充分体会到了在设计过程中的成功喜悦。虽然这个设计做的不怎么好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。 在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质。参考文献1:高西全 丁玉美 数字信号处理 第三版 西安:西安电子科技大学出版社, 2008

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报