資源描述:
《對錄制語音信號的采樣和濾波處理》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、電子信息工程學(xué)院2009級數(shù)字信號處理期中作業(yè)學(xué)號:XXXXXXX姓名:XX.題目:對錄制語音信號的采樣和濾波處理.時間:XX年XX月.7電子信息工程學(xué)院2009級一、課題準(zhǔn)備1.安裝所需的軟件主要包括MATLAB,語音錄制軟件(我選擇的是WaveCN2.0.0.5正式版).安裝好后錄制一段效果不是很好的語音錄制的語音格式選擇wav格式.(便于在MATLAB中可以用一個常用的wavread()函數(shù)將語音信號數(shù)字化。2.查閱相關(guān)MATLAB的資料,搜集并記錄所需濾波器的算法的調(diào)用方法.(在這次課題中我采用的是巴特沃斯濾波器.)二、課題目的1.通過課余的自我的學(xué)習(xí)MATLAB的使用
2、,加深對書本理論知識的理解,提升自身的實際應(yīng)用能力;2.鞏固所學(xué)的數(shù)字信號處理理論知識,讓自己對信號的采集、處理、傳輸、顯示和存儲等有一個系統(tǒng)性的掌握和理解;3.培養(yǎng)自我學(xué)習(xí)的能力和對相關(guān)課程的興趣;三、課題內(nèi)容錄制一段個人自己的語音信號,并對錄制的信號進(jìn)行采樣;畫出采樣后語音信號的時域波形和頻譜圖;在根據(jù)自己給定濾波器的性能指標(biāo),采用雙線性變換設(shè)計濾波器;然后用自己設(shè)計的濾波器對采集的信號進(jìn)行濾波,畫出濾波后信號的時域波形和頻譜,并對濾波前后的信號進(jìn)行對比,分析信號的變化;回放語音信號。四、具體實現(xiàn)1.語音信號的采集利用WaveCN錄音機(jī),錄制一段自己的話音,時間在10s內(nèi)。
3、然后在Matlab軟件平臺下,利用函數(shù)wavread對語音信號進(jìn)行采樣,記住采樣頻率和采樣點數(shù)。通過wavread函數(shù)的使用,我們很快理解了采樣頻率、采樣位數(shù)等概念。2.語音信號的頻譜分析首先畫出語音信號的時域波形;然后對語音號進(jìn)行快速傅里葉變換,得到信號的頻譜特性,從而加深對頻譜特性的理解。3.語音的濾波利用巴特沃斯低通濾波器濾去帶外的噪聲。4.語音處理前后的對比。五、實驗程序部分以及圖形部分%畫原始信號的時域波形圖。>>fs=22050;>>x1=wavread('test');>>sound(x1,22050);7電子信息工程學(xué)院2009級>>y1=fft(x1,1024
4、);>>f=fs*(0:511)/1024;>>figure(1);>>plot(x1);>>title('原始語音信號');>>xlabel('time');>>ylabel('幅值n');>>axis([4*10^4,10^5,-2,2]);圖像如下:%畫原語音信號的頻譜圖。>>figure(2);>>subplot(2,1,1);>>plot(abs(y1(1:512)));>>title('原始信號FFT頻譜');>>subplot(2,1,2);7電子信息工程學(xué)院2009級>>plot(f,abs(y1(1:512)));>>title('原始信號頻譜');>>xla
5、bel('Hz');>>ylabel('幅值');圖像如下:%畫巴特沃斯圖>>fs=22050;x1=wavread('test.wav');>>t=0:1/22050:(size(x1)-1)/22050;>>wp=0.25*pi;ws=0.3*pi;Rp=1;Rs=15;>>Fs=22050;Ts=1/Fs;>>wp1=2/Ts*tan(wp/2);%將模擬指標(biāo)轉(zhuǎn)換成數(shù)字指標(biāo)>>ws1=2/Ts*tan(ws/2);7電子信息工程學(xué)院2009級>>[N,Wn]=buttord(wp1,ws1,Rp,Rs,'s');%選擇濾波器的最小階數(shù)>>[Z,P,K]=buttap(N)
6、;%創(chuàng)建butterworth模擬濾波器>>[Bap,Aap]=zp2tf(Z,P,K);[b,a]=lp2lp(Bap,Aap,Wn);>>[bz,az]=bilinear(b,a,Fs);%用雙線性變換法實現(xiàn)模擬濾波器到數(shù)字濾波器的轉(zhuǎn)換>>[H,W]=freqz(bz,az);%繪制頻率響應(yīng)曲線>>figure(1);plot(W*Fs/(2*pi),abs(H));grid>>xlabel('頻率/Hz');ylabel('頻率響應(yīng)幅度');title('Butterworth')圖像如下:%畫濾波前的時域波形>>f1=filter(bz,az,x1);>>figure(
7、2);subplot(2,1,1);plot(t,x1);%畫出濾波前的時域圖>>title('濾波前的時域波形');%畫濾波后的時域波形>>subplot(2,1,2);plot(t,f1);%畫出濾波后的時域圖7電子信息工程學(xué)院2009級>>title('濾波后的時域波形');圖像如下:%畫濾波前的頻譜>>F0=fft(f1,1024);f=fs*(0:511)/1024;>>figure(3)>>y2=fft(x1,1024);>>subplot(2,1,1);plot(f,abs(y