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
   173   174   175   176   177   178   179   180   181   182   183