第一篇:數(shù)字信號處理學(xué)習(xí)心得體會
數(shù)字信號處理學(xué)習(xí)心得
一、課程認(rèn)識和內(nèi)容理解
《數(shù)字信號處理》是我們通信工程和電子類專業(yè)的一門重要的專業(yè)基礎(chǔ)課程,主要任務(wù)是研究數(shù)字信號處理理論的基本概念和基本分析方法,通過建立數(shù)學(xué)模型和適當(dāng)?shù)臄?shù)學(xué)分析處理,來展示這些理論和方法的實際應(yīng)用。
數(shù)字信號處理技術(shù)正飛速發(fā)展,它不但自成一門學(xué)科,更是以不同形式影響和滲透到其他學(xué)科:它與國民經(jīng)濟息息相關(guān),與國防建設(shè)緊密相連;它影響或改變著我們的生產(chǎn)、生活方式,因此受到人們普遍的關(guān)注。信息科學(xué)是研究信息的獲取、傳輸、處理和利用的一門科學(xué),信息要用一定形式的信號來表示,才能被傳輸、處理、存儲、顯示和利用,可以說,信號是信息的表現(xiàn)形式。這學(xué)期數(shù)字信號處理所含有的具體內(nèi)容如下:
第一單元的課程我們深刻理解到時域離散信號和時域離散系統(tǒng)性質(zhì)和特點;時域離散信號和時域離散系統(tǒng)時域分析方法;模擬信號的數(shù)字處理方法。
第二單元的課程我們理解了時域離散信號(序列)的傅立葉變換,時域離散信號Z變換,時域離散系統(tǒng)的頻域分析。
第三單元的課程我們學(xué)習(xí)了離散傅立葉變換定義和性質(zhì),離散傅立葉變換應(yīng)用——快速卷積,頻譜分析。
第四單元的課程我們重點理解基2 FFT算法——時域抽取法﹑頻域抽取法,F(xiàn)FT的編程方法,分裂基FFT算法。
第五單元的課程我們學(xué)了網(wǎng)絡(luò)結(jié)構(gòu)的表示方法——信號流圖,無限脈沖響應(yīng)基本網(wǎng)絡(luò)結(jié)構(gòu),有限脈沖響應(yīng)基本網(wǎng)絡(luò)結(jié)構(gòu),時域離散系統(tǒng)狀態(tài)變量分析法。
第六單元的課程我們理解數(shù)字濾波器的基本概念,模擬濾波器的設(shè)計,巴特沃斯濾波器的設(shè)計,切比雪夫濾波器的設(shè)計,脈沖響應(yīng)不變法設(shè)計無限脈沖響應(yīng)字?jǐn)?shù)字濾波器,雙線性變換法設(shè)計無限脈沖響應(yīng)字?jǐn)?shù)字濾波器,數(shù)字高通﹑帶通﹑帶阻濾波器的設(shè)計。
第七單元的課程我們學(xué)習(xí)了線性相位有限脈沖響應(yīng)(FIR)數(shù)字濾波器,窗函數(shù)法設(shè)計有限脈沖響應(yīng)(FIR)數(shù)字濾波器,頻率采樣法設(shè)計有限脈沖響應(yīng)(FIR)數(shù)字濾波器
二、專業(yè)認(rèn)識和未來規(guī)劃
通信工程是一門工程學(xué)科,主要是在掌握通信基本理論的基礎(chǔ)上,運用各種工程方法對通信中的一些實際問題進(jìn)行處理。通過該專業(yè)的學(xué)習(xí),可以掌握電話網(wǎng)、廣播電視網(wǎng)、互聯(lián)網(wǎng)等各種通信系統(tǒng)的原理,研究提高信息傳送速度的技術(shù),根據(jù)實際需要設(shè)計新的通信系統(tǒng),開發(fā)可迅速準(zhǔn)確地傳送各種信息的通信工具等。
對于我們通信專業(yè),我覺得是個很好的專業(yè),現(xiàn)在這個專業(yè)很熱門,這個專業(yè)以后就業(yè)的方向也很多,就業(yè)面很廣。我們畢業(yè)以后工作,可以進(jìn)入設(shè)備制造商、運營商、專有服務(wù)提供商以及銀行等領(lǐng)域工作。當(dāng)然,就業(yè)形勢每年都會變化,所以關(guān)鍵還是要看自己??梢詮氖掠布矫?,比如說PCB,別小看這門技術(shù),平時我們在試驗時制作的簡單,這一技術(shù)難點就在于板的層數(shù)越多,要做的越穩(wěn)定就越難,這可是非常有難度的,如果學(xué)好了學(xué)精了,也是非常好找工作的。也可以從事軟件方面,這實際上要我們具備比較好的模電和數(shù)電的基礎(chǔ)知識。
我選擇了這個專業(yè),在這里讀了三年關(guān)于通信知識的書,我還是想以后畢業(yè)能夠從事這個方面的工作,現(xiàn)在學(xué)了通信原理、數(shù)字信號處理這些很有用的專業(yè)課,所以,我在以后的學(xué)習(xí)中,我會把這些方面的知識學(xué)扎實,從事技術(shù)這一塊要能吃苦,我也做好了準(zhǔn)備,現(xiàn)在還很年輕,年輕的時候多吃點苦沒什么,為了我自己美好的將來,我會努力學(xué)好這個專業(yè)的。
數(shù)字信號處理課程屬于專業(yè)基礎(chǔ)課,所涵蓋的內(nèi)容主要有:離散時間信號與系統(tǒng)的基本概念及描述方法,離散傅立葉變換及快速傅立葉變換,數(shù)字濾波器結(jié)構(gòu)及設(shè)計等。對于電氣信息類專業(yè)的學(xué)生來說,這些內(nèi)容是學(xué)習(xí)后續(xù)專業(yè)課程的重要基礎(chǔ),也是實際工作中必不可少的專業(yè)基礎(chǔ)知識。目前幾乎所有的高等院校都在電子工程類、信息工程類、通信工程類、電子技術(shù)類、自動控制類、電氣工程類、機電工程類、計算機科學(xué)類等工科電類及其他相關(guān)專業(yè)的本科生中開設(shè)了該門課程。隨著計算機技術(shù)、微電子技術(shù)、數(shù)字信號處理理論和方法的發(fā)展,半個世紀(jì)以來,尤其是最近的三十來年里,數(shù)字信號處理的方法和應(yīng)用得到了飛躍式的發(fā)展,數(shù)字信號處理的地位和作用變得越來越重要。因此,加強該課程的建設(shè)具有重要的意義。
三、課程評價和建議
我們的數(shù)字信號處理課是羅老師教的,羅老師有豐富工作的經(jīng)驗,對于這門課的實際用途很了解,另外羅老師本身就很幽默,對于這門課采用多種教學(xué)方法,豐富教學(xué)內(nèi)容,偶爾給我們講些生活上的問題,吸引學(xué)生對課程的關(guān)注。利用實驗課讓我們來編程做仿真,體會信號處理課程的樂趣,這樣子激發(fā)了學(xué)生的興趣、提高了教學(xué)的效果。因此,我們班的同學(xué)在這一個學(xué)期的學(xué)習(xí)中,我們都感覺比較輕松。另外我個人觀點是大學(xué)主要是培養(yǎng)自己的自學(xué)能力,老師只是個引導(dǎo)者,所以學(xué)習(xí)效果如何關(guān)鍵看自己的對學(xué)習(xí)的態(tài)度和付出程度。
數(shù)字信號處理課程的特點是課程本身理論性強、公式推導(dǎo)較多、概念比較抽象,使我們感到有枯燥難學(xué)之感。近年來,國外及國內(nèi)有些學(xué)校對一般電類專業(yè)該課程的教學(xué)主要強調(diào)應(yīng)用性學(xué)習(xí),主要介紹數(shù)字信號處理的用途和用法,而對其深奧的理論推導(dǎo)僅做一般介紹,并給學(xué)生提供進(jìn)行實驗的機會,以激發(fā)學(xué)生對該課程的興趣和學(xué)習(xí)主動性。
對該課程的改革思想主要是課程內(nèi)容要適應(yīng)數(shù)字信號處理技術(shù)的發(fā)展現(xiàn)狀,淡化枯燥的數(shù)學(xué)推導(dǎo),輔助以現(xiàn)代化教學(xué)手段,并開設(shè)相應(yīng)的實驗課。結(jié)合專業(yè)現(xiàn)狀,將課堂教學(xué)一部分變?yōu)槎嗝襟w教學(xué),盡量將一些理論分析用圖形手段展示出來,以增強我們的感性認(rèn)識。實驗課主要是以MATLAB為平臺,充分利用MATLAB的數(shù)字信號處理各種功能讓學(xué)生親自動手將課堂所學(xué)進(jìn)行仿真實現(xiàn)。實驗課還可以通過用DSP試驗箱實現(xiàn)數(shù)字信號處理的功能向?qū)W生進(jìn)行演示。
第二篇:數(shù)字信號處理課程設(shè)計..
課程設(shè)計報告
課程名稱: 數(shù)字信號處理 課題名稱: 語音信號的處理與濾波
姓 名: 學(xué) 號: 院 系: 專業(yè)班級: 指導(dǎo)教師: 完成日期: 2013年7月2日
目錄
第1部分 課程設(shè)計報告………………………………………3 一.設(shè)計目的……………………………………………3 二.設(shè)計內(nèi)容……………………………………………3 三.設(shè)計原理……………………………………………3 四.具體實現(xiàn)……………………………………………5 1.錄制一段聲音…………………………………5 2.巴特沃斯濾波器的設(shè)計………………………8 3.將聲音信號送入濾波器濾波…………………13 4.語音信號的回放………………………………19 5.男女語音信號的頻譜分析……………………19 6.噪聲的疊加和濾除……………………………22 五. 結(jié)果分析……………………………………………27 第2部分 課程設(shè)計總結(jié)………………………………28 一. 參考文獻(xiàn)……………………………………………28
第1部分 課程設(shè)計報告
一.設(shè)計目的
綜合運用本課程的理論知識進(jìn)行頻譜分析以及濾波器設(shè)計,通過理論推導(dǎo)得出相應(yīng)結(jié)論,并利用MATLAB作為工具進(jìn)行實現(xiàn),從而復(fù)習(xí)鞏固課堂所學(xué)的理論知識,提高對所學(xué)知識的綜合應(yīng)用能力,并從實踐上初步實現(xiàn)對數(shù)字信號的處理。
二.設(shè)計內(nèi)容
錄制一段個人自己的語音信號,并對錄制的信號進(jìn)行采樣;畫出采樣后語音信號的時域波形和頻譜圖;給定濾波器的性能指標(biāo),采用窗函數(shù)法和雙線性變換法設(shè)計濾波器,并畫出濾波器的頻率響應(yīng);然后用自己設(shè)計的濾波器對采集的信號進(jìn)行濾波,畫出濾波后信號的時域波形和頻譜,并對濾波前后的信號進(jìn)行對比,分析信號的變化;回放語音信號;換一個與你性別相異的人錄制同樣一段語音內(nèi)容,分析兩段內(nèi)容相同的語音信號頻譜之間有什么特點;再錄制一段同樣長時間的背景噪聲疊加到你的語音信號中,分析疊加前后信號頻譜的變化,設(shè)計一個合適的濾波器,能夠把該噪聲濾除;
三.設(shè)計原理
1.在Matlab軟件平臺下,利用函數(shù)wavrecord(),wavwrite(),wavread(),wavplay()對語音信號進(jìn)行錄制,存儲,讀取,回放。
2.用y=fft(x)對采集的信號做快速傅立葉變換,并用[h1,w]=freqz(h)進(jìn)行DTFT變換。
3.掌握FIR DF線性相位的概念,即線性相位對h(n)、H(?)及零點的約束,了解四種FIR DF的頻響特點。
4.在Matlab中,F(xiàn)IR濾波器利用函數(shù)fftfilt對信號進(jìn)行濾波。
5.抽樣定理
連續(xù)信號經(jīng)理想抽樣后時域、頻域發(fā)生的變化(理想抽樣信號與連續(xù)信號頻譜之間的關(guān)系)
理想抽樣信號能否代表原始信號、如何不失真地還原信號即由離散信號恢復(fù)連續(xù)信號的條件(抽樣定理)
理想采樣過程描述: 時域描述:
?a(t)?xa(t)?T(t)??xa(t)?(t?nT)??xa(nT)?(t?nT)xn???n??????T(t)?頻域描述:利用傅氏變換的性質(zhì),時域相乘頻域卷積,若
n?????(t?nT)??a(t)Xa(j?)?xXa(j?)?xa(t)?T(j?)??T(t)
則有
?(j?)?1X(j?)??(j?)XaaT2?1?2?1??Xa(j?)??Xa(j??jk)??Xa(j??jk?s)Tk???TTk????(j?)與X(j?)的關(guān)系:理想抽樣信號的頻譜是連續(xù)信號頻譜的Xaa
周期延拓,重復(fù)周期為?s(采樣角頻率)。如果:
?X(j?)?Xa(j?)??a??0???s/2???s/2即連續(xù)信號是帶限的,且信號最高頻率不超過抽樣頻率的二分之一,則可不失真恢復(fù)。
奈奎斯特采樣定理:要使實信號采樣后能夠不失真還原,采樣頻率必須大于信號最高頻率的兩倍:?s?2?h 或 fs?2fh
四.具體實現(xiàn)
1.錄制一段聲音
1.1錄制并分析
在MATLAB中用wavrecord、wavread、wavplay、wavwrite對聲音進(jìn)行錄制、讀取、回放、存儲。
程序如下:
Fs=8000;%抽樣頻率 time=3;%錄音時間 fprintf('按Enter鍵錄音%ds',time);%文字提示 pause;%暫停命令 fprintf('錄音中......');x=wavrecord(time*Fs,Fs,'double');%錄制語音信號 fprintf('錄音結(jié)束');%文字提示 fprintf('按Enter鍵回放錄音');pause;%暫停命令
wavplay(x,Fs);%按任意鍵播放語音信號
wavwrite(x,Fs,'C:UsersacerDesktop數(shù)字信號sound.wav');%存儲語音信號
N=length(x);%返回采樣點數(shù) df=fs/N;%采樣間隔 n1=1:N/2;f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 figure(2);subplot(2,1,1);plot(x);%錄制信號的時域波形 title('原始信號的時域波形');%加標(biāo)題 ylabel('幅值/A');%顯示縱坐標(biāo)的表示意義 grid;%加網(wǎng)格
y0=fft(x);%快速傅立葉變換 figure(2);subplot(2,1,2);plot(f,abs(y0(n1)));%原始信號的頻譜圖 title('原始信號的頻譜圖');%加標(biāo)題 xlabel('頻率w/pi');%顯示橫坐標(biāo)表示的意義 ylabel('幅值 ');%顯示縱坐標(biāo)表示的意義 title('原始信號的頻譜圖');%加標(biāo)題
grid;%加網(wǎng)格
圖1.1 原始信號的時域與頻譜圖
1.2濾除無效點
針對實際發(fā)出聲音落后錄制動作半拍的現(xiàn)象,如何拔除對無效點的采樣的問題: 出現(xiàn)這種現(xiàn)象的原因主要是錄音開始時,人的反應(yīng)慢了半拍,導(dǎo)致出現(xiàn)了一些無效點,而后而出現(xiàn)的無效的點,主要是已經(jīng)沒有聲音的動作,先讀取聲音出來,將原始語音信號時域波形圖畫出來,根據(jù)己得到的信號,可以在第二次讀取聲音的后面設(shè)定采樣點,取好有效點,畫出濾除無效點后的語音信號時域波形圖,對比可以看出。這樣就可以解決這個問題。
x=wavread('C:UsersacerDesktop數(shù)字信號sound.wav', 7
[4000,24000]);%從4000點截取到24000結(jié)束 plot(x);%畫出截取后的時域圖形 title('截取后的聲音時域圖形');%標(biāo)題 xlabel('頻率');ylabel('振幅');grid;%畫網(wǎng)格
圖1.2 去除無效點
2.巴特沃斯濾波器的設(shè)計
2.1設(shè)計巴特沃思低通濾波器
MATLAB程序如下。濾波器圖如圖3.3所示。
%低通濾波
fp=1000;fs=1200;Fs=22050;rp=1;rs=100;wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;Fs1=1;wap=2*tan(wp/2);was=2*tan(ws/2);[N,wc]=buttord(wap,was,rp,rs,'s');[B,A]=butter(N,wc,'s');[Bz,Az]=bilinear(B,A,Fs1);figure(1);[h,w]=freqz(Bz,Az,512,Fs1*22050);plot(w,abs(h));title('巴特沃斯低通濾波器');xlabel('頻率(HZ)');ylabel('耗損(dB)');gridon;9
圖2.1 巴特沃思低通濾波器
2.2設(shè)計巴特沃思高通濾波器
MATLAB程序如下。濾波器圖如圖3.5所示。%高通濾波
fp=4800;fs=5000;Fs=22050;rp=1;rs=100;wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;T=1;Fs1=1;wap=2*tan(wp/2);was=2*tan(ws/2);10
[N,wc]=buttord(wap,was,rp,rs,'s');[B,A]=butter(N,wc,'high','s');[Bz,Az]=bilinear(B,A,Fs1);figure(1);[h,w]=freqz(Bz,Az,512,Fs1*22050);plot(w,abs(h));title('巴特沃斯高通濾波器');xlabel('頻率(HZ)');ylabel('耗損(dB)');grid on;
圖2.2巴特沃思高通濾波器
2.3設(shè)計巴特沃思帶通濾波器
MATLAB程序如下。濾波器圖如圖3.7所示。%帶通濾波
fp=[1200,3000];fs=[1000,3200];Fs=8000;rp=1;rs=100;wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;T=1;Fs1=1;wap=2*tan(wp/2);was=2*tan(ws/2);[N,wc]=buttord(wap,was,rp,rs,'s');[B,A]=butter(N,wc,'s');[Bz,Az]=bilinear(B,A,Fs1);figure(4);[h,w]=freqz(Bz,Az,512,Fs1*1000);plot(w,abs(h));title('巴特沃斯帶通濾波器');xlabel('頻率(HZ)');ylabel('耗損(dB)');grid on;12
圖2.3巴特沃思帶通濾波器
3.將聲音信號送入濾波器濾波
x=wavread('C:UsersacerDesktop數(shù)字信號sound.wav');%播放原始信號
wavplay(x,fs);%播放原始信號 N=length(x);%返回采樣點數(shù) df=fs/N;%采樣間隔 n1=1:N/2;f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 figure(4);subplot(4,2,1);plot(x);%錄制信號的時域波形
title('原始信號的時域波形');%加標(biāo)題 ylabel('幅值/A');%顯示縱坐標(biāo)的表示意義 grid;%加網(wǎng)格
y0=fft(x);%快速傅立葉變換 subplot(4,2,3);plot(f,abs(y0(n1)));%原始信號的頻譜圖 title('原始信號的頻譜圖');%加標(biāo)題 xlabel('頻率w/pi');%顯示橫坐標(biāo)表示的意義 ylabel('幅值 ');%顯示縱坐標(biāo)表示的意義 title('原始信號的頻譜圖');%加標(biāo)題 grid;%加網(wǎng)格
3.1低通濾波器濾波 fs=8000;beta=10.056;wc=2*pi*1000/fs;ws=2*pi*1200/fs;width=ws-wc;wn=(ws+wc)/2;n=ceil(12.8*pi /width);h=fir1(n,wn/pi,'band',kaiser(n+1,beta));[h1,w]=freqz(h);
ys=fftfilt(h,x);%信號送入濾波器濾波,ys為輸出 fftwave=fft(ys);%將濾波后的語音信號進(jìn)行快速傅立葉變換 figure(4);subplot(4,2,2);%在四行兩列的第二個窗口顯示圖形 plot(ys);%信號的時域波形
title('低通濾波后信號的時域波形');%加標(biāo)題 xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義 grid;%網(wǎng)格
subplot(4,2,4);%在四行兩列的第四個窗口顯示圖形 plot(f, abs(fftwave(n1)));%繪制模值 xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義
title('低通濾波器濾波后信號的頻譜圖');%標(biāo)題 grid;%加網(wǎng)格
wavplay(ys,8000);%播放濾波后信號
3.2高通濾波器濾波 fs=8000;beta=10.056;ws=2*5000/fs;wc=2*4800/fs;
width=ws-wc;wn=(ws+wc)/2;n=ceil(12.8*pi/width);h=fir1(n,wn/pi, 'high',kaiser(n+2,beta));[h1,w]=freqz(h);ys=fftfilt(h,x);%將信號送入高通濾波器濾波 subplot(4,2,5);%在四行兩列的第五個窗口顯示圖形 plot(ys);%信號的時域波形 xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義 title('高通濾波后信號的時域波形');%標(biāo)題 ylabel('幅值/A');%顯示縱坐標(biāo)的表示意義 grid;%網(wǎng)格
fftwave=fft(ys);%將濾波后的語音信號進(jìn)行快速傅立葉變換 subplot(4,2,7);%在四行兩列的第七個窗口顯示圖形 plot(f,abs(fftwave(n1)));%繪制模值 axis([0 1 0 50]);xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義
title('高通濾波器濾波后信號的頻譜圖');%標(biāo)題 grid;%加網(wǎng)格
wavplay(ys,8000);%播放濾波后信號
3.3帶通濾波器 fs=8000;beta=10.056;wc1=2*pi*1000/fs;wc2=2*pi*3200/fs;ws1=2*pi*1200/fs;ws2=2*pi*3000/fs;width=ws1-wc1;wn1=(ws1+wc1)/2;wn2=(ws2+wc2)/2;wn=[wn1 wn2];n=ceil(12.8/width*pi);h=fir1(n,wn/pi,'band',kaiser(n+1,beta));[h1,w]=freqz(h);ys1= fftfilt(h,x);%將信號送入高通濾波器濾波 figure(4);subplot(4,2,6);%在四行兩列的第六個窗口顯示圖形 plot(ys1);%繪制后信號的時域的圖形 title('帶通濾波后信號的時域波形');%加標(biāo)題 xlabel('頻率w/pi');ylabel('幅值/A');%顯示縱坐標(biāo)表示的意義 grid;%網(wǎng)格
fftwave=fft(ys1);%對濾波后的信號進(jìn)行快速傅立葉變換 subplot(4,2,8);%在四行兩列的第八個窗口顯示圖形
plot(f, abs(fftwave(n1)));%繪制模值 axis([0 1 0 50]);xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義 title('帶通濾波器濾波后信號的頻譜圖');%加標(biāo)題 grid;%網(wǎng)格
wavplay(ys1,8000);%播放濾波后信號 圖形如下:
原始信號的時域波形幅值/A0-1012x 10原始信號的頻譜圖34幅值/A1低通濾波后信號的時域波形0.50-0.5012頻率w/pi3400.51頻率w/pi高通濾波后信號的時域波形幅值/A0幅值/A0幅值/Ax 10高通濾波器濾波后信號的頻譜圖5012頻率w/pi34幅值/A0.20-0.2幅值/A2001000x 10低通濾波器濾波后信號的頻譜圖200100000.51頻率w/pi帶通濾波后信號的時域波形0.50-0.501234頻率w/pix 10帶通濾波器濾波后信號的頻譜圖50幅值 00.5頻率w/pi1000.5頻率w/pi1
分析:三個濾波器濾波后的聲音與原來的聲音都發(fā)生了變化。其中低
通的濾波后與原來聲音沒有很大的變化,其它兩個都又明顯的變化
4.語音信號的回放
sound(xlow,Fs,bits);%在Matlab中,函數(shù)sound可以對聲音進(jìn)行回放,其調(diào)用格式: sound(xhigh, Fs,bits);%sound(x, Fs, bits);sound(xdaitong, Fs,bits);5.男女語音信號的頻譜分析
5.1 錄制一段異性的聲音進(jìn)行頻譜分析
Fs=8000;%抽樣頻率 time=3;%錄音時間 fprintf('按Enter鍵錄音%ds',time);%文字提示 pause;%暫停命令 fprintf('錄音中......');x=wavrecord(time*Fs,Fs,'double');%錄制語音信號 fprintf('錄音結(jié)束');%文字提示 fprintf('按Enter鍵回放錄音');pause;%暫停命令 wavplay(x,Fs);%按任意鍵播放語音信號
wavwrite(x,Fs,'C:UsersacerDesktop數(shù)字信號sound2.wav');%存儲語音信號
5.2 分析男女聲音的頻譜
x=wavread(' C:UsersacerDesktop數(shù)字信號sound2.wav ');%播放原始信號,解決落后半拍
wavplay(x,fs);%播放原始信號 N=length(x);%返回采樣點數(shù) df=fs/N;%采樣間隔 n1=1:N/2;
f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 figure(1);subplot(2,2,1);plot(x);%錄制信號的時域波形
title('原始女生信號的時域波形');%加標(biāo)題 ylabel('幅值/A');%顯示縱坐標(biāo)的表示意義 grid;%加網(wǎng)格
y0=fft(x);%快速傅立葉變換 subplot(2,2,2);plot(f,abs(y0(n1)));%原始信號的頻譜圖 title('原始女生信號的頻譜圖');%加標(biāo)題 xlabel('頻率w/pi');%顯示橫坐標(biāo)表示的意義 ylabel('幅值 ');%顯示縱坐標(biāo)表示的意義 grid;%加網(wǎng)格
[y,fs,bits]=wavread(' C:UsersacerDesktop數(shù)字信號sound.wav ');% 對語音信號進(jìn)行采樣
wavplay(y,fs);%播放原始信號 N=length(y);%返回采樣點數(shù) df=fs/N;%采樣間隔 n1=1:N/2;f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 subplot(2,2,3);plot(y);%錄制信號的時域波形
title('原始男生信號的時域波形');%加標(biāo)題 ylabel('幅值/A');%顯示縱坐標(biāo)的表示意義 grid;%加網(wǎng)格
y0=fft(y);%快速傅立葉變換
subplot(2,2,4);%在四行兩列的第三個窗口顯示圖形 plot(f,abs(y0(n1)));%原始信號的頻譜圖 title('原始男生信號的頻譜圖');%加標(biāo)題 xlabel('頻率w/pi');%顯示橫坐標(biāo)表示的意義 ylabel('幅值 ');%顯示縱坐標(biāo)表示的意義 grid;%加網(wǎng)格
5.3男女聲音的頻譜圖
原始女生信號的時域波形0.50-0.5-1150100原始女生信號的頻譜圖幅值/A幅值 012345000x 10原始男生信號的時域波形0.50.5頻率w/pi原始男生信號的頻譜圖1300200幅值/A0幅值 012x 1034100-0.5000.5頻率w/pi1
圖5.3男女聲音信號波形與頻譜對比
分析:就時域圖看,男生的時域圖中振幅比女生的高,對于頻譜圖女生的高頻成分比較多
6.噪聲的疊加和濾除
6.1錄制一段背景噪聲
Fs=8000;%抽樣頻率 time=3;%錄音時間 fprintf('按Enter鍵錄音%ds',time);%文字提示 pause;%暫停命令 fprintf('錄音中......');x=wavrecord(time*Fs,Fs,'double');%錄制語音信號
fprintf('錄音結(jié)束');%文字提示 fprintf('按Enter鍵回放錄音');pause;%暫停命令 wavplay(x,Fs);%按任意鍵播放語音信號 wavwrite(x,Fs,'C:UsersacerDesktop數(shù)字信號噪音.wav');%存儲語音信號
6.2 對噪聲進(jìn)行頻譜的分析
[x1,fs,bits]=wavread(' C:UsersacerDesktop數(shù)字信號噪音.wav ');%對語音信號進(jìn)行采樣
wavplay(x1,fs);%播放噪聲信號 N=length(x1);%返回采樣點數(shù) df=fs/N;%采樣間隔
n1=1:N/2;f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 figure(5);subplot(3,2,1);plot(x1);%信號的時域波形 title('噪聲信號的時域波形');grid;ylabel('幅值/A');y0=fft(x1);%快速傅立葉變換
subplot(3,2,2);plot(f,abs(y0(n1)));%噪聲信號的頻譜圖 ylabel('幅值');title('噪聲信號的頻譜圖');
6.3原始信號與噪音的疊加
fs=8000;[x,fs,bits]=wavread(' C:UsersacerDesktop數(shù)字信號sound.wav ');%對錄入信號進(jìn)行采樣
[x1,fs,bits]=wavread(' C:UsersacerDesktop數(shù)字信號噪音.wav ');%對噪聲信號進(jìn)行采樣
yy=x+x1;%將兩個聲音疊加
6.4疊加信號的頻譜分析:
wavplay(yy,fs);%播放疊加后信號 N=length(yy);%返回采樣點數(shù) df=fs/N;%采樣間隔 n1=1:N/2;f=[(n1-1)*(2*pi/N)]/pi;%頻帶寬度 figure(5);subplot(3,2,3);plot(yy,'LineWidth',2);%信號的時域波形
title('疊加信號的時域波形');xlabel('時間/t');ylabel('幅值/A');grid;y0=fft(yy);%快速傅立葉變換 subplot(3,2,4);plot(f,abs(y0(n1)));%疊加信號的頻譜圖 title('疊加信號的頻譜圖');xlabel('頻率w/pi');ylabel('幅值/db');grid;
6.5 設(shè)計一個合適的濾波器將噪聲濾除 fs=18000;%采樣頻率 Wp=2*1000/fs;%通帶截至頻率 Ws=2*2000/fs;%阻帶截至頻率 Rp=1;%最大衰減 Rs=100;%最小衰減
[N,Wn]=buttord(Wp,Ws,Rp,Rs);%buttord函數(shù)(n為階數(shù),Wn為截至頻率)
[num,den]=butter(N,Wn);%butter函數(shù)(num為分子系數(shù)den為分母系數(shù))
[h,w]=freqz(num,den);%DTFT變換
ys=filter(num,den,yy);%信號送入濾波器濾波,ys為輸出 fftwave=fft(ys);%將濾波后的語音信號進(jìn)行快速傅立葉變換 figure(5);subplot(3,2,5);plot(ys);%信號的時域波形
title('低通濾波后信號的時域波形');%加標(biāo)題 ylabel('幅值/A');%顯示標(biāo)表示的意義 grid;%網(wǎng)格 subplot(3,2,6);plot(f, abs(fftwave(n1)));%繪制模值 title('低通濾波器濾波后信號的頻譜圖');%標(biāo)題 xlabel('頻率w/pi');ylabel('幅值/A');%顯示標(biāo)表示的意義 grid;%加網(wǎng)格
wavplay(ys,8000);%播放濾波后信號 grid;圖形如下:
噪聲信號的時域波形1100噪聲信號的頻譜圖幅值/A0-1幅值0123450000.5疊加信號的頻譜圖1x 10疊加信號的時域波形10-101時間/t2200幅值/db34幅值/A100000.5頻率w/pi1x 10低通濾波后信號的時域波形0.5低通濾波器濾波后信號的頻譜圖200幅值/A0-0.5幅值/A012x 1034100000.5頻率w/pi1
圖6.1噪音的疊加與濾除前后頻譜對比
7.結(jié)果分析
1.錄制剛開始時,常會出現(xiàn)實際發(fā)出聲音落后錄制動作半拍,可在[x,fs,bits]=wavread('d:matlavworkwomamaaiwo.wav')加 窗[x,fs,bits]=wavread('d:matlavworkwomamaaiwo.wav',[100 10000]),窗的長度可根據(jù)需要定義。
2.語音信號通過低通濾波器后,把高頻濾除,聲音變得比較低沉。當(dāng)通過高通濾波器后,把低頻濾除,聲音變得比較就尖銳。通過帶通濾波器后,聲音比較適中。
3.通過觀察男生和女生圖像知:時域圖的振幅大小與性別無關(guān),只與說話人音量大小有關(guān),音量越大,振幅越大。頻率圖中,女生高 27
頻成分較多。
4.疊加噪聲后,噪聲與原信號明顯區(qū)分,但通過低通濾波器后,噪聲沒有濾除,信號產(chǎn)生失真。原因可能為噪聲與信號頻率相近無法濾除。
第2部分 課程設(shè)計總結(jié)
通過本次課程設(shè)計,使我們對數(shù)字信號處理相關(guān)知識有了更深刻的理解,尤其是對各種濾波器的設(shè)計。在設(shè)計的過程中遇到了很多問題,剛剛開始時曾天真的認(rèn)為只要把以前的程序改了參數(shù)就可以用了,可是問題沒有我想象中的那么簡單,單純的搬程序是不能解決問題的。通過查閱資料和請教同學(xué)收獲了很多以前不懂的理論知識。再利用所學(xué)的操作,發(fā)現(xiàn)所寫的程序還是沒有能夠運行,通過不斷地調(diào)試,運行,最終得出了需要的結(jié)果。整個過程中學(xué)到了很多新的知識,特別是對Matlab的使用終于有些了解。在以后的學(xué)習(xí)中還需要深入了解這方面的內(nèi)容。在這次的課程設(shè)計中讓我體會最深的是:知識來不得半點的馬虎。也認(rèn)識到自己的不足,以后要進(jìn)一步學(xué)習(xí)。
八.參考文獻(xiàn)
[1]數(shù)字信號處理教程(第三版)程佩青 清華大學(xué)出版社 [2]MATLAB信號處理 劉波 文忠 電子工業(yè)出版社 [3]MATLAB7.1及其在信號處理中的應(yīng)用 王宏 清華大學(xué)出版社
[4]MATLAB基礎(chǔ)與編程入門 張威 西安電子科技大學(xué)出版社
[5] 數(shù)字信號處理及其MATLAB實驗 趙紅怡 張常 化學(xué)工業(yè)出版社
[6]MATLAB信號處理詳解 陳亞勇等 人民郵電出版社 [7] 數(shù)字信號處理
錢同惠 機械工業(yè)出版社 29
第三篇:數(shù)字信號處理實驗報告
JIANGSU
UNIVERSITY OF TECHNOLOGY
數(shù)字信號處理實驗報告
學(xué)院名稱: 電氣信息工程學(xué)院
專 業(yè):
班 級: 姓 名: 學(xué) 號: 指導(dǎo)老師: 張維璽(教授)
2013年12月20日
實驗一 離散時間信號的產(chǎn)生
一、實驗?zāi)康?/p>
數(shù)字信號處理系統(tǒng)中的信號都是以離散時間形態(tài)存在的,所以對離散時間信號的研究是數(shù)字信號的基本所在。而要研究離散時間信號,首先需要產(chǎn)生出各種離散時間信號。使用MATLAB軟件可以很方便地產(chǎn)生各種常見的離散時間信號,而且它還具有強大繪圖功能,便于用戶直觀地處理輸出結(jié)果。
通過本實驗,學(xué)生將學(xué)習(xí)如何用MATLAB產(chǎn)生一些常見的離散時間信號,實現(xiàn)信號的卷積運算,并通過MATLAB中的繪圖工具對產(chǎn)生的信號進(jìn)行觀察,加深對常用離散信號和信號卷積和運算的理解。
二、實驗原理
離散時間信號是指在離散時刻才有定義的信號,簡稱離散信號,或者序列。離散序列通常用x(n)來表示,自變量必須是整數(shù)。常見的離散信號如下:(1)單位沖激序列δ(n)
如果δ(n)在時間軸上延遲了k個單位,得到δ(n-k),即長度為N的單位沖激序列δ(n)可以通過下面的MATLAB命令獲得。
n=-(N-1):N-1 x=[zeros(1,N-1)1 zeros(1,N-1)]; stem(n,x)延遲K個采樣點的長度為N的單位沖激序列δ(n-k)(k n=0:N-1 y=[zeros(1,M)1 zeros(1,N-M-1)]; stem(n,y) (2)單位階躍序列u(n) 如果u(n)在時間軸上延遲了k個單位,得到u(n-k),即長度為N的單位階躍序列u(n)可以通過下面的MATLAB命令獲得。 n=-(N-1):N-1 x=[zeros(1,N-1)ones(1,N)]; stem(n,x)延遲的單位階躍序列可以使用類似于單位沖激序列的方法獲得。(3)矩形序列 矩形序列有一個重要的參數(shù),就是序列的寬度N。矩形序列與u(n)之間的關(guān)系為矩形序列等= u(n)— u(n-N)。 因此,用MATLAB表示矩形序列可利用上面的單位階躍序列組合而成。(4)正弦序列x(n) 這里,正弦序列的參數(shù)都是實數(shù)。與連續(xù)的正弦信號不同,正弦序列的自變量n必須為整數(shù)。可以證明,只有當(dāng)2π/w為有理數(shù)時,正弦序列具有周期性。 長度為N的正弦序列x(n)可以通過下面的MATLAB命令獲得。n=0:N-1 x=A*cos(2*pi*f*n/Fs+phase)(5)單邊實指數(shù)序列x(n) 長度為N的實指數(shù)序列x(n)可以通過下面的MATLAB命令實現(xiàn)。n=0:N-1 x=a.^n stem(n,x)單邊指數(shù)序列n的取值范圍為n>=0。當(dāng)|a|>1時,單邊指數(shù)序列發(fā)散;當(dāng)|a|<1時,單邊指數(shù)序列收斂。當(dāng)a>0時,該序列均取正值;當(dāng)a<0時,序列在正負(fù)擺動。 (6)負(fù)指數(shù)序列x(n) 當(dāng)a=0時,得到虛指數(shù)序列x(n)。 與連續(xù)負(fù)指數(shù)信號一樣,我們將負(fù)指數(shù)序列實部和虛部的波形分開討論,得到如下結(jié)論: 1)當(dāng)a>0時,負(fù)指數(shù)序列x(n)的實部和虛部分別是按指數(shù)規(guī)律增長的正弦振蕩序列; 2)當(dāng)a<0時,負(fù)指數(shù)序列x(n)的實部和虛部分別是按指數(shù)規(guī)律衰減的正弦振蕩序列; 3)當(dāng)a=0時,負(fù)指數(shù)序列x(n)即為虛指數(shù)序列,其實部和虛部分別是等幅的正弦振蕩序列; 長度為N的實指數(shù)序列x(n)可以通過下面的MATLAB命令實現(xiàn)。n=0:N-1 x=exp((a.+j*w)*n)stem(n,real(x))或 stem(n,imag(x)) 三、實驗內(nèi)容及分析 ?1n?01、編制程序產(chǎn)生單位沖激序列??n???“?并繪出其圖及??n?”學(xué)號后兩位0n?0?形。程序:(1)N=4; n=-(N-1):N-1; x=[zeros(1,N-1)1 zeros(1,N-1)];stem(n,x); title('單位沖激序列'); grid on; (2)N=6; M=1;%學(xué)號01 n=-(N-1):N-1; y=[zeros(1,N-M+1)1 zeros(1,N-M-1)];stem(n,y); title('單位沖激序列');grid on; 分析:在上圖的基礎(chǔ)上向右平移了1個單位。 ?1n?02、編制程序產(chǎn)生單位階躍序列u?n???、u?n?“學(xué)號后兩位”?及 0n?0?u?n??u?n?“學(xué)號后兩位”?,并繪出其圖形。程序: 4 (1)N=5; n=-(N-1):N-1; x=[zeros(1,N-1)ones(1,N)];stem(n,x); title('單位階躍序列');grid on; (2)N=6; M=1;%學(xué)號01 n=-(N-1):N-1; x=[zeros(1,N-M+1)ones(1,N-M)];stem(n,x); title('單位階躍序列');grid on; 分析:在上圖的基礎(chǔ)上平移了1個單位.(3)N=6; M=1;%學(xué)號01 n=-(N-1):N-1; x=[zeros(1,N-1)ones(1,N)];y=[zeros(1,N-M+1)ones(1,N-M)];z=x-y;stem(n,z); title('單位階躍序列');grid on; 2?? 3、編制程序產(chǎn)生正弦序列x?n??cos?2?n?、x?n??cos??n?及 ?學(xué)號后兩位?x?n??sin?2n?并繪出其圖形。 程序:(1)N=5; A=1; w=2*pi;phi=0;n=0:0.05:N-1;x=A*cos(w*n+phi);stem(n,x);title('余弦信號');grid on; 分析:該序列具有周期性,且輸出為余弦信號.(2)N=5; A=1; w=2*pi/1;%學(xué)號01 phi=0;n=0:0.05:N-1;x=A*cos(w*n+phi);stem(n,x);title('余弦信號');grid on; ; 分析:該序列具有周期性,且輸出為余弦信號.(3)N=5; A=1; w=2*pi;phi=0; n=0:0.05:N-1;x=A*sin(w*n+phi);stem(n,x);title('正弦信號');grid on; 分析:該序列具有周期性,且輸出為正弦信號.4、編制程序產(chǎn)生復(fù)正弦序列x?n??e(2?j學(xué)號后兩位)n,并繪出其圖形。N=3; n=0:0.2:N-1; w=1;%學(xué)號01 x=exp((2+j*w)*n);subplot(2,1,1) stem(n,real(x)),title('實部');grid on;subplot(2,1,2) stem(n,imag(x)),title('虛部');grid on; 5、編制程序產(chǎn)生指數(shù)序列x?n??an,并繪出其圖形。其中a=學(xué)號后兩位、a=1/“學(xué)號后兩位”。 (1)N=10; n=0:N-1; a=1;%學(xué)號01 x=a.^n;stem(n,x);title('指數(shù)序列');grid on; (2)N=10; n=0:N-1; a=1;%學(xué)號01 x=a.^(-n);stem(n,x);title('指數(shù)序列');grid on; 實驗三 離散時間信號的頻域分析 一、實驗?zāi)康?/p> 信號的頻域分析是信號處理中一種有效的工具。在離散信號的頻域分析中,通常將信號表示成單位采樣序列的線性組合,而在頻域中,將信號表示成復(fù)變量或的線性組合。通過這樣的表示,可以將時域的離散序列映射到頻域以便于進(jìn)一步的處理。 在本實驗中,將學(xué)習(xí)利用MATLAB計算離散時間信號的DTFT和DFT,并加深對其相互關(guān)系的理解。 二、實驗原理 (1)DTFT和DFT的定義及其相互關(guān)系。 (2)使用到的MATLAB命令有基于DTFT離散時間信號分析函數(shù)以及求解序列的DFT函數(shù)。 三、實驗內(nèi)容及分析 (1)編程計算并畫出下面DTFT的實部、虛部、幅度和相位譜。 X(e)?jw0.0518?0.1553e1?1.2828ex(n)?cos?jw?jw?0.1553e?j2w?1.0388e?j2w?0.0518e?j3w?0.3418e?j3w (2)計算32點序列 5?n16,0≦n≦31的32點和64點DFT,分別繪出幅度譜圖形,并繪出該序列的DTFT圖形。 3-1 clear; x=[0.0518,-0.1553,0.1553,0.0518];y=[1,1.2828,1.0388,0.3418];w=[0:500]*pi/500 H=freqz(x,y,w); magX=abs(H);angX=angle(H);realX=real(H);imagX=imag(H);subplot(221);plot(w/pi,magX);grid; xlabel('frequency in pi unit');ylabel('magnitude');title('幅度 part');axis([0 0.9 0 1.1]); subplot(223);plot(w/pi,angX);grid; xlabel('frequency in pi unit');ylabel('radians');title('相位 part');axis([0 1-3.2 3.2]); subplot(222);plot(w/pi,realX);grid; xlabel('frequency in pi unit');ylabel('real part');title('實部 part');axis([0 1-1 1]); subplot(224);plot(w/pi,imagX);grid; xlabel('frequency in pi unit');ylabel('imaginary');title('虛部 part');axis([0 1-1 1.1]); 3-2 N=32;n=0:N-1; xn=cos(5*pi*n/16);k=0:1:N-1;Xk=fft(xn,N);subplot(2,1,1);stem(n,xn);subplot(2,1,2);stem(k,abs(Xk));title('32點');figure N=64;n=0:N-1; xn=cos(5*pi*n/16);k=0:1:N-1;Xk=fft(xn,N);subplot(2,1,1);stem(n,xn);subplot(2,1,2);stem(k,abs(Xk));title('64點'); (1) (2) 實驗四 離散時間LTI系統(tǒng)的Z域分析 一、實驗?zāi)康?/p> 本實驗通過使用MATLAB函數(shù)對離散時間系統(tǒng)的一些特性進(jìn)行仿真分析,以加深對離散時間系統(tǒng)的零極點、穩(wěn)定性,頻率響應(yīng)等概念的理解。學(xué)會運用MATLAB分析離散時間系統(tǒng)的系統(tǒng)函數(shù)的零極點;學(xué)會運用MATLAB分析系統(tǒng)函數(shù)的零極點分布與其時域特性的關(guān)系;學(xué)會運用MATLAB進(jìn)行離散時間系統(tǒng)的頻率特性分析。 二、實驗原理 離散時間系統(tǒng)的系統(tǒng)函數(shù)定義為系統(tǒng)零狀態(tài)響應(yīng)的Z變化與激勵的Z變化之比。 在MATLAB中系統(tǒng)函數(shù)的零極點可通過函數(shù)roots得到,也可借助函數(shù)tf2zp得到,tf2zp的語句格式為 [Z,P,K]=tf2zp(B,A)其中,B與A分別表示H(z)的分子與分母多項式的系數(shù)向量。它的作用是將H(z)的有理分式表示式轉(zhuǎn)換為零極點增益形式。 若要獲得系統(tǒng)函數(shù)H(z)的零極點分布圖,可直接應(yīng)用zplane函數(shù),其語句格式為 Zplane(B,A) 其中,B與A分別表示H(z)的分子和分母多項式的系數(shù)向量。它的作用是在z平面上畫出單位圓、零點與極點。 離散系統(tǒng)中z變化建立了時域函數(shù)h(n)與z域函數(shù)H(z)之間的對應(yīng)關(guān)系。因此,z變化的函數(shù)H(z)從形式可以反映h(n)的部分內(nèi)在性質(zhì)??筛鶕?jù)系統(tǒng)的傳遞函數(shù)H(z)求單位沖激響應(yīng)h(n)的函數(shù)impz、filter等。 利用系統(tǒng)的頻率響應(yīng),可以分析系統(tǒng)對各種頻率成分的響應(yīng)特性,并推出系統(tǒng)的特性(高通、低通、帶通、帶阻等)。 MATLAB提供了求離散時間系統(tǒng)頻響特性的函數(shù)freqz,調(diào)用freqz的格式主要有兩種。一種形式為 [H,w]= reqz(B,A,N)其中,B與A分別表示H(z)分子和分母多項式的系數(shù)向量;N為正整數(shù),默認(rèn)值為512;返回值w包含[0,π]范圍內(nèi)的N個頻率等分點;返回值H則是離散時間系統(tǒng)頻率響應(yīng)在0~π范圍內(nèi)N個頻率處的值。另一種形式為 [H,w]= freqz(B,A,N,‘whole’) 與第一種方式不同之處在于角頻率的范圍由[0,π]擴展到[0,2π]。 三、實驗內(nèi)容與結(jié)果分析 已知LTI離散時間系統(tǒng),要求由鍵盤實現(xiàn)系統(tǒng)參數(shù)輸入,并繪出幅頻和相頻響應(yīng)曲線和零極點分布圖,進(jìn)而分析系統(tǒng)的濾波特性和穩(wěn)定性。 (一)程序 b=[0.0528,0.797,0.1295,0.1295,0.797,0.0528]; a=[1,-1.8107,2.4947,-1.8801,0.9537,-0.2336];w=[0:20:500]*pi/500; x1=0.0528+0.797*exp(-1*j*w)+0.1295*exp(-2*j*w)+0.1295*exp(-3*j*w)+0.797*exp(-4*j*w)+0.0528*exp(-5*j*w); x2=1-1.8107*exp(-1*j*w)+2.4947*exp(-2*j*w)+1.8801*exp(-3*j*w)+0.9537*exp(-4*j*w)+0.2336*exp(-5*j*w);x22=x2+(x2==0)*eps;x=x1./x22;magx=abs(x); angx=angle(x).*180/pi; subplot(2,2,3);zplane(b,a);title('零極點圖');subplot(2,2,2);stem(w/pi,magx);title('幅度部分');ylabel('振幅');subplot(2,2,4);stem(w/pi,angx); xlabel('以pi為單位的頻率');title('相位部分');ylabel('相位'); (二)波形圖 圖4-1 幅頻、相頻響應(yīng)曲線、零極點分布圖 實驗六 IIR數(shù)字濾波器的設(shè)計 一、實驗?zāi)康?/p> 從理論上講,任何的線性是不變(LTI)離散時間系統(tǒng)都可以看做一個數(shù)字濾波器,因此設(shè)計數(shù)字濾波器實際就是設(shè)計離散時間系統(tǒng)。數(shù)字濾波器你包括IIR(無限沖激響應(yīng))和FIR(有限沖激響應(yīng))型,在設(shè)計時通常采用不同的方法。 本實驗通過使用MATLAB函數(shù)對數(shù)字濾波器進(jìn)行設(shè)計和和實現(xiàn),要求掌握IIR數(shù)字巴特沃斯濾波器、數(shù)字切比雪夫濾波器的設(shè)計原理、設(shè)計方法和設(shè)計步驟;能根據(jù)給定的濾波器指標(biāo)進(jìn)行濾波器設(shè)計;同時也加深學(xué)生對數(shù)字濾波器的常用指標(biāo)和設(shè)計過程的理解。 二、實驗原理 在IIR濾波器的設(shè)計中,常用的方法是:先根據(jù)設(shè)計要求尋找一個合適的模擬原型濾波器,然后根據(jù)一定的準(zhǔn)則將此模擬原型濾波器轉(zhuǎn)換為數(shù)字濾波器。 IIR濾波器的階數(shù)就等于所選的模擬原型濾波器的階數(shù),所以其階數(shù)確定主要是在模擬原型濾波器中進(jìn)行的。 IIR數(shù)字濾波器的設(shè)計方法如下:(1)沖激響應(yīng)不變法。(2)雙線性變化法。 一般來說,在要求時域沖激響應(yīng)能模仿模擬濾波器的場合,一般使用沖激響應(yīng)不變法。沖激響應(yīng)不變法一個重要特點是頻率坐標(biāo)的變化是線性的,因此如果模擬濾波器的頻率響應(yīng)帶限于折疊頻率的話,則通過變換后濾波器的頻率響應(yīng)可不失真地反映原響應(yīng)與頻率的關(guān)系。 與沖激響應(yīng)不變法比較,雙線性變化的主要優(yōu)點是靠頻率的非線性關(guān)系得到s平面與z平面的單值一一對應(yīng)關(guān)系,整個值對應(yīng)于單位圓一周。所以從模擬傳遞函數(shù)可直接通過代數(shù)置換得到數(shù)字濾波器的傳遞函數(shù)。 MATLAB提供了一組標(biāo)準(zhǔn)的數(shù)字濾波器設(shè)計函數(shù),大大簡化了濾波器的設(shè)計工程。 (1)butter。 (2)cheby1、cheby2。 三、實驗內(nèi)容及分析 利用MATLAB編程方法或利用MATLAB中fdatool工具設(shè)計不同功能的IIR數(shù)字濾波器。 1、基于chebyshev I型模擬濾波器原型使用沖激不變轉(zhuǎn)換方法設(shè)計數(shù)字濾波器,要求參數(shù)為通帶截止頻率?p?0.4?;通帶最大衰減Ap?1dB;阻帶截止頻率?s?0.4?;阻帶最小衰減As?35dB。 程序: wp=0.2*pi; %通帶邊界頻率 ws=0.4*pi; %阻帶截止頻率 rp=1; %通帶最大衰減 rs=35; %阻帶最小衰減 Fs=1000; %?ùéè3é?ù??3?1000hz [N,Wn]=cheb1ord(wp,ws,rp,rs,'s'); [Z,P,K]=cheby1(N,rp,Wn,'s');[H,W]=zp2tf(Z,P,K); figure(1);freqs(H,W);[P,Q]=freqs(H,W);figure(2);plot(Q*Fs/(2*pi),abs(P));grid on; xlabel('頻率/Hz');ylabel('幅度'); 2、基于Butterworth型模擬濾波器原型使用雙線性變換方法設(shè)計數(shù)字濾波器的,要求參數(shù)為截止頻率?p?0.4?;通帶最大衰減Ap?1dB;阻帶截止頻率?s?0.25?;阻帶最小衰減AS?40dB。程序: wp=0.4*pi;ws=0.25*pi;rp=1;rs=40;fs=500;ts=1/fs;wp1=wp*ts;ws1=ws*ts; wp2=2*fs*tan(wp1/2);ws2=2*fs*tan(ws1/2); [N,Wn]=buttord(wp2,ws2,rp,rs,'s');[Z,P,K]=buttap(N);[Bap,Aap]=zp2tf(Z,P,K);[b,a]=lp2lp(Bap,Aap,Wn);[bz,az]=bilinear(b,a,fs);[H,W]=freqz(bz,az);subplot(2,1,1);plot(W/pi,abs(H));grid on;xlabel('頻率')ylabel('幅度')subplot(2,1,2); plot(W/pi,20*log10(abs(H)));grid on;xlabel('頻率');ylabel('幅度(dB)'); 實驗七 FIR數(shù)字濾波器的設(shè)計 一、實驗?zāi)康?/p> 掌握用窗函數(shù)設(shè)計FIR數(shù)字濾波的原理及其設(shè)計步驟;熟悉線性相位數(shù)字濾波器的特性。學(xué)習(xí)編寫數(shù)字濾波器的設(shè)計程序的方法,并能進(jìn)行正確編程;根據(jù)給定的濾波器指標(biāo),給出設(shè)計步驟。 二、實驗原理 如果系統(tǒng)的沖激響應(yīng)h(n)為已知,則系統(tǒng)的輸入輸出關(guān)系為 y(n)=x(n)*h(n) 對于低通濾波器,只要設(shè)計出低通濾波器的沖激響應(yīng)函數(shù),就可以由式得到系統(tǒng)的輸出了。 但是將h(n)作為濾波器的脈沖響應(yīng)有兩個問題:一是它是無限長的;二是它是非因果的。對此,采取兩項措施:一是將h(n)截短;二是將其右移。 設(shè)計時,要根據(jù)阻帶的最小衰減和過渡帶寬度來選擇恰當(dāng)?shù)拇昂瘮?shù)類型和窗口長度N。常用的窗函數(shù)有矩形窗、海明窗和布萊克曼窗等。 窗函數(shù)設(shè)計FIR濾波器步驟如下: (1)給定理想頻率響應(yīng)的幅頻特性和相頻特性; (2)求理想單位脈沖響應(yīng),在實際計算中,可對理想頻率響應(yīng)采樣。(3)根據(jù)過渡帶寬度和阻帶最小衰減,確定窗函數(shù)類型和窗口長度N;(4)求FIR濾波器單位脈沖響應(yīng); (5)分析幅頻特性,若不滿足要求,可適當(dāng)改變窗函數(shù)形式或長度N,重復(fù)上述設(shè)計過程,以得到滿意的結(jié)果。 三、實驗內(nèi)容及分析 1、分別用海明窗和布萊克曼窗設(shè)計一個48階的FIR帶通濾波器,通帶為Wn??0.450.55?。程序1:海明窗設(shè)計 N=48; Window=hamming(N+1);w1=0.45;w2=0.55;ws=[w1,w2]; b=fir1(N,ws/pi,Window);freqz(b,1,512);title('海明窗');grid on; 程序2:萊克曼窗設(shè)計 N=48; Window=blackman(N+1);w1=0.45;w2=0.55;ws=[w1,w2]; b=fir1(N,ws/pi,Window);freqz(b,1,512);title('布萊克曼窗');grid on; 2、用矩形窗設(shè)計一個線性相位高通濾波器。其中He??jw?e?j????????00.3????? 0???0.3?程序: N=9; alpha=(N-1)/2;Wc=0.7*pi;n=(0:8);i=n-alpha;i=i+(i==0)*eps; h=(-1).^n.*sin((i).*Wc)./((i).*pi);%矩形窗函數(shù)設(shè)計的系統(tǒng)脈沖響應(yīng) w=(0:1:500)*2*pi/500; H=h*exp(-j*n'*w);%矩形窗函數(shù)設(shè)計的頻響 magH=abs(H);% 矩形窗函數(shù)設(shè)計的振幅 subplot(211);stem(n,h); axis([0,8,-0.4,0.4]);title('矩形窗設(shè)計h(n)');line([0,10],[0,0]);xlabel('n');ylabel('h');subplot(212);plot(w/pi,magH); xlabel('以pi為單位的頻率');ylabel('H振幅');axis([0,2,0,1.7]);title('矩形窗設(shè)計振幅譜'); 實驗心得體會: 這次實驗使我進(jìn)一步加深了對MATLAB軟件的使用。從上次的信號系統(tǒng)實驗的初步使用到這一次的深入了解,有了更深刻的認(rèn)識。對這種語言環(huán)境也有了新的了解。 在實驗的過程中,我對數(shù)字濾波器的整個過程有了很好的理解和掌握。IIR數(shù)字濾波器的設(shè)計讓我知道了巴特沃思濾波器和切比雪夫濾波器的頻率特性,還有雙線性變換及脈沖響應(yīng)不變法設(shè)計的濾波器的頻率特性。做這兩個實驗的時候程序有點困難,但經(jīng)過細(xì)心的改寫圖形最終出來了。FIR數(shù)字濾波器的設(shè)計出來的是兩種窗的圖形,通過兩種窗的比較,我了解了他們各自的特點,幅頻和相頻特性。 最后,感謝張老師對我的諄諄教導(dǎo)! 目 錄 摘要...........................................................................................................................................1 1 緒論..............................................................................................................................................2 1.1 DSP系統(tǒng)特點和設(shè)計基本原則......................................................................................2 1.2 國內(nèi)外研究動態(tài).............................................................................................................2 2系統(tǒng)設(shè)計........................................................................................................................................3 3硬件設(shè)計........................................................................................................................................5 3.1 硬件結(jié)構(gòu)...........................................................................................................................5 3.2 硬件電路設(shè)計...................................................................................................................7 3.2.1 總輸入電路...........................................................................................................7 3.2.2 總輸出電路...........................................................................................................7 3.2.3 語音輸入電路.......................................................................................................9 3.2.4 語音輸出電路.......................................................................................................9 實驗結(jié)果及分析.........................................................................................................................10 4.1 實驗結(jié)果.........................................................................................................................10 4.2 實驗分析.........................................................................................................................12 5 總結(jié)與心得體會.........................................................................................................................13 參考文獻(xiàn).........................................................................................................................................14 致謝................................................................................................................................................15 摘要 基于DSP的語音信號處理系統(tǒng),該系統(tǒng)采用TMS320VC5509作為主處理器,TLV320AIC23B作為音頻芯片,在此基礎(chǔ)上完成系統(tǒng)硬件平臺的搭建和軟件設(shè)計,從而實現(xiàn)對語音信號的采集、濾波和回放功能,它可作為語音信號處理的通用平臺。 語音是人類相互之間進(jìn)行交流時使用最多、最自然、最基本也是最重要的信息載體。在高度信息化的今天,語音信號處理是信息高速公路、多媒體技術(shù)、辦公自動化、現(xiàn)代通信及智能系統(tǒng)等新興領(lǐng)域應(yīng)用的核心技術(shù)之一。通常這些信號處理的過程要滿足實時且快速高效的要求,隨著DSP技術(shù)的發(fā)展,以DSP為內(nèi)核的設(shè)備越來越多,為語音信號的處理提供了良好的平臺。本文設(shè)計了一個基于TMS320VC5509定點的語音信號處理系統(tǒng),實現(xiàn)對語音信號的采集、處理與回放等功能,為今后復(fù)雜的語音信號處理算法的研究和實時實現(xiàn)提供一個通用平臺。 關(guān)鍵詞:語音處理;DSP;TMS320VC5509;TLV320AIC23B 1 緒論 語音是人類相互間所進(jìn)行的通信的最自然和最簡潔方便的形式,語音通信是一種理想的人機通信方式。語音通信的研究涉及到人工智能、數(shù)字信號處理、微型計算機技術(shù)、語言聲學(xué)、語言學(xué)等許多領(lǐng)域,所以說語音的通信是一個多學(xué)科的綜合研究領(lǐng)域,其研究成果具有重要的學(xué)術(shù)價值。另外通過語音來傳遞信息是人類最重要的、最有效、最常用的交換信息的形式。語言是人類特有的功能,聲音是人類常用的工具,是相互傳遞信息的主要手段。同時也是眾構(gòu)成思想交流和感情溝通的最主要的途徑。 1.1 DSP系統(tǒng)特點和設(shè)計基本原則 DSP(digital signal processor)是一種獨特的微處理器,是以數(shù)字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉(zhuǎn)換為0或1的數(shù)字信號。再對數(shù)字信號進(jìn)行修改、刪除、強化,并在其他系統(tǒng)芯片中把數(shù)字?jǐn)?shù)據(jù)解譯回模擬數(shù)據(jù)或?qū)嶋H環(huán)境格式。它不僅具有可編程性,而且其實時運行速度可達(dá)每秒數(shù)以千萬條復(fù)雜指令程序,遠(yuǎn)遠(yuǎn)超過通用微處理器,是數(shù)字化電子世界中日益重要的電腦芯片。它的強大數(shù)據(jù)處理能力和高運行速度,是最值得稱道的兩大特色。 1.2 國內(nèi)外研究動態(tài) 語音信號處理作為一個重要的研究領(lǐng)域,已經(jīng)有很長的研究歷史。但是它的快速發(fā)展可以說是從1940年前后Dudley的聲碼器和Potter等人的可見語音開始的;20世紀(jì)60年代中期形成的一系列數(shù)字信號處理的理念和技術(shù)基礎(chǔ);到了80年代,由于矢量量化、隱馬爾可夫模型和人工神經(jīng)網(wǎng)絡(luò)等相繼被應(yīng)用于語音信號處理,并經(jīng)過不斷改進(jìn)與完善,使得語音信號處理技術(shù)產(chǎn)生了突破性的進(jìn)展。一方面,對聲學(xué)語音學(xué)統(tǒng)計模型的研究逐漸深入,魯棒的語音識別、基于語音段的建模方法及隱馬爾可夫模型與人工神經(jīng)網(wǎng)絡(luò)的結(jié)合成為研究的熱點。另一方面,為了語音識別實用化的需要,講者自適應(yīng)、聽覺模型、快速搜索識別算法以及進(jìn)一步的語言模型的研究等課題倍受關(guān)注。 在通信越來越發(fā)達(dá)的當(dāng)今世界,尤其最近幾十年,語音壓縮編碼技術(shù)在移動 通信、IP電話通信、保密通信、衛(wèi)星通信以及語音存儲等很多方面得到了廣泛的應(yīng)用。因此,語音編碼一直是通信和信號處理的研究熱點,并其取得了驚人的進(jìn)展,目前在PC機上的語音編碼已經(jīng)趨于成熟,而如何在嵌入式系統(tǒng)中實時實現(xiàn)語音壓縮編碼則是近些年來語音信號處理領(lǐng)域的研究熱點之一。 2系統(tǒng)設(shè)計 在實際生活中,當(dāng)聲源遇到物體時會發(fā)生反射,反射的聲波和聲源聲波一起傳輸,聽者會發(fā)現(xiàn)反射聲波部分比聲源聲波慢一些,類似人們面對山體高聲呼喊后可以在過一會兒聽到回聲的現(xiàn)象。聲音遇到較遠(yuǎn)物體產(chǎn)生的反射會比遇到較近的反射波晚些到達(dá)聲源位置,所以回聲和原聲的延遲隨反射物體的距離大小改變。同時,反射聲音的物體對聲波的反射能力,決定了聽到的回聲的強弱和質(zhì)量。另外,生活中的回聲的成分比較復(fù)雜,有反射、漫反射、折射,還有回聲的多次反射、折射效果。 當(dāng)已知一個數(shù)字音源后,可以利用計算機的處理能力,用數(shù)字的方式通過計算模擬回聲效應(yīng)。簡單的講,可以在原聲音流中疊加延遲一段時間后的聲流,實現(xiàn)回聲效果。當(dāng)然通過復(fù)雜運算,可以計算各種效應(yīng)的混響效果。如此產(chǎn)生的回聲,我們稱之為數(shù)字回聲。 本次實驗的程序流程圖如下: 圖2.1 程序流程圖 本次實驗的系統(tǒng)框圖如下: 圖2.2 系統(tǒng)框圖 3硬件設(shè)計 3.1 硬件結(jié)構(gòu) 圖3.1是系統(tǒng)的硬件結(jié)構(gòu)框圖, 系統(tǒng)主要包括VC5509和A IC23 兩個模塊。 圖3.1系統(tǒng)硬件結(jié)構(gòu)框圖 利用VC5509 的片上外設(shè)I2C(Inter-Integrated Circuit, 內(nèi)部集成電路)模塊配置AIC23 的內(nèi)部寄存器;通過VC5509 的McBSP(Multi channel Buffered Serial Ports, 多通道緩存串口)接收和發(fā)送采樣的音頻數(shù)據(jù)??刂仆ǖ乐辉谂渲肁IC23 的內(nèi)部寄存器時工作, 而當(dāng)傳輸音頻數(shù)據(jù)時則處于閑置狀態(tài)。 AIC23通過麥克風(fēng)輸入或者立體聲音頻輸入采集模擬信號, 并把模擬信號轉(zhuǎn)化為數(shù)字信號, 存儲到DSP的內(nèi)部RAM中,以便DSP處理。 當(dāng)DSP完成對音頻數(shù)據(jù)的處理以后, AIC23再把數(shù)字信號轉(zhuǎn)化為模擬信號, 這樣就能夠在立體聲輸出端或者耳機輸出端聽到聲音。 AIC23能夠?qū)崿F(xiàn)與VC5509 DSP的McBSP端口的無縫連接, 使系統(tǒng)設(shè)計更加簡單。接口的原理框圖, 如下圖所示。 圖3.2 AIC23與VC5509接口原理圖 系統(tǒng)中A IC23的主時鐘12 MHz直接由外部的晶振提供。MODE接數(shù)字地, 表示利用I2 C控制接口對AIC23傳輸控制數(shù)據(jù)。CS接數(shù)字地, 定義了I2 C總線上AIC23的外設(shè)地址, 通過將CS接到高電平或低電平, 可以選擇A IC23作為從設(shè)備在I2 C總線上的地址。SCLK和SDIN是AIC23控制端口的移位時鐘和數(shù)據(jù)輸入端,分別與VC5509的I2C模塊端口SCL和SDA相連。 收發(fā)時鐘信號CLKX1和CLKR1由A IC23的串行數(shù)據(jù)輸入時鐘BCLK提供, 并由A IC23的幀同步信號LRCIN、LRCOUT啟動串口數(shù)據(jù)傳輸。DX1和DR1分別與A IC23 的D IN 和DOUT 相連, 從而完成VC5509與AIC23間的數(shù)字信號通信。 3.2 硬件電路設(shè)計 3.2.1 總輸入電路 圖3.3 總輸入電路 從左到右各部分電路為: 話筒,開關(guān),語音輸入電路,UA741高增益放大電路,有源二階帶 通濾波器。 3.2.2 總輸出電路 圖3.4 總輸出電路 從左到右各部分電路為: LM386高頻功率放大器及其外圍器件連接電路,語音輸出電路,開關(guān),揚聲器。 3.2.3 語音輸入電路 圖3.5語音輸入電路 3.2.4 語音輸出電路 圖3.6 語音輸出電路 語音信號通道包括模擬輸入和模擬輸出兩個部分。模擬信號的輸入輸出電路如圖所示。上圖中MICBIAS 為提供的麥克風(fēng)偏壓,通常是3/4 AVDD,MICIN為麥克風(fēng)輸入,可以根據(jù)需要調(diào)整輸入增益。下圖中LLINEOUT 為左聲道輸出,RLINEOUT為右聲道輸出。用戶可以根據(jù)電阻阻值調(diào)節(jié)增益的大小,使語音輸入輸出達(dá)到最佳效果。從而實現(xiàn)良好的模擬語音信號輸入與模擬信號的輸出。4 實驗結(jié)果及分析 4.1 實驗結(jié)果 按“F5”鍵運行,注意觀察窗口中的bEcho=0,表示數(shù)字回聲功能沒有激活。這時從耳機中能聽到麥克風(fēng)中的輸入語音放送。將觀察窗口中bEcho的取值改成非0值。這時可從耳機中聽到帶數(shù)字回聲道語音放送。 分別調(diào)整uDelay和uEffect的取值,使他們保持在0-1023范圍內(nèi),同時聽聽耳機中的輸出有何變化。 當(dāng)uDelay和uEffect的數(shù)值增大時,數(shù)字回聲的效果就會越加的明顯。 圖4.1 修改前程序圖 圖4.2 修改前程序圖 圖4.3 頻譜分析 圖4.4 左聲道及右聲道波形 4.2 實驗分析 所以,從本實驗可知當(dāng)已知一個數(shù)字音源后,可以利用計算機的處理能力,用數(shù)字的方式通過計算模擬回聲效應(yīng)。簡單的講,可以在原聲音流中疊加延遲一段時間后的聲流,實現(xiàn)回聲效果。當(dāng)然通過復(fù)雜運算,可以計算各種效應(yīng)的混響效果。 聲音放送可以加入數(shù)字回聲,數(shù)字回聲的強弱和與原聲的延遲均可在程序中設(shè)定和調(diào)整。5 總結(jié)與心得體會 通過本次課程設(shè)計,我明白了細(xì)節(jié)決定成敗這句話的道理,在實驗中,有很多注意的地方,都被忽視了,導(dǎo)致再花費更多的時間去修改,這嚴(yán)重影響了試驗的進(jìn)度。同時,在本次實驗中我了解了ICETEK – VC5509 – A板上語音codec芯片TLV320AIC23的設(shè)計和程序控制原理,并進(jìn)一步掌握了數(shù)字回聲產(chǎn)生原理、編程及其參數(shù)選擇、控制,以及了解了VC5509DSP擴展存儲器的編程使用方法。 這一學(xué)期的理論知識學(xué)習(xí)加上這次課程設(shè)計,使我對DSP有了更加深刻的了解,對數(shù)字信號的處理功能,軟硬件相結(jié)合,語音信號的采集與放送等等方面都有了很深的了解,相信本次課程設(shè)計,無論是對我以后的學(xué)習(xí),還是工作等方面都有一個很大的幫助。因此,本次課程設(shè)計讓我受益匪淺。 參考文獻(xiàn) [1]李利.DSP原理及應(yīng)用[M].北京:中國水利水電出版社,2004.[2]王安民,陳明欣,朱明.TMS320C54xxDSP實用技術(shù)[M].北京:清華大學(xué)出版社,2007 [3]彭啟琮,李玉柏.DSP技術(shù)[M].成都:電子科技大學(xué)出版社,1997 [4]李宏偉,等.基于幀間重疊譜減法的語音增強方法[J].解放軍理工大學(xué)學(xué)報,2001(1):41~44 [5]TexasInstrumentsIncorporated.TMS320C54x系列DSP的CPU與外設(shè)[M].梁曉雯,裴小平,李玉虎,譯.北京:清華大學(xué)出版社,2006 [6]趙力.語音信號處理[M].北京:機械工業(yè)出版社,2003比較圖4和圖5,可以看到1200Hz以上的頻譜明顯得到了抑制。 [7]江濤,朱光喜.基于TMS320VC5402的音頻信號采集與系統(tǒng)處理[J].電子技術(shù)用,2002,28(7):70~72[8]TexasInstrumentsIncorporated:TMS320VC5402Datasheet,2001 致謝 在本次課程設(shè)計的即將完成之際,筆者的心情無法平靜,本文的完成既是筆者孜孜不倦努力的結(jié)果,更是指導(dǎo)老師樊洪斌老師親切關(guān)懷和悉心指導(dǎo)的結(jié)果。在整個課程設(shè)計的選題、研究和撰寫過程中,老師都給了我精心的指導(dǎo)、熱忱的鼓勵和支持,他的精心點撥為我開拓了研究視野,修正了寫作思路,對課程設(shè)計的完善和質(zhì)量的提高起到了關(guān)鍵性的作用。另外,導(dǎo)師嚴(yán)謹(jǐn)求實的治學(xué)態(tài)度、一絲不茍的工作作風(fēng)和高尚的人格魅力,都給了學(xué)生很大感觸,使學(xué)生終生受益。在此,學(xué)生謹(jǐn)向老師致以最真摯的感激和最崇高的敬佩之情。 另外,還要感謝這段時間來陪我一起努力同學(xué),感謝我們這個小團隊,感謝每一個在學(xué)習(xí)和生活中所有給予我關(guān)心、支持和幫助的老師和同學(xué)們,幾年來我們一起學(xué)習(xí)、一起玩耍,共同度過了太多的美好時光。我們始終是一個團結(jié)、友愛、積極向上的集體。 南京郵電大學(xué) 實 驗 報 告 實驗名稱_____熟悉MATLAB環(huán)境 ___ 快速傅里葉變換及其應(yīng)用 ____IIR數(shù)字濾波器的設(shè)計_ FIR數(shù)字濾波器的設(shè)計 課程名稱 數(shù)字信號處理A 班級學(xué)號_______09002111___________ 姓 名 王都超 開課時間 2011/2012學(xué)年,第 二 學(xué)期 實驗一 熟悉MATLAB環(huán)境 一、實驗?zāi)康?/p> (1)熟悉MATLAB的主要操作命令。(2)學(xué)會簡單的矩陣輸入和數(shù)據(jù)讀寫。(3)掌握簡單的繪圖命令。 (4)用MATLAB編程并學(xué)會創(chuàng)建函數(shù)。(5)觀察離散系統(tǒng)的頻率響應(yīng)。 二、實驗內(nèi)容 (1)數(shù)組的加、減、乘、除和乘方運算。輸入A=[1 2 3 4],B=[3,4,5,6],求 C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B。并用stem語句畫出A、B、C、D、E、F、G。 D = -2 E = F = 0.3333 0.5000 0.6000 0.6667 G = 243 4096(2)用MATLAB實現(xiàn)下列序列: a)x(n)?0.8n 0?n?1 5n=0:1:15;x1=0.8.^n;a=(0.2+3*i)*n;stem(x1)b)x(n)?e(0.2?3j)n 0?n?15 n=0:1:15;x2=exp(a);a=(0.2+3*i)*n;stem(x2) c)x(n)?3cos(0.125?n?0.2?)?2sin(0.25?n?0.1?) 0?n?15 (4)繪出下列時間函數(shù)的圖形,對x軸、y軸以及圖形上方均須加上適當(dāng)?shù)臉?biāo)注: a)x(t)?sin(2?t)0?t?10s b)x(t)?cos(100?t)sin(?t)0?t?4s t=0:0.01:4;x=cos(100*pi*t).*sin(pi*t);plot(t,x, 'r-');xlabel('t'),ylabel('x(t)'),title('cos') (6)給定一因果系統(tǒng)H(z)?(1?頻響應(yīng)和相頻響應(yīng)。 2z?1?z?2)/(1?0.67z?1?0.9z?2),求出并繪制H(z)的幅 (7)計算序列{8-2-1 2 3}和序列{2 3-1-3}的離散卷積,并作圖表示卷積結(jié)果。 (8)求以下差分方程所描述系統(tǒng)的單位脈沖響應(yīng)h(n), 0?n?50 y(n)?0.1y(n?1)?0.06y(n?2)?x(n)?2x(n?1) 實驗過程與結(jié)果(含實驗程序、運行的數(shù)據(jù)結(jié)果和圖形); clear all;N=50;a=[1-2];b=[1 0.1-0.06];x1=[1 zeros(1,N-1)];n=0:1:N-1;h=filter(a,b,x1);stem(n,h)axis([-1 53-2.5 1.2]) 實驗二 快速傅里葉變換及其應(yīng)用 一、實驗?zāi)康?/p> (1)在理論學(xué)習(xí)的基礎(chǔ)上,通過本實驗,加深對FFT的理解,熟悉MATLAB中的有關(guān)函數(shù)。(2)應(yīng)用FFT對典型信號進(jìn)行頻譜分析。 (3)了解應(yīng)用FFT進(jìn)行信號頻譜分析過程中可能出現(xiàn)的問題,以便在實際中正確應(yīng)用FFT。(4)應(yīng)用FFT實現(xiàn)序列的線性卷積和相關(guān)。 二、實驗內(nèi)容 實驗中用到的信號序列 a)高斯序列 ??(n?p)q?xa(n)??e?0?20?n?15 其他 b)衰減正弦序列 ?e?ansin(2?fn)xb(n)??0?0?n?15其他 c)三角波序列 ?n?xc(n)??8?n?0?0?n?34?n?7 其他 d)反三角波序列 ?4?n?xd(n)??n?4?0?0?n?34?n?7 其他 (1)觀察高斯序列的時域和幅頻特性,固定信號xa(n)中參數(shù)p=8,改變q的值,使q分別等于2,4,8,觀察它們的時域和幅頻特性,了解當(dāng)q取不同值時,對信號序列的時域幅頻特性的影響;固定q=8,改變p,使p分別等于8,13,14,觀察參數(shù)p變化對信號序列的時域及幅頻特性的影響,觀察p等于多少時,會發(fā)生明顯的泄漏現(xiàn)象,混疊是否也隨之出現(xiàn)?記錄實驗中觀察到的現(xiàn)象,繪出相應(yīng)的時域序列和幅頻特性曲線。 (3)觀察三角波和反三角波序列的時域和幅頻特性,用N=8點FFT分析信號序列xc(n)和觀察兩者的序列形狀和頻譜曲線有什么異同?繪出兩序列及其幅頻特性xd(n)的幅頻特性,曲線。 在xc(n)和xd(n)末尾補零,用N=32點FFT分析這兩個信號的幅頻特性,觀察幅頻特性發(fā)生了什么變化?兩種情況的FFT頻譜還有相同之處嗎?這些變化說明了什么? (5)用FFT分別實現(xiàn)xa(n)(p=8,q=2)和xb(n)(a=0.1,f=0.0625)的16點循環(huán)卷積和線性卷積。 n=0:15;p=8;q=2; xa=exp(-(n-p).^2/q);subplot(2,3,1);stem(n,xa,'.');title('xa波形'); Xa=fft(xa,16);subplot(2,3,4);stem(abs(Xa),'.'); title('Xa(k)=FFT[xa(n)]的波形 ');A=1;f=0.0625;a=0.1; xb=exp(-a*n).*sin(2*pi*f*n);subplot(2,3,2);stem(n,xb,'.');title('xb波形');Xb=fft(xb,16);subplot(2,3,5);stem(abs(Xb),'.'); title('Xb(k)=FFT[xb(n)]的波形 '); 實驗過程與結(jié)果(含實驗程序、運行的數(shù)據(jù)結(jié)果和圖形); 實驗三 IIR數(shù)字濾波器的設(shè)計 一、實驗?zāi)康?/p> (1)掌握雙線性變換法及脈沖響應(yīng)不變法設(shè)計IIR數(shù)字濾波器的具體設(shè)計方法及其原理,熟悉用雙線性變換法及脈沖響應(yīng)不變法設(shè)計低通、高通和帶通IIR數(shù)字濾波器的計算機編程。 (2)觀察雙線性變換及脈沖響應(yīng)不變法設(shè)計的濾波器的頻域特性,了解雙線性變換法及脈沖響應(yīng)不變法的特點。 (3)熟悉巴特沃思濾波器、切比雪夫濾波器和橢圓濾波器的頻率特性。 二、實驗內(nèi)容(1)P162 例4.4 設(shè)采樣周期T=250?s(采樣頻率fs=4kHz),分別用脈沖響應(yīng)不變法和雙線性變換法設(shè)計一個三階巴特沃思低通濾波器,其3dB邊界頻率為fc=1kHz。 脈沖響應(yīng)不變法: fc=1000;fs=4000;OmegaC=2*pi*fc;[B,A]=butter(3, OmegaC,'s');[num1,den1]=impinvar(B,A,fs);[h1,w]=freqz(num1,den1);f = w/pi*fs/2;plot(f,abs(h1)); 雙線性變換法: fc=1000;fs=4000; OmegaC=2*fs*tan(pi*fc/fs);[B,A]=butter(3, OmegaC,'s');[num2,den2]=bilinear(B,A,fs);[h2,w]=freqz(num2,den2);f = w/pi*fs/2;plot(f,abs(h2)); 同一圖中畫兩條曲線: fc=1000;fs=4000;OmegaC=2*pi*fc;[B,A]=butter(3, OmegaC,'s');[num1,den1]=impinvar(B,A,fs);[h1,w]=freqz(num1,den1);f = w/pi*fs/2; OmegaC=2*fs*tan(pi*fc/fs);[B,A]=butter(3, OmegaC,'s');[num2,den2]=bilinear(B,A,fs);[h2,w]=freqz(num2,den2);f = w/pi*fs/2;plot(f,abs(h1),'r-.');hold on;plot(f,abs(h2),'g-'); (選做)(2)fc=0.2kHz,?=1dB,fr=0.3kHz,At=25dB,T=1ms;分別用脈沖響應(yīng)不變法及雙線性變換法設(shè)計一巴特沃思數(shù)字低通濾波器,觀察所設(shè)計數(shù)字濾波器的幅頻特性曲線,記錄帶寬和衰減量,檢查是否滿足要求。比較這兩種方法的優(yōu)缺點。 實驗過程與結(jié)果(含實驗程序、運行的數(shù)據(jù)結(jié)果和圖形); 實驗四 FIR數(shù)字濾波器的設(shè)計 一、實驗?zāi)康?/p> (1)掌握用窗函數(shù)法,頻率采樣法及優(yōu)化設(shè)計法設(shè)計FIR濾波器的原理及方法,熟悉相應(yīng)的計算機編程; (2)熟悉線性相位FIR濾波器的幅頻特性和相頻特性; (3)了解各種不同窗函數(shù)對濾波器性能的影響。 二、實驗內(nèi)容 (1)生成一個長度為20的矩形窗,畫出其時域和幅頻特性曲線。n=0:1:19;N=20;win(1:20)=1;[H,w]=freqz(win,1);subplot(2,1,1);stem(n,win)subplot(2,1,2);plot(w,abs(H)); (2)用矩形窗設(shè)計一個21階的線性相位低通FIR數(shù)字濾波器,截止頻率Wc=0.25π,求出濾波器系數(shù),并繪出濾波器的幅頻特性。修改程序,分別得到階次為N=41,61的濾波器,并顯示其各自的幅頻曲線。 a)在上面所得的幾幅圖中,在截止頻率兩邊可以觀察到幅頻響應(yīng)的擺動行為。請問波紋的數(shù)量與濾波器脈沖響應(yīng)的長度之間有什么關(guān)系? b)最大波紋的高度與濾波器脈沖響應(yīng)的長度之間有什么關(guān)系? 實驗過程與結(jié)果(含實驗程序、運行的數(shù)據(jù)結(jié)果和圖形); 21階的線性相位低通FIR數(shù)字濾波器: Wc=0.25*pi;N=21;M=(N-1)/2; %位移量 for n=0:(N-1) if(n== fix(M)) %中間的點單獨算 hd(n+1)=Wc/pi; else hd(n+1)=sin(Wc*(n-M))/(pi*(n-M));end;end;win=boxcar(N);%%%不同窗函數(shù) h=hd.*win';[H,w]=freqz(h,1);n=0:1:N-1;subplot(3,1,1);stem(n,h)subplot(3,1,2);plot(w,abs(H));subplot(3,1,3);plot(w,angle(H)); 41階的線性相位低通FIR數(shù)字濾波器: Wc=0.25*pi;N=41;M=(N-1)/2; %位移量 for n=0:(N-1) if(n== fix(M)) %中間的點單獨算 hd(n+1)=Wc/pi; else hd(n+1)=sin(Wc*(n-M))/(pi*(n-M));end;end;win=boxcar(N);%%%不同窗函數(shù) h=hd.*win';[H,w]=freqz(h,1);n=0:1:N-1;subplot(3,1,1);stem(n,h)subplot(3,1,2);plot(w,abs(H));subplot(3,1,3);plot(w,angle(H)); 61階的線性相位低通FIR數(shù)字濾波器: Wc=0.25*pi;N=61;M=(N-1)/2; %位移量 for n=0:(N-1) if(n== fix(M)) %中間的點單獨算 hd(n+1)=Wc/pi; else hd(n+1)=sin(Wc*(n-M))/(pi*(n-M));end;end;win=boxcar(N);%%%不同窗函數(shù) h=hd.*win';[H,w]=freqz(h,1);n=0:1:N-1;subplot(3,1,1);stem(n,h)subplot(3,1,2);plot(w,abs(H));subplot(3,1,3);plot(w,angle(H)); 數(shù)字信號處理實驗小結(jié)及心得體會: 通過這次實驗,我對MATLAB語言有了一定的認(rèn)識,雖然還不能完全用MATLAB獨立編寫程序,但對這種語言環(huán)境有了新的了解。我知道了一般的加減乘除在MATLAB中不同的意義。知道輸入、輸出語句怎么形成。通過快速傅里葉變換及其應(yīng)用的實驗,加深了我對FFT的理解,還有對各典型信號的頻譜分析,改變參數(shù)后時域和幅頻特性的變化。IIR數(shù)字濾波器的設(shè)計讓我知道了巴特沃思濾波器和切比雪夫濾波器的頻率特性,還有雙線性變換及脈沖響應(yīng)不變法設(shè)計的濾波器的頻率特性。做這個實驗的時候程序有點困難,很多細(xì)節(jié)問題不能考慮清楚,導(dǎo)致圖形出不來。FIR數(shù)字濾波器的設(shè)計出來的是三種窗的圖形,通過三種窗的比較,我了解了他們各自的特點,幅頻和相頻特性。我在這次實驗中的收獲很大,接觸了很多新的知識,但在實驗寫程序時,我發(fā)現(xiàn)自己還有很多不足。很多程序?qū)懖煌耆?。這是自己今后要加強的地方。第四篇:數(shù)字信號處理課程設(shè)計
第五篇:數(shù)字信號處理實驗報告