欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

python 帶通濾波器

老白1年前8瀏覽0評論

Python中的數字信號處理(DSP)模塊可以用來設計和實現帶通濾波器。 帶通濾波器可以很好地去除噪聲和雜波,同時保留所需信號的特定頻率范圍。

import scipy.signal as signal
import numpy as np
import matplotlib.pyplot as plt
# 設計一個6階Butterworth帶通濾波器
lowcut = 10   # 低頻截止頻率
highcut = 1000   # 高頻截止頻率
fs = 8000   # 采樣頻率
order = 6   # 階數
nyquist_rate = fs / 2.0
b, a = signal.butter(order, [lowcut/nyquist_rate, highcut/nyquist_rate], btype='bandpass')
# 生成一個測試信號
t = np.linspace(0, 1, fs, endpoint=False)
x = np.sin(2 * np.pi * 50 * t) + 0.5 * np.sin(2 * np.pi * 2000 * t)
# 應用濾波器
filtered = signal.filtfilt(b, a, x)
# 繪制原始信號和濾波后的信號
plt.plot(t, x, label='Original signal')
plt.plot(t, filtered, label='Filtered signal')
plt.xlabel('Time (sec)')
plt.ylabel('Amplitude')
plt.legend()
plt.show()

上面的代碼使用scipy庫中的signal模塊來設計和應用一個6階Butterworth帶通濾波器。 該濾波器的低頻截止頻率為10Hz,高頻截止頻率為1000Hz,采樣頻率為8000Hz。 我們生成一個測試信號,并應用濾波器來去除其中的雜波和高頻噪聲。 最后,我們使用matplotlib庫中的plt模塊將原始信號和濾波后的信號繪制出來,以便觀察效果。