基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx

上传人:b****2 文档编号:14184668 上传时间:2022-10-19 格式:DOCX 页数:55 大小:393.07KB
下载 相关 举报
基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx_第1页
第1页 / 共55页
基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx_第2页
第2页 / 共55页
基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx_第3页
第3页 / 共55页
基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx_第4页
第4页 / 共55页
基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx

《基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx(55页珍藏版)》请在冰豆网上搜索。

基于matlab的语音信号盲分离分析与设计Word格式文档下载.docx

主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知识、基本动手能力,提高人才培养的基本素质。

一、训练内容和要求

设计任务:

根据盲信号分离原理,用matlab采集两路以上的语音信号,选择合适的混合矩阵生成若干混合信号。

选取合适的盲信号分离算法(如独立成分分析ICA等)进行训练学习,求出分离矩阵和分离后的语音信号。

设计要求:

(1)用matlab做出采样之后语音信号的时域和频域波形图

(2)选择合适的混合矩阵,得到混合信号,并做出其时域波形和频谱图

(3)采用混合声音信号进行训练学习,求出分离矩阵,编写出相应的确matlab代码。

(4)用求出的分离矩阵从混合信号中分离出原语音信号,并画出各分离信号的时域波形和频谱图。

(5)对结果进行对比分析。

二、初始条件

计算机;

MicrosoftOfficeWord软件;

MATLAB软件

三、时间安排

1、2012年6月18日,作基础强化训练具体实施计划与报告格式要求的说明;

学生查阅相关资料,学习原理。

2、2012年6月19日,算法设计。

3、2012年6月20日至2012年6月22日,运用MATLAB软件仿真

4、2012年6月23日,上交基础强化训练成果及报告,进行答辩。

指导教师签名:

年月日

系主任(或责任教师)签名:

 

摘要

语音信号盲分离处理的含义是指利用BSS技术对麦克风检测到的一段语音信号进行处理。

混合语音信号的分离是盲分离的重要内容,目前的混叠语音分离大多是建立在无噪环境中的混叠情形下,主要以盲源分离(BlindSourceSeparation,BSS),根据信号的统计特性从几个观测信号中恢复出未知的独立源成分。

本文重点研究了以语音信号为背景的盲处理方法,在语音和听觉信号处理领域中,如何从混有噪声的的混叠语音信号中分离出各个语音源信号,来模仿人类的语音分离能力,成为一个重要的研究问题。

具体实现主要结合ICA技术,将语音去噪作为一个预处理过程,对带噪声的混叠语音盲分离进行了研究,本文详细了介绍三种FastICA算法:

SOBI算法以及CICA算法,将三种算法应用于实际的语音信号噪声分离中,并比较了传统算法和基于ICA/BSS算法在语音消噪和增强方面的差异,文章最后还介绍了分离效果评价准则,并比较了SNR和SIR参数。

关键词语音信号,语音信号噪声,盲源分离,独立成分分析

Abstract

BlindseparationofspeechsignalprocessingmeansistheuseofBSStechniquesmicrophonedetectsavoicesignalprocessing.Separationofmixedspeechsignalsisimportantforblindseparation,thecurrentseparationofoverlappingspeechisbuiltmostlyintheabsenceofaliasingnoiseintheenvironment,underthecircumstances,mainlyinblindsourceseparation(BlindSourceSeparation,BSS),thestatisticalcharacteristicsofsignalSeveralobservationsfromtheunknownsignaltorecovertheindependentsourcecomponents;

Thisarticlefocusesonthebackgroundtotheblindspeechsignalprocessingmethod,signalprocessing,speechandhearing,howthenoisefromamixtureofoverlappingspeechsignaltoseparatethevariousaudiosourcesignalstomimichumanspeechseparationabilitybecomeanimportantresearchquestion.CombinationofconcreterealizationofthemainICAtechnology,speechdenoisingasapreprocessingofspeechwithnoise-aliasingblindseparationwerestudied,thepaperintroducesthreekindsofFastICAalgorithm:

SOBIalgorithmandtheCICAalgorithm,threekindsofalgorithmapplicationtheactualnoiseinspeechsignalseparation,andcomparedthetraditionalalgorithmandtheICA/BSSalgorithminspeechdenoisingandenhancementofthedifferences,thepaperfinallydescribestheseparationevaluationcriteria,andcomparedtheSNRandSIRparameters.

