南京莱斯信息技术股份有限公司 江苏南京 210000
摘要:本文通过对MATLAB进行介绍,从系统结构与系统功能两方面对基于声卡与MATLAB的数据采集与分析系统进行了设计,进而对系统功能的实现做出了详细说明。
关键词:声卡;MATLAB;数据采集;数据分析
1 MATLAB简介
MALTAB是MathWorks公司开发研制的一类具有强大功能的高技术计算机语言,同时,也是内容及其丰富的软件库,其不仅能够支持矩阵与向量的运算,而且还能将相关的运算结果进行可视化处理,将数值分析、函数生成以及信号、图像处理和矩阵计算等诸多功能集于一身,并在交互式的网络环境中为用户提供高校的编程工具和极为丰富的算法资源。在了解MAT-LAB相关特性的基础上,下文则着重对基于声卡与MATLAB的数据采集与分析系统进行详细设计。
2 声音信号采集和分析
2.1 基于MATLAB软件的声音采集系统
MATLAB软件的数据采集工具箱能够完成音频信号的数据实时采集。首先,麦克风对外部环境的声音信号进行采集并转换为电压的模拟信号,然后,将模拟信号通过声卡的A/D转换功能将其转换为数字信号,最后,应用Matlab软件对采集得到的数字信号进行分析处理,得到时间-声压数据,如图1所示。本实验中,用基于计算机声卡和外接麦克风的硬件环境,在WINDOWS7操作系统下利用Matlab7软件开展实验,设定采样频率为44100Hz,采样时间为10s,实现声音采集的Matlab程序。
图1Matlab声音采集流程
2.2 专业声音采集系统
专业声音采集系统主要由北京声望声电技术有限公司生产的MP201型传声器,MA231型前置放大器,MC3022型二进二出数据采集器和VA-Lab测试系统软件组成。在本实验中,采用计算机Window7操作系统,设定采样频率为44100Hz,采样时间为10s,利用图2所示的单通道录音分析界面,得到时间-声压的数据。
图2 录音分析界面
3 数据采集系统设计
3.1系统结构
系统以计算机声卡代替数据采集卡,计算机在系统过程中具有采集与处理的双重作用,从而使硬件资源得以充分利用。系统所用声卡的技术指标包括了:(1)复音数量,即声卡能够同时发出的声音数量,复音数量越大,音色则越好;(2)采样位数,即对语音量化进行模拟的位数,位数越大,说明量化越精细;(3)采样频率,即单位时间内所采集的语音样本数量,采样频率越大,则所采集到的语音保真度则越高。整个系统有信号预处理模块以及声卡和计算机共同构成,较为简单,对于数据的后续分析也较为简便,无需进行数据转移。对于系统而言,只需拥有信号预处理电路与一台普通的多媒体声卡,且安装了MATLAB的PC机后方可实现数据的采集。
3.2系统功能
数据采集部分主要负责采集符合用户需求的各类数据,根据用户所选定的采样频率以及预先设置的采样时间,从声卡中获取用户所需数据。此外,利用MATLAB,将采集到的数据与频率图以图形的方式呈现给用户,使其更加直观地对数据的全面性进行了解,为其实验方案的细化提供依据。数据分析部分的功能主要包括:(1)从数据采集部分获取相关数据,并将数据予以保存;(2)对全部数据的时域图与频谱图进行显示;(3)对数据进行局部分析,主要包括分频段与分时段分析两种分析方式。
4系统实现
4.1数据采集与读取
对MATLAB进行分析可知,其数据采集工具箱为用户提供了一套完整的命令与函数,通过对其进行调用,方可实现对各类同PC机兼容数据采集设备的直接控制,并以此达到数据采集与通讯,此类数据采集设备不仅包括了多媒体声卡,而且还包括了美国国家仪器E系列与1200系列的接口板以及PaekardVIIE1432系列的接口板好其他各类数据采集的硬件设备。
数据采集过程如下:(1)初始化。利用MATLAB将声卡等相关设备进行对象处理,而后,关于数据采集的各类操作均不与硬件直接关联,而是通过对相应对象进行操作来实现对硬件设备的控制的,故首先对声卡产生一模拟输入对象AI,且AI=analoginlmt('winsonnd');(2)配置。对上述模拟输入对象添加通道,同时,对采样频率进行设置,MATLAB中的程序为:ad-dehannel(AI.1);Fs=8000;ALSamloleRate=Fs,完成采样频率的设置;(3)采样。将设备对象AI予以启动,并进入数据的采集环节,程序为:t=2s;start(AI);data=get(AI,t*Fs),由此获得相应的采样数据;(4)终止。终止操作,即停止对象采样,并将对象删除,即Stop(AI)。
在MATLAB的Command window窗口当中,调用wavread,即音频读取函数对所采集的数据进行读取,同时,将其换名存储至work当中。当需要再次读取时,利用load name对数据进行加载方可实现其读取功能,此时,所读取的数据已被存储在MATLAB的workshaee中,供后续分析使用。
4.2数据分析
基于声卡与MATLAB的数据分析模块从数据采集模块中获取相关数据,并从当前文件中获取之前采集且已存储的数据,从而帮助用户实现对数据时域图和频谱图的预览,而后,进行功能增强的数据保存工作,用户则可以视具体情况和需要对数据进行分段处理,并对各段数据进行分频段分析。
5结论
研究结果表明,以声卡和MATALBA为基础的数据采集与分析系统能够有效实现语音信号的采集与分析,且成本较低,具有良好的推广和使用价值。
参考文献:
[1]周长敏,唐林海.基于声卡和MATLAB的噪声信号采集与分析[J].电脑知识与技术,2012(3):684-686.
[2]李亚微,郭敏.基于MATLAB的音频数据采集系统[J].语音技术,2007(3):57-58.
[3]张平.MATLAB基础与应用[M].北京:北京航空航天大学出版社,2010.
[4]张海澜.理论声学[M].北京:高等教育出版社,2012.
论文作者:宋文明
论文发表刊物:《江苏科技报》2016年12期
论文发表时间:2017/4/6
标签:数据论文; 声卡论文; 数据采集论文; 系统论文; 信号论文; 功能论文; 频率论文; 《江苏科技报》2016年12期论文;