【摘 要】FIR數(shù)字濾波器是數(shù)字信號處理的一個(gè)重要組成部分。由于FIR數(shù)字濾波器具有嚴(yán)格的線性相位,因此在信息的采集和處理過程中得到了廣泛的應(yīng)用。本文簡要介紹了FIR數(shù)字濾波器的原理與設(shè)計(jì)實(shí)現(xiàn)方法。并介紹了一個(gè)基于MATLAB,利用窗函數(shù)法設(shè)計(jì)的低通濾波器處理加有噪聲的音頻波形的實(shí)例,結(jié)果顯示濾波器具有很好的濾波性能。
【關(guān)鍵詞】MATLAB FIR數(shù)字濾波器 窗函數(shù)
一、概述
所謂數(shù)字濾波器,是指輸入、輸出均為數(shù)字信號,通過數(shù)值運(yùn)算處理改變輸入信號所含頻率成分的相對比例,或者濾除某些頻率成分的數(shù)字器件或程序。數(shù)字濾波器處理精度高、穩(wěn)定、體積小、重量輕、靈活、不存在阻抗匹配問題,可以實(shí)現(xiàn)模擬濾波器無法實(shí)現(xiàn)的特殊濾波功能。如果要處理的是模擬信號,可通過A/DC和D/AC,在信號形式上進(jìn)行匹配轉(zhuǎn)換,同樣可以使用數(shù)字濾波器對模擬信號進(jìn)行濾波。
MATLAB是一種功能強(qiáng)大的數(shù)據(jù)分析和工程計(jì)算高級語言,在工業(yè)、電子、信號處理、醫(yī)學(xué)、建筑以及航空等領(lǐng)域有著廣泛的應(yīng)用。利用MATLAB設(shè)計(jì)FIR濾波器可以隨時(shí)的對比設(shè)計(jì)的要求和特性,調(diào)整參數(shù)。減輕工作量,使濾波器實(shí)現(xiàn)最優(yōu)化。
二、FIR數(shù)字濾波器與IIR數(shù)字濾波器的比較
數(shù)字濾波器根據(jù)不同的分類方法,可以分成多種。從濾波特性上可以分成低通、高通、帶通和帶阻濾波器;從網(wǎng)絡(luò)結(jié)構(gòu)上可以分成IIR(無限脈沖響應(yīng))濾波器和FIR(有限脈沖響應(yīng))濾波器。
從性能上來說,IIR濾波器可用較低的階數(shù)獲得較高的選擇性,所用存儲單元少,計(jì)算量小,經(jīng)濟(jì)高效。但這是以相位的非線性為代價(jià)的。相反,F(xiàn)IR濾波器卻可以得到嚴(yán)格的線性相位,但其只能用較高的階數(shù)達(dá)到選擇性,成本較高,信號延遲也較大。
從結(jié)構(gòu)上看,IIR濾波器必須采用遞歸結(jié)構(gòu),極點(diǎn)位置必須在單位圓內(nèi),否則系統(tǒng)不穩(wěn)定。有限字長效應(yīng)有時(shí)會引起寄生震蕩。相反,F(xiàn)IR濾波器主要采用非遞歸結(jié)構(gòu),始終穩(wěn)定,運(yùn)算誤差引起的輸出信號噪聲功率也較小。在相同的階數(shù)下,F(xiàn)IR濾波器的運(yùn)算速度可以大大提高。
從設(shè)計(jì)工具上看,IIR濾波器可以借助成熟模擬濾波器設(shè)計(jì)成果,有設(shè)計(jì)公式可供準(zhǔn)確計(jì)算,計(jì)算工作量比較小,對計(jì)算工具的要求不高。FIR濾波器的設(shè)計(jì)只有計(jì)算程序可循,沒有公式,對計(jì)算工具要求較高。
從使用要求上來看,在對相位要求不敏感的場合,選用IIR濾波器較為合適,如語音通訊等。對線性相位要求較高的場合,選用FIR濾波器較好,如圖像信號處理、數(shù)據(jù)傳輸?shù)纫圆ㄐ螖y帶信號的系統(tǒng)。
三、FIR數(shù)字濾波器的設(shè)計(jì)方法
FIR濾波器設(shè)計(jì)任務(wù)是選擇有限長度的h(n),使頻率響應(yīng)函數(shù)滿足技術(shù)指標(biāo)要求。FIR濾波器設(shè)計(jì)方法有窗函數(shù)、頻率采樣法和切比雪夫等波紋逼近法。本文則主要介紹窗函數(shù)法。
3.1 典型常用窗函數(shù)的介紹
從原始信號波形的頻域圖可以看到其頻率分量主要在0到2000Hz之間,噪聲的頻率分量主要集中在7000Hz,利用通帶截頻為7000Hz的低通濾波器可以濾除噪聲。信號頻域圖中位于濾波器通帶內(nèi)的頻率分量保留了下來,位于濾波器阻帶內(nèi)的頻率分量被濾除,濾波器的效果符合設(shè)計(jì)要求。
四、總結(jié)
研究基于MATLAB的FIR濾波器的設(shè)計(jì)原理與方法,設(shè)計(jì)了一個(gè)FIR數(shù)字低通濾波器,并且利用一個(gè)實(shí)例進(jìn)行仿真,結(jié)果表明濾波器的效果符合要求,具有良好的性能。利用MATLAB的信號處理工具箱強(qiáng)大的信號處理功能,采用編程的方法設(shè)計(jì)數(shù)字濾波器,使設(shè)計(jì)達(dá)到最優(yōu)化;并且可以最快的實(shí)現(xiàn)濾波器的仿真,使設(shè)計(jì)達(dá)到最簡化。
參考文獻(xiàn):
[1] 高西全,丁玉美.數(shù)字信號處理(第三版)[M].西安:西安電子科技大學(xué)出版社,2013
[2] 高西奇,甘露. 對稱-反對稱多小波濾波器組的參數(shù)化構(gòu)造及其在圖像壓縮中的應(yīng)用[J].電子學(xué)報(bào),2001,29( 6) :796-798
[3] 柴政,任海平. 關(guān)于數(shù)字濾波器設(shè)計(jì)方式的探討[J].通信電源技術(shù),2007,19( 1) :33-35