测量两个短音频相似度的最简单算法

Posted

技术标签:

【中文标题】测量两个短音频相似度的最简单算法【英文标题】:Simplest algorithm of measuring how similar of two short audio 【发布时间】:2013-03-27 07:09:19 【问题描述】:

问题是寻找任何开源或简单的实现来衡量 ios 应用程序上两个音频之间的相似程度。

简单来说,音频可以用一维向量来表示,来计算一维向量之间的距离。但音频长度会有所不同,因此需要一些预处理等。

期待在这里得到一些线索,谢谢

【问题讨论】:

【参考方案1】:

使用DTW可以有效地计算两个可变长度序列之间的相似性:

http://en.wikipedia.org/wiki/Dynamic_time_warping

这个算法很容易自己实现,维基页面上链接了很多现有的实现。

简单来说,音频可以用一维向量来表示,

在帧上拆分音频并将其转换为特征的二维向量是合理的,其中对于每一帧,您都有一个与不同频带相对应的值(特征)数组。如果要处理音乐,每帧做一个 FFT 是个好主意,对于语音,最好计算mel-frequency cepstrum

同样,您可以使用许多现有的库来获取 mel 频率特征,其中之一是语音识别工具包CMUSphinx

【讨论】:

非常感谢!得到了很多信息!尤其是iOS开源cmusphinx.sourceforge.net

以上是关于测量两个短音频相似度的最简单算法的主要内容,如果未能解决你的问题,请参考以下文章

基于用户的协同过滤算法:用户相似度计算的改进

基于用户的协同过滤算法:用户相似度计算的改进

最短编辑距离算法实现

计算图像相似度的算法都有哪些

余弦相似度的应用

谱聚类算法总结