实验一、语音信号的时域特性和频域特性 学院:信息与通信工程学院 专业:通信工程 班级:1 0 4 学号:2 0 1 0 0 2 6 4 1 0 姓名:黄余芳 指导教师:崔艳秋 1 1. 实验名称 语音信号的时域特性和频域特性 2. 实验类型 验证性实验 3. 实验目的 观察并验证语音信号的时域特性和频域特性,理解并掌握典型的语音信号时域分析方法和频域分析方法,为深入学习数字语音信号处理的相关理论奠定基础。 4. 实验设备 安装有MATLAB 的计算机 5. 实验内容 1. 输入并运行MATLAB 代码。 2. 观察语音信号的时域特性 (1)发一个清音和一个浊音,由麦克风采集语音数据,参考实验内容1 中的程序将这些数据分别存成两个“.w av”文件(例如[a]的语音存为“a.w av”,要求采样率为8000),存在本人的文件夹中。 (2)读取 WAV 文件,显示语音波形,观察清音和浊音波形的差异。 (3)读取 WAV 文件,计算并显示语音的短时能量 (要求分帧加窗的帧长为256 ,帧移为128 ),观察并分析清音和浊音短时能量的差异。 (4)读取 WAV 文件,计算并显示语音的短时过零率(要求分帧加窗是的帧长为256 ,帧移为128 ),观察并分析清音和浊音短时过零率的差异。 3. 观察语音信号的频域特性 (1)读取 WAV 文件,计算并显示一帧语音的原始信号、加窗信号、短时频谱(要求分帧加窗的窗函数为汉明窗、帧长为256 ,帧移为128 ),观察并分析清音 和浊音短时频谱的差异。 (2)读取 WAV 文件,计算并显示不同窗函数情况下一帧语音的加窗信号、短时频谱(要求分帧加窗的窗函数分别为矩形窗和汉明窗、帧长为256,帧移为128),观察并分析不同的窗函数对短时谱分析的影响。 6. 相关函数 w avread、plot、fft 7. MATLAB 程序代码 2 1. 输入并运行以下MATLAB 代码。 (1) 短时能量 clear; close all; Fs=11025; y=wavrecord(5*Fs,Fs,'double'); wavwrite(y,'f:\\a'); soundview(y,Fs); x = wavread('f:\\a.wav'); x = double(x); x = filter([1 -0.9375], 1, x); % 预加重 FrameLen = 256; FrameInc = 128; s = enframe(x, FrameLen, FrameInc); energy = sum(abs(s), 2); figure; subplot(2,1,1); plot(x); title('语音信号时域波形'); xlabel('样点数'); ylabel('幅度'); subplot(2,1,2); plot(energy); title('语音信号的短时能量'); xlabel('帧数'); ylabe...