【问题标题】:Get sound input & Find similar sound with Python使用 Python 获取声音输入并查找相似的声音
【发布时间】:2016-07-21 04:10:17
【问题描述】:

我想做的就像使用 Python 的“Shazam”或“SoundHound”,只有声音版本,而不是音乐。

例如,当我发出声音(例如关门声)时,在声音列表中找到最相似的声音数据。

我不知道你能不能理解,因为我的英语不好,但想象一下“Shazam”的声音版本。

我知道“Shazam”没有开放的 API。 有没有像'Shazam'这样的API? 或者, 如何实现?

【问题讨论】:

    标签: python audio


    【解决方案1】:

    您可以使用多个库,但例如,它们都不会将样本归类为“关门”。但是您可以使用这些库进行特征提取并构建/获取声音数据集,构建分类器,对其进行训练并将其用于声音分类。

    图书馆:

    1. Friture - Friture 是一个图形程序,旨在对音频输入进行实时时频分析。它提供了一组可视化小部件来显示音频数据,例如示波器、频谱分析仪、滚动 2D 频谱图。

    2. LibXtract - LibXtract 是一个简单、便携、轻量级的音频特征提取函数库。该库的目的是提供一组相对详尽的特征提取原语,这些原语被设计为“级联”以创建提取层次结构。

    3. Yaafe - Yet Another Audio Feature Extractor 是用于音频分析的工具箱。易于使用且高效地同时提取大量音频特征。支持 WAV 和 MP3 文件,或嵌入 C++、Python 或 Matlab 应用程序中。

    4. Aubio - Aubio 是一种用于从音频信号中提取注释的工具。它的功能包括在每次攻击之前对声音文件进行分段、执行音高检测、敲击节拍以及从现场音频中生成 MIDI 流。

    5. LibROSA - 用于音频和音乐分析的 python 模块。它易于使用,并实现了许多常用的音乐分析功能。

    如果您确实选择使用我上面提到的建议,我建议 scikit-learn 作为机器学习库。它包含许多您可能想要使用的分类器。

    【讨论】:

      【解决方案2】:

      这里的问题是音乐有结构,而你想要找到的声音可能有不同的特征。以门为例,仅门的重量、尺寸和材料就会影响它将产生的声学特征的类型。如果您想通过相似性进行搜索,则功能袋方法可能是一种简单的(ish)方法。但是,有不同的方法,例如通过沿声音频谱图的滑动窗口进行采样,并尝试(通过相似性)与您录制的先前声音匹配,声音分解等......

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-22
        • 2013-01-09
        • 1970-01-01
        • 1970-01-01
        • 2015-09-02
        • 2015-12-21
        • 1970-01-01
        相关资源
        最近更新 更多