好文档 - 专业文书写作范文服务资料分享网站

基于MATLAB的语音信号采集和双线性变换法滤波器设计

天下 分享 时间: 加入收藏 我要投稿 点赞

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

第一章 语音信号的采集

第一节 语音信号采集的介绍

MATLAB是美国Math Works公司推出的一种面向工程和科学计算的交互式计算软件,在MATLAB环境中,可以通过多种编程方法驱动声卡实现对语音信号的采集和播放,它的信号处理与分析工具箱为语音信号分析提供了十分丰富的功能函数,利用这些功能函数可以快捷而又方便地完成语音信号的处理和分析.使用MATLAB语言编程可以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种分析图的呈现等等.

在Matlab环境中,主要可以通过以下几种方法驱动声卡,采集语音信号:

1.将声卡作为对象处理采集语音信号Matlab将声卡作为对象处理,其后的一切操作都不与硬件直接相关,而是通过对该对象的操作来作用于硬件设备(声卡)。操作时首先要对声卡产生一个模拟输入对象(ai),给ai对象添加一个通道设置采样频率后,就可以启动设备对象,开始采集数据,采集完成后停止对象并删除对象。

2.调用wavrecord功能函数采集语音信号。wavrecord功能函数只适用于windows95/98/N平台,它使用windows声音输入设备录制声音。函数调用方式:wavrecord(N,fs,ch,nbits); N:采集的样本数据量; fs:样本采集频率,为8000Hz、11025Hz、22050Hz和44100Hz之一,默认值为11025Hz; ch:样本采集通道,1为单声道,2为双声道,默认值为1(单声道); nbits:每个样本的位数(或称解析度),‘double’ 、‘single’或‘int16’为16位, ‘uint8’为8位; 3.运用audiorecorder

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

对象采集语音信号audiorecorder(fs,nbits,ch)可以创设一个audiorecorder对象。fs:样本采集频率,为8000Hz、11025Hz、22050Hz和44100Hz之一,默认值为8000Hz; nbits:每个样本的位数,8位或16位,默认值为8位; ch:样本采集通道,1为单声道,2为双声道,默认值为1(单声道); audiorecorder对象创设后,就可以进行相应的录音、暂停、停止、播放以及数据读取等操作。

第二节 语音信号的采集过程

一般来说,人的听觉能感知的声音频率范围为20~20000Hz,在这一频率范围内可感知的声音强度为0~140dB,其中人耳比较敏感的区域在50~4000Hz。因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。笔者设计的语音采集子系统是通过Realtek Ac'97型声卡和MATLAB的数据采集工具箱实现的。其中Realtek Ac'97型声卡的采样位数为16位,支持8~44.1 kHz的采样速率,可以满足语音采集的硬件要求。

MATLAB自带的数据采集工具箱(Data Acquisition Toolbox)是为简化和加快数据采集工作而专门设计的,提供了一整套专门用于数据采集的命令和函数,可用来直接控制与PC机兼容的数据采集设备的采集全过程。数据采集硬件设备的内部特性对MATLAB的接口是完全透明的,通过调用MATLAB函数和命令可对其进行访问,并对其属性进行可视化监控,而且对于采集的数据既可以进行实时分析,也可在存储后再进行处理,这样既方便了对实验测量数据的分析、比较和可视化操作,又提高了语音信号采集的质量和灵活性。

配置好数据采集设备的参数后,使用start命令便可启动声卡开始语音信号的采集。采集到的数据被暂时存放在PC机的内存里,理论上可

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

采集的最大数据量是由PC机的内存容量决定的,这一点相对于一般的数据采集系统而言有较强的优势。MATLAB还可以记录采集过程中出现错误,如出错的时间、错误产生的来源以及数据采集设备的状态等信息都会被记录下来作为以后工作的参考。

如图1所示,语音采集子系统是通过Realtek AC’97型声卡和Matlab的数据采集工具箱实现的。其中Realtek AC’97型声卡的

采样位数为16位,支持8~44.1kHz的采样速率,可以满足语音采集的硬件要求[1]。Matlab自带的数据采集工具箱里面,提供了专门用 于语音采集的命令和函数。数据采集的硬件设备的内部特性对Matlab的接口完全是透明的,通过调用Matlab提供的语音采集函数

和命令可以对其进行访问。而且,Matlab可以对其采集的数据进行实时的分析,也可在存储后再进行处理。

话筒 数据采集设备 (声卡) MATLAB语音采集工具箱

图1 语音信号采集框图

第二章 语音信号的MATLAB处理

第一节 语音信号的特点

通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点:

①在频域内,语音信号的频谱分量主要集中在300~3400Hz的范围内。利用这个特点,可以用一个防混迭的带通滤波器将此范围内的语音

基于MATLAB的语音信号采集和双线性变换法滤波器设计

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.第一章语音信号的采集第一节语音信号采集的介绍MATLAB是美国MathWorks公司推出的一种面向工程和科学计算的交互式计算软件,在MATLAB环境中,可以通过多种编程方法驱动声卡实现对语音信号的采集和播放,它的信号处理与分析工具箱为语音信号分析提供了十分丰富的功能函数,利用这
推荐度:
点击下载文档文档为doc格式
4zqq78qjp65ap1c1kzfj507xn0uyj200qh3
领取福利

微信扫码领取福利

微信扫码分享