您好,欢迎来到爱够旅游网。
搜索
您的当前位置:首页MATLAB用于语音信号的处理

MATLAB用于语音信号的处理

来源:爱够旅游网


MATLAB用于语音信号的处理

一.

设计目的

通过该设计,要求对语音信号的采集、处理、传输、显示、和存储等有一个系统的掌握和理解。理解信号采样频率的概念,掌握对语音信号进行时域和频域分析方法,了解滤波器的概念及原理。 二.

设计内容

1.语音信号的采集 2.语音信号的频谱分析 3.设计数字滤波器 4.用滤波器对信号进行滤波

5. 分析滤波后得到的语音信号的频谱,画出滤波后信号的时域波形和频

谱,并对滤波前后的信号进行对比,分析信号的变化 6.回放语音信号 三.

总体方案设计

1.利用Windows下的录音机或其他软件,录制一段语音信号,时间控制在1s左右,然后再MATLAB软件平台下,利用函数wavread对录制的语音信号进行采样,记住采样频率和采样点数。

MATLAB函数:Wavread功能对语音信号进行采样,wavread函数的格式为:[y,fs,bits]=wavread('d:\\kugou\\2.wav',[n1,n2]),返回文件中语音信号从n1到n2之间的样本。

2. 先画出语音信号的时域波形,然后对语音信号进行快速傅里叶变换,得到信号的频谱特性。

MATLAB函数:fft功能是实现快速傅里叶变换,fft函数的格式为:y=fft(y),返回向量x的不连续fourier变换。

1/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

2/7

五.

源程序:

3/7

六.仿真结果

4/7

5/7

6/7

七.

实验总结

语音信号处理是语音学与数字信号处理技术相结合的交叉学科。作为存储于计算机中的语音信号,其本身就是离散化了的向量,我们只需将这些离散的量提取出来,就可以对其进行处理了。用处理数字信号的强有力工具MATLAB,通过MATLAB里几个命令函数的调用,很轻易的在实际化语音与数字信号的理论之间搭了一座桥。课题的特色在于它将语音看作了一个向量,于是语音数字化了,则可以完全利用数字信号处理的知识来解决。我们可以像给一般信号做频谱分析一样,来给语音信号做频谱分析,也可以较容易的用数字滤波器来对语音进行滤波处理。

我感受到只有在了解课本知识的前提下,才能更好的应用这个工具;并且熟练的应用MATLAB也可以很好的加深我对课程的理解,为我带来方便。这次设计使我了解了MATLAB的使用方法,提高了分析和动手实践能力。同时我相信,进一步加强对MATLAB的学习与研究对我今后的学习将会起到很大的帮助。

7/7

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igbc.cn 版权所有 湘ICP备2023023988号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务