Skip to main content

一个基于研究的框架,用于在声音的背景下探索声音和机器学习。

项目描述

PySoundTool

PySoundTool 是一个实验性框架,用于在声音环境中探索声音以及机器学习。

粘合剂 执照 PyPI 版本

文档

有关示例和导航代码,请参阅文档

关于

注意:按原样,PySoundTool 还不是一个稳定的框架,这意味着可能会定期进行更改,而不是过度关注向后兼容性。

那些可能会觉得这很有用的人:

  • 语音和声音爱好者
  • 数字信号处理 / 数学 / 物理 / 声学爱好者
  • 深度学习爱好者
  • 研究人员
  • 语言学家
  • 心理语言学家

PySoundTool 的主要目标是通过可视化、研究和数学为代码和功能提供更多上下文。用于构建功能的大部分资源来自公开可用的研究和数据集。(有关开放数据集的列表,请参阅我不断增长的集合。)

由于它涵盖了相当大的范围,从音频文件转换到训练好的神经网络的实现,PySoundTool 的目的不是完美实现所有功能(尽管这也是一个目标:P),而是如何它们可以实现,希望为其他人提供尝试不同实现方式(特征提取、构建神经网络等)的基础。

该项目仍处于起步阶段,有很大的发展空间,特别是对于具有数据科学、计算机科学、机器和深度学习、物理、声学或 dsp 的背景/知识的贡献者。也欢迎来自其他背景的贡献者!如果您希望 PySoundTool 做一些它不做的事情,请尝试制作它或创建一个问题。

安装

克隆此存储库。设置克隆此存储库的工作目录。

启动虚拟环境:

$ python3 -m venv env

或者,为了更好地控制您的 python 版本:

$ virtualenv -p python3.6 env

然后激活环境

$ source env/bin/activate
(env)..$

然后通过 pip 安装必要的安装:

(env)..$ pip install -r requirements.txt

例子

您可以通过以下方式探索示例代码:

  • Binder(尽管受限于某些软件包 - librosa、soundfile - 无法加载到在线环境中)
  • 通过 Jupyter Notebook 在您的计算机上本地
  • 文档中的示例

粘合剂

单击此 README 顶部的 Binder 徽章(可能需要一段时间才能加载)并冒险进入文件夹binder_notebooks

通过 Jupyter Notebook 在本地:

安装并运行 jupyter notebook:

(env)..$ pip install notebook
(env)..$ jupyter notebook

冒险进入文件夹jupyter_notebooks并尝试一下!

示例数据集

如果您想玩各种类型的声音,请查看我的包含声音的迷你数据集的存储库,从语音到噪音。它们非常小,所以在训练神经网络时不要期望太多。这些示例数据集用于一些文档示例

测试

如果你想为 PySoundTool 运行测试,他们目前使用上面提到的示例数据集 repo 中可用的音频文件。另请参阅tests_requirements.txt。位于那里的软件包需要通过以下方式安装:

(env)..$ pip install -r tests_requirements.txt

关于作者

我为硕士学习了临床语言学,这让我了解了开源软件、python 编程和声学之美的鼓舞人心的世界。我的兴趣从学术实验设计扩大到开发用于识别语音异常及其他方面的工具。通过这个,我发现了 Python 社区中一个缺失的利基:一个用于过滤、分析和深度学习的高级声音工具,它还为其功能提供上下文。您可以在我的博客上阅读更多关于我和我的项目的信息。

PySoundTool 的开端

该项目源于 Prototype Fund 项目NoIze,该项目于 2019 年在 PyConDE/PyData Berlin 上展示。这个分支将软件的应用从智能噪声过滤扩展到一般的声音分析、过滤、可视化、准备等。因此名称一直适应更一般的声音功能。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

pysoundtool-0.1.0a1.tar.gz (2.9 MB 查看哈希

已上传 source

内置分布

pysoundtool-0.1.0a1-py2.py3-none-any.whl (110.7 kB 查看哈希)

已上传 py2 py3