1、1数字信号处理课程设计题目:基于 MATLAB 的语音信号滤波处理学院:医药信息工程学院班级:生物医学工程(生物医学电子仪器方向)10组长:钟伟新 组员:庄 鸿 钟振锋 2012 年 12 月 20 日2摘要语音信号处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴学科,是目前发展最为迅速的学科之一,通过语音传递信息是人类最重要,最有效,最常用和最方便的交换信息手段,所以对其的研究更显得尤为重要。MATLAB 语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换成离散的数据文件,然后用起强大的矩阵运算能力处理数据。这为我们本次的设计提供了强大并良好的环境!本
2、课程设计的目的是熟悉在 Windows 环境下语音信号采集的方法,掌握数字信号处理的基本概念、基本理论以及基本方法,掌握MATLAB 设计 FIR 和 IIR 数字滤波器的方法并且学会运用 MATLAB 对信号进行分析和处理。课题的制作过程中,首先是对语音信号进行采集和频谱分析,然后再分别用低通、高通和带通三种滤波器进行滤波处理,最后回放语音信号。通过实验分析,语音信号经过滤波器滤波处理后,杂音有所减少,音质效果变得更加动听。3目录1.设计内容42.设计原理42.1 语音信号的时域分析42.2 语音信号的频域分析43.设计过程 63.1 设计程序源代码 63.1.1 原语音信号时域、频域63.
3、1.2 设计低通滤波器63.1.3 设计高通滤波器73.1.4 设计带通滤波器83.1.5 语音信号的回放93.2 调试分析过程描述 93.3 设计结果分析 154.设计总结 155.参考文献 1641.设计内容:1首先准备好一段语音信号。2用 MATLAB 分别设计好 3 种类型的滤波器(指标自己确定):低通型、高通型、带通型。3用 MATLAB 将语音信号进行采样,并分别将其通过所设计的 3 种滤波器。4用 MATLAB 自带的语音返回函数收听滤波后的语音信号,分析并比较其与原语音信号的差异。2.设计原理:语音信号是一种非平稳的时变信号,它带着各种信息,在语音编码、语音合成、语音识别和语音
4、增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效的提取并表示语音信号所携带的信息。语音信号处理可以分为时域和变换域等处理方法,其中时域分析是最简单的方法,直接对语音信号的时域波形进行分析,崎岖的特征参数主要有语音的短时能量,短时平均过零率,短时自相关函数等。2.1 语音信号的时域分析5信号提取:通过图形用户界面上的菜单功能按键采集电脑上的一段音频信号,完成音频信号的频率,幅度等信息的提取,并得到该语音信号的波形图。信号调整:在设计的用户图形界面下对输入的音频信号进行各种变化,如变化幅度、改变频率等操作,以实现对语音信号的调整。2.2 语音信号的频域分析信号
5、的傅里叶表示在信号的分析和处理中起着重要的作用。因为对于线性系统来说,可以很方便地确定其对正弦或复指数和的响应,所以傅里叶分析方法能完善地解决许多信号分析和处理问题。另外,傅里叶表示使信号的某些特性变得更明显,因此,它能更深入地说明信号的各项红物理现象。由于语音信号时随着时间变化的,通常认为,语音是一个受准周期脉冲或随机噪声源激励的线性系统的输出。输出频谱是声道系统频率响应与激励源频谱的乘积。身份到系统的频率响应及激励源都是随时间变化的,因此一般标准的傅里叶表示虽然适用于周期及平稳随机信号的表示,但不能直接用于语音信号。由于语音信号可以认为在短时间内,近似不变,因而可以采用短时分析法。1.信号
6、变换:在用户图形界面西啊对采集的语音信号进行 Fourier 等变换,并画出变换前后的频谱图和倒谱图。62.信号滤波:滤除语音信号中的噪音部分,可以采用抵用滤波、高通滤波、带通滤波,并比较各种滤波后的效果。3设计过程:3.1 设计程序源代码(原语音信号存放在 D:下)3.1.1原语音信号时域、频域图clc;clear all;x1,Fs,bits=wavread(D:周杰伦.wav);sound(x1,Fs);figure(1);plot(x1); %做原始语音信号的时域图形title(原始语音信号);xlabel(time n);ylabel(yinliang n);figure(2);y1
7、=fft(x1); %做 length(x1)点的 FFTy1=fftshift(y1);%平移,是频率中心为 0derta_Fs = Fs/length(x1);%设置频谱的间隔,分辨率plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(y1);%画出原始语音信号的频谱图title(原始语音信号的频谱);7grid on;3.1.2 设计低通滤波器%以下设计低通滤波器fs=50000;fc1=1100;wc1=2*pi*fc1/fs;wp1=2*pi*1000/fs;ws1=2*pi*1200/fs;N1=ceil(200*2*pi/ws1-wp1);Window=
8、boxcar(N1+1); %长度为 N1 的矩形窗 Windowb1=fir1(N1,wc1/pi,Window);figure(3);freqz(b1,1,512);title(低通滤波器的频率响应);x1_low = filter(b1,1,x1);%对信号进行低通滤波figure(4);plot(x1_low);title(信号经过低通滤波器(时域);figure(5);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(fftshift(fft(x1_low);title(信号经过低通滤波器(频域));3.1.3 设计高通滤波器8%以下设计高通滤波器fc2=
9、4900;wc2=2*pi*fc2/fs;wp2=2*pi*4800/fs;ws2=2*pi*5000/fs;N2=ceil(4*pi/(ws2-wp2);Window=boxcar(N2+1);b2=fir1(N2,wc2/pi,Window);figure(6);freqz(b2,1,512);%数字滤波器频率响应title(高通滤波器的频率响应);x1_high = filter(b2,1,x1);%对信号进行高通滤波figure(7);plot(x1_high);title(信号经过高通滤波器(时域);figure(8);plot(-Fs/2:derta_Fs: Fs/2-derta_
10、Fs,abs(fftshift(fft(x1_high);title(信号经过高通滤波器(频域));3.1.4 设计带通滤波器%以下设计带通滤波器f1=1100;f2=3100; %带通滤波器的通带范围w1=2*pi*f1/fs; %0.1567=0.0499piw2=2*pi*f2/fs; %0.4417=0.1407pi9w=w1,w2;N3=ceil(4*pi/(2*pi*200/fs);b3=fir1(N3,w/pi,high);%带通滤波器figure(9);freqz(b3,1,512); %数字滤波器频率响应title(带通滤波器的频率响应);x1_daitong = filte
11、r(b3,1,x1);%对信号进行带通滤波figure(10);plot(x1_daitong);title(信号经过带通滤波器(时域);figure(11);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(fftshift(fft(x1_daitong);title(信号经过带通滤波器(频域));3.1.5 语音信号的回放sound(x1,fs,bits);%原始信号sound(x1_low,fs,bits);%经过低通滤sound(x1_high,fs,bits); %经过高通滤波sound(x1_daitong,fs,bits);%经过带通滤波3.2 调试分
12、析过程描述原始语音信号的时域图形:10原始语音信号频谱:11低通滤波器的频率响应:信号经过低通滤波后的时域波形:12信号经过低通滤波后的频域波形高通滤波器的频率响应:13信号经过高通滤波后的时域波形:信号经过高通滤波后的频域波形:14带通滤波器的频率响应:信号经过带通滤波后的时域波形:15信号经过带通滤波后的频域波形:3.3 设计结果分析经过回放三个不同类型滤波器输出的语音信号,并与原语音信号对比得到了如下结论:语音高频成分音质非常尖锐,齿音中,声音有些暗淡。语音低频成分音质沉稳,空间感觉强,语音浑厚。语音中频成分音质有力度,有通透感。4. 设计总结经过本次数字信号处理的课程设计,再一次深刻体
13、会到 MATLAB的强大之处,也进一步深刻认识和学习了数字信号处理和 MATLAB,16软件提供的许多工具箱,只是用到了冰山一角,以后会继续学习MATLAB。设计过程中遇到了许多问题,一开始是我们自己通过上网查找相关资料和到图书馆查找相关文献尽量解决,然后再通过同学、往届师兄师姐虚心请教,都被慢慢解决了。5.参考文献1 陈怀琛.数字信号处理教程MATLAB 释义与实现.北京:电子工业出版社,2004.12:11-252 唐建锋,游开明,陈列尊.基于 MATLAB 的数字滤波器设计研究型实验探讨.湖南:衡阳师范学院学报,2006:164-1663 雷学堂,徐火希.可直接感受的基于 MATLAB
14、的语音滤波.湖北:黄冈师范学院学报,2006:45-524 袁小平,王艳芬,史良.基于 MATLAB 的数字信号处理课程的实验教学J. 上海:实验室研究与探索,2002:58-605 程佩青.数字信号处理教程M. 北京:清华大学出版社,2002 :158-2046 李永全. MATLAB 在数字信号处理课程设计中的应用J.西安:现代电子技术,2004,27 (7):37-38. 7 陈怀琛 ,吴大正,高西全. MATLAB 及其在电子信息课程中的应用M.北京:电子工业出版社,2002:19-258 陈后金.数字信号处理M.北京:高等教育出版社,2004 :195-2009高西全,丁玉美.数字信号处理.西安:西安电子科技大学出版社, 2008