數字信號處理的主要數學工具是傅裏葉變換,而傅裏葉變換是研究整個時間域和頻率域的關系。然而,當運用計算機實現工程測試信號處理時,不可能對無限長的信號進行測量和運算,而是取其有限的時間片段進行分析。 取用有限個數據,就是將信號進行加窗函數操作,也即信號數據截斷的過程。 做法是從信號中截取壹個時間片段,然後用觀察的信號時間片段進行周期延拓處理,得到虛擬的無限長的信號,然後就可以對信號進行傅裏葉變換、相關分析等數學處理。周期延拓後的信號與真實信號是不同的,下面從數學的角度來看這種處理帶來的誤差情況。設有余弦信號x(t)在時域分布為無限長(- ∞, ∞),將截斷信號的譜XT(ω)與原始信號的譜X(ω)相比。可以發現截斷後數據的譜線已與原始譜線不同,是兩段振蕩的連續譜。這表明原來的 信號被截斷以後,其頻譜發生了畸變,原來集中在f0處的能量被分散到兩個較寬的頻帶中去了,這種現象稱之為頻譜能量泄漏。
信號截斷以後產生的能量泄漏現象是必然的,因為窗函數w(t)是壹個頻帶無限的函數,所以即使原信號x(t)是限帶寬信號,而在截斷以後也必然成為無限帶寬的函數,即信號在頻域的能量與分布被擴展了。又從采樣定理可知,無論采樣頻率多高,只要信號壹經截斷,就不可避免地引起混疊,因此信號截斷必然導致壹些誤差,這是信號分析中不容忽視的問題。
當進行離散傅立葉變換時,時域中的截斷是必需的,因此泄漏效應也是離散傅立葉變換所固有的,必須進行抑制。可以通過窗函數加權抑制 DFT 的等效濾波器的振幅特性的副瓣,或用窗函數加權使有限長度的輸入信號周期延拓後在邊界上盡量減少不連續程度的方法實現。
如果增大截斷長度T,即矩形窗口加寬,則窗譜W(ω)將被壓縮變窄(π/T減小)。雖然理論上講,其頻譜範圍仍為無限寬,但實際上中心頻率以外的頻率分量衰減較快,因而泄漏誤差將減小。當窗口寬度T趨於無窮大時,則譜窗W(ω)將變為δ(ω)函數,而δ(ω)與X(ω)的卷積仍為H(ω),這說明,如果窗口無限寬,即不截斷,就不存在泄漏誤差。為了減少頻譜能量泄漏,可采用不同的截取函數對信號進行截斷,截斷函數稱為窗函數,簡稱為窗。泄漏與窗函數頻譜的兩側旁瓣有關,如果兩側p旁瓣的高度趨於零,而使能量相對集中在主瓣,就可以較為接近於真實的頻譜,為此,在時間域中可采用不同的窗函數來截斷信號。
實際應用的窗函數,可分為以下主要類型:
Why there are so many different window functions is because each of these have very different spectral properties and have different main lobe widths and side lobe amplitudes. There is no such thing as a free lunch: if you want good frequency resolution (main lobe is thin) , your side lobes become larger and vice versa. You can't have both. Often, the choice of window function is dependent on the specific needs and always boils down to making a compromise. ** This is a very good article that talks about using window functions ( /thread-37120-1-1.html
/s/blog_6fb8aa0d0102v274.html
有時會出現這樣的奇怪情況,目前無解
/question/65862090
噪聲參考( /u010565765/article/details/70770429?locationNum=10&fps=1 )