论文部分内容阅读
随着云计算和移动互联网的迅猛发展,移动多媒体应用特别是移动音乐应用变得越来越普及,同时,数字音乐内容也越来越丰富。如何在海量音乐数据中快速准确地找到用户感兴趣的歌曲成为移动音乐应用发展中亟待解决的关键问题,而大规模移动音乐检索技术正是解决这一问题的有效手段。 移动音乐检索是指将移动终端获取的真实世界中的音乐片段作为查询对象,通过移动互联网去搜索其关联信息的检索方式。 音频指纹是关于一段音频重要特征的紧致数字表达,它能在一定程度上反映音频的听觉质量,因此能用来有效地进行基于内容的音频检索。 本文围绕大规模移动音乐检索中的关键技术展开研究,主要取得了以下成果: 一,提出了一种基于频谱局部显著点的分段式音频指纹算法。首先,对实时流入的音频信号进行分段,接着估计此分段的帧移误差并作帧对齐处理,然后计算其频谱,接着在频谱上选择局部显著点,然后在一个划定的目标区域内组合这些局部显著点,从而得到当前分段上的指纹,再接着将当前分段上的显著点与前一分段上的显著点进行合适的拼接,形成新的指纹,最后合并两部分指纹经并经后处理形成最终具有紧致表达形式的指纹。实验结果表明:一方面通过帧对齐处理,能显著提高指纹对帧移误差的鲁棒性,与基于频谱峰的音频指纹算法相比,对帧移误差的鲁棒性最大提升了4.5倍;另一方面通过分段式指纹提取,能显著降低指纹粒度,即缩短平均检索时长,与不进行分段式指纹提取相比,将平均检索时长最大降低了近一半,而召回率只有不到4%的下降。 二,设计了一种面向音频检索的分布式并行索引。通过索引裁剪,即固定倒排表长度,按指纹区分性强弱依概率进行替换,这样在有限的内存空间下尽可能地保留了更多区分性强的指纹;通过索引分块,将大的索引划分成整齐的若干小块并加载到分布的多台计算节点中,加快了检索速度,提高了系统的扩展性。最后通过对不断增长的音乐曲库进行实时的增量索引更新,保证了索引的实时有效。 三,构建了一个完整的大规模移动音乐检索系统。该系统包括三部分:分布式检索引擎、互联网歌曲采集系统和移动客户端。其中分布式检索引擎加载了面向音频检索的分布式并行索引,提供检索匹配服务;互联网歌曲采集系统负责建立大规模的互联网音乐指纹数据库;移动客户端提供自然人机交互接口。系统在四十万规模的音乐曲库下进行了测试,测试结果表明在检索准确率、召回率、平均响应时间等指标上均能满足实际应用需要。