1/7 MATLAB 用于语音信号的处理 一. 设计目的 通过该设计,要求对语音信号的采集、处理、传输、显示、和存储等有一个系统的掌握和理解。理解信号采样频率的概念,掌握对语音信号进行时域和频域分析方法,了解滤波器的概念及原理。 二. 设计内容 1.语音信号的采集 2.语音信号的频谱分析 3.设计数字滤波器 4.用滤波器对信号进行滤波 5. 分析滤波后得到的语音信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化 6.回放语音信号 三. 总体方案设计 1.利用Window s 下的录音机或其他软件,录制一段语音信号,时间控制在 1s 左右,然后再 MATLAB 软件平台下,利用函数 w avread 对录制的语音信号进行采样,记住采样频率和采样点数。 MATLAB 函数:Wavread 功能对语音信号进行采样,wavread 函数的格式为:[y,fs,bits]=wavread('d:\kugou\2.wav',[n1,n2]),返回文件中语音信号从 n1 到 n2 之间的样本。 2. 先画出语音信号的时域波形,然后对语音信号进行快速傅里叶变换,得到信号的频谱特性。 MATLAB 函数:fft 功能是实现快速傅里叶变换,fft 函数的格式为:y=fft(y),返回向量 x的不连续 fourier 变换。 2/7 3.根据低通滤波器的性能指标设计出滤波器。 MATLAB 函数:Ellipord 功能是要求低通滤波器的参数,ellipord 函数的格式为:[N,Wn]=ellipord(Wp,Ws,Rp,Rs),返回设计滤波器的阶数和截止频率。 Ellip功 能是 设计IIR滤波器, ellip函 数 的格 式 为 :[b,a]=ellip(N,Rp,Rs,Wn) ,返回设计滤波器的低通滤波器的参数。 4.用设计的滤波器对采集的语音信号进行滤波。 MATLAB 函数:filter功能对信号进行滤波,filter 函数的格式为:y=filter(b,a,x),由给定的滤波器对 x 进行滤波。 5.分析滤波后得到的语音信号的频谱,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化 6.对滤波后的语音信号进行回放,对比滤波前后声音的变化。 MATLAB 函数:sound 转化向量为音符的发声指令,sound 函数的格式为: sound(y,fs),把以采样频率 fs 的语音信号 y 以声音的形式播放。 四. 主要参数 Rs=100db Rp=1db Wp=0.5 Ws=0.8 3 /7 五. 源程序: 4 /7 六.仿真结果 5 /7 6 /7 7/7 七. 实验总结 语音信号处理是语音学与数字信号处理技术相结合的交叉学科。作为存储于计算机中的...