傅里葉變換Python實現(xiàn)

傅里葉變換(FT)[1]

傅里葉變換的目的是可將時域(即時間域)上的信號轉變?yōu)轭l域(即頻率域)上的信號殖卑,隨著域的不同,對同一個事物的了解角度也就隨之改變麸折,因此在時域中某些不好處理的地方,在頻域就可以較為簡單的處理。

傅里葉變換公式:


傅里葉變換公式

(w代表頻率码耐,t代表時間,e^-iwt為復變函數)

其中:\omega =\frac{2\pi }{T} =2\pi f糖儡,


歐拉公式

F(f) = \int_{-\propto }^{\propto } f(t)*(cos(-2\pi ft)+isin(-2\pi ft))dt

傅里葉逆變換:

傅里葉逆變換公式

f(t) = \int_{-\propto }^{\propto } F(f)*(cos(2\pi ft)+isin(2\pi ft))df

傅里葉變換認為一個周期函數(信號)包含多個頻率分量伐坏,任意函數(信號)f(t)可通過多個周期函數(基函數)相加而合成怔匣。

從物理角度理解傅里葉變換是以一組特殊的函數(三角函數)為正交基握联,對原函數進行線性變換,物理意義便是原函數在各組基函數的投影每瞒。


傅里葉變換

以下是代碼:

import numpy as np

from numpy import linalg

import matplotlib.pyplot as plt

import math

#時間長度

t_len = 3.14*4

#分割時間

t = np.linspace(0, t_len, 1000)

#傅里葉變換原函數g_t(t)

g_t = []

for i in range(len(t)):

? ? #測試函數

? ? temp = 2*math.sin(t[i])+math.sin(2*t[i]+3)

? ? g_t.append(temp)


#頻率范圍

f_len = 2

#分割頻率

f = np.linspace(0, f_len, 1000)

#傅里葉變換函數實軸函數g_cos(f)金闽,x軸函數

g_cos = []

#傅里葉變換函數虛軸函數g_sin(f),y軸函數

g_sin = []

#傅里葉變換 復數模 函數g_f(f)剿骨,偏離中心距離函數

g_f = []

#傅里葉函數虛軸和實軸存在的意義在于區(qū)分振動中不同方向的增益效果

#所謂虛函數只是一種區(qū)分方向的方式代芜,不讓cos()與sin()在積分前混合

#傅里葉變換,時間進行積分

for c_f in range(len(f)):

? ? sinsum = 0

? ? cossum = 0

? ? for c_t in range(len(t)):

? ? ? ? tempsin = g_t[c_t] * math.sin(f[c_f] * t[c_t] * (-2 * math.pi))

? ? ? ? tempcos = g_t[c_t] * math.cos(f[c_f] * t[c_t] * (-2 * math.pi))? ? ?

? ? ? ? sinsum = sinsum + tempsin

? ? ? ? cossum = cossum + tempcos

? ? g_f.append(math.sqrt((cossum/len(t))**2 + (sinsum/len(t))**2))

? ? g_sin.append(sinsum/len(t))

? ? g_cos.append(cossum/len(t))


#逆傅里葉變換還原后函數f_g(t)

f_g = []

#傅里葉變換浓利,頻率進行積分

for c_t in range(len(t)):

? ? sinsum = 0

? ? cossum = 0

? ? for c_f in range(len(f)):

? ? ? ? tempsin = g_sin[c_f] * math.sin(f[c_f] * t[c_t] * (-2 * math.pi))

? ? ? ? tempcos = g_cos[c_f] * math.cos(f[c_f] * t[c_t] * (-2 * math.pi))

? ? ? ? sinsum = sinsum + tempsin

? ? ? ? cossum = cossum + tempcos

? ? f_g.append(2*f_len*t_len*sinsum/len(f) + 2*f_len*t_len*cossum/len(f))

plt.figure("傅里葉變換",figsize=(6, 6))

plt.subplot(2,2,1)

#原函數g_t(t)

plt.scatter(t, g_t, s = 1, color='red')

plt.title("Original Function g_t(t)")

plt.subplot(2,2,2)

#傅里葉變換虛軸函數g_sin(f)

plt.scatter(f, g_sin, s = 1, color='red')

plt.title("Fourier(sin) g_sin(f)")

plt.subplot(2,2,3)

#傅里葉變換 復數模 函數g_f(f)

plt.scatter(f, g_f, s = 1, color='blue')

plt.title("Fourier(module) g_f(f)")

plt.subplot(2,2,4)

#逆傅里葉變換還原后的函數f_g(t)

plt.scatter(t, f_g, s = 1, color='red')

plt.title("restore f_g(t)")

plt.show()


[1] 傅里葉變換概念及公式推導 https://blog.csdn.net/lzzdflg/article/details/78254381

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末挤庇,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子贷掖,更是在濱河造成了極大的恐慌嫡秕,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件苹威,死亡現(xiàn)場離奇詭異昆咽,居然都是意外死亡,警方通過查閱死者的電腦和手機牙甫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門掷酗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人窟哺,你說我怎么就攤上這事泻轰。” “怎么了且轨?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵浮声,是天一觀的道長亩鬼。 經常有香客問我,道長阿蝶,這世上最難降的妖魔是什么雳锋? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮羡洁,結果婚禮上玷过,老公的妹妹穿的比我還像新娘。我一直安慰自己筑煮,他們只是感情好辛蚊,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著真仲,像睡著了一般袋马。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上秸应,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天虑凛,我揣著相機與錄音,去河邊找鬼软啼。 笑死桑谍,一個胖子當著我的面吹牛,可吹牛的內容都是我干的祸挪。 我是一名探鬼主播锣披,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼贿条!你這毒婦竟也來了雹仿?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤整以,失蹤者是張志新(化名)和其女友劉穎胧辽,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體悄蕾,經...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡票顾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了帆调。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奠骄。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖番刊,靈堂內的尸體忽然破棺而出含鳞,到底是詐尸還是另有隱情,我是刑警寧澤芹务,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布蝉绷,位于F島的核電站鸭廷,受9級特大地震影響,放射性物質發(fā)生泄漏熔吗。R本人自食惡果不足惜辆床,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望桅狠。 院中可真熱鬧讼载,春花似錦、人聲如沸中跌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽漩符。三九已至一喘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間嗜暴,已是汗流浹背凸克。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留灼伤,地道東北人触徐。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓咪鲜,卻偏偏與公主長得像狐赡,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子疟丙,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354