Shazam和SoundHound如何识别歌曲?

电脑杂谈  发布时间:2020-03-28 17:20:08  来源:网络整理

sound hound怎么用_sound hound怎么用_midomi sound hound

==================原理: 特征提取==================

Shazam算法包含两个关键部分: 特征提取和指纹检索.

Shazam根据0.1秒将音乐的时间序列划分为多个时间窗口,并在每个时间窗口上执行傅立叶变换,以将时域转换为频域. 接下来,在每个窗口(表示为窗口A)中找到N个最大频率;并以相同方式在接下来的两个窗口A1和A2中找到2N个最大频率. 最后,将前N个频率中的每个频率和随后的2N个频率中的每个频率组合起来,形成2N ^ 2个元组.

使用傅立叶变换,因为它对翻译更鲁棒. 对于shazam算法,只需要保证在平移半个窗口后即可保持不变(显然可以保证). 可以在matlab上验证.

sound hound怎么用_midomi sound hound_sound hound怎么用

有人可能会问,为什么元组不是一对?因为我还需要知道两个频率之间有多少个时间窗口.

至此,特征提取完成. 每个窗口具有2N ^ 2个元组,并且窗口在歌曲中的时间总计为2N ^ 2 +1个自由度. 当然,代码的作用还不止于此. 为了提高性能,我将歌曲中的每个元组及其时间编码为一个位,以使每个时间窗口具有2N ^ 2个整数,这些整数是一个时间窗口的指纹.

[上面的内容应该有图片,稍后我会填写,如果您有私人信件sound hound怎么用,请提醒我]

特征提取存在陷阱: 未研究模拟或信号处理的童鞋可能会考虑极低的频率(0-500Hz)和极高的频率(22050-44100Hz,这超出了人类的听力范围)最高振幅频率. 这些实际上不是噪声,但是有限傅立叶变换会在非常低的频率下产生失真,并且由于真实傅立叶变换的对称性,在非常高的频率下也会发生相同的失真. 据我所知,汉明窗算法可以用来纠正这种失真. 当然,对于“可听”音乐,有意义的频率在500Hz以上和8000Hz以下. 对于这个4096个采样点(4096/44100秒)的时间窗口,在使用汉明窗口之前和之后几乎没有变化. 结论是,我们只需要找到500Hz-8000Hz之间最强的N个频率,而不必查看整个频谱.

midomi sound hound_sound hound怎么用_sound hound怎么用

[上面的内容应该有图片,稍后我会填写,如果您有私人信件,请提醒我]

==================原理: 指纹检索(匹配)==================

Shazam的匹配使用倒排索引方法. 它不会获取中每首歌曲的所有指纹并将其与目标指纹进行比较;而是使用指纹作为键,并使用歌曲ID作为外键来记录具有指纹的歌曲集.

但是有一个问题. 对于单个指纹,它可能已出现在许多不同风格的歌曲中. 即使计算每首歌曲的对应指纹数也不科学,因为相同的指纹序列可能与其他指纹序列不同. 该顺序出现在其他歌曲中.

sound hound怎么用_midomi sound hound_sound hound怎么用

为解决此问题,Shazam算法中的一个非常有创意的想法是,如果目标指纹与库中指纹之间的时间差固定,则将与库中指纹对应的歌曲视为匹配的歌曲. Shazam算法还显示了如何测试这种“可修复性”: 记录每首歌曲的上述时差sound hound怎么用,并为该时差绘制直方图. 每首歌曲的直方图的峰值就是歌曲的分数.

[图片来自: Wang03Shazam]

没有匹配音乐的指纹时差直方图:

sound hound怎么用_midomi sound hound_sound hound怎么用

指纹时差匹配音乐的直方图:

==================后记================

面对诸如Markov链,CNN,RNN之类的更高级的机器学习方法,应淘汰Shazam算法,因为其特征工程仍然不够高效;它的匹配方法过于刻板,无法学习歌曲的深刻旋律和语义特征. 但是Shazam向我们展示了傅立叶变换的局部极值具有抗噪性,这也是共振峰的原理. 同时,Shazam还提供了一种倒排索引的方法,为业界提高算法的性能提供了思路.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-155600-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 郑子玉
        郑子玉

        跑到浙江这些粗制滥造的工厂去

      • 明世宗
        明世宗

        期待krystal

      热点图片
      拼命载入中...