文档来源为:从网络收集整理.word 版本可编辑.欢迎下载支持.
基于 MATLAB 的语音滤波实验
实验目的:
1. 在 Matlab 环境下对语音的频谱进行处理(数字滤波)并试听效果;
2. 在 Matlab 环境下对语音的抽样率进行处理(语音压缩)并试听效果
实验步骤:
一、音频文件的压缩(抽取)。
1. 利用 windows 附件中的录音机功能录制 8~10 秒的.wav 语音文件,并以 lei 为文件名保存到 Matlab/work 的文件夹
中。
a.打开 开始/程序/附件/娱乐/录音机;
b.用 windows media player 播放一首音乐并用 MIC 对着耳机录音或自已说话录音(按
键);
c.将录制的文件加存为 C:/Matlab/work 中,文件名为 leii.wav;
2. 打开 Matlab 并新建一.m 文件;
3. 在.m 文件中用 y=wavread(‘lei.wav’)命令读入语音文件。
4. 语音压缩:在 m 命令窗中输入如下命令:
5. 运行 sample2.m 之后会在 work 文件夹中生成一个名为 lei2 的.wav 文件,如下图:
6. 双击 lei2 音频文件,用耳机试听效果,并跟 lei1 的效果比较。
7. 在 sample2.m 文件中改变抽取倍率 s (必须为正整数),重复 4、5、6 步,观察在不同抽取倍率 s 下的音频质量,
(注意:在运行 sample2.m 之前必须将 work 中名为 lei2 的.wav 音频文件删除,或在.m 文件中 wavwrite()中的保
存文件名改为其它的名字。)
二、音频信号的时域滤波(音频数据的时域卷积)。
(一)、低通滤波
1. 打开 Matlab 并新建一.m 文件,在.m 文件中用 y=wavread(‘lei.wav’)命令读入语音文件。
2. 在 m 命令窗中输入如下命令,并加存为 sample3.m,运行该 m 文件。
3. 双击 lei3 音频文件,用耳机试听效果,并跟 lei1 的效果比较。
4. 再加一级 h(n)的低通滤波,重复 2、3 步,如下图:
(注意:在运行 lei2.m 之前必须将 work 中名为 lei3 的.wav 音频文件删除,或在.m 文件中 wavwrite()中的保存文
件名改为其它的名字。)
5. 重复 2、3、4 步,观察在不同阶数的低通滤波下的音频质量。
(二)、高通滤波
1.打开 Matlab 并新建一.m 文件,在.m 文件中用 y=wavread(‘lei.wav’)命令读入语音文件。
2.在 m 命令窗中输入如下命令,并加存为 sample4.m,运行该 m 文件。
6. 双击 lei4 音频文件,用耳机试听效果,并跟 lei1 的效果比较。
7. 再加一级 h(n)的低通滤波,重复 2、3 步,如下图:
(注意:在运行 lei2.m 之前必须将 work 中名为 lei4 的.wav 音频文件删除,或在.m 文件中 wavwrite()中的保存文
件名改为其它的名字。)
再加一级高通滤波:
(三)时域低通滤波时频域的频谱变化:
1.打开在第(一)步中创建的 sample3.m 文件,并在原文件中加入以下命令,另存为 sample33.m
频谱如下图:
2.下图为 h(n)为 31 点的三重低通滤波程序和频谱图:
(四)时域高通滤波时频域的频谱变化:
1文档来源为:从网络收集整理.word 版本可编辑.
键),到 10 秒时停止(按