《振動噪音科普專欄》甚麼是洩漏(leakage)?

FFT快速傅立葉轉換的信號處理中,常會碰到洩漏(leakage)這個名詞,到底洩漏是甚麼?為什麼會有洩漏?洩漏有甚麼影響?如何避免洩漏?如果無法避免洩漏,該如何處理呢?本單元就介紹洩漏!

本單元的介紹,假設讀者已經看過先前的【甚麼是頻譜分析?】,或是已經了解FFT的基本概念。

1分別有f=50 Hzf=77 Hz的時間域x(t),以及頻譜X(f)的圖示,可以觀察:
(1)      左圖,時間域x(t)的振幅,X=1;在頻譜圖X(f)f=50Hz,振幅X=1
(2)      右圖,時間域x(t)的振幅,X=1;在頻譜圖X(f)f=70Hz,振幅X=1

在圖1,兩個不同頻率的正弦波信號,在其對應的頻譜圖X(f),都有正確的頻率及振幅解析。這是我們進行頻譜分析的最理想狀態,是無洩漏的頻譜分析。

2,左圖的x(t)是,f=50.2 Hz,右圖的x(t)是,f=50.25 Hz,兩者其時間域振幅確實都是X=1,但是在頻譜圖X(f),左圖在f=50Hz,振幅X=0.7571,兩側鄰近的頻率,也都不是0。而右圖在f=50Hz,振幅X=0.6379,兩側鄰近的頻率,也都不是0。當然,對於實際的信號而言,頻率以及振幅的解析都不正確,這就是洩漏的現象。

綜合討論如下:
(1)      洩漏的現象:在信號的頻譜圖,其頻率的振幅,有不正確的分析結果。
(2)      洩漏的原因:是信號的頻率f,與FFT的分析參數:頻率解析度Δf,沒有能夠整除。
(3)      洩漏的影響:因為f/Δf整數,所以,就沒有能夠完全正確的解析信號的頻率f,連帶也不能正確解析信號的振幅X
(4)      如何避免洩漏:必須令f/Δf=整數,但是,我們要進行FFT的目的,就是要分析實際信號的頻率及其振幅特徵,當我們不知道實際信號的頻率,是無法調整頻率解析度Δf,達到f/Δf=整數的目標。而且,實務上,頻率解析度Δf是有一定的限制,對於各種頻率都有的實際量測信號而言,肯定是無法避免洩漏的。
(5)      如果無法避免洩漏,該如何處理呢?需要使用視窗函數(window function)、或稱加權函數(weighting function),只能降低洩漏之影響,我們爾後再另文討論。

本單元討論對信號進行頻譜分析之洩漏的現象、原因及其影響,希望對讀者有幫助。

以上個人看法,請多指教!

王栢村

2017.10.12






0 意見:

張貼留言