首页 > 解决方案 > 如何使用二进制掩码和 STFT 生成音频文件?

问题描述

所以这里的想法是:您可以使用短时傅里叶变换 (stft) 从音频文件生成频谱图。然后有些人生成了一种称为“二进制掩码”的东西,以从反向 stft 生成不同的音频(即去除背景噪声等)。

以下是我的理解:

  1. stft 是一个应用于音频文件的简单方程,它生成的信息可以很容易地显示在频谱图上。
  2. 通过取 stft 矩阵的逆,并将其乘以相同大小的矩阵(二进制矩阵),您可以创建一个包含信息的新矩阵,以生成带有掩蔽声音的音频文件。

进行矩阵乘法后,如何创建新的音频文件?

这并不多,但这是我在代码方面得到的:

from librosa import load
from librosa.core import stft, istft
y, sample_rate = load('1.wav')
spectrum = stft(y)
back_y = istft(spectrum)

谢谢,这里有一些幻灯片让我走到了这一步。如果您能给我一个 Python 中的示例/演示,我将不胜感激

标签: pythonpython-3.xaudiomaskspectrogram

解决方案


推荐阅读