登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 文献综述 > 电子信息类 > 通信工程 > 正文

歌曲识别程序的设计文献综述

 2020-04-18 07:04  

文 献 综 述

1. 前言

在我们日常生活中,经常会用到各种音乐类的软件,如网易云音乐、酷狗音乐等,听歌已经成为人们日常生活中的一项重要娱乐。当听到身边的朋友哼唱出一首好听的歌曲或者漫步在校园里听到电台播放一首动听的旋律,找到这首歌的歌名成为很多人的迫切需求,本着这种需求,设计一款能够听到原唱或者根据人的哼唱就能在海量音乐库中找到正确的歌曲具有重要意义,对尽可能满足人们对音乐这种精神文化的需求尤为重要。

2. 研究现状

最经典的歌曲识别软件是Shazam,这是一款用来分析/匹配音乐的程序,当你将它安装在手机上并用麦克风采集音源20#8212;30秒后,它就能告诉你这是首什么歌。现在很多互联网的平台上均提供了关于图像,音频、视频进行处理的源代码,我们只需搞懂他们的源代码,并进行符合我们需求的删改,调用其接口就可以实现其功能。本次毕设拟采用科大讯飞、ARCloud等相关开发平台提供了关于哼唱识别和原唱识别的接口,共同实现此次毕设的功能。

3. 原理及实现

歌曲识别的要点在于获取歌曲数据并对其进行处理,然后再与数据库内的内容进行比对,本次毕设所用到的主要语言为java。因此首先我们需要在java中听取麦克风,接下来我们就可以像普通的InputStream那样从TargetDateLine中读取数据。下个问题是对读出的数据进行分析,当输出这些读到的数据时,会发现获得的是一串长长的数据列表,这个数据通常是时间域的,时间域上的数据对我们来说是无用的,为了将数据转换成有用的数据我们需要利用所谓的离散傅里叶变换,它能将数据从时间域转换成频域,方便与后续的处理。

接下来将对原唱或者哼唱的歌曲选中一些关键点,将这些关键点存储为哈希表并且尝试与数据库中超过800W的歌曲匹配,这些操作可以被快速完成,因为哈希表的查找速度是O(1)级的,这就使得该算法具有惊人的执行力。接下来要做的事匹配,将数据库中的歌曲加上索引,创建一个哈希表的数据库,然后进行匹配获得正确的歌曲。

在科大讯飞内提供了关于哼唱识别的源码和ARCloud提供了关于原唱识别的源码中封装了实现以上过程的代码,因此只需要编写android源程序并调用相关开放平台内提供的接口就可以实现所要求的功能

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图