版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢 業(yè) 設 計(論 文)基于matlab實現(xiàn)對語音信號的頻譜分析學生姓名:張彥利學 號:所在系部:信息工程學院專業(yè)班級:指導教師:日 期:二一貳年五月基于matlab實現(xiàn)對語音信號的頻譜分析摘 要matlab是一個數據分析和處理功能十分強大的工程實用軟件,運用它來進行信號的分析和處理相當便捷。本文介紹了在matlab環(huán)境中如何采集語音信號和語音信號采集后的頻譜分析處理,并通過實例分析了語音信號處理的matlab。并以理想正弦分布的紋理圖像的 matlab仿真和正弦紋理圖像的頻譜特征分析為例,敘述了基于傅立葉能量譜的紋理圖像分析的基本原理和基本過程。編寫了程序,獲得了具有理想正弦分布的空域紋理圖
2、像,并對其頻譜特征進行了分析。并且根據離散傅里葉變換dft的定義,推導出一種用 dft計算離散信號幅值譜的方法,通過 matlab 仿真驗證了該方法的有效性。關鍵詞:matlab;頻譜分析;傅里葉變換;語音信號;信號分析analysis of signal spectrum based on matlababstractmatlab is very powerful and practical engineering software which is used in data analysis and processing fraction,and use it to analysis an
3、d process voice signal,which is very convenient.this paper describes the matlab enviironment,how to collect and process speech signal,and through example analysis of the speech signal processing in matlab.then take the matlab simulation of ideal sinusoid texture image and analysis of its spectrum ch
4、aracteristics for example; basic principles and process of analyzing the texture image based on fourier energy spectrum were described. the program was written for obtaining spatial domain texture image with ideal sinusoid distribution. and its spectrum characteristics were analyzed.moreover, accord
5、ing to the definition of dft, a calculation method of amplitude spectrum for periodic signal is derived in this paper. through simulation of amplitude spectrum calculation in matlab, the efficiency of the method is validated to satisfy the need for project. in the end, the problems of spectrum leaka
6、ge and picket fence effect are explained and the corresponding solution is proposed.keywords: matlab; spectrum analysis;fft; speech signal; signal analysis目 錄1. 緒論11.1 課題背景11.2 研究意義11.3 本文研究內容12. 頻譜分析及matlab簡介22.1 頻譜分析技術22.1.1 時域抽樣定理722.1.2 離散傅立葉變換(dft)822.1.3 快速傅立葉變換(fft)932.1.4 頻譜分析原理1032.2 matlab
7、簡介42.2.1 matlab軟件的發(fā)展42.2.2 matlab組成52.3 本章小結53. 程序與算例63.1 聲音信號頻譜分析63.2 圖像信號頻譜分析73.3 離散信號/序列93.4 本章小結11結論12致謝13參考文獻141. 緒論1.1 課題背景隨著信息時代和數字世界的到來,數字信號處理己成為當今一門極其重要的學科和技術領域,數字信號處理在通信、語音、圖像、自動控制、醫(yī)療和家用電器等眾多領域得到了廣泛的應用。任意一個信號都具有時域與頻域特性,信號的頻譜完全代表了信號,因而研究信號的頻譜就等于研究信號本身。通常從頻域角度對信號進行分析與處理,容易對信號的特性獲得深入的了解。因此,信號
8、的頻譜分析是數字信號處理技術中的一種較為重要的工具1-3。在工程領域中,matlab是一種倍受程序開發(fā)人員青睞的語言,對于一些需要做大量數據運算處理的復雜應用以及某些復雜的頻譜分析算法matlab顯得游刃有余4。1.2 研究意義信號處理幾乎涉及到所有的工程技術領域,而頻譜分析又是信號處理中一個非常重要的分析手段。一般的頻譜分析都依靠傳統(tǒng)頻譜分析儀來完成,價格昂貴,體積龐大,不便于工程技術人員的攜帶。虛擬頻譜分析儀改變了原有頻譜分析儀的整體設計思路,用軟件代替了硬件,使工程技術人員可以用一部筆記本電腦到現(xiàn)場就可輕松完成信號的采集、處理及頻譜分析5-6。 1.3 本文研究內容信號的頻譜分析就是利用
9、傅里葉分析的方法,求出與時域描述相對應的頻域描述,從中找出信號頻譜的變化規(guī)律,以達到特征提取的目的。不同信號的傅里葉分析理論與方法,在有關專業(yè)書中都有介紹。但實際的待分析信號一般沒有解析式,直接利用公式進行傅里葉分析非常困難. dft是一種時域和頻域均離散化的傅里葉變換,適合數值計算且有快速算法,是分析信號的有力工具。dft及fft是數字信號處理的重要內容。dft是fft的基礎,fft是dft的快速算法,在 mat lab中可以利用函數 fft來計算序列的離散傅里葉變換dft。基于此首先介紹了matlab軟件;其次給出了基于matlab軟件的dft和 fft頻譜分析的方法,利用 matlab軟
10、件方法,使得設計方便、快捷,大大減輕了工作量;最后結合實例給出了仿真結果。本文將重點介紹基于matlab的頻譜分析設計,包括:(1) 音頻信號頻譜分析;(2) 圖像信號頻譜分析;(3) 離散信號/序列頻譜分析。2. 頻譜分析及matlab簡介2.1 頻譜分析技術2.1.1 時域抽樣定理7時域抽樣定理給出了連續(xù)信號抽樣過程中信號不失真的約束條件:對于基帶信號,信號抽樣頻率大于等于2倍的信號最高頻率,即。時域抽樣是把連續(xù)信號變成適于數字系統(tǒng)處理的離散信號。對連續(xù)信號以間隔t抽樣,則可得到的離散序列為。圖2-1 連續(xù)信號抽樣的離散序列若,則信號與的頻譜之間存在:其中,的頻譜為,的頻譜為??梢?,信號時
11、域抽樣導致信號頻譜的周期化。(rad/s)為抽樣角頻率,為抽樣頻率。數字角頻率與模擬角頻率的關系為:=t。2.1.2 離散傅立葉變換(dft)8有限長序列的離散傅立葉變換(dft)為逆變換為2.1.3 快速傅立葉變換(fft)9在各種信號序列中,有限長序列占重要地位。對有限長序列可以利用離散傅立葉變換(dft)進行分析。dft不但可以很好的反映序列的頻譜特性,而且易于用快速算法(fft)在計算機上進行分析。有限長序列的dft是其z變換在單位圓上的等距離采樣,或者說是序列傅立葉的等距離采樣,因此可以用于序列的譜分析。fft是dft的一種快速算法,它是對變換式進行一次次分解,使其成為若干小數據點的
12、組合,從而減少運算量。 matlab為計算數據的離散快速傅立葉變換,提供了一系列豐富的數學函數,主要有fft、ifft、fft2 、ifft2, fftn、ifftn和fftshift、ifftshift等。當所處理的數據的長度為2的冪次時,采用基-2算法進行計算,計算速度會顯著增加。所以,要盡可能使所要處理的數據長度為2的冪次或者用添零的方式來添補數據使之成為2的冪次。fft函數調用方式:y=fft(x);yfft(x,n);yfft(x,dim)或yfft(x,n,dim)。函數ifft的參數應用與函數fft完全相同。2.1.4 頻譜分析原理10時域分析只能反映信號的幅值隨時間的變化情況,
13、除單頻率分量的簡單波形外,很難明確提示信號的頻率組成和各頻率分量大小,而頻譜分析能很好的解決此問題。由于從頻域能獲得的主要是頻率信息,所以本節(jié)主要介紹頻率(周期)的估計與頻譜圖的生成。1、頻率、周期的估計對于y(kf),如果當kf=f時,y(kf)取最大值,則f為頻率的估計值,由于采樣間隔的誤差,f也存在誤差,其誤差最大為f/ 2。周期t=1/f。從原理上可以看出,如果在標準信號中混有噪聲,用上述方法仍能夠精確地估計出原標準信號的頻率和周期,這個將在下一章做出驗證2、頻譜圖為了直觀地表示信號的頻率特性,工程上常常將fourier變換的結果用圖形的方式表示,即頻譜圖。以頻率f為橫坐標,|y(f)
14、|為縱坐標,可以得到幅值譜;以頻率f為橫坐標,argy(f)為縱坐標,可以得到相位譜;以頻率f為橫坐標,rey(f)為縱坐標,可以得到實頻譜;以頻率f為橫坐標,imy(f)為縱坐標,可以得到虛頻譜。根據采樣定理,只有頻率不超過fs/2的信號才能被正確采集,即fourier變換的結果中頻率大于fs/2的部分是不正確的部分,故不在頻譜圖中顯示。即橫坐標f0,fs/22.2 matlab簡介2.2.1 matlab軟件的發(fā)展matlab 軟件11是由美國 mathworks 公司推出的用于數值計算和圖形處理的科學計算系統(tǒng)環(huán)境。matlab 是英文 matrix laboratory(矩陣實驗室)的縮
15、寫。它的第一版(dos 版本 1.0)發(fā)行于1984年,經過10余年的不斷改進,現(xiàn)今已推出它的 windows 98/nt 版本(6.1 版)。新的版本集中了日常數字處理中的各種功能,包括高效的數值計算、矩陣運算、信號處理和圖形生成等功能。在 matlab 環(huán)境下,用戶可以集成地進行程序設計、數值計算、圖形繪制、輸入輸出、文件管理等各項操作。matlab 提供了一個人機交互的數學系統(tǒng)環(huán)境,該系統(tǒng)的基本數據結構是矩陣,在生成矩陣對象時,不要求作明確的維數說明。與利用 c 語言或 fortran 語言作數值計算的程序設計相比,利用 matlab 可以節(jié)省大量的編程時間。在美國的一些大學里,matl
16、ab 正在成為對數值計算、算法預設計與驗證,以及一些特殊的短陣計算應用,如自動控制理論、統(tǒng)計、數字信號處理(時間序列分拆)等。matlab 系統(tǒng)最初是由 cievemoler用fortran語言設計的,有關矩陣的算法來自linpack和eispack課題的研究成果;現(xiàn)在的 matlab 程序是 mathworks 公司用 c 語言開發(fā)的,第一版由 steve bangert 主持開發(fā)編譯解釋程序,steve kleiman完成圖形功能的設計,john little 和 cleve moler 主持開發(fā)各類數學分析的子模塊,撰寫用戶指南和大部分 m 文件。自從第 1 版發(fā)行以來,已有眾多的科技工
17、作者加入到 atlab 的開發(fā)隊伍中,并為形成今天的matlab 系統(tǒng)做出了巨大的貢獻,matlab 以商品形式出現(xiàn)后,僅短短幾年,就以其良好的開放性和運行可靠性,使原先控制領域里的封閉式軟件包(如英國的 umist,瑞典的 lund,德國的 keddc)紛紛淘汰,而改以matlab為平臺加以重建。在時間進入20世紀九十年代的時候,matlab已經成為國際控制界公認的標準計算軟件。到九十年代初期,在國際上30 幾個數學類科技應用軟件中,matlab 在數值計算方面獨占鰲頭。2.2.2 matlab組成matlab 系統(tǒng)由五個主要部分組成,下面分別加以介紹:1. matlab 語言體系。matl
18、ab 是高層次的矩陣/數組語言,具有條件控制、函數調用、數據結構、輸入輸出、面向對象等程序語言特性。利用它既可以進行小規(guī)模編程,完成算法設計和算法實驗的基本任務,也可以進行大規(guī)模編程,開發(fā)復雜的應用程序。2. matlab 工作環(huán)境。這是對 matlab 提高給用戶使用的管理功能的總稱。包括管理工作空間中的變量輸入輸出的方式和方法,以及開發(fā)、調試、管理 m 文件的各種工具。3. 圖形句相系統(tǒng)。 這是 matlab 圖形系統(tǒng)的基礎,包括完成 2d和 3d 數據圖示、圖象處理、動畫生成、圖形顯示等功能的高層 matlab命令,也包括用戶對圖形圖象等對象進行野性控制的低層 matlab 命令,以及開
19、發(fā) gui 應用程序的各種工具。4. matlab數學函數庫。這是對 matlab 使用的各種數學算法的總稱。包括各種初等函數的算法,也包括矩陣運算、矩陣分析等高層次數學算法。5. matlab應用程序接口(api)。這是matlab為用戶提供的一個函數庫,使得用戶能夠在matlab環(huán)境中使用c程序或 fortran 程序,包括從matlab中調用程序(動態(tài)連接),讀寫 mat 文件的功能。可以看出 matlab 是一個功能十分強大的系統(tǒng),是集數值計算、圖形管理、程序開發(fā)為一體的環(huán)境。除此之外,matlab 還具有很強的功能擴展能力,與它的系統(tǒng)一起,可以配備各種各樣的工具箱。2.3 本章小結本
20、章詳細介紹了頻譜分析的基本原理,并對matlab軟件的發(fā)展和組成展開介紹。3. 程序與算例3.1 聲音信號頻譜分析matlab語言是一種數據分析和處理功能十分強大的計算機應用軟件, 它可以將聲音文件變換為離散的數據文件, 然后利用其強大的矩陣運算能力處理數據, 如數字濾波、傅里葉變換、時域和頻域分析、聲音回放以及各種分析圖的呈現(xiàn)等等。 下面以語音信號的波形圖、頻譜圖和倒譜圖分析為例來說明matlab在語音信號處理中的具體實現(xiàn)方法。程序代碼:s=wavread(1.wav)subplot(3,1,1);plot(s);title(波形圖)n=size(s);d=100;l=512;k=l-d;t
21、=fix(n/k);frame_length=512;r=(rectwin(frame_length);for a=1:t n1=(l-d)*(a-1)+1; n2=(l-d)*(a-1)+frame_length; y=s(n1:n2); sf=fft(y.*r,512); x1(n1:n2)=sf(1:frame_length);endfftsize=8000;y=zeros(fftsize,1);y=20*log10(abs(x1);subplot(3,1,2);plot(y(1:4000),title(頻譜圖);t1=length(x1);t1=fix(t1/l);for i=1:t1
22、z=ifft(x1(i-1)*l+1:i*l),512);z=real(z./r);y(i-1)*k+1:i*k)=z(1:k);end subplot(3,1,3);plot(y),title(倒譜圖)上程序將語音文件1.wav進行頻譜分析,分析結果如圖3-1所示。圖3-1 聲音信號的頻譜分析結果3.2 圖像信號頻譜分析紋理圖像的頻譜可以通過離散傅里葉變換(dft)得到。用表示一幅空域紋理圖像,用表示該圖像的頻譜,圖像的大小為mn,則和質檢可以通過dft計算,計算公式如下:其中能量譜可采用公式:基于傅立葉能量譜的紋理圖像分析的前提是假設紋理有不同的正弦波組成。理想正弦分布的紋理圖像,是最為典
23、型的紋理圖像之一,下面討論理想正弦分布的紋理圖像的仿真及其頻譜特征分析。編寫下面的程序獲得具有理想正弦分布的空域紋理圖像,其中a為正弦紋理的幅值,uf0、vf0分別為x軸(垂直方向)、y軸(水平方向)方向的模擬頻率,m、n分別為x軸、y軸的采樣的點數,tsu、tsv分別為x、y軸的采樣間隔,為了便于觀察和處理,取tsu=1/m、tsv= 1/n,即x軸、y軸的采樣頻率分別為m和n,這樣在空域中得到了01范圍的紋理圖像(如考慮成時域抽樣信號的話,相當于在01s間的抽樣)。 a=1;uf0=0;vf0=25;m=200;n=200;tsu = 1/m; tsv = 1/n; r = 0:m-1;
24、c = 0:n-1; c,r = meshgrid(c,r); g = a * sin(2* pi* uf0 * r * tsu + 2 * pi * vf0 * c * tsv); f = mat2gray(g); figure imshow(f)程序中輸出變量g返回的是實際的理想正弦函數的取值,f返回的是g平移后的結果(取值限定在01范圍內)。 在matlab軟件中仿真得到的一組具有理想正弦分布的紋理圖像:圖3-2中各紋理的方向或周期是不同的。其中(a)和(b)中紋理呈豎直方向分布(即水平方向變化),(a) 的y軸方向的頻率為25hz,(b)的y軸頻率為5hz,即(b)圖是周期為(a)圖的
25、5倍的豎直紋理,所以在整個圖像范圍內(相當于一秒內)(a)和(b)分別有25和5個周期。 (c)圖紋理是x和y軸方向頻率均為25hz。 (a) (b) (c)圖3-2 理想正弦紋理圖像然后利用fft算法對以上面三個圖像信號進行頻譜分析。程序代碼為:i=imread(1.tif)i = rgb2gray( i );imshow(i);ffti=fft2(i);sffti=fftshift(ffti);rr=real(sffti);ii=imag(sffti);a=sqrt(rr.2+ii.2);a=(a-min(min(a)/(max(max(a)-min(min(a)*225;figure;i
26、mshow(a);圖3-3為對應的圖中各圖的傅立葉頻譜能量圖(在matlab中執(zhí)行了fft(快速傅立葉變換)后,使用了fftshift函數調整,以使頻譜圖像的原點從起始點(0,0),移到圖像的中心點(m/2,n/2)。從圖3-3中可以看出:豎直方向理想單一頻率的正弦分布紋理的頻譜能量集中在水平方向的三個點上,而水平方向單一頻率的正弦分布紋理的頻譜能量集中在豎直方向的三個點上;對于單一頻率的理想正弦分布的紋理圖像,其紋理方向和其頻譜能量圖的頻點連線方向相垂直,如圖 (c)紋理為圖 (b)的紋理順時針傾斜45度,其頻譜能量圖中頻點也相應順時針傾斜45度;垂直方向紋理和水平方向紋理的疊加圖像的頻譜能
27、量圖表現(xiàn)為水平和豎直方向的五個點上;紋理周期越小,對應的頻點到頻譜中心(中心點,即頻率為0)的距離越大,如圖3-3 (a)紋理的頻點到中心的距離為圖3-3(b)紋理的五倍。(a) (b) (c)圖 理想正弦紋理圖像的頻譜能量圖3.3 離散信號/序列以,采樣頻率100hz,采樣100個點,形成離散信號,利用matlab進行頻譜分析。程序如下:n=100;fs=100;t=(0:(n-1)/fs; xn=1+2*sin(2*pi*10*t)+3*sin(2*pi*15*t); xk=abs(fft(xn,n);f=(0:n/2)*fs/n; xk(1)=xk(1)/n;xk(2:(n/2+1)=x
28、k(2:(n/2+1)*2/n; stem(f,xk(1:(n/2+1);axis(-1 n/2 0 5); grid on;xlabel(f(hz);ylabel(|x( f )|);程序運行結果:圖3-4 n=100的幅值頻譜圖從圖3-4可以看出,dft法分析的結果和實際信號吻合得很好,說明該方法確實有效。但是,需要注意的是,離散傅里葉變換在頻域是離散的,即限制在基頻整數倍上,只能得到信號 k 次諧波成分的幅值譜,而對于非k次諧波成分的頻譜則無法檢測出來,并且由于柵欄效應和頻譜泄漏,對其它k次諧波的幅值也有影響。如將上述程序中的n=100改為n=50,結果如圖3-5所示。圖3-5 n=50
29、的幅值頻譜圖從圖3-5可以看出,由于基頻頻率為100/50=2hz,x(t)中的15hz分量未檢測出來,其它頻率分量的幅值也出現(xiàn)了誤差,這種柵欄效應也是 dft 應用中不可避免的問題之一。要減小柵欄效應和頻譜泄漏,可以減小采樣頻率,增加采樣點數,以減小基頻值,使譜線變密,這樣原來漏掉的某些頻譜成分就可以檢測出來,但注意采樣頻率必須滿足采樣定理的要求,增加采樣點數也會增加系統(tǒng)計算 dft 的開銷。3.4 本章小結本章利用matlab分別對聲音信號、圖像信號和離散信號/序列開展頻譜分析,得到頻譜分析結果,并開展結果分析。結論本文主要是基于高級面向對象開發(fā)語言matlab的基本特征,以及matlab
30、強大的工具箱功能,實現(xiàn)信號的預處理和頻譜分析。(1)通過實例說明,基于matlab可以很好的達到對語音信號的頻譜的分析處理。(2)采用頻譜分析方法可以提取出紋理基本特征,如方向特征和周期特征。本文以理想正弦分布的紋理圖像的matlab仿真和正弦紋理圖像的頻譜特征分析為例,敘述了基于傅立葉能量譜的紋理圖像分析的基本原理和基本過程。(3)通過離散傅里葉變換對和周期信號傅立葉級數的定義,清楚地推導出 x(k)與信號幅值的關系,提出了一種有效的計算離散信號/序列幅值譜的方法。致謝本論文從擬定題目到定稿,從對論文設計原理一無所知到模糊了解再到逐漸清晰,此過程歷時數月,我也經歷了千辛萬苦,但最終有一個結果,我感到很欣慰。通過本次設計,我感覺自己成長了很多,對自己所學的知識有了更深刻的了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海灘主題課程設計
- 2024年度擔保業(yè)務創(chuàng)新產品開發(fā)服務協(xié)議2篇
- 開展安全生產隱患排查工作總結范文(11篇)
- 家長隨筆心得體會
- 感恩節(jié)教育學生精彩講話稿(5篇)
- 感恩節(jié)旗下演講稿合集5篇
- 幼兒參觀消防隊的主持詞(5篇)
- 疫情主題繪畫課程設計
- 牙膏盒包裝結構課程設計
- 感恩父親演講稿模板錦集10篇
- 遼寧省撫順市清原縣2024屆九年級上學期期末質量檢測數學試卷(含解析)
- 2024-2025學年上學期福建高二物理期末卷2
- 2024四川阿壩州事業(yè)單位和州直機關招聘691人歷年管理單位遴選500模擬題附帶答案詳解
- 麻醉科工作計劃
- 《英美文化概況》課件
- 四川省2023年普通高中學業(yè)水平考試物理試卷 含解析
- 【MOOC】中級財務會計-北京交通大學 中國大學慕課MOOC答案
- 《園林政策與法規(guī)》課件
- 揚塵防治(治理)監(jiān)理實施細則(范本)
- 五金耗材材料項目投標方案(技術方案)
- 讀書分享《終身成長》課件
評論
0/150
提交評論