Page 178 - 6734
P. 178
Рисунок 39 – Амплітудно-частотна характеристика сигналу
scipy.fftpack – обернене дискретне перетворення Фур’є
Обернене дискретне перетворення Фур’є повертає сигнал за
спектром його частот. У прикладі показано застосування прямого і
оберненого дискретного перетворення Фур’є для частотного
фільтрування сигналу.
import numpy as np
from scipy.fftpack import rfft, irfft, fftfreq
import matplotlib.pyplot as plt
time = np.linspace(0,2,2000) # час
signal = np.cos(5*np.pi*time) +
2*np.cos(7*np.pi*time) # сигнал
W = fftfreq(signal.size, d=time[1]-time[0]) # частоти
f_signal = rfft(signal) # спектр (дискретне
перетворення Фур'є для дійсних)
cut_f_signal = f_signal.copy() # копія сигналу
cut_f_signal[(W<6)] = 0 # фільтруємо сигнал
(відкидаємо частоти<6)
cut_signal = irfft(cut_f_signal) # відфільтрований
сигнал (обернене дискретне перетворення Фур'є для
дійсних)
177