第一篇:語(yǔ)音信號(hào)處理課程設(shè)計(jì)指導(dǎo)剖析
數(shù)字信號(hào)處理課程設(shè)計(jì)報(bào)告
學(xué)院:電子信息學(xué)院
班級(jí):通信131
姓名:*** 2016年 月 日
語(yǔ)音信號(hào)處理
目錄
一、設(shè)計(jì)目的.................................2
二、設(shè)計(jì)要求及任務(wù)...........................2 2.1 語(yǔ)音信號(hào)的采集........................2 2.2 語(yǔ)音信號(hào)的頻譜分析;..................2
三、課程設(shè)計(jì)平臺(tái).............................3
四、設(shè)計(jì)原理與計(jì)算方法.......................3 4.1卷積運(yùn)算..............................3 4.2 采樣定理..............................3
五、設(shè)計(jì)內(nèi)容.................................4 5.1利用帶阻濾波器的進(jìn)行濾波的具體步驟....4 5.1.1語(yǔ)音信號(hào)的錄入與提取..............4 5.1.2加入噪聲信號(hào)......................6 5.1.3 語(yǔ)音信號(hào)和噪聲信號(hào)相加...........8 5.1.4濾波器設(shè)計(jì)........................9 5.1.5對(duì)信號(hào)進(jìn)行濾波...................11 5.2利用低通濾波器進(jìn)行濾波...............12 六:總結(jié)....................................14
語(yǔ)音信號(hào)處理
一、設(shè)計(jì)目的
1、學(xué)會(huì)MATLAB的使用,掌握MATLAB程序設(shè)計(jì)方法;
2、掌握在Windows環(huán)境下語(yǔ)言信號(hào)采集的方法;
3、掌握數(shù)字信號(hào)處理的基本概念、基本理論和基本方法;
4、掌握MATLAB設(shè)計(jì)IIR數(shù)字濾波器的方法;
5、學(xué)會(huì)用MATLAB對(duì)信號(hào)進(jìn)行分析和處理;
二、設(shè)計(jì)要求及任務(wù)
2.1 語(yǔ)音信號(hào)的采集
本設(shè)計(jì)利用計(jì)算機(jī)Windows下的錄音機(jī)錄入一句語(yǔ)音信號(hào),然后在Matlab軟件平臺(tái)下,利用函數(shù)waveread對(duì)語(yǔ)音信號(hào)進(jìn)行采樣,記住采樣頻率和采樣點(diǎn)數(shù)。
2.2 語(yǔ)音信號(hào)的頻譜分析;
在Matlab中,可以利用函數(shù)FFT對(duì)信號(hào)進(jìn)行快速傅里葉變換,得到信號(hào)的頻譜特性,然后加入一干擾信號(hào),要求畫(huà)出語(yǔ)音信號(hào)干擾前后的時(shí)域波形,并對(duì)其頻譜進(jìn)行分析。
1、設(shè)計(jì)數(shù)字濾波器,給出性能指標(biāo)(參考指標(biāo));
(1)低通濾波器的性能指標(biāo):fp=1000Hz,fs=1200Hz,As=100dB,Ap=1dB(2)高通濾波器的性能指標(biāo):fs=4800Hz,fp=5000Hz,As=100dB,Ap=1dB(3)帶通濾波器的性能指標(biāo):fp1=1200Hz,fp2=3000Hz,fs1=1000Hz, fps2=3200Hz,As=100dB,Ap=1dB;
采用雙線(xiàn)性變換法設(shè)計(jì)上面一種類(lèi)型的數(shù)字濾波器,要求使用切比雪夫II型濾波器。
2、用濾波器對(duì)信號(hào)進(jìn)行濾波
語(yǔ)音信號(hào)處理
畫(huà)出濾波后信號(hào)的時(shí)域波形及頻譜,并對(duì)濾波前后的信號(hào)進(jìn)行對(duì)比,分析信號(hào)的變化。
3、回放語(yǔ)音信號(hào),分析濾波前后的語(yǔ)音變化。
在熟悉數(shù)字信號(hào)處理課程理論的基礎(chǔ)上,通過(guò)MATLAB仿真實(shí)現(xiàn)語(yǔ)音信號(hào)的采集與處理,進(jìn)一步加深對(duì)數(shù)字信號(hào)處理理論和技術(shù)的掌握。
三、課程設(shè)計(jì)平臺(tái)
計(jì)算機(jī)、MATLAB6.5以上
四、設(shè)計(jì)原理與計(jì)算方法
4.1卷積運(yùn)算
卷積和乘積運(yùn)算在頻域和時(shí)域是一一對(duì)應(yīng)的,兩個(gè)信號(hào)在時(shí)域的卷積可以轉(zhuǎn)化為求兩者在頻域的乘積后再反變換,同理在頻域的卷積等時(shí)域的乘積。而信號(hào)的頻域求解有快速傅里葉FFT算法。
卷積與傅里葉變換有著密切的關(guān)系。利用這一點(diǎn)性質(zhì),即兩函數(shù)的傅里葉變換的乘積等于它們卷積后的傅里葉變換,能使傅里葉分析中許多問(wèn)題的處理得到簡(jiǎn)化。
由卷積得到的函數(shù)f*g 一般要比f(wàn) 和g 都光滑。特別當(dāng)g 為具有緊支集的光滑函數(shù),f 為局部可積時(shí),它們的卷積f * g 也是光滑函數(shù)。利用這一性質(zhì),對(duì)于任意的可積函數(shù)f,都可以簡(jiǎn)單地構(gòu)造出一列逼近于f 的光滑函數(shù)列,這種方法稱(chēng)為函數(shù)的光滑化或正則化。
卷積的概念還可以推廣到數(shù)列、測(cè)度以及廣義函數(shù)上去。4.2 采樣定理
采樣定理,又稱(chēng)香農(nóng)采樣定理,奈奎斯特采樣定理,是信息論,特別是通訊與信號(hào)處理學(xué)科中的一個(gè)重要基本結(jié)論。E.T.Whittaker(1915年發(fā)表的統(tǒng)計(jì)理論), 3
語(yǔ)音信號(hào)處理
克勞德·香農(nóng)與Harry Nyquist都對(duì)它作出了重要貢獻(xiàn)。另外,V.A.Kotelnikov也對(duì)這個(gè)定理做了重要貢獻(xiàn)。
采樣是將一個(gè)信號(hào)(即時(shí)間或空間上的連續(xù)函數(shù))轉(zhuǎn)換成一個(gè)數(shù)值序列(即時(shí)間或空間上的離散函數(shù))。采樣定理指出,如果信號(hào)是帶限的,并且采樣頻率高于信號(hào)帶寬的兩倍,那么,原來(lái)的連續(xù)信號(hào)可以從采樣樣本中完全重建出來(lái)。帶限信號(hào)變換的快慢受到它的最高頻率分量的限制,也就是說(shuō)它的離散時(shí)刻采樣表現(xiàn)信號(hào)細(xì)節(jié)的能力是有限的。采樣定理是指,如果信號(hào)帶寬不到采樣頻率的一半(即奈奎斯特頻率),那么此時(shí)這些離散的采樣點(diǎn)能夠完全表示原信號(hào)。高于或處于奈奎斯特頻率的頻率分量會(huì)導(dǎo)致混疊現(xiàn)象。大多數(shù)應(yīng)用都要求避免混疊,混疊問(wèn)題的嚴(yán)重程度與這些混疊頻率分量的相對(duì)強(qiáng)度有關(guān)。
五、設(shè)計(jì)內(nèi)容
5.1利用帶阻濾波器的進(jìn)行濾波的具體步驟
5.1.1語(yǔ)音信號(hào)的錄入與提取
用電腦所帶的錄音工具錄制一段錄音,并將聲音保存,因?yàn)殇浫氲穆曇舨皇莣av格式,因此用格式工廠軟件將其進(jìn)行轉(zhuǎn)換位wav格式。
利用Matlab對(duì)語(yǔ)音信號(hào)進(jìn)行FFT分析,并畫(huà)出源語(yǔ)音信號(hào)的時(shí)域波形和頻域波形。實(shí)驗(yàn)代碼:
[x,fs]=wavread('c1.wav');%利用wavread函數(shù)對(duì)語(yǔ)音信號(hào)進(jìn)行提取 figure(1)subplot(2,1,1);N=length(x);T=1/fs;
t=0:T:(N-1)*T;%時(shí)間間隔
plot(t,x)%以時(shí)間為橫軸,x為縱軸畫(huà)圖 title('原語(yǔ)音信號(hào)時(shí)域分析')%圖形命名 xlabel('t(s)')ylabel('x')
以上為時(shí)域分析,接下來(lái)為頻域分析
語(yǔ)音信號(hào)處理
f=(0:N-1)*fs/N;X=fft(x);subplot(2,1,2)plot(f,abs(X))axis([0 25000 0 60]);title('原語(yǔ)音信號(hào)頻域分析')xlabel('f(Hz)')ylabel('X')
語(yǔ)音信號(hào)圖形:
語(yǔ)音信號(hào)處理
5.1.2加入噪聲信號(hào)
在此選擇余弦函數(shù)作為噪聲信號(hào),因?yàn)檎液陀嘞液瘮?shù)的頻域?yàn)閮蓷l豎直的線(xiàn),便于濾波
實(shí)驗(yàn)代碼:
y=0.003*sin(50000*t);
y1=[y' y'];%對(duì)噪音信號(hào)進(jìn)行轉(zhuǎn)換,便于信號(hào)相加(見(jiàn)下圖有說(shuō)明)Y=fft(y);figure(2)subplot(2,1,1)plot(t,y)
title('干擾信號(hào)時(shí)域波形')xlabel('t(s)')
ylabel('y=0.003*sin(50000*t)')Y=fft(y);subplot(2,1,2)plot(f,abs(Y))
axis([0 25000 0 60]);%取在語(yǔ)音信號(hào)范圍內(nèi)的噪聲信號(hào) title('干擾信號(hào)頻域波形')xlabel('f(Hz)')ylabel('Y')
語(yǔ)音信號(hào)處理
通過(guò)圖中劃線(xiàn)的部分可以看出,通過(guò)y1=[y' y']此句可以將x和y這兩個(gè)變量類(lèi)型統(tǒng)一,以便噪聲與語(yǔ)音信號(hào)的相加
語(yǔ)音信號(hào)處理
噪聲信號(hào)圖形:
5.1.3 語(yǔ)音信號(hào)和噪聲信號(hào)相加
實(shí)驗(yàn)代碼:
x1=wavread('c1.wav');x2=x1+y1;figure(3)subplot(2,1,1)plot(t,x2)
title('加入噪聲信號(hào)時(shí)域波形')xlabel('t(s)')ylabel('x')X2=fft(x2);subplot(2,1,2)plot(f,abs(X2))
axis([0 25000 0 60]);title('加入噪聲信號(hào)頻域波形')
語(yǔ)音信號(hào)處理
xlabel('f(Hz)')ylabel('Y')
兩信號(hào)相加圖形:
5.1.4濾波器設(shè)計(jì)
fp1=0.5*10^4;fp2=4*10^4;fs1=0.6*10^4;fs2=3.7*10^4;Rp=1;As=100;Fs=80000;
wp11=2*pi*fp1/Fs;wp22=2*pi*fp2/Fs;ws11=2*pi*fs1/Fs;
語(yǔ)音信號(hào)處理
ws22=2*pi*fs2/Fs;
OmegaP11=2*Fs*tan(wp11/2);OmegaP22=2*Fs*tan(wp22/2);OmegaS11=2*Fs*tan(ws11/2);OmegaS22=2*Fs*tan(ws22/2);OmegaP=[OmegaP11,OmegaP22];OmegaS=[OmegaS11,OmegaS22];%預(yù)畸變化
[N,OmegaC]=cheb2ord(OmegaP,OmegaS,Rp,As,'s');[b,a]=cheby2(N,As,OmegaS,'stop','s');[bz,az]=bilinear(b,a,Fs);%AD轉(zhuǎn)換 [H,w]=freqz(bz,az);db=20*log10(abs(H));figure(4)plot(w/pi,db)title('帶阻濾波器')xlabel('w/pi')ylabel('Db')
濾波器圖形:
語(yǔ)音信號(hào)處理
5.1.5對(duì)信號(hào)進(jìn)行濾波
實(shí)驗(yàn)代碼:
H=filter(bz,az,x2);figure(5)subplot(211)plot(t,H)
title('濾波后時(shí)域')xlabel('t(s)')ylabel('x')subplot(212)H1=fft(H);plot(f,abs(H1));axis([0 25000 0 60]);title('濾波后頻域')xlabel('f(Hz)')
語(yǔ)音信號(hào)處理
ylabel('Y')
濾波后圖形:
對(duì)比原圖源信號(hào)已經(jīng)被濾出來(lái)了 5.2利用低通濾波器進(jìn)行濾波
前三步和上面帶阻濾波器一樣便不再重復(fù)敘述,從低通濾波器的設(shè)計(jì)開(kāi)始 低通濾波器實(shí)驗(yàn)代碼: fp1=0.25*10^4;fs1=0.5*10^4;Rp=1;As=100;Fs=30000;
wp11=2*pi*fp1/Fs;ws11=2*pi*fs1/Fs;
OmegaP=2*Fs*tan(wp11/2);OmegaS=2*Fs*tan(ws11/2);%頻率預(yù)畸
語(yǔ)音信號(hào)處理
[N,OmegaC]=cheb2ord(OmegaP,OmegaS,Rp,As,'s');%為了得到N C [z0,p0,k0]=Cheb2ap(N,As);%歸一化原型低通濾波器零極點(diǎn) a0=real(poly(p0));b0=k0*real(poly(z0));
[b,a]=lp2lp(b0,a0,OmegaC);%將歸一化原型低通轉(zhuǎn)換成低通濾波器
[bz,az]=bilinear(b,a,Fs);%雙線(xiàn)性變換AF到DF [H,w]=freqz(bz,az);db=20*log10(abs(H));figure(4)plot(w/pi,db)title('低通濾波器')xlabel('w/pi')ylabel('Db')
此處設(shè)計(jì)低通濾波器時(shí)與上面方法不同,此處先求出了歸一化原型低通濾波器,在利用歸一化原型低通濾波器轉(zhuǎn)換成低通濾波器 低通濾波器圖形:
語(yǔ)音信號(hào)處理
濾波后圖形:
從圖中可以看出,利用低通濾波器也還原出了源語(yǔ)音信號(hào),并且比帶阻的效果稍好一點(diǎn)
六、總結(jié)
這次課程設(shè)計(jì)雖然遇到了很多問(wèn)題,很多困難,但是也學(xué)到了很多東西。不僅學(xué)到了書(shū)本上的東西,而且學(xué)到了很多課本上沒(méi)有的東西,很多程序里的東西,特別是程序語(yǔ)法,總是有錯(cuò)誤,但是總是不知道錯(cuò)在哪里,在細(xì)心的檢查下,終于找出了錯(cuò)誤和警告,排除困難后,程序編譯就通過(guò)了,心里終于舒了一口氣。還有各種各樣問(wèn)題,通過(guò)查網(wǎng)絡(luò)和請(qǐng)教同學(xué)來(lái)弄明白,這個(gè)過(guò)程是痛苦的,有時(shí)候有些問(wèn)題不能馬上解決,感到很頭痛,真想放棄這個(gè)問(wèn)題,但是堅(jiān)持下來(lái),并且解決這些問(wèn)題的時(shí)候,真的有種苦盡甘來(lái)的感覺(jué)。
應(yīng)用MATLAB進(jìn)行語(yǔ)音信號(hào)的處理是與我們所學(xué)課程及專(zhuān)業(yè)緊密相連的,有著很強(qiáng)的實(shí)踐性。做這個(gè)課程設(shè)計(jì)的時(shí)候,并不是非常的順利,我也有遇到很多困難。剛開(kāi)始,我用自己的mp3錄制的一個(gè)音頻文件做語(yǔ)音信號(hào)處理,程序始終現(xiàn)實(shí)如下錯(cuò)誤提示:
語(yǔ)音信號(hào)處理
??? Error using ==> wavread Error using ==> wavread Data compression format(IMA ADPCM)is not supported.我在查閱了很多資料,在網(wǎng)上也查閱相關(guān)信息,最后發(fā)現(xiàn)只有WAV格式的音頻信號(hào)才能被wavread函數(shù)識(shí)別,這只是其中的一個(gè)小困難,當(dāng)然后來(lái)也出現(xiàn)了許多錯(cuò)誤,不過(guò)在我們的精心調(diào)試下,代碼終于運(yùn)行成功 通過(guò)這次設(shè)計(jì),進(jìn)一步加深了對(duì)數(shù)子信號(hào)處理的了解,讓我對(duì)它有了更加濃厚的興趣。通過(guò)這次課設(shè)使我懂得,平時(shí)的理論知識(shí)只有通過(guò)自己動(dòng)手做一個(gè)課題,從做這個(gè)課題的過(guò)程中發(fā)現(xiàn)問(wèn)題,解決問(wèn)題,這個(gè)學(xué)習(xí)的過(guò)程,會(huì)比我們平時(shí)在課堂上聽(tīng)到的知識(shí)更加的生動(dòng)立體,更能讓人記憶深刻。
總的來(lái)說(shuō),通過(guò)這次的課程設(shè)計(jì)我對(duì)語(yǔ)音信號(hào)有了全面的認(rèn)識(shí),對(duì)數(shù)字信號(hào)處理又有了深刻的理解,讓我們感受到只有在充分理解課本知識(shí)的前提下,才更更好的應(yīng)用這個(gè)工具。同時(shí)我相信,matlab會(huì)對(duì)我以后的學(xué)習(xí)中起到更大的幫助
參考文獻(xiàn)
[1] 高西全、丁玉美編著,數(shù)字信號(hào)處理。西安:西安電子科技大學(xué)出版社,2008.[2]丁玉美、高西全編著,數(shù)字信號(hào)處理學(xué)習(xí)指導(dǎo)。西安:西安電子科技大學(xué)出版社,2001.[3]鄭君里等編,信號(hào)與系統(tǒng)。北京:高等教育出版社,2000.[4]劉樹(shù)棠譯,數(shù)字信號(hào)處理——使用MATLAB。西安:西安交通大學(xué)出版社,2002.[5]導(dǎo)向科技編著,MATLAB程序設(shè)計(jì)與實(shí)例應(yīng)用。北京:中國(guó)鐵道出版社,2001.[6]羅軍輝等編著,MATLAB7.0在數(shù)字信號(hào)處理中的應(yīng)用。北京:機(jī)械工程出版社,2005.[7]陳懷琛等編著,MATLAB及在電子信息課中的應(yīng)用。北京:電子工業(yè)出版社,2002.[8]胡廣書(shū)編組,數(shù)字信號(hào)處理——理論、算法與實(shí)現(xiàn)。北京:清華大學(xué)出版社,2002.[9]梁虹等編,信號(hào)與線(xiàn)性系統(tǒng)分析——機(jī)遇MATLAB的方法與實(shí)現(xiàn)。北京:高等教育出版社,2006.語(yǔ)音信號(hào)處理
[10]劉衛(wèi)國(guó)主編,MATLAB程序設(shè)計(jì)與應(yīng)用(第二版)。北京:高等教育出版社,2006.
第二篇:DSP語(yǔ)音信號(hào)處理
摘
要
語(yǔ)音信號(hào)處理是研究數(shù)字信號(hào)處理技術(shù)和語(yǔ)音信號(hào)進(jìn)行處理的一門(mén)學(xué)科,是一門(mén)新型的學(xué)科,是在多門(mén)學(xué)科基礎(chǔ)上發(fā)展起來(lái)的綜合性技術(shù),它涉及到數(shù)字信號(hào)處理、模式識(shí)別、語(yǔ)言學(xué)。語(yǔ)音信號(hào)處理是研究用數(shù)字信號(hào)處理技術(shù)對(duì)語(yǔ)音信號(hào)處理的一門(mén)學(xué)科。處理的目的是要得到一些語(yǔ)音參數(shù)以便高效的傳輸或存儲(chǔ);或者是通過(guò)處理的某種運(yùn)算以達(dá)到某種用途的要求。語(yǔ)音信號(hào)處理又是一門(mén)邊緣學(xué)科。如上所訴,它是“語(yǔ)言語(yǔ)音學(xué)”與“數(shù)字信號(hào)處理”兩個(gè)學(xué)科相結(jié)合的產(chǎn)物。
語(yǔ)音信號(hào)處理屬于信息科學(xué)的一個(gè)重要分支,大規(guī)模集成技術(shù)的高度發(fā)展和計(jì)算機(jī)技術(shù)的飛速前進(jìn),推動(dòng)了這一技術(shù)的發(fā)展。在數(shù)字音頻技術(shù)和多媒體技術(shù)迅速發(fā)展的今天,傳統(tǒng)的磁帶語(yǔ)音錄放系統(tǒng)因體積大、使用不便、放音不清晰而受到了巨大挑戰(zhàn)。本次課程設(shè)計(jì)提出的體積小巧,功耗低的數(shù)字化語(yǔ)音存儲(chǔ)與回放系統(tǒng),可以有效的解決傳統(tǒng)的語(yǔ)音錄放系統(tǒng)在電子與信息處理的使用中受到的限制。
本文提出了語(yǔ)音信號(hào)處理課程建設(shè)的實(shí)驗(yàn)環(huán)節(jié)中的一些考慮,作為專(zhuān)業(yè)課程的學(xué)習(xí),實(shí)驗(yàn)內(nèi)容不能僅僅停留在驗(yàn)證性實(shí)驗(yàn)上,還應(yīng)增加實(shí)驗(yàn)延伸的設(shè)計(jì)要求,是學(xué)生加深對(duì)理論分析認(rèn)識(shí)的同時(shí),強(qiáng)調(diào)培養(yǎng)學(xué)生的實(shí)際動(dòng)手能力和知識(shí)綜合運(yùn)用能力。從而提高語(yǔ)音信號(hào)的教學(xué)和實(shí)驗(yàn)的質(zhì)量。實(shí)驗(yàn)內(nèi)容采用MATLAB編程實(shí)現(xiàn),不僅易于語(yǔ)音信號(hào)處理的實(shí)現(xiàn),更易引導(dǎo)學(xué)生完成實(shí)驗(yàn)延伸的設(shè)計(jì)。
第一章 緒論
1.1選題背景
在我們的現(xiàn)實(shí)生活中從磁帶、錄像帶到CD、VCD、DVD;從黑白電視機(jī)、彩色電視機(jī)、高清晰度電視機(jī)到具有數(shù)字信號(hào)處理功能的電視機(jī);從留聲機(jī)、錄音機(jī)到語(yǔ)音信箱;現(xiàn)在正出在模擬信息到數(shù)字信息的變革之中,傳統(tǒng)的磁帶語(yǔ)音錄放系統(tǒng)因其體積大,使用不便,在電子與信息處理的使用中受到許多限制。
雖然,目前廣播電視系統(tǒng)尚未實(shí)現(xiàn)真正的數(shù)字化,相信在不久的將來(lái),真正的數(shù)字電視、數(shù)字收音機(jī)、數(shù)字收錄機(jī)將進(jìn)入家庭。所以,研究音頻信號(hào)的數(shù)字化存儲(chǔ)、處理和回放系統(tǒng)有著很重要的現(xiàn)實(shí)意義。
通過(guò)設(shè)計(jì)語(yǔ)音信號(hào)實(shí)驗(yàn)箱可以對(duì)語(yǔ)音信號(hào)實(shí)現(xiàn)各種形式的變換,因此學(xué)會(huì)對(duì)語(yǔ)音信號(hào)的處理,也可自行研究將此語(yǔ)音處理技術(shù)應(yīng)用到現(xiàn)實(shí)生活中。
1.2課題意義
語(yǔ)音信號(hào)處理的一門(mén)比較實(shí)用的電子工程的專(zhuān)業(yè)課程,語(yǔ)音是人類(lèi)獲取信息的重要來(lái)源和利用信息的重要手段,通過(guò)語(yǔ)言相互傳遞信息是人類(lèi)最重要的基本功能之一,語(yǔ)音是人類(lèi)特有的功能,它是創(chuàng)造和記載幾千年來(lái)人類(lèi)文明史的根本手段,是人類(lèi)最重要、最有效、最常用和最方便的交換信息的形式。
語(yǔ)音信號(hào)處理是研究用數(shù)字信號(hào)處理技術(shù)對(duì)語(yǔ)音信號(hào)進(jìn)行處理的一門(mén)學(xué)科,它是一門(mén)新興的學(xué)科,同時(shí)又是綜合性的多學(xué)科領(lǐng)域剛也涉及面很廣的交叉學(xué)科。
第二章 課程設(shè)計(jì)要求及系統(tǒng)原理
2.1 課程設(shè)計(jì)基本要求
(1)學(xué)會(huì)MATLAB的使用,掌握MATLAB的程序設(shè)計(jì)方法;
(2)掌握在windows環(huán)境下語(yǔ)音信號(hào)的采集方法;
(3)掌握數(shù)字信號(hào)處理的基本概念,基本理論和基本方法;
(4)掌握MATLAB設(shè)計(jì)方法;
(5)學(xué)會(huì)用MATLAB對(duì)信號(hào)進(jìn)行分析和處理。
2.2 系統(tǒng)基本原理
語(yǔ)音采集原理是,人耳能聽(tīng)到的聲音是一種范圍為20Hz—20kHz,而一般語(yǔ)音頻率最高為3.4kHz。語(yǔ)音的采集是指語(yǔ)音聲波信號(hào)經(jīng)麥克風(fēng)和高頻放大器轉(zhuǎn)換成有一定幅度的模擬量電信號(hào),然后再轉(zhuǎn)換成數(shù)字量的全過(guò)程。
本次設(shè)計(jì)的基本原理是對(duì)語(yǔ)音的錄音和放音進(jìn)行數(shù)字化控制。其中,關(guān)鍵技術(shù)在于:為了增加語(yǔ)音存儲(chǔ)時(shí)間,提高存儲(chǔ)器的利用率,采用了非失真壓縮算法對(duì)語(yǔ)音信號(hào)進(jìn)行壓縮后再存儲(chǔ),而在回放時(shí)再進(jìn)行解壓縮;同時(shí),對(duì)輸入語(yǔ)音信號(hào)進(jìn)行數(shù)字濾波以抑制雜音和干擾,從而確保了語(yǔ)音回放的可靠質(zhì)量。
通過(guò)設(shè)計(jì)一個(gè)GUI實(shí)驗(yàn)箱,并添加相應(yīng)的控制控件,添加一個(gè)聲音文件,通過(guò)MATLAB編程,使其通過(guò)各種按鈕實(shí)現(xiàn)語(yǔ)音信號(hào)處理的各種功能,最后做成一個(gè)完整的語(yǔ)音信號(hào)處理實(shí)驗(yàn)箱。
第三章 設(shè)計(jì)方案論證
3.1 設(shè)計(jì)理論依據(jù)
3.1.1采樣定理:
在進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換過(guò)程中,當(dāng)采樣頻率fs.max大于信號(hào)中最高頻率fmax的2倍時(shí),則采樣之后的數(shù)字信號(hào)完整的保留了原始信號(hào)中的信號(hào),一般實(shí)際應(yīng)用中保證采樣頻率為信號(hào)最高頻率的5—10倍;采樣定理又稱(chēng)奈奎斯特定理。
3.1.2采樣頻率:
采樣頻率是指計(jì)算機(jī)每秒鐘采集多少個(gè)聲音樣本,是描述聲音文件的音質(zhì)、音調(diào)、衡量聲卡、聲音文件的質(zhì)量標(biāo)準(zhǔn)。采樣頻率越高,即采樣的間隔時(shí)間越短,則在單位時(shí)間內(nèi)計(jì)算機(jī)得到的聲音樣本數(shù)據(jù)就越多,對(duì)聲音波形的表示也就越精確,采樣頻率與聲音頻率之間有一定的關(guān)系,根據(jù)奈奎斯特理論,只有采樣頻率高于聲音信號(hào)最高頻率的2倍的時(shí)候,才能把數(shù)字信號(hào)表示的聲音還原成為原來(lái)的聲音,這就是說(shuō)采樣頻率是衡量聲卡采集、記錄和還原聲音文件的質(zhì)量標(biāo)準(zhǔn)。
3.1.3采樣位數(shù)與采樣頻率
采樣位數(shù)即采樣值或取樣值,用來(lái)衡量聲音波動(dòng)變化的參數(shù),是指聲卡在采集和播放聲音文件時(shí)候使用數(shù)字聲音信號(hào)的二進(jìn)制為數(shù)。采樣頻率是指錄音設(shè)備在一秒鐘內(nèi)對(duì)聲音信號(hào)的采樣次數(shù),采樣頻率越高聲音的還原就越真實(shí)越自然。
采樣位數(shù)和采樣頻率對(duì)于音頻接口來(lái)說(shuō)是最為重要的兩個(gè)基本指標(biāo),也是選擇音頻接口的兩個(gè)重要標(biāo)準(zhǔn)。無(wú)論采樣頻率如何,理論上來(lái)說(shuō)采樣的位數(shù)決定了音頻數(shù)據(jù)最大的力度范圍。每增加一個(gè)采樣位數(shù)相當(dāng)于力度范圍增加了6dB。采樣位數(shù)越多則捕捉到的信號(hào)越精確。對(duì)于采樣率來(lái)說(shuō)你可以想象它類(lèi)似于一個(gè)照相機(jī)。顯然采樣率越高,計(jì)算機(jī)提取的聲音越多,對(duì)于原始的還原也越加精確。
第四章 圖形用戶(hù)界面設(shè)計(jì)
4.1 圖形用戶(hù)界面概念
圖形用戶(hù)界面或圖形用戶(hù)接口是指采用圖形方式顯示的計(jì)算機(jī)操作環(huán)境由用戶(hù)接口。與早期計(jì)算機(jī)使用的命令行界面相比,圖形界面對(duì)于用戶(hù)來(lái)說(shuō)更為簡(jiǎn)便易用。
GUI是MATLAB提供的圖形用戶(hù)界面開(kāi)發(fā)環(huán)境,提供了一系列用于創(chuàng)建圖形用戶(hù)界面的工具,從而簡(jiǎn)化界面布局和編程工作。
4.2用戶(hù)界面設(shè)計(jì)
4.2.1 GUI設(shè)計(jì)模板
在MATLAB主窗口中,選擇File菜單中的New菜單項(xiàng),再選擇其中的GUI命令,就會(huì)顯示圖形用戶(hù)界面的設(shè)計(jì)模板。
MATLAB為GUI設(shè)計(jì)一共準(zhǔn)備了四個(gè)模板,分別是Blank GUI、GUI with Uicontrols、GUI with Axes and Menu、Modal Question Dialog。
當(dāng)用戶(hù)選擇不同的模板時(shí),在GUI設(shè)計(jì)模板界面的右邊就會(huì)顯示出與該模板對(duì)應(yīng)的GUI圖形。
4.2.2 GUI設(shè)計(jì)窗口
在GUI設(shè)計(jì)模板中選中一個(gè)模板,然后單擊OK按鈕,就會(huì)顯示GUI設(shè)計(jì)窗口,選擇不同的GUI設(shè)計(jì)模式時(shí),在GUI設(shè)計(jì)窗口中顯示的結(jié)果是不一樣的。
GUI設(shè)計(jì)窗口由菜單欄、工具欄、空間工具欄以及圖形對(duì)象設(shè)計(jì)區(qū)等部分組成。GUI設(shè)計(jì)窗口的菜單欄有File、Edit、View、Layout、Tools和Help六個(gè)菜單項(xiàng),使用其中的命令可以完成圖形用戶(hù)界面的設(shè)計(jì)操作。
4.2.3 GUI設(shè)計(jì)窗口的基本操作
(1)前面板的設(shè)計(jì):在GUI設(shè)計(jì)窗口創(chuàng)建圖形對(duì)象后,通過(guò)雙擊該對(duì)象,就會(huì)顯示該對(duì)象的屬性編輯器。如下圖所示。例如,創(chuàng)建一個(gè)Push Button對(duì)象,并設(shè)計(jì)該對(duì)象的屬性值。
圖4-1 按鈕屬性編輯器
通過(guò)以上的按鈕屬性編輯器可以根據(jù)個(gè)人情況對(duì)按鈕的名稱(chēng)、顏色、大小等方面的屬性進(jìn)行修改,使按鈕在視覺(jué)上變的更加完美。
(2)按鈕功能的實(shí)現(xiàn):在GUI設(shè)計(jì)窗口創(chuàng)建按鈕后,通過(guò)右鍵單擊按鈕,選擇View callbacks下的callback對(duì)相應(yīng)的按鈕進(jìn)行編程,使按鈕實(shí)現(xiàn)相應(yīng)的功能,如下圖所示對(duì)按鈕的響應(yīng)功能進(jìn)行設(shè)置。
圖4-2 按鈕功能編輯器
進(jìn)入到按鈕程序編輯窗口,通過(guò)編程即可實(shí)現(xiàn)按鈕的相應(yīng)功能,如下圖:
圖4-3 按鈕的編程實(shí)現(xiàn)界面
通過(guò)對(duì)各個(gè)按鈕控件的修改,和對(duì)m文件程序的添加就完成對(duì)GUI窗口的設(shè)計(jì),最后得到的圖形化操作界面如下圖所示:
圖4-4 圖形化操作界面
4.2.4 語(yǔ)音的錄入與打開(kāi)
在MATLAB中,[y,fa,bits]=wavread(‘Blip’,[N1 N2]);用于讀取語(yǔ)音,7
采樣值放在向y中,fs表示采樣頻率,bits表示采樣位數(shù)。[N1 N2]表示讀取從N1點(diǎn)到N2點(diǎn)的值。
Suond(x,fs,bits);用于對(duì)聲音的回放,向量y則就代表了一個(gè)信號(hào)也就是說(shuō)可以像處理一個(gè)信號(hào)表達(dá)式一樣處理這個(gè)聲音信號(hào)。
第五章 課程設(shè)計(jì)的軟件實(shí)現(xiàn)
5.1 部分函數(shù)語(yǔ)法格式
讀wav文件: x=wavread(‘filename’)數(shù)組a及b中元素相乘: a.*b 創(chuàng)建圖形窗口命令: figure 繪圖函數(shù): plot(x)坐標(biāo)軸: axis([xmin xmax ymin ymax])坐標(biāo)軸注解: xlabel(‘?’)ylabel(‘?’)圖例注解: legend(‘?’)一階高通濾波器: y=filter([1-0.09375],1,x)分幀函數(shù): f=enframe(x,len,inc)x為輸入語(yǔ)音信號(hào),len指定了幀長(zhǎng),inc指定幀移,函數(shù)返回為nXlen的一個(gè)矩陣,每一行都是一幀數(shù)據(jù)。
5.2語(yǔ)音信號(hào)處理的相關(guān)函數(shù)
5.2.1語(yǔ)音信號(hào)的短時(shí)譜:
周期性聲門(mén)波可表示為:
(5-1)其中,g[n]是聲門(mén)波的單周期的波形,p[n]是間隔為P的周期采樣序列。當(dāng)u[n]通過(guò)線(xiàn)性非時(shí)變聲道,且該聲道的單位沖擊響應(yīng)為h[n]時(shí),聲道輸出為:
(5-2)為了觀察一段語(yǔ)音,需要降生到輸出乘以一個(gè)一時(shí)刻τ 為中心的窗函數(shù) w[n,τ] ,即得到:
(5-3)
這段語(yǔ)音信號(hào)的頻域表達(dá)式為:
(5-4)
即語(yǔ)音信號(hào)的譜包絡(luò)為
語(yǔ)譜圖就是現(xiàn)實(shí)時(shí)變頻譜幅度特征的圖形表達(dá)式為:
(5-5)
將語(yǔ)音信號(hào)短時(shí)譜程序?qū)懭氲組ATLAB中得到單色語(yǔ)譜圖的波形如下:
圖5-1 語(yǔ)音信號(hào)單色語(yǔ)譜圖
5.2.2 自相關(guān)方法估計(jì)語(yǔ)音信號(hào)的聲道參數(shù):
由均方預(yù)測(cè)誤差最小的得到正則方程:
(5-6)
其中,(5-7)
在最佳解時(shí)的誤差為
(5-8)
在自相關(guān)法中式5-6,式5-8變?yōu)?/p>
(5-9)
(5-10)由式5-9和式5-10可列出方程組式5-11
(5-11)
解方程組式5-9求出線(xiàn)性預(yù)測(cè)系數(shù),通過(guò)誤差式5-11可求出增益G
(5-12)
加窗后信號(hào)頻譜圖如下:
圖5-2 加窗后信號(hào)頻譜圖
通過(guò)以上的方法,改變參數(shù)分別求得4極點(diǎn)模型頻率響應(yīng)和6極點(diǎn)模型頻率響應(yīng),6極點(diǎn)波形如下圖所示:
圖5-3 六極點(diǎn)波形圖
最后通過(guò)以上方法用一個(gè)函數(shù)分別實(shí)現(xiàn)以上三個(gè)功能,三個(gè)波形顯示在一個(gè)界面,通過(guò)觀察圖形,查看它們之間的分別。三者比較所得到的波形如下:
圖5-4 三者比較波形圖
5.2.3 基音周期檢測(cè)
數(shù)據(jù)為濁音語(yǔ)音信號(hào)speech1_10k(10000樣點(diǎn)/秒)用25ms的漢明窗對(duì)語(yǔ)音信號(hào)speech1_10k進(jìn)行加窗處理,并畫(huà)出所得到的加窗信號(hào)的自相關(guān)函數(shù),再用根據(jù)中心消波法及三電平中心消波法原理改進(jìn)程序,最后對(duì)比中方法基音檢測(cè)的效果并分析結(jié)果。
實(shí)驗(yàn)原理及方法
(1)自相關(guān)檢測(cè)原理:對(duì)于離散的數(shù)字語(yǔ)音信號(hào)序列x(n),如果周期N,則自相關(guān)函數(shù)也是同周期的周期函數(shù)。即:x(n)=x(n+N)。清音信號(hào)沒(méi)有周期性,他的自相關(guān)函數(shù)也沒(méi)有周期。濁音新海具有準(zhǔn)周期性。自相關(guān)基音檢測(cè)正是利用這一性質(zhì)對(duì)語(yǔ)音信號(hào)進(jìn)行基音檢測(cè)的。
(2)中心消波法檢測(cè)原理:中心消波處理是使用如下圖所示的中心消波函數(shù)進(jìn)行處理的:
圖5-5 中心消波檢測(cè)圖
(3)三電平消波法原理:為了減少自相關(guān)計(jì)算中的乘法運(yùn)算,可以把上述中心消波以后的信號(hào)y(n)的自相關(guān)用兩個(gè)信號(hào)的互相關(guān)代替,其中一個(gè)信號(hào)是y(n)另一個(gè)信號(hào)是對(duì)y(n)進(jìn)行三電平量化產(chǎn)生的結(jié)果。且這個(gè)信號(hào)有三種可能的取值,因而這里的互相關(guān)計(jì)算只需要做加減法,而這個(gè)互相關(guān)序列的周期性與y(n)的自相關(guān)序列是近似相同的。
三電平法對(duì)語(yǔ)音信號(hào)處理得到的波形如下:
圖5-6 三電平法波形圖
中心消波法得到的波形如下圖:
圖5-7 中心消波法波形圖
5.3 GUI實(shí)驗(yàn)箱操作界面設(shè)計(jì)
通過(guò)對(duì)各個(gè)控件的編程和對(duì)參數(shù)的設(shè)計(jì),最后得到的GUI實(shí)驗(yàn)箱操作界
面如下圖所示,通過(guò)界面上的各個(gè)按鈕即可實(shí)現(xiàn)相應(yīng)的功能。
圖5-8 GUI實(shí)驗(yàn)箱操作界面
第六章 心得體會(huì)
通過(guò)本次課程設(shè)計(jì)完成了對(duì)語(yǔ)音信號(hào)的讀取與打開(kāi),與課題的要求十分相符;初略的完成了界面的設(shè)計(jì),但也存在相當(dāng)?shù)牟蛔?,達(dá)到了打開(kāi)語(yǔ)音文件,顯示已定波形。語(yǔ)音信號(hào)處理時(shí)語(yǔ)音學(xué)與數(shù)字信號(hào)處理技術(shù)相結(jié)合的交叉學(xué)科,將語(yǔ)音當(dāng)做一種特殊的信號(hào),即一種“復(fù)雜向量”來(lái)看待。也就是說(shuō),體現(xiàn)了數(shù)字信號(hào)處理技術(shù)。
本次課程設(shè)計(jì)時(shí)希望將數(shù)字信號(hào)處理技術(shù)應(yīng)用與某一實(shí)際領(lǐng)域,這里就是指對(duì)語(yǔ)音的處理。作為存儲(chǔ)與計(jì)算機(jī)中的語(yǔ)音信號(hào),其本身就是離散化了的向量,我們只需要將這些離散的量提取出來(lái)美酒可以對(duì)其進(jìn)行處理了。
本次課設(shè),用到了處理數(shù)字信號(hào)的強(qiáng)有力工具M(jìn)ATLAB,通過(guò)MATLAB李的幾個(gè)命令函數(shù)的調(diào)用,很輕易的在實(shí)際化語(yǔ)音與數(shù)字信號(hào)的理論之間搭了一座橋。
最后,還利用了MATLAB的另一強(qiáng)大功能——GUI界面設(shè)計(jì)。設(shè)計(jì)出了一個(gè)建議的用戶(hù)應(yīng)用界面,可以讓人實(shí)現(xiàn)界面操作。
通過(guò)本次課程設(shè)計(jì)讓我更加了解了語(yǔ)音信號(hào)處理在現(xiàn)實(shí)中的強(qiáng)大的應(yīng)用空間,同時(shí)查閱了很多相關(guān)的資料,應(yīng)用MTALAB軟件來(lái)完成,熟練掌握了MATLAB軟件,本次課程設(shè)計(jì)要求用GUI設(shè)計(jì)模塊,查閱了很多資料,更加深刻的陸奧了了這方面知識(shí)。
本次課程設(shè)計(jì),我明白了理論的學(xué)習(xí)需要在實(shí)踐中才能得到鞏固。在課程設(shè)計(jì)中,只有動(dòng)手慢慢研究,才能真正了解MATLAB軟件平臺(tái)中可以直接設(shè)計(jì)數(shù)字濾波器的各個(gè)函數(shù)的調(diào)用,對(duì)設(shè)計(jì)GUI實(shí)驗(yàn)箱的所有函數(shù)的運(yùn)用有了比較好的認(rèn)識(shí)。
通過(guò)這個(gè)課程設(shè)計(jì),我學(xué)到了很多MATLAB和語(yǔ)音信號(hào)的知識(shí),提高了自己在語(yǔ)音信號(hào)設(shè)計(jì)方面的知識(shí)能力,動(dòng)手能力和思維能力都得到了一定的提升,希望自己以后可以更多的繼續(xù)學(xué)習(xí)這一門(mén)課程設(shè)計(jì)方面的知識(shí)。
附 錄
1.源程序代碼:
參考文獻(xiàn)
[1] 劉慶華 陳紫強(qiáng)《基于MATLAB和DSP的語(yǔ)音信號(hào)處理課程的建設(shè)》 電氣電子教學(xué)學(xué)報(bào) 2006 10(3):124-128 [2] 張力 《MATLAB在語(yǔ)音信號(hào)處理輔助教學(xué)中的應(yīng)用》 電氣電子教學(xué)學(xué)報(bào) 2005 27卷2期:96-99 [3] 鄧立新 楊震《信息技術(shù)融入“語(yǔ)音信號(hào)處理”課程的教學(xué)實(shí)踐》電氣電子教學(xué)學(xué)報(bào) 2005 27卷5期:13-16 [4] 胡航,《語(yǔ)音信號(hào)處理》 哈爾濱工業(yè)大學(xué)出版社 2005年2月,第二版:135-137 [5] 張平,《MATLAB基礎(chǔ)與應(yīng)用》 北京航空航天大學(xué)出版社 2007,第二版:85-92 [6] 謝德芳 《數(shù)字信號(hào)處理》 北京科學(xué)出版社 2005,第一版
[7] 張雄偉 《現(xiàn)代語(yǔ)音處理技術(shù)及應(yīng)用》 機(jī)械工業(yè)出版社 2006,第二版 [8] 吳家安 《語(yǔ)音編碼技術(shù)及應(yīng)用》 機(jī)械工業(yè)出版社 2006 第一版 [9] 劉幺和 宋庭新 《語(yǔ)音識(shí)別與控制應(yīng)用技術(shù)》 科學(xué)出版社 2008 第二版
[10] 李昌立 吳善培 《數(shù)字語(yǔ)音編碼實(shí)用教程》 人民郵電出版社 2004 第一版
[11] 姚天仁 《數(shù)字語(yǔ)音處理》 華中科技大學(xué)出版社 1992 第二版 [12] 朱敏雄 《計(jì)算機(jī)語(yǔ)音技術(shù)(修訂版)》 北京航空航天大學(xué)出版社 2002 第一版
[13] 王炳錫 《語(yǔ)音編碼》 西安電子科技大學(xué)出版社 2002 第一版
第三篇:數(shù)字信號(hào)處理教語(yǔ)音信號(hào)處理課程設(shè)計(jì)心得
這次課程設(shè)計(jì)雖然遇到了很多問(wèn)題,很多困難,但是也學(xué)到了很多東西。不僅學(xué)到了書(shū)本上的東西,而且學(xué)到了很多課本上沒(méi)有的東西,很多程序里的東西,特別是程序語(yǔ)法,總是有錯(cuò)誤,但是總是不知道錯(cuò)在哪里,在細(xì)心的檢查下,終于找出了錯(cuò)誤和警告,排除困難后,程序編譯就通過(guò)了,心里終于舒了一口氣。還有各種各樣問(wèn)題,通過(guò)查網(wǎng)絡(luò)和請(qǐng)教同學(xué)來(lái)弄明白,這個(gè)過(guò)程是痛苦的,有時(shí)候有些問(wèn)題不能馬上解決,感到很頭痛,真想放棄這個(gè)問(wèn)題,但是堅(jiān)持下來(lái),并且解決這些問(wèn)題的時(shí)候,真的有種苦盡甘來(lái)的感覺(jué)。
應(yīng)用MATLAB進(jìn)行語(yǔ)音信號(hào)的處理是與我們所學(xué)課程及專(zhuān)業(yè)緊密相連的,有著很強(qiáng)的實(shí)踐性。做這個(gè)課程設(shè)計(jì)的時(shí)候,并不是非常的順利,我也有遇到很多困難。剛開(kāi)始,我用自己的mp3錄制的一個(gè)wav文件做語(yǔ)音信號(hào)處理,程序始終現(xiàn)實(shí)如下錯(cuò)誤提示:
??? Error using ==> wavread Error using ==> wavread Data compression format(IMA ADPCM)is not supported.我在查閱了很多資料,在網(wǎng)上也查閱相關(guān)信息,花費(fèi)了大量時(shí)間也沒(méi)找出結(jié)果,最后發(fā)現(xiàn)在WAV格式的語(yǔ)音文件有兩種格式,即PCM格式和IMA ADPCM格式,而在MATLAB中用wavread函數(shù)進(jìn)行語(yǔ)音處理時(shí),并不能直接處理IMA ADPCM格式的語(yǔ)音信號(hào),經(jīng)過(guò)格式轉(zhuǎn)換之后(選擇PCM格式),我運(yùn)行出了正確的結(jié)果。剛開(kāi)始由于對(duì)濾波器的濾波原理并不是很了解,于是我又翻出學(xué)過(guò)的數(shù)字信號(hào)處理課本,認(rèn)真研究起各種濾波器了,這才使我明白了大多數(shù)濾波器是如何工作地,不再單單只是懂理論,理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論。實(shí)驗(yàn)過(guò)程中,我感覺(jué)到初始語(yǔ)音信號(hào)和濾波輸出后的語(yǔ)音信號(hào)在音色上有一定的差別,這說(shuō)明了信號(hào)在處理、傳輸過(guò)程中有損耗。不管對(duì)于什么樣的課題,其實(shí)也是有很多東西可以發(fā)掘的,這需要我們?cè)谄綍r(shí)多積累,多思考,只有這樣,才能取得更大的進(jìn)步,才能學(xué)有所用,學(xué)有所長(zhǎng)。
通過(guò)這次設(shè)計(jì),進(jìn)一步加深了對(duì)數(shù)字信號(hào)處理的了解,讓我對(duì)它有了更加濃厚的興趣。通過(guò)這次課程設(shè)計(jì)使我懂得了,平時(shí)的理論知識(shí)只有通過(guò)自己動(dòng)手做一個(gè)課題,從做這個(gè)課題的過(guò)程中發(fā)現(xiàn)問(wèn)題,解決問(wèn)題,這個(gè)學(xué)習(xí)的過(guò)程,會(huì)比我們平時(shí)只通過(guò)課堂上聽(tīng)講得到的知識(shí)更加生動(dòng)立體,跟讓人記憶深刻。在設(shè)計(jì)的過(guò)程中,我發(fā)現(xiàn)同學(xué)間的互幫互助真的很重要。當(dāng)我們有問(wèn)題的時(shí)候,大家一起討論,將自己的觀點(diǎn)表達(dá)出來(lái),當(dāng)發(fā)現(xiàn)別人的觀點(diǎn)與自己的不同的時(shí)候,我們通過(guò)查閱資料找到最終正確的答案,這個(gè)過(guò)程是互利互惠的。這也培養(yǎng)了我們以后走上工作崗位后的團(tuán)隊(duì)精神,對(duì)我們以后的為人處世都有很大幫助。同時(shí)我們?cè)谠O(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固。
總的來(lái)說(shuō),通過(guò)這次的課程設(shè)計(jì)我對(duì)語(yǔ)音信號(hào)有了全面的認(rèn)識(shí),對(duì)數(shù)字信號(hào)處理的知識(shí)又有了深刻的理解,讓我感受到只有在充分理解課本知識(shí)的前提下,才能更好的應(yīng)用這個(gè)工具;并且熟練的應(yīng)用MATLAB也可以很好的加深我對(duì)課程的理解,方便我的思維。這次設(shè)計(jì)使我了解了MATLAB的使用方法,學(xué)會(huì)分析濾波器的優(yōu)劣和性能,提高了分析和動(dòng)手實(shí)踐能力。同時(shí)我相信,進(jìn)一步加強(qiáng)對(duì)MATLAB的學(xué)習(xí)與研究對(duì)我今后的學(xué)習(xí)將會(huì)起到很大的幫助!
第四篇:基于+MATLAB+的語(yǔ)音信號(hào)分析與處理的課程設(shè)計(jì)
目
錄
1.課程設(shè)計(jì)目的………………………………………………………………(1)
2.課程設(shè)計(jì)基本要求……………………………………………...………….(1)
3.課程設(shè)計(jì)內(nèi)容………………………………………..……………………..(2)
4.課程設(shè)計(jì)實(shí)現(xiàn)……………………………………………………..…..……………(3)
(1)語(yǔ)音信號(hào)的采集……………………………………………………..(5)
(2)語(yǔ)音信號(hào)的頻譜分析………………………………………………..(6)
(3)設(shè)計(jì)濾波器和畫(huà)出頻率響應(yīng)………………………………………..(6)
(4)用濾波器對(duì)信號(hào)進(jìn)行濾波…………………………………………..(9)
(5)比較濾波前后語(yǔ)音信號(hào)的波形及其頻譜…………………………..(9)
(6)回放語(yǔ)音信號(hào)………………………………………………………..(11)
(7)設(shè)計(jì)系統(tǒng)界面………………………………………………………..(13)
5、心得體會(huì)……………………………………………..……………………..(14)
6、參考文獻(xiàn)…………………………………….……………………………..(14)
第五篇:基于matlab的語(yǔ)音信號(hào)濾波處理——數(shù)字信號(hào)處理課程設(shè)計(jì)
數(shù)字信號(hào)處理課程設(shè)計(jì)
題目: 學(xué)院: 專(zhuān)業(yè): 班級(jí): 學(xué)號(hào): 姓名: 指導(dǎo)教師:
基于matlab的語(yǔ)音信號(hào)濾波處理
物理與電子信息學(xué)院電子信息工程
摘要:
語(yǔ)音信號(hào)處理是研究用數(shù)字信號(hào)處理技術(shù)和語(yǔ)音學(xué)知識(shí)對(duì)語(yǔ)音信號(hào)進(jìn)行處理的新興學(xué)科,是目前發(fā)展最為迅速的學(xué)科之一,通過(guò)語(yǔ)音傳遞信息是人類(lèi)最重要,最有效,最常用和最方便的交換信息手段,所以對(duì)其的研究更顯得尤為重要。
Matlab語(yǔ)言是一種數(shù)據(jù)分析和處理功能十分強(qiáng)大的計(jì)算機(jī)應(yīng)用軟件,它可以將聲音文件變換成離散的數(shù)據(jù)文件,然后用起強(qiáng)大的矩陣運(yùn)算能力處理數(shù)據(jù)。這為我們的本次設(shè)計(jì)提供了強(qiáng)大并良好的環(huán)境!
本設(shè)計(jì)要求自己錄制一段自己的語(yǔ)音后,在MATLAB軟件中采集語(yǔ)音信號(hào)、回放語(yǔ)音信號(hào)并畫(huà)出語(yǔ)音信號(hào)的時(shí)域波形和頻譜圖。再在Matlab中分別設(shè)計(jì)不同形式的FIR數(shù)字濾波器。之后對(duì)采集的語(yǔ)音信號(hào)經(jīng)過(guò)不同的濾波器(低通、高通、帶通)后,觀察不同的波形,并進(jìn)行時(shí)域和頻譜的分析。對(duì)比處理前后的時(shí)域圖和頻譜圖,分析各種濾波器對(duì)于語(yǔ)音信號(hào)的影響。最后分別收聽(tīng)進(jìn)行濾波后的語(yǔ)音信號(hào)效果,做到了解在怎么樣的情況下該用怎么樣的濾波器。
目錄
1.設(shè)計(jì)內(nèi)容……………………………………………………………4 2.設(shè)計(jì)原理……………………………………………………………4 2.1語(yǔ)音信號(hào)的時(shí)域分析…………………………………………4 2.2語(yǔ)音信號(hào)的頻域分析…………………………………………5 3.設(shè)計(jì)過(guò)程……………………………………………………………5 3.1實(shí)驗(yàn)程序源代碼………………………………………………6
3.1.1原語(yǔ)音信號(hào)時(shí)域、頻域圖………………………………6
3.1.2低通濾波器的設(shè)計(jì)………………………………………6
3.1.3高通濾波器的設(shè)計(jì)………………………………………7
3.1.4帶通濾波器的設(shè)計(jì)………………………………………8
3.1.5語(yǔ)音信號(hào)的回放………………………………………9 3.2調(diào)試結(jié)果描述…………………………………………………10 3.3所遇問(wèn)題及結(jié)果分析…………………………………………15
3.3.1所遇主要問(wèn)題…………………………………………16
3.3.2結(jié)果分析………………………………………………16 4.體會(huì)與收獲…………………………………………………………17 5.參考文獻(xiàn)……………………………………………………………17
1.設(shè)計(jì)內(nèi)容:
1.首先錄制好一段自己的語(yǔ)音。
2.用Matlab分別設(shè)計(jì)好3種類(lèi)型的濾波器(指標(biāo)自己確定):低通型、高通型、帶通型。3.用Matlab將語(yǔ)音信號(hào)進(jìn)行采樣,并分別將其通過(guò)所設(shè)計(jì)的3種濾波器。4.用Matlab自帶的語(yǔ)音返回函數(shù)收聽(tīng)濾波后的語(yǔ)音信號(hào),分析并比較其與原語(yǔ)音信號(hào)的差異。
2.設(shè)計(jì)原理:
語(yǔ)音信號(hào)時(shí)一種非平穩(wěn)的時(shí)變信號(hào),它帶著各種信息。在語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識(shí)別和語(yǔ)音增強(qiáng)等語(yǔ)音處理中無(wú)一例外需要提取語(yǔ)音中包含的各種信息。語(yǔ)音信號(hào)分析的目的就在于方便有效的提取并表示語(yǔ)音信號(hào)所攜帶的信息。語(yǔ)音信號(hào)處理可以分為時(shí)域和變換域等處理方法,其中時(shí)域分析是最簡(jiǎn)單的方法,直接對(duì)語(yǔ)音信號(hào)的時(shí)域波形進(jìn)行分析,崎嶇的特征參數(shù)主要有語(yǔ)音的短時(shí)能量,短時(shí)平均過(guò)零率,短時(shí)自相關(guān)函數(shù)等。2.1語(yǔ)音信號(hào)的時(shí)域分析
信號(hào)提取:通過(guò)圖形用戶(hù)界面上的菜單功能按鍵采集電腦上的一段音頻信號(hào),完成音頻信號(hào)的頻率,幅度等信息的提取,并得到該語(yǔ)音信號(hào)的波形圖。
信號(hào)調(diào)整:在設(shè)計(jì)的用戶(hù)圖形界面下對(duì)輸入的音頻信號(hào)進(jìn)行各種變化,如變化幅度、改變頻率等操作,以實(shí)現(xiàn)對(duì)語(yǔ)音信號(hào)的調(diào)整。
2.2語(yǔ)音信號(hào)的頻域分析
信號(hào)的傅里葉表示在信號(hào)的分析和處理中起著重要的作用。因?yàn)閷?duì)于線(xiàn)性系統(tǒng)來(lái)說(shuō),可以很方便地確定其對(duì)正弦或復(fù)指數(shù)和的響應(yīng),所以傅里葉分析方法能完善地解決許多信號(hào)分析和處理問(wèn)題。另外,傅里葉表示使信號(hào)的某些特性變得更明顯,因此,它能更深入地說(shuō)明信號(hào)的各項(xiàng)紅物理現(xiàn)象。
由于語(yǔ)音信號(hào)時(shí)隨著時(shí)間變化的,通常認(rèn)為,語(yǔ)音是一個(gè)受準(zhǔn)周期脈沖或隨機(jī)噪聲源激勵(lì)的線(xiàn)性系統(tǒng)的輸出。輸出頻譜是聲道系統(tǒng)頻率響應(yīng)與激勵(lì)源頻譜的乘積。身份到系統(tǒng)的頻率響應(yīng)及激勵(lì)源都是隨時(shí)間變化的,因此一般標(biāo)準(zhǔn)的傅里葉表示雖然適用于周期及平穩(wěn)隨機(jī)信號(hào)的表示,但不能直接用于語(yǔ)音信號(hào)。由于語(yǔ)音信號(hào)可以認(rèn)為在短時(shí)間內(nèi),近似不變,因而可以采用短時(shí)分析法。
1.信號(hào)變換:在用戶(hù)圖形界面西啊對(duì)采集的語(yǔ)音信號(hào)進(jìn)行Fourier等變換,并畫(huà)出變換前后的頻譜圖和倒譜圖。
2.信號(hào)濾波:濾除語(yǔ)音信號(hào)中的噪音部分,可以采用抵用濾波、高通濾波、帶通濾波,并比較各種濾波后的效果。
3.設(shè)計(jì)過(guò)程:
3.1實(shí)驗(yàn)程序源代碼(原語(yǔ)音信號(hào)存放在e:下):
3.1.1.原語(yǔ)音信號(hào)的時(shí)域、頻域圖
[x1,fs,bits]=wavread('e:txwz.wav');%sound(x1,fs,bits);figure(1);
plot(x1);%做原始語(yǔ)音信號(hào)的時(shí)域圖形 title('原始語(yǔ)音信號(hào)');xlabel('時(shí)間 t');ylabel('音量 n');figure(2);y1=fft(x1);%做length(x1)點(diǎn)的FFT y1=fftshift(y1);%平移,是頻率中心為0 derta_fs = fs/length(x1);%設(shè)置頻譜的間隔,分辨率 plot([-fs/2:derta_fs: fs/2-derta_fs],abs(y1));%畫(huà)出原始語(yǔ)音信號(hào)的頻譜圖
title('原始語(yǔ)音信號(hào)的頻譜');grid on;3.1.2低通濾波器的設(shè)計(jì)
%低通濾波:截止頻率4000,阻帶衰減20dB,過(guò)渡帶寬0.1π
fc1=4000;N1=2*pi*0.9/(0.1*pi)wc1=2*pi*fc1/fs;if rem(N1,2)==0 N1=N1+1;end Window= boxcar(N1+1);%長(zhǎng)度為N1的矩形窗Window b1=fir1(N1,wc1/pi,Window);
figure(3);freqz(b1,1,512);title('低通濾波器的頻率響應(yīng)');x1_low = filter(b1,1,x1);%對(duì)信號(hào)進(jìn)行低通濾波 figure(4);plot(x1_low);title('信號(hào)經(jīng)過(guò)低通濾波器(時(shí)域)');figure(5);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_low))));title('信號(hào)經(jīng)過(guò)低通濾波器(頻域)');3.1.3高通濾波器的設(shè)計(jì)
%高通濾波:截止頻率4000,阻帶衰減40dB,過(guò)渡帶寬0.1π
fc2=4000;N2=2*pi*3.1/(0.1*pi)wc2=2*pi*fc1/fs;N2=N2+mod(N2,2);Window=hanning(N2+1);b2=fir1(N2,wc2/pi,'high',Window);figure(6);freqz(b2,1,512);%數(shù)字濾波器頻率響應(yīng) title('高通濾波器的頻率響應(yīng)');
x1_high = filter(b2,1,x1);%對(duì)信號(hào)進(jìn)行高通濾波 figure(7);plot(x1_high);title('信號(hào)經(jīng)過(guò)高通濾波器(時(shí)域)');figure(8);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_high))));title('信號(hào)經(jīng)過(guò)高通濾波器(頻域)')3.1.4帶通濾波器的設(shè)計(jì)
%帶通濾波:下截止頻率4000,上截止頻率8000,阻帶衰減20dB,過(guò)渡帶寬度0.1π
f1=4000;f2=8000;%帶通濾波器的通帶范圍 w1=2*pi*f1/fs;w3=w1+0.1*pi;w2=2*pi*f2/fs;w4=w2-0.1*pi;w=[(w1+w3)/2,(w2+w4)/2];B=0.1*pi;N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);Window=boxcar(N3+1);b3=fir1(N3,w/pi,'stop',Window);%帶通濾波器
figure(9);freqz(b3,1,512);%數(shù)字濾波器頻率響應(yīng) title('帶通濾波器的頻率響應(yīng)');x1_daitong = filter(b3,1,x1);%對(duì)信號(hào)進(jìn)行帶通濾波 figure(10);plot(x1_daitong);title('信號(hào)經(jīng)過(guò)帶通濾波器(時(shí)域)');figure(11);plot([-fs/2:derta_fs:fs/2-derta_fs],abs(fftshift(fft(x1_daitong))));title('信號(hào)經(jīng)過(guò)帶通濾波器(頻域)');3.1.5語(yǔ)音信號(hào)的回放(分別執(zhí)行)
sound(x1,fs,bits);%原始信號(hào)
sound(x1_low,fs,bits);%經(jīng)過(guò)低通濾 sound(x1_high,fs,bits);%經(jīng)過(guò)高通濾波 sound(x1_daitong,fs,bits);%經(jīng)過(guò)帶通濾波
3.2調(diào)試結(jié)果描述
原始語(yǔ)音信號(hào)的時(shí)域圖形:
原始語(yǔ)音信號(hào)頻譜:
低通濾波器的頻率響應(yīng):
信號(hào)經(jīng)過(guò)低通濾波后的時(shí)域波形:
信號(hào)經(jīng)過(guò)低通濾波后的頻域波形
高通濾波器的頻率響應(yīng):
信號(hào)經(jīng)過(guò)高通濾波后的時(shí)域波形:
信號(hào)經(jīng)過(guò)高通濾波后的頻域波形:
帶通濾波器的頻率響應(yīng):
信號(hào)經(jīng)過(guò)帶通濾波后的時(shí)域波形:
信號(hào)經(jīng)過(guò)帶通濾波后的頻域波形:
3.3所遇問(wèn)題及結(jié)果分析
3.3.1所遇主要問(wèn)題
1.在高通與帶通濾波器的設(shè)計(jì)時(shí)老是報(bào)錯(cuò),但同樣的用法在低通濾波器中就可以實(shí)現(xiàn)
b2=fir1(N2,wc2/pi,'high',Window);??? Error using ==> fir1 The window length must be the same as the filter length.其要求在fir函數(shù)中所選用的窗長(zhǎng)要和濾波器長(zhǎng)度一致。但在參考書(shū)上指出,濾波器階數(shù)必須為窗長(zhǎng)加1。經(jīng)上網(wǎng)查詢(xún)后,原來(lái)高通、帶阻濾波器的階數(shù)應(yīng)該控制為奇數(shù),因?yàn)槿绻A數(shù)為偶數(shù),則在π點(diǎn)必有一零點(diǎn),這對(duì)于高通帶阻來(lái)說(shuō)是不允許的,故取階數(shù)為奇數(shù),而你FIR1濾波器階數(shù)為M+1階,所以你的M必須為偶數(shù),所以可以將程序中去窗長(zhǎng)算法由原程序的: N2=2*pi*0.9/(0.1*pi);if rem(N2,2)==0 N2=N2+1;End 和: N3=2*pi*0.9/(0.1*pi);if rem(N3,2)==0 N3=N3+1;End 改為了:
N2=N2+mod(N2,2);和: B=0.1*pi;(B為過(guò)渡帶寬)N3=ceil(2*0.9*pi/B);N3=N3+mod(N3,2);2.在設(shè)計(jì)高通濾波器時(shí)先是使用的矩形窗,用矩形窗驗(yàn)證出來(lái)的結(jié)果中低頻語(yǔ)音分量依舊很強(qiáng),不能將其全部抑制在0,之后換窗,選著了最小衰減可以到達(dá)53dB的海明窗,再次試驗(yàn),非常成功!3.3.2結(jié)果分析
經(jīng)過(guò)回放三個(gè)不同類(lèi)型濾波器輸出的語(yǔ)音信號(hào),并與原語(yǔ)音信號(hào)對(duì)比得到了如下結(jié)論。
語(yǔ)音高頻成分音質(zhì)非常尖銳,齒音中,聲音有些暗淡。語(yǔ)音低頻成分音質(zhì)沉穩(wěn),空間感覺(jué)強(qiáng),語(yǔ)音渾厚。語(yǔ)音中頻成分音質(zhì)有力度,有通透感。
4.體會(huì)與收獲
以往都是通過(guò)課本來(lái)感性的認(rèn)知語(yǔ)音信號(hào),通過(guò)本次的課程設(shè)計(jì),讓我對(duì)語(yǔ)音信號(hào)有了一個(gè)較為實(shí)際的認(rèn)識(shí)。于此同時(shí),讓我再次把數(shù)字信號(hào)處理及數(shù)字濾波器的設(shè)計(jì)方法重新進(jìn)行了復(fù)習(xí)和學(xué)習(xí)。而對(duì)于Matlab,也再次讓我感受到了其功能的強(qiáng)大。最為重要的是,本次課 17
程設(shè)計(jì)讓我重新審視了學(xué)習(xí)的過(guò)程:只去做實(shí)驗(yàn)是不行的,首先還是要思考,遇到了問(wèn)題查書(shū)籍,百度搜索也只是一種手段,更加重要的是想,再理解,只有這樣才能真正的做好實(shí)驗(yàn)。
5.參考文獻(xiàn)
《數(shù)字信號(hào)處理》錢(qián)同惠、百度文庫(kù)