【问题标题】:Python: How to separate out noise from human speech in audio file?Python:如何从音频文件中的人类语音中分离出噪音?
【发布时间】:2020-01-23 01:55:36
【问题描述】:

我有一个音频文件,我试图过滤掉其中的噪音:

frequency, array = read('sample/OSR_us_000_0014_8k.wav')
b, a = signal.butter(5, 1000/(frequency/2), btype='highpass')
filteredSignal = signal.lfilter(b, a, newSound)

不过,这个高通滤波器似乎没有那么有效。有没有更好的方法来完成我正在尝试做的事情?此外,我更喜欢提取背景噪声。大多数可用的算法都会过滤掉噪音,但我想将噪音提取为一个 numpy 数组。

【问题讨论】:

  • 这种东西叫做源分离,以前用NMF解决,现在一般用神经网络解决。可以在UMX 找到最先进的音乐开源实现。我怀疑有类似的东西可以用于演讲。
  • 您可以在某处发布您的示例数据并提供链接吗?

标签: python audio scipy signal-processing librosa


【解决方案1】:

Librosa 具有人声分离功能。不确定它是否可以与带有一些背景音频的录音一起使用。

https://librosa.github.io/librosa_gallery/auto_examples/plot_vocal_separation.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-08
    • 1970-01-01
    • 1970-01-01
    • 2017-11-03
    • 2021-04-25
    • 2016-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多