【機器學習筆記32】短時傅立葉變換
阿新 • • 發佈:2018-12-22
傅立葉變換的侷限性
1 需要利用訊號的全部時域資訊;
2 沒有反應頻率隨時間變換的訊號情況;
短時傅立葉變換
1964年Gabor提出了短時傅立葉變換(有叫Gabor變換),即在傳統的傅立葉變換的基礎上加了一個時間窗。如下:
python 程式
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import math
if __name__ == '__main__':
df = pd.read_csv('./data/test.csv', sep=',')
data = df['std_value'].astype(float)
#在時序51、52、52加入毛刺型號,該視窗傅立葉變換增加了高頻訊號
data[51] = 10
data[52] = 11
data[53] = 15
# 設定對話方塊大小
fig = plt.gcf( )
fig.set_size_inches(12, 7)
for j in range(0, 5):
plt.subplot(int('23' + str(j + 1)))
plt.plot(np.fft.fft(data[20 * j :20*(j + 1)]))
plt.title(' time windows' + str(20*j) + '-' + str(20*(j + 1)))
plt.show()