(推荐)用MATLAB实现语音信号的时域分析

上传人:每**** 文档编号:64925786 上传时间:2022-03-22 格式:DOC 页数:10 大小:88KB
收藏 版权申诉 举报 下载
(推荐)用MATLAB实现语音信号的时域分析_第1页
第1页 / 共10页
(推荐)用MATLAB实现语音信号的时域分析_第2页
第2页 / 共10页
(推荐)用MATLAB实现语音信号的时域分析_第3页
第3页 / 共10页
资源描述:

《(推荐)用MATLAB实现语音信号的时域分析》由会员分享,可在线阅读,更多相关《(推荐)用MATLAB实现语音信号的时域分析(10页珍藏版)》请在装配图网上搜索。

1、如果您需要使用本文档,请点击下载按钮下载!实验一、用MATLAB实现语音信号的时域分析如果您需要使用本文档,请点击下载按钮下载!1. 实验目的观察并验证语音信号的时域特性,理解并掌握典型的语音信号时域分析方法和时域特征,为深入学习语音信号处理的各种应用奠定基础。2. MATLAB程序代码(1) 由麦克风采集语音数据,将采集的数据存成WAV文件(采样率为8000Hz),存在本人的文件夹中。所用程序代码为:clear;close all;Fs=8000;y=wavrecord(5*Fs,Fs,double);wavwrite(y,f:a);soundview(y,Fs,name) (2)读取WAV

2、文件,显示语音信号的波形。所用程序代码为:x = wavread(f:a.wav);figure;plot(x);axis(0,size(x,1),-0.35,0.3); %坐标轴范围title(语音信号时域波形);xlabel(样点数); ylabel(幅度);(3) 读取WAV文件,计算并显示语音的短时能量(窗函数为矩形窗,帧长为20)。所用程序代码为:x = wavread(f:a.wav); x = double(x);f = enframe(x,20, 100); energy = sum(abs(f), 2); subplot(2,2,1);plot(x); axis(0,size

3、(x,1),-0.7,0.9);title(语音信号时域波形);xlabel(样点数); ylabel(幅度);subplot(2,2,2);plot(energy); title(语音信号的短时能量); legend(帧长LEN = 20);f = enframe(x,20, 200); energy = sum(abs(f), 2); subplot(2,2,3);plot(energy); title(语音信号的短时能量); legend(帧长LEN = 100);f = enframe(x,20, 400); energy = sum(abs(f), 2); subplot(2,2,4

4、);plot(energy); title(语音信号的短时能量); legend(帧长LEN = 200); 如果您需要使用本文档,请点击下载按钮下载!(4)读取WAV文件,计算并显示语音的短时过零率(窗函数为矩形窗,帧长为256,帧移为128),所用程序代码为:x = wavread(f:a.wav); x = double(x);LEN =100;INC=100;f = enframe(x, LEN, INC); %分帧% 计算短时过零率z = zeros(size(f,1),1); difs =0.01; for i=1:size(f,1)s=f(i,:); for j=1:(lengt

5、h(s)-1)if s(j)* s(j+1)difs; z(i)= z(i)+1;endendendsubplot(2,1,1); plot(x); axis(0,size(x,1),-0.35,0.3);title(语音信号时域波形); xlabel(样点数); ylabel(幅度);subplot(2,1,2);plot(z); title(语音信号的短时过零率);xlabel(帧数); ylabel(短时过零率);(5) 读取WAV文件,当窗函数为矩形窗、帧长为20时,计算一帧浊音的短时自相关函数所用的程序代码为: x = wavread(f:a.wav); x = double(x);

6、LEN = 100;INC= 100;f = enframe(x, LEN, INC); ff=f(72,:); %选取一帧浊音信号 ff=ff.*rectwin(length(ff); % 计算短时自相关N=LEN; R=zeros(1,N);for k=1:NR(k)= sum(ff(k:N).*ff(1:N-k+1);endfor k=1:NR1(k)= R(k)/R(1); end如果您需要使用本文档,请点击下载按钮下载!subplot(2,1,1);plot(ff); axis(0,N,-0.5,0.5)title(加矩形窗的语音帧); xlabel(样点数); ylabel(幅度)

7、;subplot(2,1,2); plot(R1); axis(0,N,-1,1)title(加矩形窗的短时自相关函数); xlabel(k); ylabel(R(k);3. 实验结果及其分析(1) 本实验利用8000Hz的采样频率对输入的语音信号进行采样,采样点数为40000个,持续时间为4秒,存储格式为double。之后将数字语音数据写入F盘的a.wav文件,这段波形是读音为ke的波形,并通过放音设备进行回放。回放的GUI界面如图1所示,通过该界面可以观察采集的语音信号。图1 用soundview函数显示的语音信号(2)本实验将L盘的a.wav文件读取出来,并显示文件中的语音信号波形,显示

8、的波形如图2所示。该波形是汉语拼音“ke”的时域波形。从图2可以看出,K是清音,它的波形峰值较低;e是浊音,它的波形峰值较高。如果您需要使用本文档,请点击下载按钮下载!图2 语音“ke”的时域波形(3) 本实验将L盘的a.wav文件读取出来,当帧长取不同值时计算语音信号的短时能量,如图3所示。从图3可以看出,浊音短时能量大,短时平均幅度大,短时过零率低,浊音具有较强的能量值,音段内隐藏信息的能力高。清音短时能量小,短时平均幅度小,能量值较低,音段内隐藏信息的能力较低;如果您需要使用本文档,请点击下载按钮下载!图3 不同帧长对应的短时能量(4)本实验首先读取a.wav中的语音数据,之后计算每一帧

9、的短时过零率,最后将原始语音信号和短时过零率显示出来,如图4所示。从图4可以看出,清音的过零率较高,浊音的过零率较低。如果您需要使用本文档,请点击下载按钮下载!图4 短时过零率(5)本实验首先读取a.wav中的语音数据,之后对数据进行分帧加窗处理,帧长为256,帧移为128。选取其中的一帧浊音(第*帧)并计算这帧的短时自相关函数。当窗函数分别为矩形窗和汉明窗时,截取的语音信号和短时自相关函数如图5和图6所示。从图5和图6可以看出,矩形窗能够比汉明窗更明显的显示出第一个峰值。当窗函数为矩形窗,不同帧长(帧移=帧长)的一帧浊音对应的短时自相关函数如图7和图8所示。从图7和图8可以看出,帧长越长,越

10、容易区分其最大值。当窗函数为矩形窗,帧长为256,帧移为128,选取一帧清音,获得的短时自相关函数如图9所示。从图5和图9可以看出,浊音具有明显的周期性,清音无明显周期。如果您需要使用本文档,请点击下载按钮下载!图5 加矩形窗的短时自相关函数如果您需要使用本文档,请点击下载按钮下载!图6 加汉明窗的短时自相关函数图7 帧长为50时的短时自相关函数图8 帧长为100时的短时自相关函数如果您需要使用本文档,请点击下载按钮下载!图9 清音的短时自相关函数4. 思考题短时能量的主要用途有哪些?答:可以区分清音段与浊音段,可以用来区分,有声与无声的分界,生母和韵母的分界等,也可以用于语音识别中。 (注:可编辑下载,若有不当之处,请指正,谢谢!)

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!