如何将 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 过滤器
如何将 testthat 测试应用于我的包中与特定命名模式匹配的所有函数?