




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
PAGE基于Matlab的FIR濾波器設(shè)計與仿真實驗地點:實驗日期:一、實驗?zāi)康?、掌握基本的MATLAB編程方法;2、理解FIR濾波器的設(shè)計原理;3、學(xué)會用MATLAB來編程實現(xiàn)FIR濾波器;4、掌握基本的simulink交互式仿真,并對FIR濾波器模型并進(jìn)行仿真;5、學(xué)會對所得的結(jié)果進(jìn)行分析。二、實驗內(nèi)容1、制作數(shù)據(jù)源:用電腦采集或用軟件截取5至10秒的語音(如“寧波大學(xué)”...)(注意用wavread函數(shù)將語音文件讀入到matlab時,有“右聲道”和“左聲道”兩個信號,只要將其中一個聲道作為信號就可以。)2、信號中混入隨機噪聲(注意信噪比,噪聲強度不要太大):事先取一個參考值為0,再取噪聲的方差,方差的取值是根據(jù)原始語音的幅度取的噪聲,噪聲強度不宜過大或過小,適中即可。然后通過randn(size(a)).*sqrt(noise_var)+noise_mu;語句產(chǎn)生與原始語音長度相同的隨機噪聲,最后把這個噪聲添加到原始語音中,得到加噪語音信號。3、設(shè)計一個FIR濾波器對前面的混合信號進(jìn)行處理、降低噪聲,并對性能進(jìn)行分析:有限長單位沖激響應(yīng)(FIR)數(shù)字濾波器具有嚴(yán)格的線性相位,又具有任意的幅頻特性。同時FIR系統(tǒng)只有零點,系統(tǒng)是穩(wěn)定的,因而容易實現(xiàn)線性相位和允許實現(xiàn)多通道濾波器。只要經(jīng)過一定的延時,任何非因果有限長序列都能變成因果的有限長序列,因而總能用因果系統(tǒng)來實現(xiàn)。FIR濾波器由于單位沖激響應(yīng)是有限長的,可以用快速傅立葉變換(FFT)算法來實現(xiàn)過濾信號,從而大大提高運算效率。由于FIR濾波器具有以上優(yōu)點,在信號處理和數(shù)據(jù)傳輸中得到了廣泛的應(yīng)用。運用窗函數(shù)設(shè)計濾波器是FIR數(shù)字濾波器設(shè)計的主要方法之一,由于運算簡單,又有閉合形式的公式可循,因而很實用。有限長FIR數(shù)字濾波器的設(shè)計方法主要是窗函數(shù)設(shè)計法。常用的窗函數(shù)有以下幾種,矩形窗,三角窗,漢寧窗,海明窗,布拉克曼窗,凱澤窗(β=7.865),各種窗函數(shù)基本參數(shù)比較如下表1。由表1得矩形窗雖然簡便,但存在明顯的吉布斯效應(yīng),主瓣和第一旁瓣之比只有13dB,為了克服這些缺陷,設(shè)計時可根據(jù)給定的濾波器技術(shù)指標(biāo),選擇濾波器長度M和窗函數(shù)w(n),使其具有最窄寬度的主瓣和最小旁瓣4、用Simulink設(shè)計FIR濾波器模型并進(jìn)行仿真,所得結(jié)果進(jìn)行分析:Simulink創(chuàng)建模型并尋找解決實際問題的方法,可以用它輕松地搭建一個系統(tǒng)模型,并設(shè)置模型參數(shù)和仿真參數(shù)。由于Simulink是交互式的應(yīng)用程序,因此在仿真過程中,可以在線修改仿真參數(shù),并立即觀察到改變后的仿真結(jié)果。本文將介紹在Simulink環(huán)境下應(yīng)用數(shù)字濾波器設(shè)計模塊進(jìn)行信號處理(濾波)的可視化設(shè)計技術(shù)。由于調(diào)用了Matlab高度集成化和可視化的計算機仿真環(huán)境,用戶可以不用編寫任何程序語句,僅僅通過鼠標(biāo)拖放和點擊操作,就可完成復(fù)雜的數(shù)字濾波器的設(shè)計工作。下面通過一個應(yīng)用示例介紹這種基于可視化的信號濾波技術(shù),用數(shù)字濾波器設(shè)計模塊(DigitalFilterDesignBlock)設(shè)計、分析和實現(xiàn)濾波器。三、實驗結(jié)果與分析1、制作數(shù)據(jù)源:我用電腦錄制了同學(xué)的一段語音,內(nèi)容是:現(xiàn)代語音處理技術(shù)。該語音大概有4,5秒之長。然后用wavread函數(shù)將語音文件讀入到matlab中,其實現(xiàn)的語句如下:[a,fs]=wavread('現(xiàn)代語音處理技術(shù).wav');%讀入語音a=a(:,1);從中我們知道fs語音的采樣頻率。2、信號中混入隨機噪聲:noise_mu=0;noise_var=0.005;a0=randn(size(a)).*sqrt(noise_var)+noise_mu;a1=a+a0;事先取一個參考值為0,再取噪聲的方差為0.005,0.005是根據(jù)原始語音的幅度取的噪聲,噪聲強度不宜過大或過小,適中即可。然后通過randn(size(a)).*sqrt(noise_var)+noise_mu;語句產(chǎn)生與原始語音長度相同的隨機噪聲,最后把這個噪聲添加到原始語音中,得到a1是信號中混入隨機噪聲的的語音。3、設(shè)計一個FIR濾波器:3.1、FIR濾波器設(shè)計的原理:①先對原始語音進(jìn)行FFT變換,從FFT圖中得到passband和stopband從中我們可以知道了FIR濾波器的截止頻率。確定我們選擇是用低通,高通還是帶通來處理加噪語音。②然后我們通過:fedge=input('BandedgesinHz=');mval=input('Desiredmagnitudevaluesineachband=');dev=input('Desiredrippleineachband=');FT=input('SamplingfrequencyinHz=');輸入從FFT上得到的數(shù)據(jù),passband和stopband,低通或高通,帶通,通帶紋波和阻帶紋波,以及從wavread函數(shù)中得到的采樣頻率fs。通過:[N,fpts,mag,wt]=remezord(fedge,mval,dev,FT);b=remez(N,fpts,mag,wt);產(chǎn)生濾波器的階數(shù)N和濾波器的系數(shù)b。③然后把加噪的語音a1與b進(jìn)行卷積:a11=conv(b,a1)得到的是濾波后的語音信號。3.2、FIR濾波器設(shè)計的程序:[a,fs]=wavread('現(xiàn)在語音處理技術(shù).wav');%讀入寧波大學(xué)語音a=a(:,1);FS=length(a);f=0:fs/FS:(FS-1)*fs/FS;%進(jìn)行FFT變換x=fft(a);figure(1)plot(f,abs(x));title('原始信號a的fft圖');axis([04500001000]);xlabel('f');ylabel('abs(x)');gridon;%設(shè)置FIR濾波器formatlongfedge=input('BandedgesinHz=');mval=input('Desiredmagnitudevaluesineachband=');dev=input('Desiredrippleineachband=');FT=input('SamplingfrequencyinHz=');[N,fpts,mag,wt]=remezord(fedge,mval,dev,FT);b=remez(N,fpts,mag,wt);disp('FIRFilterCoefficients');disp(b)[h,w]=freqz(b,1,256);%畫出幅頻特性figure(2)subplot(2,1,1);plot(w/pi,20*log10(abs(h)));title('幅頻特性');xlabel('\omega/\pi');ylabel('Gain,dB');gridon;%畫出相頻特性subplot(2,1,2)pha=angle(h);%得到相位plot(w/pi,pha);title('相頻特性');xlabel('\omega/\pi');ylabel('phase(Rad)');%原始語音信號圖ts=1/fs;ta=(length(a)-1)/fs;t=0:ts:ta;figure(3)subplot(3,1,1);plot(t,a);title('原始信號a');xlabel('t');ylabel('a');gridon;%添加隨機噪聲noise_mu=0;noise_var=0.005;a0=randn(size(a)).*sqrt(noise_var)+noise_mu;a1=a+a0;%在原始信號上加隨機噪聲的信號圖subplot(3,1,2);plot(t,a1);title('在原始信號上加上噪聲信號a1');xlabel('t');ylabel('a1');gridon;%求卷積a11=conv(b,a1);%經(jīng)過濾波器后的信號圖M=(length(a11)-1)/fs;m=0:ts:M;subplot(3,1,3);plot(m,a11);title('經(jīng)過濾波器后的信號a11');xlabel('m');ylabel('a11');gridon;3.3、FIR濾波器設(shè)計的結(jié)果及分析:3.31.讀入原始語音:[a,fs]=wavread('現(xiàn)代語音處理技術(shù).wav');%讀入語音a=a(:,1);fs結(jié)果:fs=441003.32.運行以上程序,得到圖形以及數(shù)據(jù)如下:Figure1:原始語音信號的FFT圖:從中我們知道passbandFp=2000,stopbandFs=5000,我們采用低通濾波器[10],已知fs=44100,則我們可以在命令窗口輸入以下數(shù)據(jù),并按回車鍵結(jié)束。BandedgesinHz=[20005000]Desiredmagnitudevaluesineachband=[10]Desiredrippleineachband=[0.0150.01]SamplingfrequencyinHz=44100Figure2:Figure2:FIR濾波器的幅頻特性和相頻特性圖:Figure3:原始語音a,加噪語音a1,濾波語音a11的圖形:輸出的濾波器的系數(shù)如下:FIRFilterCoefficientsColumns1through40.00620663342537-0.00299477157558-0.00753465899428-0.01357686587944Columns5through8-0.01888688837353-0.02058093395962-0.01577417564722-0.00239398901676Columns9through120.020015920661940.049847576394350.083426879329060.11568130477741Columns13through160.141126943756380.155141957793510.155141957793510.14112694375638Columns17through200.115681304777410.083426879329060.049847576394350.02001592066194Columns21through24-0.00239398901676-0.01577417564722-0.02058093395962-0.01888688837353Columns25through28-0.01357686587944-0.00753465899428-0.002994771575580.00620663342537從上面的濾波效果來看,這個低通濾波器的效果還不錯,基本上能把原始語音的濾波出來,雖然不能做到很好的把噪聲濾除,但是在語音的聽覺效果上分辯不出與原始語音有何差別,效果還是不錯的。4、用Simulink設(shè)計FIR濾波器模型并進(jìn)行仿真,所得結(jié)果進(jìn)行分析因為濾波器的階數(shù)是N=27階,則我通過Simulink設(shè)計了一個27階的濾波器,其圖形如下,下圖是simulink總的設(shè)計模型,其中我們可以看到示波器可以顯示三路的波形,第一路是原始語音信號的波形,第二路是加噪語音信號的波形,第三路是加噪語音信號進(jìn)過濾波后的語音信號輸出,通過三路波形的同時顯示我們可以很好的比較原始語音信號與濾波后的語音信號之間的差別,從而可以判斷濾波器的濾波效果是否合格。上圖的Filter濾波器是下圖所示的子系統(tǒng)封裝得到的,該子系統(tǒng)設(shè)計了階數(shù)為27階的FIR濾波器,其中的濾波器系數(shù)是上面用MATLAB實現(xiàn)濾波器設(shè)計得到的濾波器的系數(shù),共有28個。我設(shè)計的simulink模型如下圖所示:原始語音的fromworkspace設(shè)置如下:其中Data為[t’,a],Sampletime為ts,并且當(dāng)數(shù)據(jù)處理完后,其最后的輸出數(shù)據(jù)置零。加噪原始語音的fromworkspace設(shè)置如下:其中Data為[t’,a1],Sampletime為ts,并且當(dāng)數(shù)據(jù)處理完后,其最后的輸出數(shù)據(jù)置零。在運行simulink之前,我對simulink的參數(shù)設(shè)置如下:用simulink進(jìn)行仿真的結(jié)果如下:從仿真的結(jié)果我們可以看到,原始語音,加噪語音,以及濾波后的語音。從中我們可以看出FIR濾波器對加噪語音有一定的濾波效果,濾波出的語音與原始語音比較接近,如果從聽覺角度去分析,我們很難分辯這兩種語音之間的差別,所以這個FIR濾波器在一定程度上對語音的濾波效果是不錯的。四、實驗體會:本次實驗我在對MATLAB了解的基礎(chǔ)上更好的,更熟練的應(yīng)用MATLAB來編程實現(xiàn)FIR濾波器設(shè)計,以及學(xué)會用simulink來設(shè)計FIR濾波器,仿真實現(xiàn)濾波效果。這個實驗一開始我只具備基本的MATLAB知識和相關(guān)的FIR濾波器的設(shè)計原理。開始用MATLAB來編程實現(xiàn)對我來說還是有點難度的,但是通過查看相關(guān)資料以及認(rèn)真的閱讀老師提供的資料,我慢慢的對實現(xiàn)FIR濾波器設(shè)計有了初步的程序輪廓
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江萬里學(xué)院《美學(xué)與醫(yī)學(xué)美學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 平?jīng)鍪徐`臺縣2024-2025學(xué)年六年級下學(xué)期調(diào)研數(shù)學(xué)試卷含解析
- 武漢紡織大學(xué)外經(jīng)貿(mào)學(xué)院《廣播電視新聞采編》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州商學(xué)院《口腔工藝管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南財經(jīng)大學(xué)《新技術(shù)在城市規(guī)劃中的應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 鎮(zhèn)江市高等??茖W(xué)?!队耙曁摂M空間技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江工業(yè)大學(xué)《精神衛(wèi)生保健》2023-2024學(xué)年第一學(xué)期期末試卷
- 債券相關(guān)知識培訓(xùn)
- 工藝流程培訓(xùn)
- 遼寧省大連市瓦房店市2024-2025學(xué)年七年級下學(xué)期期中地理試題(含答案)
- 《金屬加工基礎(chǔ)(第二版)》中職全套教學(xué)課件
- 2025年湖北省初中學(xué)業(yè)水平考試數(shù)學(xué)模擬卷(二)(原卷版+解析版)
- 2025年華能新能源股份有限公司廣東分公司應(yīng)屆高校畢業(yè)生招聘筆試參考題庫附帶答案詳解
- 2025年新疆克州中考英語一模試卷
- 2024年新疆伊犁州直檢察機關(guān)招聘聘用制書記員筆試真題
- 口腔四手操作培訓(xùn)
- 醫(yī)院檢驗科簡介
- 成人手術(shù)后疼痛評估與護(hù)理團(tuán)體標(biāo)準(zhǔn)
- 連鎖藥店年度規(guī)劃
- 2024年10月自考07729倉儲技術(shù)與庫存理論試題及答案
- 血液透析頭痛的應(yīng)急預(yù)案
評論
0/150
提交評論