好的免费软件(或代码)可以在单个 wav 中分离多个源?

信息处理 matlab 源分离
2022-02-11 16:39:06

对于一个学校项目,我正在研究多乐器轨道上的乐器分类。为此,我遵循 Arie Livshin 的作案手法,并且我想获得一个好的软件来执行源分离:给定一个多乐器的短片提取,得到 n(其中 n 等于乐器的数量)轨道每个音轨或多或少一种乐器。

到目前为止,我发现的最好的是 Matlab 的 FASST 工具箱,但萨克斯/吉他歌曲的结果非常令人失望。有没有人遇到过我可以使用的更好的东西?

3个回答

一个很棒的免费工具箱是灵活的音频源分离他们的网站包含一些 Python、Matlab 和 C++ 代码的演示示例。

另一个工具箱是盲源分离工具箱但是,这个工具箱对用户不友好,您需要在 C、Matlab 或 Python 中进行一些额外的编程。

您可以尝试使用Independent Component Analysis分析您的音频样本。它是一种盲源分离技术,它假设多元信号样本是相互独立(非高斯)源信号的线性混合。Matlab 的实际实现是一种称为FastICA的快速定点迭代算法

最近的一篇论文是使用卷积稀疏编码的单声道音乐源分离,IEEE/ACM 音频、语音和语言处理事务 (TASLP),已接受出版 (2016)。基于源分离的卷积稀疏编码算法使用SPORCO 库不是吉他,而是萨克斯管,使用字典。

我们提出了一种新的时域方法的综合性能研究,用于估计观察到的单声道音频混合的分量。与使用一组频谱模板及其相应激活模式的乘积来近似混合频谱图的现有时频方法不同,所提出的方法使用估计激活的一组卷积的总和与预学习的字典滤波器来近似直接在时域中混合音频。近似问题可以通过有效的卷积稀疏编码算法来解决。在我们之前的工作中已经证明了这种方法对音乐音频源分离的有效性,但是在相当受限和受控的条件下,要求先验地通知混合物的乐谱,并且字典滤波器和源信号之间几乎不匹配。在本文中,我们报告了一项评估,该评估考虑了更广泛、更实用的实验设置。这包括使用基于音频的多音高估计算法来替换乐谱,以及使用音频单音符的外部数据集来构建字典过滤器。我们的结果表明,所提出的方法在更大的字典中仍然有效,并且与最先进的非负矩阵分解方法相比具有优势。但是,在没有分数并且字典很小的情况下,我们的方法可能不会更好 我们报告了一项评估,该评估考虑了更广泛、更实用的实验环境。这包括使用基于音频的多音高估计算法来替换乐谱,以及使用音频单音符的外部数据集来构建字典过滤器。我们的结果表明,所提出的方法在更大的字典中仍然有效,并且与最先进的非负矩阵分解方法相比具有优势。但是,在没有分数并且字典很小的情况下,我们的方法可能不会更好 我们报告了一项评估,该评估考虑了更广泛、更实用的实验环境。这包括使用基于音频的多音高估计算法来替换乐谱,以及使用音频单音符的外部数据集来构建字典过滤器。我们的结果表明,所提出的方法在更大的字典中仍然有效,并且与最先进的非负矩阵分解方法相比具有优势。但是,在没有分数并且字典很小的情况下,我们的方法可能不会更好 我们的结果表明,所提出的方法在更大的字典中仍然有效,并且与最先进的非负矩阵分解方法相比具有优势。但是,在没有分数并且字典很小的情况下,我们的方法可能不会更好 我们的结果表明,所提出的方法在更大的字典中仍然有效,并且与最先进的非负矩阵分解方法相比具有优势。但是,在没有分数并且字典很小的情况下,我们的方法可能不会更好