Keywords:

Voicesignal,voicesignalnoise,blindsourceseparation,independentcomponentanalysis

1Matlab软件的简介

一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点。

正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。

MATLAB的最突出的特点就是简洁。

MATLAB用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。

MATLAB给用户带来的是最直观、最简洁的程序开发环境。

以下简单介绍一下MATLAB的主要特点。

①语言简洁紧凑,使用方便灵活,库函数极其丰富。

MATLAB程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。

由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。

可以说,用MATLAB进行科技开发是站在专家的肩膀上。

具有FORTRAN和C等高级计算机语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。

例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追赶法)编写一个程序块来求解方程,最后再输出计算结果。

在求解过程中,最麻烦的要算第二部分。

解线性方程的麻烦在于要对矩阵的元素作循环,选择稳定的算法以及代码的调试都不容易。

即使有部分源代码,用户也会感到麻烦,且不能保证运算的稳定性。

解线性方程的程序用FORTRAN和C这样的高级语言编写至少需要好几十行。

再如用双步QR方法求解矩阵特征值,如果用FORTRAN编写,至少需要四百多行,调试这种几百行的计算程序可以说很困难。

以下为用MATLAB编写以上两个小程序的具体过程。

用MATLAB求解下列方程,并求矩阵A的特征值。

解为:

x=A\b;

设A的特征值组成的向量为e,e=eig(A)。

可见,MATLAB的程序极其简短。

更为难能可贵的是,MATLAB甚至具有一定的智能水平,比如上面的解方程,MATLAB会根据矩阵的特性选择方程的求解方法,所以用户根本不用怀疑MATLAB的准确性。

②运算符丰富。

由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短,具体运算符见附表。

③MATLAB既具有结构化的控制语句(如for循环、while循环、break语句和if语句),又有面向对象编程的特性。

④语法限制不严格,程序设计自由度大。

例如,在MATLAB里,用户无需对矩阵预定义就可使用。

⑤程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。

⑥MATLAB的图形功能强大。

在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。

MATLAB还具有较强的编辑图形界面的能力。

⑦MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。

由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。

⑧功能强劲的工具箱是MATLAB的另一重大特色。

MATLAB包含两个部分:

核心部分和各种可选的工具箱。

核心部分中有数百个核心内部函数。

其工具箱又可分为两类:

功能性工具箱和学科性工具箱。

功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实时交互功能。

功能性工具箱能用于多种学科。

而学科性工具箱是专业性比较强的,如control、toolbox、signalprocessingtoolbox、communicationtoolbox等。

这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。

下表列出了MATLAB的核心部分及其工具箱等产品系列的主要应用领域。

2语音信号的产生与获取

一般来说,人的听觉能感知的声音频率范围为20~20000Hz,在这一频率范围内可感知的声音强度为0~140dB,其中人耳比较敏感的区域在50~4000Hz。

因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。

笔者设计的语音采集子系统是通过RealtekAc'

97型声卡和MATLAB的数据采集工具箱实现的。

其中RealtekAc'

97型声卡的采样位数为16位,支持8~44.1kHz的采样速率,可以满足语音采集的硬件要求。

MATLAB自带的数据采集工具箱(DataAcquisitionToolbox)是为简化和加快数据采集工作而专门设计的,提供了一整套专门用于数据采集的命令和函数,可用来直接控制与PC机兼容的数据采集设备的采集全过程。

数据采集硬件设备的内部特性对MATLAB的接口是完全透明的,通过调用MATLAB函数和命令可对其进行访问,并对其属性进行可视化监控,而且对于采集的数据既可以进行实时分析,也可在存储后再进行处理,这样既方便了对实验测量数据的分析、比较和可视化操作,又提高了语音信号采集的质量和灵活性。

配置好数据采集设备的参数后,使用start命令便可启动声卡开始语音信号的采集。

采集到的数据被暂时存放在PC机的内存里,理论上可采集的最大数据量是由PC机的内存容量决定的,这一点相对于一般的数据采集系统而言有较强的优势。

MATLAB还可以记录采集过程中出现错误,如出错的时间、错误产生的来源以及数据采集设备的状态等信息都会被记录下来作为以后工作的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1