繼續(xù)講解!上堂課講到FIR濾波器的線性相位特點(diǎn),分析了線性相位帶來(lái)的延時(shí)特性。本堂課繼續(xù)講解FIR濾波器的幅度特性,再理論聯(lián)系實(shí)際的看看FIR濾波器到底長(zhǎng)什么樣?有什么用?聽(tīng)我慢慢道來(lái)。
在MATLAB自帶的函數(shù)中,有fir1和fir2函數(shù)。前者是是用窗函數(shù)法設(shè)計(jì)線性相位FIR的工具箱函數(shù),以實(shí)現(xiàn)線性相位FIR的標(biāo)準(zhǔn)窗函數(shù)法設(shè)計(jì)。后者是基于頻率基本法的FIR濾波器設(shè)計(jì),用于任意頻率響應(yīng)的加窗數(shù)字FIR濾波器的設(shè)計(jì)。
信號(hào)通常是一維數(shù)組,可以用fir1和fir2函數(shù)處理。二維數(shù)組處理方式會(huì)有些差異。圖像處理中會(huì)涉及二維數(shù)組的處理,這里只是提一下,能讓同學(xué)們有個(gè)了解。二維數(shù)據(jù)主要是圖像數(shù)據(jù),圖像濾波主要用imfilter函數(shù)??梢杂胒special函數(shù)預(yù)定義各種二維濾波器。這些知識(shí)會(huì)在《數(shù)字圖像處理》課程中詳細(xì)講解,這里不再贅述。
講完這些理論,來(lái)一些涉及程序仿真的內(nèi)容,看看理論能不能聯(lián)系實(shí)際!
信號(hào)中經(jīng)?;煊懈鞣N復(fù)雜成分,有需要的成分,也有不需要的成分。很多信號(hào)分析都是基于濾波器而進(jìn)行, 因此數(shù)字濾波器占有極其重要的地位 。數(shù)字濾波器是具有一定傳輸選擇特性的數(shù)字信號(hào)處理裝置,其輸入與輸出均為數(shù)字信號(hào)實(shí)質(zhì)上是一個(gè)由有限精度算法實(shí)現(xiàn)的線性時(shí)不變離散系統(tǒng)。
它的基本工作原理是利用離散系統(tǒng)特性對(duì)系統(tǒng)輸入信號(hào)進(jìn)行加工和變換,改變輸入序列的頻譜或信號(hào)波形,讓有用頻率的信號(hào)分量通過(guò),抑制無(wú)用的信號(hào)分量輸出。數(shù)字濾波器和模擬濾波器有著相同的濾波概念,根據(jù)其頻率響應(yīng)特性可分為低通、高通、帶通、帶阻等類(lèi)型。
與模擬濾波器相比,數(shù)字濾波器除了具有數(shù)字信號(hào)處理固有優(yōu)點(diǎn)外,還有精度高、穩(wěn)定性好、靈活性強(qiáng)等優(yōu)點(diǎn)。FIR濾波器具有線性相位,但它的傳遞函數(shù)的極點(diǎn)固定在原點(diǎn),只能通過(guò)改變零點(diǎn)位置來(lái)改變性能,為了達(dá)到高的選擇性必須用較高的階數(shù)。對(duì)于同樣的濾波器設(shè)計(jì)指標(biāo),F(xiàn)IR濾波器要求的階數(shù)可能比IIR濾波器高10倍以上。
由于FIR數(shù)字濾波器具有嚴(yán)格的相位特性,對(duì)于信號(hào)處理和數(shù)據(jù)傳輸是很重要的。目前 FIR濾波器的設(shè)計(jì)方法主要有三種:窗函數(shù)法、頻率抽樣法和優(yōu)化設(shè)計(jì)(切比雪夫逼近)方法。我們重點(diǎn)學(xué)習(xí)窗函數(shù)法。上堂課也簡(jiǎn)單提及了一下!
看看結(jié)果吧!
在第一版文章中,對(duì)fir2函數(shù)的描述有錯(cuò)誤。這個(gè)函數(shù)不是用來(lái)處理二維數(shù)組的!它可以用于設(shè)計(jì)有任意頻率響應(yīng)的加窗FIR濾波器。對(duì)標(biāo)準(zhǔn)的低通、帶通、高通和帶阻濾波器的設(shè)計(jì)可使用fir1函數(shù)。
語(yǔ)法:b = fir2(n,f,m)
設(shè)計(jì)出一個(gè)n階的FIR濾波器。其濾波器的頻率特性由參數(shù)f和m決定。參數(shù)f為頻率點(diǎn)矢量,且f∈[0,1],f=1對(duì)應(yīng)于0.5fs。矢量f按升序排列,且第一個(gè)元素必須是0,最后一個(gè)必須為1,并可以包含重復(fù)的頻率點(diǎn)。
矢量m中包含了與f相對(duì)應(yīng)的期望得到的濾波器的幅度。f為歸一化頻率向量。舉例如下:設(shè)計(jì)一個(gè)100階的低通濾波器。運(yùn)行一下下圖中的代碼,看看能出什么結(jié)果?
如果要求設(shè)計(jì)一個(gè)奇怪形狀的濾波器呢?
比如設(shè)計(jì)一個(gè)80階的FIR濾波器,要求濾波器0到π/4的幅度響應(yīng)為0 ,π/4到π/2的幅度響應(yīng)為1/4,π/2到3π/4的幅度響應(yīng)為0,3π/4到1的幅度響應(yīng)為1。采用切比雪夫窗。該怎么寫(xiě)程序呢?
有程序有圖就有真正的理解!
再回到二維數(shù)組的話題!之前學(xué)過(guò)的卷積和濾波函數(shù)都是針對(duì)一維數(shù)組使用,那么能針對(duì)二維數(shù)組嗎?在MATLAB中,filter2 函數(shù)實(shí)現(xiàn)二維數(shù)字濾波器。conv2 函數(shù)實(shí)現(xiàn)二維卷積。之前本人搞混淆了,記成了fir2是用來(lái)實(shí)現(xiàn)二維數(shù)字濾波器的函數(shù),在此更正一下!
現(xiàn)在Python非常流行,很多人也會(huì)使用Python來(lái)完成信號(hào)處理的仿真。提示一下。在 Python中,MATLAB filter2的等效函數(shù)是 scipy.signal.correlate2d。MATLAB conv2的等效函數(shù)是 scipy.signal.convolve2d。要先安裝scipy庫(kù)文件,才能調(diào)用這兩個(gè)函數(shù)。
數(shù)字信號(hào)處理理論的發(fā)展過(guò)程很緩慢,因?yàn)橹暗目茖W(xué)家已經(jīng)研究的很透徹了,但軟件的發(fā)展一直在加速。應(yīng)用什么樣的軟件來(lái)進(jìn)行數(shù)字信號(hào)處理的仿真可以根據(jù)自己的喜好來(lái)選擇。我個(gè)人推薦MATLAB,相關(guān)仿真的文章在本公眾號(hào)里面可以找到!但是針對(duì)數(shù)據(jù)分析呢?我推薦Python。在語(yǔ)言類(lèi)分析的場(chǎng)合,它更是功效無(wú)窮!本章完結(jié)!
審核編輯:劉清
-
數(shù)字濾波器
+關(guān)注
關(guān)注
4文章
267瀏覽量
46968 -
FIR
+關(guān)注
關(guān)注
4文章
146瀏覽量
33069 -
fir濾波器
+關(guān)注
關(guān)注
1文章
94瀏覽量
19009 -
MATLAB函數(shù)
+關(guān)注
關(guān)注
0文章
4瀏覽量
5153
原文標(biāo)題:數(shù)字信號(hào)處理v2 第七章 FIR數(shù)字濾波器的設(shè)計(jì)方法(2)
文章出處:【微信號(hào):gh_30373fc74387,微信公眾號(hào):通信工程師專(zhuān)輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論