之前看過一篇關於傅立葉分析的文章,對傅立葉變換、時域、頻域等有了點直觀的理解,但具體到計算上依然是困惑的並且對於一些概念比如卷積、可積、不可積等也是似懂非懂。由於傅立葉公式比較抽象所以就在思考能否構建一個模型,通過模型直觀的去理解或解釋傅立葉公式?
首先回顧一下傅立葉變換
以方波為例,近似認為任何波形都可由不同頻率、幅值和相位的正弦波組合而成,傅立葉變換就是將任意波形(這裡的方波)中的各分量分離出來。如何分離?硬體上可以採用窄帶濾波器,但實際上硬體開銷是難以接受的,通常採用的是數學方法——歐拉濾波器。
歐拉公式
歐拉公式展示了一根螺旋上升的曲線(如同彈簧),這根神奇的「彈簧」或許更加接近事物的本質,我們通常所能觀察到的或許只是這個三維模型的某個投影。
這裡就是借用這個三維歐拉模型來分離頻域中的各個分量實現濾波效果。
設一個頻率為f0=0.3Hz正弦波信號其時域、頻域圖如下:
圖1-1 0.3Hz正弦波時域、頻域圖
如圖把時域信號乘以歐拉公式再積分取模就得到了頻域信號,這一步又稱卷積。這時腦袋裡就產生了問號,啥是卷積?為啥歐拉公式能濾波?複數怎麼算?渣一樣的數學水平是不可能理解這個方程了,那麼就換一個角度看看能不能把這個方程的軌跡描繪出來,通過過程說不定就能夠理解這個方程的機理。
一個時域信號乘以歐拉公式後是怎麼的軌跡?取歐拉公式中的頻率也為f0=0.3Hz,複平面圖形如下:
圖1-2 f0=0.3Hz複平面圖
在三維模型中的軌跡如下:
圖1-3 三視圖
三視圖中灰色的是XY平面(複平面),實際發現Z軸(時間軸)上的數值對結果沒有影響,只需關心在XY平面的投影即可。從這裡看似乎複平面二維圖就足夠了。
接著用歐拉濾波器進行掃頻觀察複平面、三維圖中軌跡的變化:
圖1-4 對比頻域中各頻率對應的複平面和三維圖
通過觀察發現所有軌跡在複平面的投影重合度越高的對應的頻域值越大,比如歐拉濾波器取f0=3Hz時所有軌跡的投影在一個圓上,而偏離f0=3Hz時投影逐漸散開(如同彎曲的彈簧),在f0=0.42Hz處所有投影成對稱狀(複平面有正有負)得到的頻域值為零。
再觀察最左邊的f0=0.15Hz處,放大如下:
圖1-4-1 f=0.15Hz放大圖
在複平面中其為對稱圖形得出的頻域值應該為零但實際不為零,通過觀察三維圖右邊的兩個臂為雙重臂所以單純在二維投影中分辨不出來。那麼怎樣來求這些投影的重合度?
因為複平面中有正有負當把所有點相加後對稱的部分會抵消掉這樣就能判斷出重合度(或應稱對稱性),再取模就得出了實數結果。對乘積項進行累加(積分)也就是卷積運算了,卷積運算比較慢有沒有其它更便捷的方法來識別投影的重合度(對稱性)?或者優於歐拉濾波器的濾波器?
如果不是單一頻率的波形仍然符合上述規律只是投影不再是標準的圓形,見下圖:
圖1-5 兩種頻率的合成波頻域及投影
再來分析相位的識別方法,觀察下面不同初始相位時對應的X方向Y方向上投影:
圖1-6-1 0度對應的投影
圖1-6-2 45度對應的投影
圖1-6-3 90度對應的投影
通過對比可知初始相位可以用圖中兩條正弦波的均值求反正切獲得,這兩條正弦波為原波形x1(t)分別與歐拉公式的虛部、實部相乘獲得(歐拉三角形式cos(t)-i*sin(t)),平均值可由積分的方法獲得,最終求相位也用到了卷積,表達式及波形如下:
圖1-7 頻率相位圖
(此處有點小問題,結果相差90度)
傅立葉級數、傅立葉變換、DFS、DTFT
根據信號的不同類型,可以把傅立葉變換分為四類:
1) 非周期性連續信號:傅立葉變換(Fourier Transform,FT)
2) 周期性連續信號:傅立葉級數(Fourier Series,FS)
3) 非周期性離散信號:離散時域傅立葉變換(Discrete Time Fourier Transform ,DTFT)
4)周期性離散信號:離散傅立葉變換(Discrete Fourier Series,DFS)
前面分析的都是周期信號特點時域連續周期,對應頻域離散非周期屬於傅立葉級數
圖2-1 傅立葉級數
對於非周期信號特點時域連續非周期,對應頻域連續非周期屬於傅立葉變換
圖2-2 傅立葉變換
傅立葉變換變換某種程度上可以看做傅立葉級數在單個峰上的拉伸,雖然y軸值有所不同但頻域反映的是比重似乎影響不大。
前面提到卷積的運算速度比較慢,採用離散化處理後可以減少運算次數提高運算速度,再者現在的計算機都是數字計算機對於連續的模擬數據只能抽樣處理。
拉普拉斯變換
在實際波形中會出現不收斂的曲線,這種曲線的軌跡示意如下: