如何将 Butterworth 过滤器应用于我的代码?

Posted

技术标签:

【中文标题】如何将 Butterworth 过滤器应用于我的代码?【英文标题】:How to apply Butterworth filter to my code? 【发布时间】:2016-07-17 08:01:28 【问题描述】:

我想过滤掉录音中的噪音并将其标准化。目前我正在努力使用巴特沃斯带通滤波器。

如何在我的代码中应用它? (我是 Python 新手)

from numpy import nditer
from pydub.audio_segment import Audiosegment
from scikits.audiolab import wavread

from scipy import signal

# Stereo to mono
stereo_sound = AudioSegment.from_wav('voice.wav')
mono_sound = stereo_sound.set_channels(1)
mono_sound.export('voice_mono.wav', format='wav')

podcast = wavread('voice.wav')

for frame in podcast:
    print(frame)

print("\n")
print("\n")


# Read mono file
podcast = wavread('voice_mono.wav')
frames = podcast[0]
max_iter = 2000
i = 0
for frame in nditer(frames):
    i += 1
    if i < max_iter:
        print(frame)


# Apply Butterworth filter

# Do Butterworth filter and save as new wav
b, a = signal.butter(4, 100, 'bandpass', analog=True)

非常感谢!

【问题讨论】:

【参考方案1】:

您可能首先要检查您是否安装了 numpy、pydub、scikits 和 scipy。然后,您可以使用此代码创建一个函数并将您的音频文件作为输入。

【讨论】:

以上是关于如何将 Butterworth 过滤器应用于我的代码?的主要内容,如果未能解决你的问题,请参考以下文章

WordPress |帖子查询 |查询帖子类别以创建子类别过滤器并将其应用于我的函数文件中的 Ajax 过滤器

如何将此 KNN 代码应用于我的数据集?

如何将此 Boost ASIO 示例应用于我的应用程序

如何将 testthat 测试应用于我的包中与特定命名模式匹配的所有函数?

如何以 DRY 方式基于 current_page 将“活动”类应用于我的导航? - 导轨 3

设计模式:需要帮助理解这个概念以及它如何应用于我的项目