MATLAB声音信号采集系统(论文).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于MATLAB 的声音信号采集系统 野龙平 (陕西师范大学电子信息科学与技术,陕西) 摘 要: 声音是各种信号传递与交流最直接的体现,因此对声音信号的研究有十分重要的意义。本文主要针对Matlab指令系统对声音信号的采集,作者利用Matlab 提供的数据采集工具箱, 介绍了倆种采集方法,简单分析并比较其优缺点。基于matlab的数据采集系统, 具有实现简单、性价比和灵活度高的优点。 关键词: Matlab; 数据采集 0 引言 随着科技的发展,对于语音信号的采集已经有很多种方法,如基于单片机技术、VC,C++等编程、纯硬件电路,本文介绍的方法主要通过一款软件MATLAB。它是MathWorks 公司推出的一种面向工程和科学运算的交互式计算软件, 其中包含了一套非常实用的工具-- 数据采集工具箱。使用此工具箱更容易将实验测量、数据分析和可视化的应用集合在一起。数据采集工具箱提供了一整套的命令和函数, 通过调用这些命令和函数, 可以直接控制数据采集设备的数据采集。 作者简单介绍了一种用声卡进行语音信号采集和MATLAB 的数据采集工具箱进行分析处理的语音信号采集系统。经实验证明, 该系统可实现在线连续采集语音信号并进行分析和处理, 具有实现简单、性价比和灵活度高的特点。 1 语音数据采集系统设计 MATLAB 中提供了强大的数据采集工具箱( DAQ- Data Acquisition Toolbox) , 可满足控制声卡进行数据采集的要求。用户通过调用MATLAB 命令, 可对采集的数据进行分析和处理, 为用户带来了极大的方便。 语音数据采集过程如图1 所示。 图1 声卡采集声音信号有两种方式: 传输线输入方式(LineIn) 和麦克风输入( MicIn) 方式。LineIn 方式是通过传输线把其他声音设备, 如录音机等设备的音频输出信号连接到声卡, 通过声卡记录数据存入计算机。 本系统采用MicIn 方式, 即用麦克风接收语音通过声卡将音频信号存入计算机。利用MicIn 方式通过声卡采集数据有两种方法: 方法一是采用对声卡产生一个模拟输入对象进行采集, 方法二是直接利用MATLAB数据采集箱中提供的的函数命令进行采集。 1. 1 方法1 本系统是以声卡为对象利用MATLAB 数据采集工具箱提供的环境完成数据采集过程, 麦克风成为数据采集系统中的传感器。数据采集过程与其他硬件设备无关, 只与声卡有关, 因此应对声卡产生一个模拟输入对象(AI) 。 数据采集过程的具体实现: 1) 初始化: 创建设备对象。 ai= analoginput(‘ winsound’ ) 2) 配置: 根据数据采集硬件设备的特性, 增加通道和控制数据采集的行为。为AI 添加1 个通道, 设置采样频率和采样时间。 addchannel( ai, 1) freq= 8000; % 采样频率fs8000Hz set( AI, sampleRate, freq) %为模拟输入设备设置采样频率 duration= 2; %采样时间为2 秒 set (AI, SamplesPerTriffer, duration* freq) ; % 为模拟输入设备设置触发时间 3) 执行: 启动设备对象, 采集数据。 start( ai) ; %启动设备对象 data= getdata( ai) ; % 获得采样数据 4) 终止: 删除设备对象。 stop( ai) ; % 停止设备对象 delete( ai) ; % 释放内存对象 这样便完成了一次数据采集的过程。其中采样频率及采样时间是由用户个人定义输入。 1. 2 方法2 一般的采样过程是对声卡产生的模拟输入对象(AI) 进行操作的, 由于计算机配置和模拟通道的运用使得数据采集过程显得烦琐难以理解, 有时还不易获得采样数据。实验过程发现一种更为简单实用的方法可以进行数据采集。在阐述之前, 首先介绍一下MATLAB 数据采集箱中的几条有关命令: wavrecord: wavrecord 利用Windows 音频输入设备记录声音, 其调用形式为: wavrecord( n, fs, ch) 。利用Windows 音频输入设备记录n 个音频采样, 频率为fsHz, 通道数为ch。采样值返回到一个大小为n* ch 的矩阵中。缺省时, fs= 11025, ch= 1。 waveplay:waveplay 利用Windows 音频输出设备播放声音, 其调用形式为: waveplay( y, fs) 。以采样频率fs向Windows 音频设备发送向量信号。标准的音频采样率有: 8000、11025、22050 和44100Hz。 wavread:wavread 用于读取Microsoft 的扩展名为 .wav的声音文件。其

文档评论(0)

ipad0c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档