android - 声学指纹识别背后的原理是什么?

标签 android ios pattern-matching acoustics

使用什么类型的 API 或框架来为音乐音符分配值?就像 Shazzam 这样的应用程序如何从麦克风接收笔记并知道如何处理它? 对我来说,手机麦克风真是太棒了,一些漂亮的逻辑可以与音乐商店的调音器竞争!

编辑1。

关于该主题的有趣论文。 Shazzam 音乐识别应用程序的软件 取决于 Acoustic fingerprinting的原理和一个Fast Fourier Transform

下面是 practice 中一些类似代码的示例

最佳答案

声学指纹识别算法不会尝试分析音乐。也就是说,它们不会将麦克风中的音频转换为音符。他们从音频中提取一些任意特征,从音乐理论的角度来看这些特征没有多大意义,但它们对于识别音乐仍然很有用。

通常,您从频谱图开始。频谱图是对频率随时间变化的分析。这对于几乎所有声学指纹识别算法来说都很常见。不同之处在于它们对频谱图的处理方式以及从中提取的特征类型。一些算法正在寻找频谱图中的峰值,一些算法将其分成规则的间隔。最终目标通常是生成一堆可以索引并快速搜索的哈希值。

Avery Li-Chun Wang 的原始 Shazam 算法已公开。详情可查看here .

关于android - 声学指纹识别背后的原理是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38497597/

相关文章:

android - Windows 根本无法识别 Galaxy S2

c - 模式搜索朴素方法

ios - Xtify 有效负载 - 服务器错误

ios - 使iOS App具有与Excel Sheet相同的功能

ios - 如何证明标签文本的合理性?

php - 正则表达式匹配单个点但不匹配两个点?

node.js - glob匹配,排除所有JS文件

android - Android 中的 ImageView 内容是否有 tools 属性?

android - 输入文字时工具栏的尺寸很大?

android - java.lang.NullPointerException 在 android.webkit.WebViewClassic.setBaseLayer(WebViewClassic.java :5377)