资源预览内容
第1页 / 共43页
第2页 / 共43页
第3页 / 共43页
第4页 / 共43页
第5页 / 共43页
第6页 / 共43页
第7页 / 共43页
第8页 / 共43页
第9页 / 共43页
第10页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
基于余弦距离的哼唱音乐检索算法的设计与 实现学 院计算机学院专 业计算机科学与技术班 级学 号姓 名指导教师负责教师2010 年 6 月摘摘 要要随着多媒体技术的发展,网络音乐日益增多。现在人们己经不满足于通过歌曲名、歌曲的演唱者等一些文本信息来检索。特别是对于那些种类繁多的音乐数据,人们也许只记得一个调子,也许只记得一个片断,如何快速有效的通过旋律来检索相关音乐就成为一个突出问题。本文对基于哼唱的音乐检索进行了相关的研究和实现。本文采用了 Microsoft Visual C+编程技术和 MySQL server 数据库,做了如下工作:(1)通过对音乐信号基本理论的研究,提出了利用音高差和音长来描述音乐旋律特征的方法,有效地避免哼唱过程走调问题,因此提高了准确性。(2)对于哼唱音乐片段,通过信号预处理、基音提取、特征提取、特征后处理,实现了从 WAV 文件中提取音符音高差和音长特征,采用 n_gram 方法对音高序列进行切分,扩充查询集合以提高查询准确度。(3)确定 WAV 格式作为数据库音乐的文件存储格式,并建立歌曲的音高差和音长特征库。(4)为提高查询速度,建立整数编码的哈希索引。(5)采用余弦距离旋律匹配算法,从音高差和音长两方面进行旋律匹配,返回查询结果,并计算响应时间。关键词:哼唱检索;特征提取;余弦距离匹配;音高差 USD 和音长旋律特征IDesign and implement of hummed melody retrieval based on consine distanceAbstractWith rapid development of multimedia technology, a large number of online music can be obtained from the Internet. Now, people are no longer satisfied with searching music based on text information such as music name and singer. Especially, with various kinds of music data, people might only remember the tune of a song, or perhaps fragment of it. How to quickly and effectively retrieve music data by melody information has become a prominent problem. In this dissertation, the music retrieval based on hummed melody is studied .In this dissertation, the hummed melody retrieval based on consine distance is implemented with Microsoft Visual C+ and MySQL server, and the concrete work is as follows:Firstly, through the study of music signal, proposing that pitch interval and duracion as the music melody feature, which is effective to avoid the pitch changing as well as improving the music retrieval accuracy. Secondly, for the hummed melody, extracting the feature of music melody from WAV musics format through signal preprocessing, keynote extraction, feature extraction, feature extraction postprocessing. Using n_gram to syncopate the pitch interval in order to improve the accuracy. Thirdly, making sure that WAV as the musics format and set up pitch interval and duracion database. Forthly, in order to improve the speed of retrieval, the dissertation uses hash index. Finally, Using cosine distance matching algorithm, the pitch interval and duracion as the vector to match then return the result, in the end calculating the retrieval time.Keywords: hummed retrieval; feature extraction; cosine distance matching; USD pitch interval and duracion II目目 录录1 绪论11.1 课题背景及其意义 .11.1.1 音乐哼唱检索技术的发展.11.1.2 音乐哼唱检索系统的意义.11.2 课题目标 .21.2.1 课题研究的主要内容.21.2.2 课题研究的价值.32 系统需求分析42.1 需求分析 .42.2 可行性研究 .52.2.1 技术可行性.52.2.2 经济可行性.62.2.3 操作可行性.62.3 目前可选择的技术 .62.4 技术开发工具概述 .62.4.1 C+开发语言概述.62.4.2 MySQLserver 数据库73 系统概要设计93.1 系统总体设计思想 .93.2 系统用例图 .103.3 数据库逻辑设计 .123.3.1 数据库设计方法简述.123.3.2 概念模型设计.123.3.3 数据库的关系模型设计.134 系统详细设计及实现164.1 系统数据库详细设计.164.1.1 用户哼唱片段信息表.164.1.2 WAV 特征库设计.164.1.3 索引表.17III4.1.4 检索结果集.184.2 系统功能详细设计 .194.2.1 WAV 特征提取.194.2.2 哼唱音乐的记录和特征提取.234.2.3 查询扩展.234.2.4 哈希索引.244.2.5 余弦匹配算法.254.2.6 系统响应时间的计算.275 系统的调试与测试285.1 系统的调试 .285.2 系统功能测试 .295.2.1 WAV 音乐文件特征提取测试.295.2.2 用户哼唱片段特征提取.305.2.3 n_gram 算法测试.315.2.4 哈希索引表测试.315.2.5 系统检索匹配测试.325.2.6 分析原因.32结束语34参考文献35致 谢3701 绪论绪论1.1 课题背景及其意义课题背景及其意义1.1.1 音乐哼唱检索技术的发展音乐哼唱检索技术的发展基于哼唱的音频信息检索技术的研究工作是从上世纪九十年代中后期开始的。近年来,它已经成为国内外研究的热点问题之一,引起了众多研究机构和学者的重视。具体来说,早期的研究以 Ghias 和 R.J.McNab 等为代表,他们的共同特点是采用时域上的自相关法提取音高值,根据音高值的变化把旋律表示成由字母“U”、“D”、“R”组成的符号串。其中,“U”表示后一个音符的音高比前一个高;“D”表示后一个音符的音高比前一个低;“R”表示前后音符的音高值相同。匹配引擎采用近似字符串模糊匹配算法。后来,一些学者在旋律特征表达方面和匹配检索方面进行了更多的探索。Zhu等人使用了一种基于时间序列的方法。在该方法中,歌曲中的每个音符都被拆分成由若干时间片组成的时间序列,从而将整首歌曲中音符的组合转化为时间序列的组合。然后再计算时间序列间的距离,并将结果作为衡量歌曲间相似度的标准。该方法有利于使用 DTW 方法进行匹配,但是需要进行音符序列的平移和时间弯曲,还需要对每个时间序列进行匹配,时间复杂度非常高。大多数系统都使用近似字符串的匹配算法比较旋律,但近年来,基于隐马尔可夫模型(HMM)的匹配算法被越来越多的学者重视和研究。 wiiliamRand 等提出使用马尔可夫统计模型比较旋律的相似性。该方法对音高误差比较敏感,但能较好地容忍遗漏音符和节奏上的哼唱误差。1.1.2 音乐哼唱检索系统的意义音乐哼唱检索系统的意义随着互联网技术和多媒体技术的迅速发展,网络音乐的下载己经占据了整个网络信息流量的很大份额。人们面临的问题不再是缺少音乐内容,而是如何在浩如烟海的多媒体世界中快速、准确、高效的查询音乐信息。常规的信息检索技术主要是基于文本的,目前已经发展得非常成熟。例如Google、Yahoo 和百度等搜索引擎采用的就是这种技术。它是通过查询关键字的匹配来发现需要检索的文档。如果一个文档包含较多的查询项,就认为该文档比其它包含较少查询项的文档更“相关”。最后,将文档按照“相关”度排序并显示给用1户作为检索结果。虽然最初对音频信息的检索也采用了文本检索技术,但却是通过人工方式生成音频信息的文本标注,如文件名、歌曲的演唱者等,然后采用文本检索技术实现对音频信息的检索。在实际应用中,这种基于文本的音频信息检索方式有其固有的无法克服的缺陷。首先,当音频数据量越来越多时,人工的注释强度加大;其次,人对音频的感知,例如音乐的旋律、音调、音质等,难以用文字注释表达清楚。最后,当听到熟悉却又陌生的旋律,但是想不起来它的作者或者表演者时,在现有的搜索引擎上,想要找到这样的乐曲是不可能的。而这正是基于内容的音频检索技术所要研究和解决的问题。可以想象,哼唱检索音乐具有极其广泛的应用前景,普通用户即使只记得音乐的某个片段也可以方便的从网上找到自己喜欢的音乐;在 KTV 人们只需要哼唱就可以点歌而不需要歌本;音乐创造者可以知道自己的创作是否与众不同;版权管理部门可以查出一首歌曲是否盗版侵权;利用手机哼唱点歌也将成为一种新的潮流。因此,对于哼唱音乐检索的研究具有重要的实用价值,也是富有挑战性的研究领域。本文的工作为音乐哼唱检索打下了一定的基础,对进一步的深入研究具有推动和借鉴意义。1.2 课题目标课题目标本次设计的目标是通过对用户哼唱的旋律片段的分析,在大型曲库中利用余弦距离匹配算法,检索出与用户的输入旋律在听觉上相近的歌曲。另外,在设计中,对音乐旋律的刻画考虑音高差和音长,尽可能提高音乐特征描述的准确度。采用整数哈希索引方法,提高了哼唱检索的速度。本设计实现了哼唱检索系统的基本功能,具有较强的实用性。1.2.1 课题研究的主要内容课题研究的主要内容传统的歌曲搜索都是基于关键词的检索,在有些情况下很不实用。本文以基于内容的音乐哼唱检索为背景,系统的研究了记录哼唱音乐片段,哼唱音乐片段特征提取、建立音乐特征库、建立整数哈希索引、余弦距离匹配算法、计算检索响应时间。研究目标为用户不需要哼唱固定符号,更不用加入辅助手段,直接哼一段音乐或唱一段歌谱,将得到检索结果。本文的研究的主要内容如下:2记录用户哼唱的音乐片段,存储格式采用 WAV。在记录过程中,要对录入的声音进行信号预处理、基音提取、特征提取、特征后处理。音乐旋律主要由音高和音长两大部分组成,音高描述该音节的频率高低(相对值),音长描述该音节的持续长短(相对值)。相同音高序列配以不同的音长表示,或者相同的音长赋予不同的音高,其实际听觉感受差异是十分明显的。因此,采用音高差和音长来刻画旋律特
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号