音频分离程序使用说明.docxVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
音频分离程序使用说明

面向音频的盲分离算法实现程序使用说明 院 系 计算机科学与技术学院 专业班级 物联网工程1201班 姓 名 杨兴东学 号 U201215114指导教师 刘芳2016年 5 月 28 日1 相关介绍面向音频的盲源分离程序首先是能够读入音频,读入音频才能够对音频内的数据进行相应的运算处理。我们平时使用的多媒体文件有很多种类,例如mp3,raw等等,而在这之前,wav音频格式是多媒体文件中最常使用的一种声音波形文件格式。wav文件都是由两部分组成,分别文件头部分和音频信号数据。在了解到wav文件的格式之后,我们便可以读取wav数据内容,从而得到我们所需要的音频数据信号。如果有n个混合源信号,那么我们观测到的信号也是n个,因为现在所有算法并没有很好的解决观测信号少于源信号得这种情况。所以,观测信号的数目一定是大于等于源音频信号的。因为举例采用的两个音频混合,为了更好理解,见图1-1。图1-1 观测信号采集图2 程序使用说明为了更好符合测试数据,我在http://research.ics.aalto.fi/ica/cocktail/cocktail_en.cgi这个网站上找到了一些测试数据,在此测试我选用的是两个音频源信号的混合。混合后,我得到的是两个wav文件。如图2-1。图2-1 观测信号文件示意图打开播放,是两个声音的混合,选用的是一个人说话,和一个警铃声,两个wav我们听到的基本是一样的,没有什么太明显的区别,我们执行音频读入程序读出wav文件的内容。读出来wav的数据之后,我们将其保存在2个txt文件中,然后我们就是需要对这些数据进行处理,每组数据都是50000*1。基于算法实现是使用C语言完成的,所以界面制作采用MFC,界面布局基本如图2-2。图 2-2 盲源音频信号分离程序界面下面详细阐述一下各个按钮的功能。首先是最下面一行的9个音频,点击相应音频就会播放,这是一些基本特征相同的源声音信号,在把这些源声音信号混合之后,我们可以通过程序对其进行相应的分离。Open按钮可以打开相应的目录选择文件,得到文件的路径,wavread函数是对相应文件来读取音频数据,并写入文件中。Open1和open2可以打开目录选取对应的音频数据TXT文件,得到相应的路径,ICA音频分离是执行主程序,对数据进行计算分离,得到相应的分开的音频数据。由于我的目的是音频分离,所以存在两个源信号音频,称为j1.wav和j2.wav,这两个源信号音频混合之后得到两个混合的音频信号,设为j.wav和jj.wav,我们是读入混合之后的两个音频信号j.wav和jj.wav,并对其内数据进行处理,最后写入文件之后为了比对,我将最后处理完的数据仍旧是写成wav格式,设为save1.wav和save2.wav,用这两个音频信号与j1.wav和j2.wav进行比对。点击OPEN按钮,可以打开文件的相应目录,选择相应的混合好的音频信号,如图2-3。图2-3 程序测试open按钮示意图点击wavwread按钮,就会对wav音频文件进行读取,因为后面需要测试结果以及对比波形信号,所以我在此处将其读成数组,保存在TXT文件,以备后面所用,见图2-4。图2-4 程序测试wavread按钮示意图读取之后,函数会将数据写到TXT文件内,供读取所用。我们会在相应的目录里看到与之对应的TXT文件,图2-5。图2-5 音频信号文件数据图打开TXT文件,可见到文件内相应的数据,这就是构成音频文件的相应数据,也是利用函数读取wav文件舍弃掉文件头部分得到的数据。利用open1和open2按钮加载相应的文件路径之后,就可以进行主程序运算分离了,见图2-6。图2-6 程序执行示意图经过几分钟的计算,程序运行完成。图 2-7 程序测试完成示意图我们打开对应的文件目录,可见出现的对应文件,ICA分离程序成功运行完成。见图2-8。图2-8 程序测试生成文件示意图ICA程序执行完成,为了更好地对比数据,我选择了生成两个TXT文件,TXT文件内分离之后的音频数据。如图2-9。图2-9 解混音频文件数据示意图3 结果验证接下来就是系统的测试结果,我以两个声音的混合作为例子,来验证音频分离程序的性能,为了便于比较,两个声音特征尽量相同,也就是说声音的频率,长度等特征都相同。而对于性能的验证需要一些科学的措施,,而不能是一些没有根据的感觉,我采用对音频信号波形的分析来验证fastICA音频分离程序的性能优劣。在之前,执行过fastICA程序,生成了两个TXT文件。因为选用的是两个声音的混合信号,所以最后分离完成,得到的也是两个文件,为了分析音频信号数据,根据文件内的数据做出波形来比对,图3-1是源音频信号的波形,这是混合之前的两个音频信号。图 3-1 源信号音频波形图图

文档评论(0)

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

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

1亿VIP精品文档

相关文档